equal
deleted
inserted
replaced
2967 assume "finite T" |
2967 assume "finite T" |
2968 with \<open>S \<subseteq> T\<close> have "finite S" by (simp add: finite_subset) |
2968 with \<open>S \<subseteq> T\<close> have "finite S" by (simp add: finite_subset) |
2969 with \<open>infinite S\<close> show False by simp |
2969 with \<open>infinite S\<close> show False by simp |
2970 qed |
2970 qed |
2971 |
2971 |
|
2972 corollary finite_arbitrarily_large_disj: |
|
2973 "\<lbrakk> infinite(UNIV::'a set); finite (A::'a set) \<rbrakk> \<Longrightarrow> \<exists>B. finite B \<and> card B = n \<and> A \<inter> B = {}" |
|
2974 using infinite_arbitrarily_large[of "UNIV - A"] |
|
2975 by fastforce |
|
2976 |
2972 proposition infinite_coinduct [consumes 1, case_names infinite]: |
2977 proposition infinite_coinduct [consumes 1, case_names infinite]: |
2973 assumes "X A" |
2978 assumes "X A" |
2974 and step: "\<And>A. X A \<Longrightarrow> \<exists>x\<in>A. X (A - {x}) \<or> infinite (A - {x})" |
2979 and step: "\<And>A. X A \<Longrightarrow> \<exists>x\<in>A. X (A - {x}) \<or> infinite (A - {x})" |
2975 shows "infinite A" |
2980 shows "infinite A" |
2976 proof |
2981 proof |