src/ZF/AC/WO1_WO6.ML
changeset 1208 bc3093616ba4
parent 1196 d43c1f7a53fe
child 1461 6bcb44e4d6e5
equal deleted inserted replaced
1207:3f460842e919 1208:bc3093616ba4
     1 (*  Title: 	ZF/AC/WO1-WO6.ML
     1 (*  Title: 	ZF/AC/WO1-WO6.ML
     2     ID:         $Id$
     2     ID:         $Id$
     3     Author: 	Krzysztof Gr`abczewski
     3     Author: 	Krzysztof Grabczewski
     4 
     4 
     5   Proofs needed to state that formulations WO1,...,WO6 are all equivalent.
     5   Proofs needed to state that formulations WO1,...,WO6 are all equivalent.
     6   All but one WO6 ==> WO1 (placed in separate file WO6_WO1.ML)
     6   All but one WO6 ==> WO1 (placed in separate file WO6_WO1.ML)
     7 
     7 
     8   Every proofs (exept one) presented in this file are referred as clear
     8   Every proofs (exept one) presented in this file are referred as clear
    44 by (fast_tac (AC_cs addSDs [surj_imp_eq_]
    44 by (fast_tac (AC_cs addSDs [surj_imp_eq_]
    45 		addSIs [equalityI, ltI] addSEs [ltE]) 1);
    45 		addSIs [equalityI, ltI] addSEs [ltE]) 1);
    46 val surj_imp_eq = result();
    46 val surj_imp_eq = result();
    47 
    47 
    48 goalw thy WO_defs "!!Z. WO1 ==> WO4(1)";
    48 goalw thy WO_defs "!!Z. WO1 ==> WO4(1)";
    49 by (resolve_tac [allI] 1);
    49 by (rtac allI 1);
    50 by (eres_inst_tac [("x","A")] allE 1);
    50 by (eres_inst_tac [("x","A")] allE 1);
    51 by (eresolve_tac [exE] 1);
    51 by (etac exE 1);
    52 by (REPEAT (resolve_tac [exI, conjI] 1));
    52 by (REPEAT (resolve_tac [exI, conjI] 1));
    53 by (eresolve_tac [Ord_ordertype] 1);
    53 by (etac Ord_ordertype 1);
    54 by (resolve_tac [conjI] 1);
    54 by (rtac conjI 1);
    55 by (eresolve_tac [ordermap_bij RS bij_converse_bij RS bij_is_fun RS
    55 by (eresolve_tac [ordermap_bij RS bij_converse_bij RS bij_is_fun RS
    56 		lam_sets RS domain_of_fun] 1);
    56 		lam_sets RS domain_of_fun] 1);
    57 by (asm_simp_tac (AC_ss addsimps [singleton_eqpoll_1 RS eqpoll_imp_lepoll,
    57 by (asm_simp_tac (AC_ss addsimps [singleton_eqpoll_1 RS eqpoll_imp_lepoll,
    58                   Ord_ordertype RSN (2, ordermap_bij RS bij_converse_bij RS
    58                   Ord_ordertype RSN (2, ordermap_bij RS bij_converse_bij RS
    59 			bij_is_surj RS surj_imp_eq)]) 1);
    59 			bij_is_surj RS surj_imp_eq)]) 1);