diff -r 06e195515deb -r 87429bdecad5 src/HOL/Finite_Set.thy --- a/src/HOL/Finite_Set.thy Mon Jun 30 15:45:03 2014 +0200 +++ b/src/HOL/Finite_Set.thy Mon Jun 30 15:45:21 2014 +0200 @@ -1512,6 +1512,22 @@ lemma card_UNIV_unit [simp]: "card (UNIV :: unit set) = 1" unfolding UNIV_unit by simp +lemma infinite_arbitrarily_large: + assumes "\ finite A" + shows "\B. finite B \ card B = n \ B \ A" +proof (induction n) + case 0 show ?case by (intro exI[of _ "{}"]) auto +next + case (Suc n) + then guess B .. note B = this + with `\ finite A` have "A \ B" by auto + with B have "B \ A" by auto + hence "\x. x \ A - B" by (elim psubset_imp_ex_mem) + then guess x .. note x = this + with B have "finite (insert x B) \ card (insert x B) = Suc n \ insert x B \ A" + by auto + thus "\B. finite B \ card B = Suc n \ B \ A" .. +qed subsubsection {* Cardinality of image *}