equal
deleted
inserted
replaced
878 |
878 |
879 text {* |
879 text {* |
880 \medskip Range of a function -- just a translation for image! |
880 \medskip Range of a function -- just a translation for image! |
881 *} |
881 *} |
882 |
882 |
|
883 lemma image_ident [simp]: "(%x. x) ` Y = Y" |
|
884 by blast |
|
885 |
883 lemma range_eqI: "b = f x ==> b \<in> range f" |
886 lemma range_eqI: "b = f x ==> b \<in> range f" |
884 by simp |
887 by simp |
885 |
888 |
886 lemma rangeI: "f x \<in> range f" |
889 lemma rangeI: "f x \<in> range f" |
887 by simp |
890 by simp |
1161 by (auto simp add: image_def) |
1164 by (auto simp add: image_def) |
1162 |
1165 |
1163 lemma image_cong: "M = N ==> (!!x. x \<in> N ==> f x = g x) ==> f`M = g`N" |
1166 lemma image_cong: "M = N ==> (!!x. x \<in> N ==> f x = g x) ==> f`M = g`N" |
1164 by (simp add: image_def) |
1167 by (simp add: image_def) |
1165 |
1168 |
|
1169 lemma image_Int_subset: "f`(A Int B) <= f`A Int f`B" |
|
1170 by blast |
|
1171 |
|
1172 lemma image_diff_subset: "f`A - f`B <= f`(A - B)" |
|
1173 by blast |
|
1174 |
1166 |
1175 |
1167 text {* \medskip @{text range}. *} |
1176 text {* \medskip @{text range}. *} |
1168 |
1177 |
1169 lemma full_SetCompr_eq [no_atp]: "{u. \<exists>x. u = f x} = range f" |
1178 lemma full_SetCompr_eq [no_atp]: "{u. \<exists>x. u = f x} = range f" |
1170 by auto |
1179 by auto |
1671 |
1680 |
1672 lemma vimage_inter_cong: |
1681 lemma vimage_inter_cong: |
1673 "(\<And> w. w \<in> S \<Longrightarrow> f w = g w) \<Longrightarrow> f -` y \<inter> S = g -` y \<inter> S" |
1682 "(\<And> w. w \<in> S \<Longrightarrow> f w = g w) \<Longrightarrow> f -` y \<inter> S = g -` y \<inter> S" |
1674 by auto |
1683 by auto |
1675 |
1684 |
1676 lemma image_Int_subset: "f`(A Int B) <= f`A Int f`B" |
1685 lemma vimage_ident [simp]: "(%x. x) -` Y = Y" |
1677 by blast |
1686 by blast |
1678 |
|
1679 lemma image_diff_subset: "f`A - f`B <= f`(A - B)" |
|
1680 by blast |
|
1681 |
1687 |
1682 |
1688 |
1683 subsubsection {* Getting the Contents of a Singleton Set *} |
1689 subsubsection {* Getting the Contents of a Singleton Set *} |
1684 |
1690 |
1685 definition the_elem :: "'a set \<Rightarrow> 'a" where |
1691 definition the_elem :: "'a set \<Rightarrow> 'a" where |