equal
deleted
inserted
replaced
211 and GG_def: "GG == \<lambda>v \<in> LL. (THE w. w \<in> MM & v \<subseteq> w) - v" |
211 and GG_def: "GG == \<lambda>v \<in> LL. (THE w. w \<in> MM & v \<subseteq> w) - v" |
212 and s_def: "s(u) == {v \<in> t_n. u \<in> v & k \<lesssim> v Int y}" |
212 and s_def: "s(u) == {v \<in> t_n. u \<in> v & k \<lesssim> v Int y}" |
213 assumes all_ex: "\<forall>z \<in> {z \<in> Pow(x Un y) . z \<approx> succ(k)}. |
213 assumes all_ex: "\<forall>z \<in> {z \<in> Pow(x Un y) . z \<approx> succ(k)}. |
214 \<exists>! w. w \<in> t_n & z \<subseteq> w " |
214 \<exists>! w. w \<in> t_n & z \<subseteq> w " |
215 and disjoint[iff]: "x Int y = 0" |
215 and disjoint[iff]: "x Int y = 0" |
216 and includes: "t_n \<subseteq> {v \<in> Pow(x Un y). v \<approx> succ(k #+ m)}" |
216 and "includes": "t_n \<subseteq> {v \<in> Pow(x Un y). v \<approx> succ(k #+ m)}" |
217 and WO_R[iff]: "well_ord(y,R)" |
217 and WO_R[iff]: "well_ord(y,R)" |
218 and lnat[iff]: "l \<in> nat" |
218 and lnat[iff]: "l \<in> nat" |
219 and mnat[iff]: "m \<in> nat" |
219 and mnat[iff]: "m \<in> nat" |
220 and mpos[iff]: "0<m" |
220 and mpos[iff]: "0<m" |
221 and Infinite[iff]: "~ Finite(y)" |
221 and Infinite[iff]: "~ Finite(y)" |
319 \<forall>v \<in> s(u). succ(l) \<approx> v Int y |] |
319 \<forall>v \<in> s(u). succ(l) \<approx> v Int y |] |
320 ==> w Int (x - {u}) \<approx> m" |
320 ==> w Int (x - {u}) \<approx> m" |
321 apply (erule CollectE) |
321 apply (erule CollectE) |
322 apply (subst w_Int_eq_w_Diff) |
322 apply (subst w_Int_eq_w_Diff) |
323 apply (fast dest!: s_subset [THEN subsetD] |
323 apply (fast dest!: s_subset [THEN subsetD] |
324 includes [simplified k_def, THEN subsetD]) |
324 "includes" [simplified k_def, THEN subsetD]) |
325 apply (blast dest: s_subset [THEN subsetD] |
325 apply (blast dest: s_subset [THEN subsetD] |
326 includes [simplified k_def, THEN subsetD] |
326 "includes" [simplified k_def, THEN subsetD] |
327 dest: eqpoll_sym [THEN cons_eqpoll_succ, THEN eqpoll_sym] |
327 dest: eqpoll_sym [THEN cons_eqpoll_succ, THEN eqpoll_sym] |
328 in_s_imp_u_in |
328 in_s_imp_u_in |
329 intro!: eqpoll_sum_imp_Diff_eqpoll) |
329 intro!: eqpoll_sum_imp_Diff_eqpoll) |
330 done |
330 done |
331 |
331 |
392 done |
392 done |
393 |
393 |
394 |
394 |
395 lemma (in AC16) LL_subset: "LL \<subseteq> {z \<in> Pow(y). z \<lesssim> succ(k #+ m)}" |
395 lemma (in AC16) LL_subset: "LL \<subseteq> {z \<in> Pow(y). z \<lesssim> succ(k #+ m)}" |
396 apply (unfold LL_def MM_def) |
396 apply (unfold LL_def MM_def) |
397 apply (insert includes) |
397 apply (insert "includes") |
398 apply (blast intro: subset_imp_lepoll eqpoll_imp_lepoll lepoll_trans) |
398 apply (blast intro: subset_imp_lepoll eqpoll_imp_lepoll lepoll_trans) |
399 done |
399 done |
400 |
400 |
401 lemma (in AC16) well_ord_LL: "\<exists>S. well_ord(LL,S)" |
401 lemma (in AC16) well_ord_LL: "\<exists>S. well_ord(LL,S)" |
402 apply (rule well_ord_subsets_lepoll_n [THEN exE, of "succ(k#+m)"]) |
402 apply (rule well_ord_subsets_lepoll_n [THEN exE, of "succ(k#+m)"]) |
440 |
440 |
441 lemma (in AC16) the_in_MM_subset: |
441 lemma (in AC16) the_in_MM_subset: |
442 "v \<in> LL ==> (THE x. x \<in> MM & v \<subseteq> x) \<subseteq> x Un y" |
442 "v \<in> LL ==> (THE x. x \<in> MM & v \<subseteq> x) \<subseteq> x Un y" |
443 apply (drule unique_superset1) |
443 apply (drule unique_superset1) |
444 apply (unfold MM_def) |
444 apply (unfold MM_def) |
445 apply (fast dest!: unique_superset1 includes [THEN subsetD]) |
445 apply (fast dest!: unique_superset1 "includes" [THEN subsetD]) |
446 done |
446 done |
447 |
447 |
448 lemma (in AC16) GG_subset: "v \<in> LL ==> GG ` v \<subseteq> x" |
448 lemma (in AC16) GG_subset: "v \<in> LL ==> GG ` v \<subseteq> x" |
449 apply (unfold GG_def) |
449 apply (unfold GG_def) |
450 apply (frule the_in_MM_subset) |
450 apply (frule the_in_MM_subset) |
471 lemma (in AC16) exists_proper_in_s: "u \<in> x ==> \<exists>v \<in> s(u). succ(k) \<lesssim> v Int y" |
471 lemma (in AC16) exists_proper_in_s: "u \<in> x ==> \<exists>v \<in> s(u). succ(k) \<lesssim> v Int y" |
472 apply (rule ccontr) |
472 apply (rule ccontr) |
473 apply (subgoal_tac "\<forall>v \<in> s (u) . k \<approx> v Int y") |
473 apply (subgoal_tac "\<forall>v \<in> s (u) . k \<approx> v Int y") |
474 prefer 2 apply (simp add: s_def, blast intro: succ_not_lepoll_imp_eqpoll) |
474 prefer 2 apply (simp add: s_def, blast intro: succ_not_lepoll_imp_eqpoll) |
475 apply (unfold k_def) |
475 apply (unfold k_def) |
476 apply (insert all_ex includes lnat) |
476 apply (insert all_ex "includes" lnat) |
477 apply (rule ex_subset_eqpoll_n [THEN exE], assumption) |
477 apply (rule ex_subset_eqpoll_n [THEN exE], assumption) |
478 apply (rule noLepoll [THEN notE]) |
478 apply (rule noLepoll [THEN notE]) |
479 apply (blast intro: lepoll_trans [OF y_lepoll_subset_s subset_s_lepoll_w]) |
479 apply (blast intro: lepoll_trans [OF y_lepoll_subset_s subset_s_lepoll_w]) |
480 done |
480 done |
481 |
481 |
514 (* Every element of the family is less than or equipollent to n-k (m) *) |
514 (* Every element of the family is less than or equipollent to n-k (m) *) |
515 (* ********************************************************************** *) |
515 (* ********************************************************************** *) |
516 |
516 |
517 lemma (in AC16) in_MM_eqpoll_n: "w \<in> MM ==> w \<approx> succ(k #+ m)" |
517 lemma (in AC16) in_MM_eqpoll_n: "w \<in> MM ==> w \<approx> succ(k #+ m)" |
518 apply (unfold MM_def) |
518 apply (unfold MM_def) |
519 apply (fast dest: includes [THEN subsetD]) |
519 apply (fast dest: "includes" [THEN subsetD]) |
520 done |
520 done |
521 |
521 |
522 lemma (in AC16) in_LL_eqpoll_n: "w \<in> LL ==> succ(k) \<lesssim> w" |
522 lemma (in AC16) in_LL_eqpoll_n: "w \<in> LL ==> succ(k) \<lesssim> w" |
523 by (unfold LL_def MM_def, fast) |
523 by (unfold LL_def MM_def, fast) |
524 |
524 |
529 "well_ord(LL,S) ==> |
529 "well_ord(LL,S) ==> |
530 \<forall>b<ordertype(LL,S). GG ` (converse(ordermap(LL,S)) ` b) \<lesssim> m" |
530 \<forall>b<ordertype(LL,S). GG ` (converse(ordermap(LL,S)) ` b) \<lesssim> m" |
531 apply (unfold GG_def) |
531 apply (unfold GG_def) |
532 apply (rule oallI) |
532 apply (rule oallI) |
533 apply (simp add: ltD ordermap_bij [THEN bij_converse_bij, THEN bij_is_fun, THEN apply_type]) |
533 apply (simp add: ltD ordermap_bij [THEN bij_converse_bij, THEN bij_is_fun, THEN apply_type]) |
534 apply (insert includes) |
534 apply (insert "includes") |
535 apply (rule eqpoll_sum_imp_Diff_lepoll) |
535 apply (rule eqpoll_sum_imp_Diff_lepoll) |
536 apply (blast del: subsetI |
536 apply (blast del: subsetI |
537 dest!: ltD |
537 dest!: ltD |
538 intro!: eqpoll_sum_imp_Diff_lepoll in_LL_eqpoll_n |
538 intro!: eqpoll_sum_imp_Diff_lepoll in_LL_eqpoll_n |
539 intro: in_LL unique_superset1 [THEN in_MM_eqpoll_n] |
539 intro: in_LL unique_superset1 [THEN in_MM_eqpoll_n] |