src/HOL/Finite_Set.thy
changeset 70178 4900351361b0
parent 70019 095dce9892e8
child 70723 4e39d87c9737
equal deleted inserted replaced
70177:b67bab2b132c 70178:4900351361b0
   332   assume B: "finite B" "B \<subseteq> f ` A" and P: "\<forall>B. finite B \<and> B \<subseteq> A \<longrightarrow> P (f ` B)"
   332   assume B: "finite B" "B \<subseteq> f ` A" and P: "\<forall>B. finite B \<and> B \<subseteq> A \<longrightarrow> P (f ` B)"
   333   show "P B"
   333   show "P B"
   334     using finite_subset_image [OF B] P by blast
   334     using finite_subset_image [OF B] P by blast
   335 qed blast
   335 qed blast
   336 
   336 
   337 lemma exists_finite_subset_image:
   337 lemma ex_finite_subset_image:
   338   "(\<exists>B. finite B \<and> B \<subseteq> f ` A \<and> P B) \<longleftrightarrow> (\<exists>B. finite B \<and> B \<subseteq> A \<and> P (f ` B))"
   338   "(\<exists>B. finite B \<and> B \<subseteq> f ` A \<and> P B) \<longleftrightarrow> (\<exists>B. finite B \<and> B \<subseteq> A \<and> P (f ` B))"
   339 proof safe
   339 proof safe
   340   fix B :: "'a set"
   340   fix B :: "'a set"
   341   assume B: "finite B" "B \<subseteq> f ` A" and "P B"
   341   assume B: "finite B" "B \<subseteq> f ` A" and "P B"
   342   show "\<exists>B. finite B \<and> B \<subseteq> A \<and> P (f ` B)"
   342   show "\<exists>B. finite B \<and> B \<subseteq> A \<and> P (f ` B)"