%------------------------------------------------------------------------------ % File : Zenon---0.7.1 % Problem : ALG086+1 : TPTP v8.1.0. Released v2.7.0. % Transfm : none % Format : tptp:raw % Command : run_zenon %s %d % Computer : n023.cluster.edu % Model : x86_64 x86_64 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz % Memory : 8042.1875MB % OS : Linux 3.10.0-693.el7.x86_64 % CPULimit : 300s % WCLimit : 600s % DateTime : Thu Jul 14 18:29:11 EDT 2022 % Result : Theorem 202.22s 202.46s % Output : Proof 202.22s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.10/0.11 % Problem : ALG086+1 : TPTP v8.1.0. Released v2.7.0. % 0.10/0.12 % Command : run_zenon %s %d % 0.12/0.33 % Computer : n023.cluster.edu % 0.12/0.33 % Model : x86_64 x86_64 % 0.12/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.12/0.33 % Memory : 8042.1875MB % 0.12/0.33 % OS : Linux 3.10.0-693.el7.x86_64 % 0.12/0.33 % CPULimit : 300 % 0.12/0.33 % WCLimit : 600 % 0.12/0.33 % DateTime : Wed Jun 8 14:38:38 EDT 2022 % 0.12/0.33 % CPUTime : % 202.22/202.46 (* PROOF-FOUND *) % 202.22/202.46 % SZS status Theorem % 202.22/202.46 (* BEGIN-PROOF *) % 202.22/202.46 % SZS output start Proof % 202.22/202.46 Theorem co1 : (((((h (e10)) = (e20))\/(((h (e10)) = (e21))\/(((h (e10)) = (e22))\/(((h (e10)) = (e23))\/((h (e10)) = (e24))))))/\((((h (e11)) = (e20))\/(((h (e11)) = (e21))\/(((h (e11)) = (e22))\/(((h (e11)) = (e23))\/((h (e11)) = (e24))))))/\((((h (e12)) = (e20))\/(((h (e12)) = (e21))\/(((h (e12)) = (e22))\/(((h (e12)) = (e23))\/((h (e12)) = (e24))))))/\((((h (e13)) = (e20))\/(((h (e13)) = (e21))\/(((h (e13)) = (e22))\/(((h (e13)) = (e23))\/((h (e13)) = (e24))))))/\((((h (e14)) = (e20))\/(((h (e14)) = (e21))\/(((h (e14)) = (e22))\/(((h (e14)) = (e23))\/((h (e14)) = (e24))))))/\((((j (e20)) = (e10))\/(((j (e20)) = (e11))\/(((j (e20)) = (e12))\/(((j (e20)) = (e13))\/((j (e20)) = (e14))))))/\((((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14))))))/\((((j (e22)) = (e10))\/(((j (e22)) = (e11))\/(((j (e22)) = (e12))\/(((j (e22)) = (e13))\/((j (e22)) = (e14))))))/\((((j (e23)) = (e10))\/(((j (e23)) = (e11))\/(((j (e23)) = (e12))\/(((j (e23)) = (e13))\/((j (e23)) = (e14))))))/\(((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))))))))))))->(~(((h (op1 (e10) (e10))) = (op2 (h (e10)) (h (e10))))/\(((h (op1 (e10) (e11))) = (op2 (h (e10)) (h (e11))))/\(((h (op1 (e10) (e12))) = (op2 (h (e10)) (h (e12))))/\(((h (op1 (e10) (e13))) = (op2 (h (e10)) (h (e13))))/\(((h (op1 (e10) (e14))) = (op2 (h (e10)) (h (e14))))/\(((h (op1 (e11) (e10))) = (op2 (h (e11)) (h (e10))))/\(((h (op1 (e11) (e11))) = (op2 (h (e11)) (h (e11))))/\(((h (op1 (e11) (e12))) = (op2 (h (e11)) (h (e12))))/\(((h (op1 (e11) (e13))) = (op2 (h (e11)) (h (e13))))/\(((h (op1 (e11) (e14))) = (op2 (h (e11)) (h (e14))))/\(((h (op1 (e12) (e10))) = (op2 (h (e12)) (h (e10))))/\(((h (op1 (e12) (e11))) = (op2 (h (e12)) (h (e11))))/\(((h (op1 (e12) (e12))) = (op2 (h (e12)) (h (e12))))/\(((h (op1 (e12) (e13))) = (op2 (h (e12)) (h (e13))))/\(((h (op1 (e12) (e14))) = (op2 (h (e12)) (h (e14))))/\(((h (op1 (e13) (e10))) = (op2 (h (e13)) (h (e10))))/\(((h (op1 (e13) (e11))) = (op2 (h (e13)) (h (e11))))/\(((h (op1 (e13) (e12))) = (op2 (h (e13)) (h (e12))))/\(((h (op1 (e13) (e13))) = (op2 (h (e13)) (h (e13))))/\(((h (op1 (e13) (e14))) = (op2 (h (e13)) (h (e14))))/\(((h (op1 (e14) (e10))) = (op2 (h (e14)) (h (e10))))/\(((h (op1 (e14) (e11))) = (op2 (h (e14)) (h (e11))))/\(((h (op1 (e14) (e12))) = (op2 (h (e14)) (h (e12))))/\(((h (op1 (e14) (e13))) = (op2 (h (e14)) (h (e13))))/\(((h (op1 (e14) (e14))) = (op2 (h (e14)) (h (e14))))/\(((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20))))/\(((j (op2 (e20) (e21))) = (op1 (j (e20)) (j (e21))))/\(((j (op2 (e20) (e22))) = (op1 (j (e20)) (j (e22))))/\(((j (op2 (e20) (e23))) = (op1 (j (e20)) (j (e23))))/\(((j (op2 (e20) (e24))) = (op1 (j (e20)) (j (e24))))/\(((j (op2 (e21) (e20))) = (op1 (j (e21)) (j (e20))))/\(((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21))))/\(((j (op2 (e21) (e22))) = (op1 (j (e21)) (j (e22))))/\(((j (op2 (e21) (e23))) = (op1 (j (e21)) (j (e23))))/\(((j (op2 (e21) (e24))) = (op1 (j (e21)) (j (e24))))/\(((j (op2 (e22) (e20))) = (op1 (j (e22)) (j (e20))))/\(((j (op2 (e22) (e21))) = (op1 (j (e22)) (j (e21))))/\(((j (op2 (e22) (e22))) = (op1 (j (e22)) (j (e22))))/\(((j (op2 (e22) (e23))) = (op1 (j (e22)) (j (e23))))/\(((j (op2 (e22) (e24))) = (op1 (j (e22)) (j (e24))))/\(((j (op2 (e23) (e20))) = (op1 (j (e23)) (j (e20))))/\(((j (op2 (e23) (e21))) = (op1 (j (e23)) (j (e21))))/\(((j (op2 (e23) (e22))) = (op1 (j (e23)) (j (e22))))/\(((j (op2 (e23) (e23))) = (op1 (j (e23)) (j (e23))))/\(((j (op2 (e23) (e24))) = (op1 (j (e23)) (j (e24))))/\(((j (op2 (e24) (e20))) = (op1 (j (e24)) (j (e20))))/\(((j (op2 (e24) (e21))) = (op1 (j (e24)) (j (e21))))/\(((j (op2 (e24) (e22))) = (op1 (j (e24)) (j (e22))))/\(((j (op2 (e24) (e23))) = (op1 (j (e24)) (j (e23))))/\(((j (op2 (e24) (e24))) = (op1 (j (e24)) (j (e24))))/\(((h (j (e20))) = (e20))/\(((h (j (e21))) = (e21))/\(((h (j (e22))) = (e22))/\(((h (j (e23))) = (e23))/\(((h (j (e24))) = (e24))/\(((j (h (e10))) = (e10))/\(((j (h (e11))) = (e11))/\(((j (h (e12))) = (e12))/\(((j (h (e13))) = (e13))/\((j (h (e14))) = (e14))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))). % 202.22/202.46 Proof. % 202.22/202.46 assert (zenon_L1_ : (~((e10) = (e10))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H6. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L1_ *) % 202.22/202.46 assert (zenon_L2_ : (~((e11) = (e11))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H7. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L2_ *) % 202.22/202.46 assert (zenon_L3_ : (~((j (e20)) = (j (op2 (e20) (e20))))) -> ((op2 (e20) (e20)) = (e20)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H8 zenon_H9. % 202.22/202.46 cut (((e20) = (op2 (e20) (e20)))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 202.22/202.46 congruence. % 202.22/202.46 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 202.22/202.46 (* end of lemma zenon_L3_ *) % 202.22/202.46 assert (zenon_L4_ : (~((op1 (j (e20)) (j (e20))) = (op1 (e11) (e11)))) -> ((j (e20)) = (e11)) -> False). % 202.22/202.46 do 0 intro. intros zenon_Hb zenon_Hc. % 202.22/202.46 cut (((j (e20)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hd]. % 202.22/202.46 cut (((j (e20)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hd]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_Hd zenon_Hc). % 202.22/202.46 exact (zenon_Hd zenon_Hc). % 202.22/202.46 (* end of lemma zenon_L4_ *) % 202.22/202.46 assert (zenon_L5_ : (~((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))) -> ((op1 (e11) (e11)) = (e10)) -> ((j (e20)) = (e11)) -> ((op1 (e14) (e14)) = (e10)) -> False). % 202.22/202.46 do 0 intro. intros zenon_He zenon_Hf zenon_Hc zenon_H10. % 202.22/202.46 cut (((op1 (e11) (e11)) = (e10)) = ((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_He. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_Hf. % 202.22/202.46 cut (((e10) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 202.22/202.46 cut (((op1 (e11) (e11)) = (op1 (j (e20)) (j (e20))))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20))))); [ zenon_intro zenon_H13 | zenon_intro zenon_H14 ]. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20)))) = ((op1 (e11) (e11)) = (op1 (j (e20)) (j (e20))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H12. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H13. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20))))); [idtac | apply NNPP; zenon_intro zenon_H14]. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (e11) (e11)))); [idtac | apply NNPP; zenon_intro zenon_Hb]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L4_); trivial. % 202.22/202.46 apply zenon_H14. apply refl_equal. % 202.22/202.46 apply zenon_H14. apply refl_equal. % 202.22/202.46 apply zenon_H11. apply sym_equal. exact zenon_H10. % 202.22/202.46 (* end of lemma zenon_L5_ *) % 202.22/202.46 assert (zenon_L6_ : ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((j (e20)) = (e11)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e11) (e11)) = (e10)) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e11))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H15 zenon_Hc zenon_H10 zenon_Hf zenon_H9 zenon_H16. % 202.22/202.46 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.46 cut (((e11) = (e11)) = ((e10) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H16. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H17. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((e11) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H18]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e10)) = ((e11) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H18. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H10. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.46 cut (((e11) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H19. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H17. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((e11) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e11) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H19. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_Hc. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((op1 (e14) (e14)) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1e. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H15. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He]. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H21]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((j (op2 (e20) (e20))) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H21. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (j (op2 (e20) (e20))))); [idtac | apply NNPP; zenon_intro zenon_H8]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L3_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply (zenon_L5_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L6_ *) % 202.22/202.46 assert (zenon_L7_ : (~((op1 (j (e20)) (j (e20))) = (op1 (e12) (e12)))) -> ((j (e20)) = (e12)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H22 zenon_H23. % 202.22/202.46 cut (((j (e20)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H24]. % 202.22/202.46 cut (((j (e20)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H24]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H24 zenon_H23). % 202.22/202.46 exact (zenon_H24 zenon_H23). % 202.22/202.46 (* end of lemma zenon_L7_ *) % 202.22/202.46 assert (zenon_L8_ : (~((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))) -> ((op1 (e12) (e12)) = (e10)) -> ((j (e20)) = (e12)) -> ((op1 (e14) (e14)) = (e10)) -> False). % 202.22/202.46 do 0 intro. intros zenon_He zenon_H25 zenon_H23 zenon_H10. % 202.22/202.46 cut (((op1 (e12) (e12)) = (e10)) = ((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_He. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H25. % 202.22/202.46 cut (((e10) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 202.22/202.46 cut (((op1 (e12) (e12)) = (op1 (j (e20)) (j (e20))))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20))))); [ zenon_intro zenon_H13 | zenon_intro zenon_H14 ]. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20)))) = ((op1 (e12) (e12)) = (op1 (j (e20)) (j (e20))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H26. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H13. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20))))); [idtac | apply NNPP; zenon_intro zenon_H14]. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (e12) (e12)))); [idtac | apply NNPP; zenon_intro zenon_H22]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L7_); trivial. % 202.22/202.46 apply zenon_H14. apply refl_equal. % 202.22/202.46 apply zenon_H14. apply refl_equal. % 202.22/202.46 apply zenon_H11. apply sym_equal. exact zenon_H10. % 202.22/202.46 (* end of lemma zenon_L8_ *) % 202.22/202.46 assert (zenon_L9_ : (~((e12) = (e12))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H27. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L9_ *) % 202.22/202.46 assert (zenon_L10_ : ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((j (e20)) = (e12)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e12) (e12)) = (e10)) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e12))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H15 zenon_H23 zenon_H10 zenon_H25 zenon_H9 zenon_H28. % 202.22/202.46 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.46 cut (((e12) = (e12)) = ((e10) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H28. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H29. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((e12) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H2a]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e10)) = ((e12) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H2a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H10. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.46 cut (((e12) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H2b. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H29. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((e12) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H2c]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e12) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H2c. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H2b. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H23. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((op1 (e14) (e14)) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1e. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H15. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He]. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H21]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((j (op2 (e20) (e20))) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H21. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (j (op2 (e20) (e20))))); [idtac | apply NNPP; zenon_intro zenon_H8]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L3_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply (zenon_L8_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L10_ *) % 202.22/202.46 assert (zenon_L11_ : (~((op1 (j (e20)) (j (e20))) = (op1 (e13) (e13)))) -> ((j (e20)) = (e13)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H2d zenon_H2e. % 202.22/202.46 cut (((j (e20)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 202.22/202.46 cut (((j (e20)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H2f zenon_H2e). % 202.22/202.46 exact (zenon_H2f zenon_H2e). % 202.22/202.46 (* end of lemma zenon_L11_ *) % 202.22/202.46 assert (zenon_L12_ : (~((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))) -> ((op1 (e13) (e13)) = (e10)) -> ((j (e20)) = (e13)) -> ((op1 (e14) (e14)) = (e10)) -> False). % 202.22/202.46 do 0 intro. intros zenon_He zenon_H30 zenon_H2e zenon_H10. % 202.22/202.46 cut (((op1 (e13) (e13)) = (e10)) = ((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_He. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H30. % 202.22/202.46 cut (((e10) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 202.22/202.46 cut (((op1 (e13) (e13)) = (op1 (j (e20)) (j (e20))))); [idtac | apply NNPP; zenon_intro zenon_H31]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20))))); [ zenon_intro zenon_H13 | zenon_intro zenon_H14 ]. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20)))) = ((op1 (e13) (e13)) = (op1 (j (e20)) (j (e20))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H31. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H13. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (j (e20)) (j (e20))))); [idtac | apply NNPP; zenon_intro zenon_H14]. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (e13) (e13)))); [idtac | apply NNPP; zenon_intro zenon_H2d]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L11_); trivial. % 202.22/202.46 apply zenon_H14. apply refl_equal. % 202.22/202.46 apply zenon_H14. apply refl_equal. % 202.22/202.46 apply zenon_H11. apply sym_equal. exact zenon_H10. % 202.22/202.46 (* end of lemma zenon_L12_ *) % 202.22/202.46 assert (zenon_L13_ : (~((e13) = (e13))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H32. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L13_ *) % 202.22/202.46 assert (zenon_L14_ : ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((j (e20)) = (e13)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e13) (e13)) = (e10)) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e13))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H15 zenon_H2e zenon_H10 zenon_H30 zenon_H9 zenon_H33. % 202.22/202.46 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.46 cut (((e13) = (e13)) = ((e10) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H33. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H34. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((e13) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H35]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e10)) = ((e13) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H35. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H10. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.46 cut (((e13) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H36. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H34. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((e13) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H37]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e13) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H37. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H36. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H2e. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((op1 (e14) (e14)) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1e. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H15. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He]. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H21]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((j (op2 (e20) (e20))) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H21. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (j (op2 (e20) (e20))))); [idtac | apply NNPP; zenon_intro zenon_H8]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L3_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply (zenon_L12_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L14_ *) % 202.22/202.46 assert (zenon_L15_ : (~((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))) -> ((j (e20)) = (e14)) -> False). % 202.22/202.46 do 0 intro. intros zenon_He zenon_H38. % 202.22/202.46 cut (((j (e20)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H39]. % 202.22/202.46 cut (((j (e20)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H39]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H39 zenon_H38). % 202.22/202.46 exact (zenon_H39 zenon_H38). % 202.22/202.46 (* end of lemma zenon_L15_ *) % 202.22/202.46 assert (zenon_L16_ : (~((e14) = (e14))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H3a. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L16_ *) % 202.22/202.46 assert (zenon_L17_ : ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((j (e20)) = (e14)) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e14))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H10 zenon_H15 zenon_H38 zenon_H9 zenon_H3b. % 202.22/202.46 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.46 cut (((e14) = (e14)) = ((e10) = (e14))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H3b. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H3c. % 202.22/202.46 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.46 cut (((e14) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H3d]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e10)) = ((e14) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H3d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H10. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.46 cut (((e14) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H3e. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H3c. % 202.22/202.46 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.46 cut (((e14) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e14) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H3f. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H3e. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H38. % 202.22/202.46 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1b. % 202.22/202.46 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.46 cut (((op1 (e14) (e14)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((op1 (e14) (e14)) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1e. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) = ((j (e20)) = (op1 (e14) (e14)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H1d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H15. % 202.22/202.46 cut (((op1 (j (e20)) (j (e20))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He]. % 202.22/202.46 cut (((j (op2 (e20) (e20))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H21]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (e20)) = (j (e20)))); [ zenon_intro zenon_H1f | zenon_intro zenon_H20 ]. % 202.22/202.46 cut (((j (e20)) = (j (e20))) = ((j (op2 (e20) (e20))) = (j (e20)))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H21. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H1f. % 202.22/202.46 cut (((j (e20)) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H20]. % 202.22/202.46 cut (((j (e20)) = (j (op2 (e20) (e20))))); [idtac | apply NNPP; zenon_intro zenon_H8]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L3_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply (zenon_L15_); trivial. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H20. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H1c. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L17_ *) % 202.22/202.46 assert (zenon_L18_ : (((j (e20)) = (e10))\/(((j (e20)) = (e11))\/(((j (e20)) = (e12))\/(((j (e20)) = (e13))\/((j (e20)) = (e14)))))) -> ((h (e11)) = (e20)) -> ((j (h (e11))) = (e11)) -> (~((e10) = (e11))) -> ((op1 (e11) (e11)) = (e10)) -> (~((e10) = (e12))) -> ((op1 (e12) (e12)) = (e10)) -> (~((e10) = (e13))) -> ((op1 (e13) (e13)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e14))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H40 zenon_H41 zenon_H42 zenon_H16 zenon_Hf zenon_H28 zenon_H25 zenon_H33 zenon_H30 zenon_H10 zenon_H15 zenon_H9 zenon_H3b. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H40); [ zenon_intro zenon_H44 | zenon_intro zenon_H43 ]. % 202.22/202.46 cut (((j (h (e11))) = (e11)) = ((e10) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H16. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H42. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((j (h (e11))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.46 cut (((e10) = (e10)) = ((j (h (e11))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H45. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H46. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((e10) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H47]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11)))) = ((e10) = (j (h (e11))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H47. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H48. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.46 cut (((j (h (e11))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e10)) = ((j (h (e11))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H45. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H44. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((j (e20)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H4a]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e20)) = (j (h (e11))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H4a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H48. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.46 cut (((j (h (e11))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H4b]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((h (e11)) = (e20))); [idtac | apply NNPP; zenon_intro zenon_H4c]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H4c zenon_H41). % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H43); [ zenon_intro zenon_Hc | zenon_intro zenon_H4d ]. % 202.22/202.46 apply (zenon_L6_); trivial. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H4d); [ zenon_intro zenon_H23 | zenon_intro zenon_H4e ]. % 202.22/202.46 apply (zenon_L10_); trivial. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H4e); [ zenon_intro zenon_H2e | zenon_intro zenon_H38 ]. % 202.22/202.46 apply (zenon_L14_); trivial. % 202.22/202.46 apply (zenon_L17_); trivial. % 202.22/202.46 (* end of lemma zenon_L18_ *) % 202.22/202.46 assert (zenon_L19_ : (~((j (h (e12))) = (j (e20)))) -> ((h (e12)) = (e20)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H4f zenon_H50. % 202.22/202.46 cut (((h (e12)) = (e20))); [idtac | apply NNPP; zenon_intro zenon_H51]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H51 zenon_H50). % 202.22/202.46 (* end of lemma zenon_L19_ *) % 202.22/202.46 assert (zenon_L20_ : (((j (e20)) = (e10))\/(((j (e20)) = (e11))\/(((j (e20)) = (e12))\/(((j (e20)) = (e13))\/((j (e20)) = (e14)))))) -> ((h (e12)) = (e20)) -> ((j (h (e12))) = (e12)) -> (~((e11) = (e12))) -> (~((e10) = (e12))) -> ((op1 (e12) (e12)) = (e10)) -> (~((e10) = (e13))) -> ((op1 (e13) (e13)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e14))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H40 zenon_H50 zenon_H52 zenon_H53 zenon_H28 zenon_H25 zenon_H33 zenon_H30 zenon_H10 zenon_H15 zenon_H9 zenon_H3b. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H40); [ zenon_intro zenon_H44 | zenon_intro zenon_H43 ]. % 202.22/202.46 cut (((j (h (e12))) = (e12)) = ((e10) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H28. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H52. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.46 cut (((e10) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H54. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H46. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((e10) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((e10) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H55. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H54. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H44. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((j (e20)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H58]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e20)) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H58. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H4f]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L19_); trivial. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H43); [ zenon_intro zenon_Hc | zenon_intro zenon_H4d ]. % 202.22/202.46 cut (((j (h (e12))) = (e12)) = ((e11) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H53. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H52. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.46 cut (((e11) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H59. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H17. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((e11) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5a]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((e11) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H5a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H59. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_Hc. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((j (e20)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H58]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e20)) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H58. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H4f]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L19_); trivial. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H4d); [ zenon_intro zenon_H23 | zenon_intro zenon_H4e ]. % 202.22/202.46 apply (zenon_L10_); trivial. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H4e); [ zenon_intro zenon_H2e | zenon_intro zenon_H38 ]. % 202.22/202.46 apply (zenon_L14_); trivial. % 202.22/202.46 apply (zenon_L17_); trivial. % 202.22/202.46 (* end of lemma zenon_L20_ *) % 202.22/202.46 assert (zenon_L21_ : (~((j (h (e12))) = (j (e21)))) -> ((h (e12)) = (e21)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H5b zenon_H5c. % 202.22/202.46 cut (((h (e12)) = (e21))); [idtac | apply NNPP; zenon_intro zenon_H5d]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H5d zenon_H5c). % 202.22/202.46 (* end of lemma zenon_L21_ *) % 202.22/202.46 assert (zenon_L22_ : (~((e10) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> ((j (e21)) = (e10)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H28 zenon_H52 zenon_H5c zenon_H5e. % 202.22/202.46 cut (((j (h (e12))) = (e12)) = ((e10) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H28. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H52. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.46 cut (((e10) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H54. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H46. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((e10) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((e10) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H55. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e21)) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H54. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H5e. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((j (e21)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5f]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e21)) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H5f. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L21_); trivial. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L22_ *) % 202.22/202.46 assert (zenon_L23_ : (~((e11) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> ((j (e21)) = (e11)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H53 zenon_H52 zenon_H5c zenon_H60. % 202.22/202.46 cut (((j (h (e12))) = (e12)) = ((e11) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H53. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H52. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.46 cut (((e11) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H59. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H17. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((e11) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5a]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((e11) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H5a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e21)) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H59. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H60. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((j (e21)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5f]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e21)) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H5f. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L21_); trivial. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L23_ *) % 202.22/202.46 assert (zenon_L24_ : (~((j (h (e11))) = (j (e21)))) -> ((h (e11)) = (e21)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H61 zenon_H62. % 202.22/202.46 cut (((h (e11)) = (e21))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H63 zenon_H62). % 202.22/202.46 (* end of lemma zenon_L24_ *) % 202.22/202.46 assert (zenon_L25_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e21)) -> ((j (e21)) = (e12)) -> (~((e11) = (e12))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H42 zenon_H62 zenon_H64 zenon_H53. % 202.22/202.46 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.46 cut (((e12) = (e12)) = ((e11) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H53. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H29. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((e12) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H65]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (h (e11))) = (e11)) = ((e12) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H65. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H42. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.46 cut (((e12) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H66. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H29. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((e12) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11)))) = ((e12) = (j (h (e11))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H67. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H48. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.46 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e21)) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H66. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H64. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (e21)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H68]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e21)) = (j (h (e11))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H68. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H48. % 202.22/202.46 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.46 cut (((j (h (e11))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H61]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L24_); trivial. % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H49. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L25_ *) % 202.22/202.46 assert (zenon_L26_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> ((j (e21)) = (e13)) -> (~((e12) = (e13))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H52 zenon_H5c zenon_H69 zenon_H6a. % 202.22/202.46 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.46 cut (((e13) = (e13)) = ((e12) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H6a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H34. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((e13) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H6b]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (h (e12))) = (e12)) = ((e13) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H6b. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H52. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.46 cut (((e13) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H6c. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H34. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((e13) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((e13) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H6d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e21)) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H6c. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H69. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((j (e21)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5f]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e21)) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H5f. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L21_); trivial. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L26_ *) % 202.22/202.46 assert (zenon_L27_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> ((j (e21)) = (e14)) -> (~((e12) = (e14))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H52 zenon_H5c zenon_H6e zenon_H6f. % 202.22/202.46 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.46 cut (((e14) = (e14)) = ((e12) = (e14))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H6f. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H3c. % 202.22/202.46 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.46 cut (((e14) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H70]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (h (e12))) = (e12)) = ((e14) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H70. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H52. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.46 cut (((e14) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H71. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H3c. % 202.22/202.46 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.46 cut (((e14) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H72]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((e14) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H72. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e21)) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H71. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H6e. % 202.22/202.46 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.46 cut (((j (e21)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5f]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e21)) = (j (h (e12))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H5f. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H56. % 202.22/202.46 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.46 cut (((j (h (e12))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L21_); trivial. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H57. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 apply zenon_H3a. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L27_ *) % 202.22/202.46 assert (zenon_L28_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e12))) -> (~((e11) = (e12))) -> ((h (e11)) = (e21)) -> ((j (h (e11))) = (e11)) -> (~((e12) = (e13))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> (~((e12) = (e14))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H73 zenon_H28 zenon_H53 zenon_H62 zenon_H42 zenon_H6a zenon_H52 zenon_H5c zenon_H6f. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.46 apply (zenon_L22_); trivial. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.46 apply (zenon_L23_); trivial. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.46 apply (zenon_L25_); trivial. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.46 apply (zenon_L26_); trivial. % 202.22/202.46 apply (zenon_L27_); trivial. % 202.22/202.46 (* end of lemma zenon_L28_ *) % 202.22/202.46 assert (zenon_L29_ : (~((j (h (e13))) = (j (e20)))) -> ((h (e13)) = (e20)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H77 zenon_H78. % 202.22/202.46 cut (((h (e13)) = (e20))); [idtac | apply NNPP; zenon_intro zenon_H79]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H79 zenon_H78). % 202.22/202.46 (* end of lemma zenon_L29_ *) % 202.22/202.46 assert (zenon_L30_ : (((j (e20)) = (e10))\/(((j (e20)) = (e11))\/(((j (e20)) = (e12))\/(((j (e20)) = (e13))\/((j (e20)) = (e14)))))) -> (~((e11) = (e13))) -> ((h (e13)) = (e20)) -> ((j (h (e13))) = (e13)) -> (~((e12) = (e13))) -> (~((e10) = (e13))) -> ((op1 (e13) (e13)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e14))) -> False). % 202.22/202.46 do 0 intro. intros zenon_H40 zenon_H7a zenon_H78 zenon_H7b zenon_H6a zenon_H33 zenon_H30 zenon_H10 zenon_H15 zenon_H9 zenon_H3b. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H40); [ zenon_intro zenon_H44 | zenon_intro zenon_H43 ]. % 202.22/202.46 cut (((j (h (e13))) = (e13)) = ((e10) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H33. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7b. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.46 cut (((e10) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7c. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H46. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((e10) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((e10) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7c. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H44. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((j (e20)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e20)) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H80. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H77]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L29_); trivial. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H43); [ zenon_intro zenon_Hc | zenon_intro zenon_H4d ]. % 202.22/202.46 cut (((j (h (e13))) = (e13)) = ((e11) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7b. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.46 cut (((e11) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H81. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H17. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((e11) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((e11) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H82. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H81. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_Hc. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((j (e20)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e20)) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H80. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H77]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L29_); trivial. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H7. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H4d); [ zenon_intro zenon_H23 | zenon_intro zenon_H4e ]. % 202.22/202.46 cut (((j (h (e13))) = (e13)) = ((e12) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H6a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7b. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.46 cut (((e12) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H83. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H29. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((e12) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((e12) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H84. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e20)) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H83. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H23. % 202.22/202.46 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.46 cut (((j (e20)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e20)) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H80. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_H77]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L29_); trivial. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H27. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 apply (zenon_or_s _ _ zenon_H4e); [ zenon_intro zenon_H2e | zenon_intro zenon_H38 ]. % 202.22/202.46 apply (zenon_L14_); trivial. % 202.22/202.46 apply (zenon_L17_); trivial. % 202.22/202.46 (* end of lemma zenon_L30_ *) % 202.22/202.46 assert (zenon_L31_ : (~((j (h (e13))) = (j (e21)))) -> ((h (e13)) = (e21)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H85 zenon_H86. % 202.22/202.46 cut (((h (e13)) = (e21))); [idtac | apply NNPP; zenon_intro zenon_H87]. % 202.22/202.46 congruence. % 202.22/202.46 exact (zenon_H87 zenon_H86). % 202.22/202.46 (* end of lemma zenon_L31_ *) % 202.22/202.46 assert (zenon_L32_ : (~((e10) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e21)) -> ((j (e21)) = (e10)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H33 zenon_H7b zenon_H86 zenon_H5e. % 202.22/202.46 cut (((j (h (e13))) = (e13)) = ((e10) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H33. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7b. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.46 cut (((e10) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7c. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H46. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((e10) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((e10) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7d. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e21)) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7c. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H5e. % 202.22/202.46 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.46 cut (((j (e21)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H88]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e21)) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H88. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H85]. % 202.22/202.46 congruence. % 202.22/202.46 apply (zenon_L31_); trivial. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H7f. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H6. apply refl_equal. % 202.22/202.46 apply zenon_H32. apply refl_equal. % 202.22/202.46 (* end of lemma zenon_L32_ *) % 202.22/202.46 assert (zenon_L33_ : (~((e11) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e21)) -> ((j (e21)) = (e11)) -> False). % 202.22/202.46 do 0 intro. intros zenon_H7a zenon_H7b zenon_H86 zenon_H60. % 202.22/202.46 cut (((j (h (e13))) = (e13)) = ((e11) = (e13))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H7a. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7b. % 202.22/202.46 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.46 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.46 cut (((e11) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H81. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H17. % 202.22/202.46 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.46 cut (((e11) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 202.22/202.46 congruence. % 202.22/202.46 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13)))) = ((e11) = (j (h (e13))))). % 202.22/202.46 intro zenon_D_pnotp. % 202.22/202.46 apply zenon_H82. % 202.22/202.46 rewrite <- zenon_D_pnotp. % 202.22/202.46 exact zenon_H7e. % 202.22/202.46 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.46 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.46 congruence. % 202.22/202.46 cut (((j (e21)) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H81. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H60. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e21)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H88]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e21)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H88. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H85]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L31_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L33_ *) % 202.22/202.47 assert (zenon_L34_ : (~((e12) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e21)) -> ((j (e21)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H6a zenon_H7b zenon_H86 zenon_H64. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e12) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H83. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e12) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H84. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H83. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H64. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e21)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H88]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e21)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H88. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H85]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L31_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L34_ *) % 202.22/202.47 assert (zenon_L35_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e21)) -> ((j (e21)) = (e13)) -> (~((e11) = (e13))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H42 zenon_H62 zenon_H69 zenon_H7a. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((e11) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H89]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (h (e11))) = (e11)) = ((e13) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H89. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H42. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8b]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11)))) = ((e13) = (j (h (e11))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H48. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.47 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H69. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e21)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H68]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e21)) = (j (h (e11))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H68. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H48. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.47 cut (((j (h (e11))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H61]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L24_); trivial. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L35_ *) % 202.22/202.47 assert (zenon_L36_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e21)) -> ((j (e21)) = (e14)) -> (~((e11) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H42 zenon_H62 zenon_H6e zenon_H8c. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e11) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H8d]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (h (e11))) = (e11)) = ((e14) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H42. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8f]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11)))) = ((e14) = (j (h (e11))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H48. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.47 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H6e. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e21)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H68]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e21)) = (j (h (e11))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H68. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H48. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.47 cut (((j (h (e11))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H61]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L24_); trivial. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L36_ *) % 202.22/202.47 assert (zenon_L37_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e13))) -> ((h (e13)) = (e21)) -> ((j (h (e13))) = (e13)) -> (~((e12) = (e13))) -> (~((e11) = (e13))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e21)) -> (~((e11) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H73 zenon_H33 zenon_H86 zenon_H7b zenon_H6a zenon_H7a zenon_H42 zenon_H62 zenon_H8c. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.47 apply (zenon_L32_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.47 apply (zenon_L33_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.47 apply (zenon_L34_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.47 apply (zenon_L35_); trivial. % 202.22/202.47 apply (zenon_L36_); trivial. % 202.22/202.47 (* end of lemma zenon_L37_ *) % 202.22/202.47 assert (zenon_L38_ : (~((j (h (e13))) = (j (e22)))) -> ((h (e13)) = (e22)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H90 zenon_H91. % 202.22/202.47 cut (((h (e13)) = (e22))); [idtac | apply NNPP; zenon_intro zenon_H92]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_H92 zenon_H91). % 202.22/202.47 (* end of lemma zenon_L38_ *) % 202.22/202.47 assert (zenon_L39_ : (~((e10) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e22)) -> ((j (e22)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H33 zenon_H7b zenon_H91 zenon_H93. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e10) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H33. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e10) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H93. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e22)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H94]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e22)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H94. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H90]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L38_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L39_ *) % 202.22/202.47 assert (zenon_L40_ : (~((e11) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e22)) -> ((j (e22)) = (e11)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H7a zenon_H7b zenon_H91 zenon_H95. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e11) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H81. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e11) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H82. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H81. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H95. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e22)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H94]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e22)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H94. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H90]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L38_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L40_ *) % 202.22/202.47 assert (zenon_L41_ : (~((e12) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e22)) -> ((j (e22)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H6a zenon_H7b zenon_H91 zenon_H96. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e12) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H83. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e12) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H84. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H83. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H96. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e22)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H94]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e22)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H94. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H90]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L38_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L41_ *) % 202.22/202.47 assert (zenon_L42_ : (~((j (h (e12))) = (j (e22)))) -> ((h (e12)) = (e22)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H97 zenon_H98. % 202.22/202.47 cut (((h (e12)) = (e22))); [idtac | apply NNPP; zenon_intro zenon_H99]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_H99 zenon_H98). % 202.22/202.47 (* end of lemma zenon_L42_ *) % 202.22/202.47 assert (zenon_L43_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e22)) -> ((j (e22)) = (e13)) -> (~((e12) = (e13))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H52 zenon_H98 zenon_H9a zenon_H6a. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((e12) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H6b]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (h (e12))) = (e12)) = ((e13) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H52. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12)))) = ((e13) = (j (h (e12))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H56. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.47 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H9a. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e22)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H9b]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e22)) = (j (h (e12))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H56. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.47 cut (((j (h (e12))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L42_); trivial. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L43_ *) % 202.22/202.47 assert (zenon_L44_ : ((j (h (e13))) = (e13)) -> ((h (e13)) = (e22)) -> ((j (e22)) = (e14)) -> (~((e13) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H7b zenon_H91 zenon_H9c zenon_H9d. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e14) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Ha0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e14) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H9c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e22)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H94]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e22)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H94. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H90]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L38_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L44_ *) % 202.22/202.47 assert (zenon_L45_ : (((j (e22)) = (e10))\/(((j (e22)) = (e11))\/(((j (e22)) = (e12))\/(((j (e22)) = (e13))\/((j (e22)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e11) = (e13))) -> (~((e12) = (e13))) -> ((h (e12)) = (e22)) -> ((j (h (e12))) = (e12)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e22)) -> (~((e13) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Ha1 zenon_H33 zenon_H7a zenon_H6a zenon_H98 zenon_H52 zenon_H7b zenon_H91 zenon_H9d. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha1); [ zenon_intro zenon_H93 | zenon_intro zenon_Ha2 ]. % 202.22/202.47 apply (zenon_L39_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha2); [ zenon_intro zenon_H95 | zenon_intro zenon_Ha3 ]. % 202.22/202.47 apply (zenon_L40_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha3); [ zenon_intro zenon_H96 | zenon_intro zenon_Ha4 ]. % 202.22/202.47 apply (zenon_L41_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha4); [ zenon_intro zenon_H9a | zenon_intro zenon_H9c ]. % 202.22/202.47 apply (zenon_L43_); trivial. % 202.22/202.47 apply (zenon_L44_); trivial. % 202.22/202.47 (* end of lemma zenon_L45_ *) % 202.22/202.47 assert (zenon_L46_ : (~((j (h (e14))) = (j (e20)))) -> ((h (e14)) = (e20)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Ha5 zenon_Ha6. % 202.22/202.47 cut (((h (e14)) = (e20))); [idtac | apply NNPP; zenon_intro zenon_Ha7]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Ha7 zenon_Ha6). % 202.22/202.47 (* end of lemma zenon_L46_ *) % 202.22/202.47 assert (zenon_L47_ : (((j (e20)) = (e10))\/(((j (e20)) = (e11))\/(((j (e20)) = (e12))\/(((j (e20)) = (e13))\/((j (e20)) = (e14)))))) -> (~((e11) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e20)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e20) (e20))) = (op1 (j (e20)) (j (e20)))) -> ((op2 (e20) (e20)) = (e20)) -> (~((e10) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H40 zenon_H8c zenon_H6f zenon_Ha6 zenon_Ha8 zenon_H9d zenon_H10 zenon_H15 zenon_H9 zenon_H3b. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H40); [ zenon_intro zenon_H44 | zenon_intro zenon_H43 ]. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haa]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e10) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haa. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e20)) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H44. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e20)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e20)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Had. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_Ha5]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L46_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H43); [ zenon_intro zenon_Hc | zenon_intro zenon_H4d ]. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e11) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e11) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haf. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e20)) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hc. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e20)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e20)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Had. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_Ha5]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L46_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H4d); [ zenon_intro zenon_H23 | zenon_intro zenon_H4e ]. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e12) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e12) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e20)) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H23. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e20)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e20)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Had. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_Ha5]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L46_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H4e); [ zenon_intro zenon_H2e | zenon_intro zenon_H38 ]. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e13) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb3. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e20)) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H2e. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e20)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e20)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Had. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e20)))); [idtac | apply NNPP; zenon_intro zenon_Ha5]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L46_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply (zenon_L17_); trivial. % 202.22/202.47 (* end of lemma zenon_L47_ *) % 202.22/202.47 assert (zenon_L48_ : (~((j (h (e14))) = (j (e21)))) -> ((h (e14)) = (e21)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hb4 zenon_Hb5. % 202.22/202.47 cut (((h (e14)) = (e21))); [idtac | apply NNPP; zenon_intro zenon_Hb6]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hb6 zenon_Hb5). % 202.22/202.47 (* end of lemma zenon_L48_ *) % 202.22/202.47 assert (zenon_L49_ : (~((e10) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e21)) -> ((j (e21)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H3b zenon_Ha8 zenon_Hb5 zenon_H5e. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haa]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e10) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haa. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H5e. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e21)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb7]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e21)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb7. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_Hb4]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L48_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L49_ *) % 202.22/202.47 assert (zenon_L50_ : (~((e11) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e21)) -> ((j (e21)) = (e11)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H8c zenon_Ha8 zenon_Hb5 zenon_H60. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e11) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e11) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haf. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H60. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e21)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb7]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e21)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb7. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_Hb4]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L48_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L50_ *) % 202.22/202.47 assert (zenon_L51_ : (~((e12) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e21)) -> ((j (e21)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H6f zenon_Ha8 zenon_Hb5 zenon_H64. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e12) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e12) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H64. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e21)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb7]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e21)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb7. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_Hb4]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L48_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L51_ *) % 202.22/202.47 assert (zenon_L52_ : (~((e13) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e21)) -> ((j (e21)) = (e13)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H9d zenon_Ha8 zenon_Hb5 zenon_H69. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e13) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb3. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H69. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e21)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb7]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e21)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb7. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_Hb4]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L48_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L52_ *) % 202.22/202.47 assert (zenon_L53_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e21)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e21)) -> (~((e11) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H73 zenon_H3b zenon_H6f zenon_Hb5 zenon_Ha8 zenon_H9d zenon_H42 zenon_H62 zenon_H8c. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.47 apply (zenon_L49_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.47 apply (zenon_L50_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.47 apply (zenon_L51_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.47 apply (zenon_L52_); trivial. % 202.22/202.47 apply (zenon_L36_); trivial. % 202.22/202.47 (* end of lemma zenon_L53_ *) % 202.22/202.47 assert (zenon_L54_ : (~((j (h (e14))) = (j (e22)))) -> ((h (e14)) = (e22)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hb8 zenon_Hb9. % 202.22/202.47 cut (((h (e14)) = (e22))); [idtac | apply NNPP; zenon_intro zenon_Hba]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hba zenon_Hb9). % 202.22/202.47 (* end of lemma zenon_L54_ *) % 202.22/202.47 assert (zenon_L55_ : (~((e10) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e22)) -> ((j (e22)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H3b zenon_Ha8 zenon_Hb9 zenon_H93. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haa]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e10) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haa. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H93. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e22)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hbb]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e22)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hbb. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_Hb8]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L54_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L55_ *) % 202.22/202.47 assert (zenon_L56_ : (~((e11) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e22)) -> ((j (e22)) = (e11)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H8c zenon_Ha8 zenon_Hb9 zenon_H95. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e11) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e11) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haf. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H95. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e22)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hbb]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e22)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hbb. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_Hb8]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L54_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L56_ *) % 202.22/202.47 assert (zenon_L57_ : (~((e12) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e22)) -> ((j (e22)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H6f zenon_Ha8 zenon_Hb9 zenon_H96. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e12) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e12) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H96. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e22)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hbb]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e22)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hbb. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_Hb8]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L54_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L57_ *) % 202.22/202.47 assert (zenon_L58_ : (~((e13) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e22)) -> ((j (e22)) = (e13)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H9d zenon_Ha8 zenon_Hb9 zenon_H9a. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e13) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb3. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H9a. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e22)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hbb]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e22)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hbb. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_Hb8]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L54_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L58_ *) % 202.22/202.47 assert (zenon_L59_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e22)) -> ((j (e22)) = (e14)) -> (~((e12) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H52 zenon_H98 zenon_H9c zenon_H6f. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e12) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H70]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (h (e12))) = (e12)) = ((e14) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H70. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H52. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H71. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H72]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12)))) = ((e14) = (j (h (e12))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H72. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H56. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.47 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e22)) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H71. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H9c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e22)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H9b]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e22)) = (j (h (e12))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H56. % 202.22/202.47 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.47 cut (((j (h (e12))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L42_); trivial. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H57. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L59_ *) % 202.22/202.47 assert (zenon_L60_ : (((j (e22)) = (e10))\/(((j (e22)) = (e11))\/(((j (e22)) = (e12))\/(((j (e22)) = (e13))\/((j (e22)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> ((h (e14)) = (e22)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e22)) -> (~((e12) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Ha1 zenon_H3b zenon_H8c zenon_Hb9 zenon_Ha8 zenon_H9d zenon_H52 zenon_H98 zenon_H6f. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha1); [ zenon_intro zenon_H93 | zenon_intro zenon_Ha2 ]. % 202.22/202.47 apply (zenon_L55_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha2); [ zenon_intro zenon_H95 | zenon_intro zenon_Ha3 ]. % 202.22/202.47 apply (zenon_L56_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha3); [ zenon_intro zenon_H96 | zenon_intro zenon_Ha4 ]. % 202.22/202.47 apply (zenon_L57_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Ha4); [ zenon_intro zenon_H9a | zenon_intro zenon_H9c ]. % 202.22/202.47 apply (zenon_L58_); trivial. % 202.22/202.47 apply (zenon_L59_); trivial. % 202.22/202.47 (* end of lemma zenon_L60_ *) % 202.22/202.47 assert (zenon_L61_ : (~((j (h (e14))) = (j (e23)))) -> ((h (e14)) = (e23)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hbc zenon_Hbd. % 202.22/202.47 cut (((h (e14)) = (e23))); [idtac | apply NNPP; zenon_intro zenon_Hbe]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hbe zenon_Hbd). % 202.22/202.47 (* end of lemma zenon_L61_ *) % 202.22/202.47 assert (zenon_L62_ : (~((e10) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e23)) -> ((j (e23)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H3b zenon_Ha8 zenon_Hbd zenon_Hbf. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haa]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e10) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haa. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e23)) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hbf. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e23)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hc0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e23)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hc0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hbc]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L61_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L62_ *) % 202.22/202.47 assert (zenon_L63_ : (~((e11) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e23)) -> ((j (e23)) = (e11)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H8c zenon_Ha8 zenon_Hbd zenon_Hc1. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e11) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e11) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haf. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e23)) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hc1. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e23)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hc0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e23)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hc0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hbc]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L61_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L63_ *) % 202.22/202.47 assert (zenon_L64_ : (~((e12) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e23)) -> ((j (e23)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H6f zenon_Ha8 zenon_Hbd zenon_Hc2. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e12) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e12) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e23)) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hc2. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e23)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hc0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e23)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hc0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hbc]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L61_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L64_ *) % 202.22/202.47 assert (zenon_L65_ : (~((e13) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e23)) -> ((j (e23)) = (e13)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H9d zenon_Ha8 zenon_Hbd zenon_Hc3. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e13) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb3. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e23)) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hc3. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e23)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hc0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e23)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hc0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hbc]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L61_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L65_ *) % 202.22/202.47 assert (zenon_L66_ : (~((j (h (e13))) = (j (e23)))) -> ((h (e13)) = (e23)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hc4 zenon_Hc5. % 202.22/202.47 cut (((h (e13)) = (e23))); [idtac | apply NNPP; zenon_intro zenon_Hc6]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hc6 zenon_Hc5). % 202.22/202.47 (* end of lemma zenon_L66_ *) % 202.22/202.47 assert (zenon_L67_ : ((j (h (e13))) = (e13)) -> ((h (e13)) = (e23)) -> ((j (e23)) = (e14)) -> (~((e13) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H7b zenon_Hc5 zenon_Hc7 zenon_H9d. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e14) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Ha0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e14) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e23)) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hc7. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e23)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hc8]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e23)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hc8. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hc4]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L66_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L67_ *) % 202.22/202.47 assert (zenon_L68_ : (((j (e23)) = (e10))\/(((j (e23)) = (e11))\/(((j (e23)) = (e12))\/(((j (e23)) = (e13))\/((j (e23)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e23)) -> ((j (h (e14))) = (e14)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e23)) -> (~((e13) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hc9 zenon_H3b zenon_H8c zenon_H6f zenon_Hbd zenon_Ha8 zenon_H7b zenon_Hc5 zenon_H9d. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hc9); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hca ]. % 202.22/202.47 apply (zenon_L62_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hca); [ zenon_intro zenon_Hc1 | zenon_intro zenon_Hcb ]. % 202.22/202.47 apply (zenon_L63_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hcb); [ zenon_intro zenon_Hc2 | zenon_intro zenon_Hcc ]. % 202.22/202.47 apply (zenon_L64_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hcc); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc7 ]. % 202.22/202.47 apply (zenon_L65_); trivial. % 202.22/202.47 apply (zenon_L67_); trivial. % 202.22/202.47 (* end of lemma zenon_L68_ *) % 202.22/202.47 assert (zenon_L69_ : (~((e10) = (e11))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e21)) -> ((j (e21)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H16 zenon_H42 zenon_H62 zenon_H5e. % 202.22/202.47 cut (((j (h (e11))) = (e11)) = ((e10) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H16. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H42. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (h (e11))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e11))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H45. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H47]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11)))) = ((e10) = (j (h (e11))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H47. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H48. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.47 cut (((j (h (e11))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e21)) = (e10)) = ((j (h (e11))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H45. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H5e. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e21)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H68]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e21)) = (j (h (e11))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H68. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H48. % 202.22/202.47 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.47 cut (((j (h (e11))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H61]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L24_); trivial. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H49. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L69_ *) % 202.22/202.47 assert (zenon_L70_ : (~((j (h (e14))) = (j (e24)))) -> ((h (e14)) = (e24)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hcd zenon_Hce. % 202.22/202.47 cut (((h (e14)) = (e24))); [idtac | apply NNPP; zenon_intro zenon_Hcf]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hcf zenon_Hce). % 202.22/202.47 (* end of lemma zenon_L70_ *) % 202.22/202.47 assert (zenon_L71_ : (~((e10) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e24)) -> ((j (e24)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H3b zenon_Ha8 zenon_Hce zenon_Hd0. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haa]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e10) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haa. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e10)) = ((j (h (e14))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hd0. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e24)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e24)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hcd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L70_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L71_ *) % 202.22/202.47 assert (zenon_L72_ : (~((e11) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e24)) -> ((j (e24)) = (e11)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H8c zenon_Ha8 zenon_Hce zenon_Hd2. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e11) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H8c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e11) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Haf. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e11)) = ((j (h (e14))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hae. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hd2. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e24)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e24)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hcd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L70_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L72_ *) % 202.22/202.47 assert (zenon_L73_ : (~((j (e24)) = (j (op2 (e21) (e21))))) -> ((op2 (e21) (e21)) = (e24)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hd3 zenon_Hd4. % 202.22/202.47 cut (((e24) = (op2 (e21) (e21)))); [idtac | apply NNPP; zenon_intro zenon_Hd5]. % 202.22/202.47 congruence. % 202.22/202.47 apply zenon_Hd5. apply sym_equal. exact zenon_Hd4. % 202.22/202.47 (* end of lemma zenon_L73_ *) % 202.22/202.47 assert (zenon_L74_ : (~((op1 (j (e21)) (j (e21))) = (op1 (e11) (e11)))) -> ((j (e21)) = (e11)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hd6 zenon_H60. % 202.22/202.47 cut (((j (e21)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hd7]. % 202.22/202.47 cut (((j (e21)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_Hd7]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hd7 zenon_H60). % 202.22/202.47 exact (zenon_Hd7 zenon_H60). % 202.22/202.47 (* end of lemma zenon_L74_ *) % 202.22/202.47 assert (zenon_L75_ : (~((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))) -> ((op1 (e11) (e11)) = (e10)) -> ((j (e21)) = (e11)) -> ((op1 (e14) (e14)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hd8 zenon_Hf zenon_H60 zenon_H10. % 202.22/202.47 cut (((op1 (e11) (e11)) = (e10)) = ((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd8. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hf. % 202.22/202.47 cut (((e10) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 202.22/202.47 cut (((op1 (e11) (e11)) = (op1 (j (e21)) (j (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hd9]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21))))); [ zenon_intro zenon_Hda | zenon_intro zenon_Hdb ]. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21)))) = ((op1 (e11) (e11)) = (op1 (j (e21)) (j (e21))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd9. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hda. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hdb]. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (e11) (e11)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L74_); trivial. % 202.22/202.47 apply zenon_Hdb. apply refl_equal. % 202.22/202.47 apply zenon_Hdb. apply refl_equal. % 202.22/202.47 apply zenon_H11. apply sym_equal. exact zenon_H10. % 202.22/202.47 (* end of lemma zenon_L75_ *) % 202.22/202.47 assert (zenon_L76_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op2 (e21) (e21)) = (e24)) -> ((op1 (e11) (e11)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (e21)) = (e11)) -> (~((op1 (e14) (e14)) = (j (e24)))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_Hd4 zenon_Hf zenon_H10 zenon_H60 zenon_Hdd. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((op1 (e14) (e14)) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hdd. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hdc. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_Hd8]. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_He1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((j (op2 (e21) (e21))) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (j (op2 (e21) (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hd3]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L73_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply (zenon_L75_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L76_ *) % 202.22/202.47 assert (zenon_L77_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e11)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e11) (e11)) = (e10)) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e24)) = (e12)) -> (~((e10) = (e12))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_H60 zenon_H10 zenon_Hf zenon_Hd4 zenon_He2 zenon_H28. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((e10) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H28. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H2a]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e12) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H2c]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e12) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He2. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L76_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L77_ *) % 202.22/202.47 assert (zenon_L78_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e11)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e11) (e11)) = (e10)) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e24)) = (e13)) -> (~((e10) = (e13))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_H60 zenon_H10 zenon_Hf zenon_Hd4 zenon_He3 zenon_H33. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((e10) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H33. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H35]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e13) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H35. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H36. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H37]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e13) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H37. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H36. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He3. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L76_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L78_ *) % 202.22/202.47 assert (zenon_L79_ : (~((op1 (j (e21)) (j (e21))) = (op1 (e12) (e12)))) -> ((j (e21)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_He4 zenon_H64. % 202.22/202.47 cut (((j (e21)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_He5]. % 202.22/202.47 cut (((j (e21)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_He5]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_He5 zenon_H64). % 202.22/202.47 exact (zenon_He5 zenon_H64). % 202.22/202.47 (* end of lemma zenon_L79_ *) % 202.22/202.47 assert (zenon_L80_ : (~((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))) -> ((op1 (e12) (e12)) = (e10)) -> ((j (e21)) = (e12)) -> ((op1 (e14) (e14)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hd8 zenon_H25 zenon_H64 zenon_H10. % 202.22/202.47 cut (((op1 (e12) (e12)) = (e10)) = ((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd8. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H25. % 202.22/202.47 cut (((e10) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 202.22/202.47 cut (((op1 (e12) (e12)) = (op1 (j (e21)) (j (e21))))); [idtac | apply NNPP; zenon_intro zenon_He6]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21))))); [ zenon_intro zenon_Hda | zenon_intro zenon_Hdb ]. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21)))) = ((op1 (e12) (e12)) = (op1 (j (e21)) (j (e21))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He6. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hda. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hdb]. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (e12) (e12)))); [idtac | apply NNPP; zenon_intro zenon_He4]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L79_); trivial. % 202.22/202.47 apply zenon_Hdb. apply refl_equal. % 202.22/202.47 apply zenon_Hdb. apply refl_equal. % 202.22/202.47 apply zenon_H11. apply sym_equal. exact zenon_H10. % 202.22/202.47 (* end of lemma zenon_L80_ *) % 202.22/202.47 assert (zenon_L81_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op2 (e21) (e21)) = (e24)) -> ((op1 (e12) (e12)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (e21)) = (e12)) -> (~((op1 (e14) (e14)) = (j (e24)))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_Hd4 zenon_H25 zenon_H10 zenon_H64 zenon_Hdd. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((op1 (e14) (e14)) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hdd. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hdc. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_Hd8]. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_He1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((j (op2 (e21) (e21))) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (j (op2 (e21) (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hd3]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L73_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply (zenon_L80_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L81_ *) % 202.22/202.47 assert (zenon_L82_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e12)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e12) (e12)) = (e10)) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e24)) = (e11)) -> (~((e10) = (e11))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_H64 zenon_H10 zenon_H25 zenon_Hd4 zenon_Hd2 zenon_H16. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((e10) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H16. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H18]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e11) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H18. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H19. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e11) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H1a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H19. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hd2. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L81_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L82_ *) % 202.22/202.47 assert (zenon_L83_ : (~((e12) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e24)) -> ((j (e24)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H6f zenon_Ha8 zenon_Hce zenon_He2. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e12) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e12) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e12)) = ((j (h (e14))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He2. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e24)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e24)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hcd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L70_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L83_ *) % 202.22/202.47 assert (zenon_L84_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e12)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e12) (e12)) = (e10)) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e24)) = (e13)) -> (~((e10) = (e13))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_H64 zenon_H10 zenon_H25 zenon_Hd4 zenon_He3 zenon_H33. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((e10) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H33. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H35]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e13) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H35. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H36. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H37]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e13) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H37. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H36. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He3. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L81_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L84_ *) % 202.22/202.47 assert (zenon_L85_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> ((h (e14)) = (e24)) -> ((j (h (e14))) = (e14)) -> (~((e12) = (e14))) -> (~((e10) = (e13))) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e12)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e12) (e12)) = (e10)) -> ((op2 (e21) (e21)) = (e24)) -> (~((e10) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_He7 zenon_H16 zenon_Hce zenon_Ha8 zenon_H6f zenon_H33 zenon_Hdc zenon_H64 zenon_H10 zenon_H25 zenon_Hd4 zenon_H3b. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.47 apply (zenon_L71_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.47 apply (zenon_L82_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.47 apply (zenon_L83_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.47 apply (zenon_L84_); trivial. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H3d]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e14) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e14) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Heb. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L81_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L85_ *) % 202.22/202.47 assert (zenon_L86_ : (~((e13) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e24)) -> ((j (e24)) = (e13)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H9d zenon_Ha8 zenon_Hce zenon_He3. % 202.22/202.47 cut (((j (h (e14))) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Ha8. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((e13) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb3. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hb2]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e13)) = ((j (h (e14))) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hb2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He3. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e24)) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e14))) = (j (h (e14))))); [ zenon_intro zenon_Hab | zenon_intro zenon_Hac ]. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14)))) = ((j (e24)) = (j (h (e14))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hab. % 202.22/202.47 cut (((j (h (e14))) = (j (h (e14))))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 202.22/202.47 cut (((j (h (e14))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hcd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L70_); trivial. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_Hac. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L86_ *) % 202.22/202.47 assert (zenon_L87_ : (~((op1 (j (e21)) (j (e21))) = (op1 (e13) (e13)))) -> ((j (e21)) = (e13)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hec zenon_H69. % 202.22/202.47 cut (((j (e21)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hed]. % 202.22/202.47 cut (((j (e21)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_Hed]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hed zenon_H69). % 202.22/202.47 exact (zenon_Hed zenon_H69). % 202.22/202.47 (* end of lemma zenon_L87_ *) % 202.22/202.47 assert (zenon_L88_ : (~((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))) -> ((op1 (e13) (e13)) = (e10)) -> ((j (e21)) = (e13)) -> ((op1 (e14) (e14)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hd8 zenon_H30 zenon_H69 zenon_H10. % 202.22/202.47 cut (((op1 (e13) (e13)) = (e10)) = ((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hd8. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H30. % 202.22/202.47 cut (((e10) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 202.22/202.47 cut (((op1 (e13) (e13)) = (op1 (j (e21)) (j (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hee]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21))))); [ zenon_intro zenon_Hda | zenon_intro zenon_Hdb ]. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21)))) = ((op1 (e13) (e13)) = (op1 (j (e21)) (j (e21))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hee. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hda. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (j (e21)) (j (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hdb]. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (e13) (e13)))); [idtac | apply NNPP; zenon_intro zenon_Hec]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L87_); trivial. % 202.22/202.47 apply zenon_Hdb. apply refl_equal. % 202.22/202.47 apply zenon_Hdb. apply refl_equal. % 202.22/202.47 apply zenon_H11. apply sym_equal. exact zenon_H10. % 202.22/202.47 (* end of lemma zenon_L88_ *) % 202.22/202.47 assert (zenon_L89_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op2 (e21) (e21)) = (e24)) -> ((op1 (e13) (e13)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (e21)) = (e13)) -> (~((op1 (e14) (e14)) = (j (e24)))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_Hd4 zenon_H30 zenon_H10 zenon_H69 zenon_Hdd. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((op1 (e14) (e14)) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hdd. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hdc. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_Hd8]. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_He1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((j (op2 (e21) (e21))) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (j (op2 (e21) (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hd3]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L73_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply (zenon_L88_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L89_ *) % 202.22/202.47 assert (zenon_L90_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e11) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e24)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e13)) -> ((op1 (e14) (e14)) = (e10)) -> ((op1 (e13) (e13)) = (e10)) -> ((op2 (e21) (e21)) = (e24)) -> (~((e10) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_He7 zenon_H8c zenon_H6f zenon_Hce zenon_Ha8 zenon_H9d zenon_Hdc zenon_H69 zenon_H10 zenon_H30 zenon_Hd4 zenon_H3b. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.47 apply (zenon_L71_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.47 apply (zenon_L72_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.47 apply (zenon_L83_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.47 apply (zenon_L86_); trivial. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H3d]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e14) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e14) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Heb. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L89_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L90_ *) % 202.22/202.47 assert (zenon_L91_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> ((op1 (e11) (e11)) = (e10)) -> (~((e10) = (e12))) -> ((op1 (e12) (e12)) = (e10)) -> (~((e10) = (e13))) -> (~((e10) = (e11))) -> (~((e10) = (e14))) -> ((op2 (e21) (e21)) = (e24)) -> ((op1 (e13) (e13)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> (~((e13) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e24)) -> (~((e12) = (e14))) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e21)) -> (~((e11) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H73 zenon_Hf zenon_H28 zenon_H25 zenon_H33 zenon_H16 zenon_H3b zenon_Hd4 zenon_H30 zenon_H10 zenon_Hdc zenon_H9d zenon_Ha8 zenon_Hce zenon_H6f zenon_He7 zenon_H42 zenon_H62 zenon_H8c. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.47 apply (zenon_L69_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.47 apply (zenon_L71_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.47 apply (zenon_L72_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.47 apply (zenon_L77_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.47 apply (zenon_L78_); trivial. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e10) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H3d]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e14) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e14) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3e]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e14)) = ((op1 (e14) (e14)) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H3e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Heb. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L76_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.47 apply (zenon_L85_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.47 apply (zenon_L90_); trivial. % 202.22/202.47 apply (zenon_L36_); trivial. % 202.22/202.47 (* end of lemma zenon_L91_ *) % 202.22/202.47 assert (zenon_L92_ : (~((j (h (e13))) = (j (e24)))) -> ((h (e13)) = (e24)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hef zenon_Hf0. % 202.22/202.47 cut (((h (e13)) = (e24))); [idtac | apply NNPP; zenon_intro zenon_Hf1]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hf1 zenon_Hf0). % 202.22/202.47 (* end of lemma zenon_L92_ *) % 202.22/202.47 assert (zenon_L93_ : (~((e10) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> ((j (e24)) = (e10)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H33 zenon_H7b zenon_Hf0 zenon_Hd0. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e10) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H33. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.47 cut (((e10) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H46. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((e10) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e10) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hd0. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((j (e24)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hf2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e24)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hf2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hef]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L92_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L93_ *) % 202.22/202.47 assert (zenon_L94_ : (~((e11) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> ((j (e24)) = (e11)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H7a zenon_H7b zenon_Hf0 zenon_Hd2. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e11) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H7a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H81. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e11) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H82. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H81. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hd2. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e24)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hf2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e24)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hf2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hef]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L92_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L94_ *) % 202.22/202.47 assert (zenon_L95_ : ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> ((j (e24)) = (e14)) -> (~((e13) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H7b zenon_Hf0 zenon_Heb zenon_H9d. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((e13) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9d. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e14) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9e. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.47 cut (((e14) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H3c. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((e14) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Ha0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e14) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Ha0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H9f. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Heb. % 202.22/202.47 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.47 cut (((j (e24)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hf2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e24)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hf2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hef]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L92_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 apply zenon_H3a. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L95_ *) % 202.22/202.47 assert (zenon_L96_ : (~((e12) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> ((j (e24)) = (e12)) -> False). % 202.22/202.47 do 0 intro. intros zenon_H6a zenon_H7b zenon_Hf0 zenon_He2. % 202.22/202.47 cut (((j (h (e13))) = (e13)) = ((e12) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H6a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7b. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H83. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((e12) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H84. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H83. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He2. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e24)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hf2]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e24)) = (j (h (e13))))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hf2. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H7e. % 202.22/202.47 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.47 cut (((j (h (e13))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hef]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L92_); trivial. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H7f. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L96_ *) % 202.22/202.47 assert (zenon_L97_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e12) = (e13))) -> (~((e10) = (e13))) -> ((op2 (e21) (e21)) = (e24)) -> ((op1 (e12) (e12)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (e21)) = (e12)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_He7 zenon_H16 zenon_H6a zenon_H33 zenon_Hd4 zenon_H25 zenon_H10 zenon_H64 zenon_Hdc zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.47 apply (zenon_L93_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.47 apply (zenon_L82_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.47 apply (zenon_L96_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.47 apply (zenon_L84_); trivial. % 202.22/202.47 apply (zenon_L95_); trivial. % 202.22/202.47 (* end of lemma zenon_L97_ *) % 202.22/202.47 assert (zenon_L98_ : (~((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))) -> ((j (e21)) = (e14)) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hd8 zenon_H6e. % 202.22/202.47 cut (((j (e21)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_Hf3]. % 202.22/202.47 cut (((j (e21)) = (e14))); [idtac | apply NNPP; zenon_intro zenon_Hf3]. % 202.22/202.47 congruence. % 202.22/202.47 exact (zenon_Hf3 zenon_H6e). % 202.22/202.47 exact (zenon_Hf3 zenon_H6e). % 202.22/202.47 (* end of lemma zenon_L98_ *) % 202.22/202.47 assert (zenon_L99_ : ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e21)) = (e14)) -> (~((op1 (e14) (e14)) = (j (e24)))) -> False). % 202.22/202.47 do 0 intro. intros zenon_Hdc zenon_Hd4 zenon_H6e zenon_Hdd. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((op1 (e14) (e14)) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_Hdd. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hdc. % 202.22/202.47 cut (((op1 (j (e21)) (j (e21))) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_Hd8]. % 202.22/202.47 cut (((j (op2 (e21) (e21))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_He1]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((j (e24)) = (j (e24)))); [ zenon_intro zenon_Hde | zenon_intro zenon_Hdf ]. % 202.22/202.47 cut (((j (e24)) = (j (e24))) = ((j (op2 (e21) (e21))) = (j (e24)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He1. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hde. % 202.22/202.47 cut (((j (e24)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 202.22/202.47 cut (((j (e24)) = (j (op2 (e21) (e21))))); [idtac | apply NNPP; zenon_intro zenon_Hd3]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L73_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply (zenon_L98_); trivial. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 apply zenon_Hdf. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L99_ *) % 202.22/202.47 assert (zenon_L100_ : ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e14)) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e24)) = (e11)) -> (~((e10) = (e11))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H10 zenon_Hdc zenon_H6e zenon_Hd4 zenon_Hd2 zenon_H16. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((e10) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H16. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H18]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e11) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H18. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.47 cut (((e11) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H19. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H17. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((e11) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e11) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H1a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H19. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_Hd2. % 202.22/202.47 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L99_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 apply zenon_H7. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L100_ *) % 202.22/202.47 assert (zenon_L101_ : ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (e21)) = (e14)) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e24)) = (e12)) -> (~((e10) = (e12))) -> False). % 202.22/202.47 do 0 intro. intros zenon_H10 zenon_Hdc zenon_H6e zenon_Hd4 zenon_He2 zenon_H28. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((e10) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H28. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H2a]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e12) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2a. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.47 cut (((e12) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H29. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((e12) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H2c]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e12) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2c. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H2b. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He2. % 202.22/202.47 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L99_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 apply zenon_H27. apply refl_equal. % 202.22/202.47 (* end of lemma zenon_L101_ *) % 202.22/202.47 assert (zenon_L102_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e10) = (e12))) -> (~((e10) = (e13))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e21)) = (e14)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.47 do 0 intro. intros zenon_He7 zenon_H16 zenon_H28 zenon_H33 zenon_Hd4 zenon_H6e zenon_Hdc zenon_H10 zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.47 apply (zenon_L93_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.47 apply (zenon_L100_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.47 apply (zenon_L101_); trivial. % 202.22/202.47 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((e10) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H33. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H35]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e10)) = ((e13) = (e10))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H35. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H10. % 202.22/202.47 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.47 cut (((e13) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H36. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H34. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((e13) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H37]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e13) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H37. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 202.22/202.47 congruence. % 202.22/202.47 cut (((j (e24)) = (e13)) = ((op1 (e14) (e14)) = (e13))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_H36. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_He3. % 202.22/202.47 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.47 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.47 congruence. % 202.22/202.47 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.47 intro zenon_D_pnotp. % 202.22/202.47 apply zenon_He0. % 202.22/202.47 rewrite <- zenon_D_pnotp. % 202.22/202.47 exact zenon_H1b. % 202.22/202.47 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.47 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.47 congruence. % 202.22/202.47 apply (zenon_L99_); trivial. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H1c. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H6. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply zenon_H32. apply refl_equal. % 202.22/202.47 apply (zenon_L95_); trivial. % 202.22/202.47 (* end of lemma zenon_L102_ *) % 202.22/202.47 assert (zenon_L103_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> ((op1 (e11) (e11)) = (e10)) -> ((op1 (e12) (e12)) = (e10)) -> (~((e12) = (e13))) -> (~((e11) = (e13))) -> ((h (e11)) = (e21)) -> ((j (h (e11))) = (e11)) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e10) = (e12))) -> (~((e10) = (e13))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_Hf zenon_H25 zenon_H6a zenon_H7a zenon_H62 zenon_H42 zenon_He7 zenon_H16 zenon_H28 zenon_H33 zenon_Hd4 zenon_Hdc zenon_H10 zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L69_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L93_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L94_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L77_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L78_); trivial. % 202.22/202.48 apply (zenon_L95_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L97_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L35_); trivial. % 202.22/202.48 apply (zenon_L102_); trivial. % 202.22/202.48 (* end of lemma zenon_L103_ *) % 202.22/202.48 assert (zenon_L104_ : (((j (e22)) = (e10))\/(((j (e22)) = (e11))\/(((j (e22)) = (e12))\/(((j (e22)) = (e13))\/((j (e22)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e22)) -> ((j (h (e14))) = (e14)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e22)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Ha1 zenon_H3b zenon_H8c zenon_H6f zenon_Hb9 zenon_Ha8 zenon_H7b zenon_H91 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha1); [ zenon_intro zenon_H93 | zenon_intro zenon_Ha2 ]. % 202.22/202.48 apply (zenon_L55_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha2); [ zenon_intro zenon_H95 | zenon_intro zenon_Ha3 ]. % 202.22/202.48 apply (zenon_L56_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha3); [ zenon_intro zenon_H96 | zenon_intro zenon_Ha4 ]. % 202.22/202.48 apply (zenon_L57_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha4); [ zenon_intro zenon_H9a | zenon_intro zenon_H9c ]. % 202.22/202.48 apply (zenon_L58_); trivial. % 202.22/202.48 apply (zenon_L44_); trivial. % 202.22/202.48 (* end of lemma zenon_L104_ *) % 202.22/202.48 assert (zenon_L105_ : (~((j (h (e12))) = (j (e23)))) -> ((h (e12)) = (e23)) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hf4 zenon_Hf5. % 202.22/202.48 cut (((h (e12)) = (e23))); [idtac | apply NNPP; zenon_intro zenon_Hf6]. % 202.22/202.48 congruence. % 202.22/202.48 exact (zenon_Hf6 zenon_Hf5). % 202.22/202.48 (* end of lemma zenon_L105_ *) % 202.22/202.48 assert (zenon_L106_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e23)) -> ((j (e23)) = (e14)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H52 zenon_Hf5 zenon_Hc7 zenon_H6f. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((e12) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6f. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H70]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e14) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H70. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H71. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H72]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e14) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H72. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H71. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc7. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((j (e23)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hf7]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e23)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hf7. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hf4]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L105_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L106_ *) % 202.22/202.48 assert (zenon_L107_ : (((j (e23)) = (e10))\/(((j (e23)) = (e11))\/(((j (e23)) = (e12))\/(((j (e23)) = (e13))\/((j (e23)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> ((h (e14)) = (e23)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e23)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hc9 zenon_H3b zenon_H8c zenon_Hbd zenon_Ha8 zenon_H9d zenon_H52 zenon_Hf5 zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hc9); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hca ]. % 202.22/202.48 apply (zenon_L62_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hca); [ zenon_intro zenon_Hc1 | zenon_intro zenon_Hcb ]. % 202.22/202.48 apply (zenon_L63_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcb); [ zenon_intro zenon_Hc2 | zenon_intro zenon_Hcc ]. % 202.22/202.48 apply (zenon_L64_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcc); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc7 ]. % 202.22/202.48 apply (zenon_L65_); trivial. % 202.22/202.48 apply (zenon_L106_); trivial. % 202.22/202.48 (* end of lemma zenon_L107_ *) % 202.22/202.48 assert (zenon_L108_ : (~((e10) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e23)) -> ((j (e23)) = (e10)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H33 zenon_H7b zenon_Hc5 zenon_Hbf. % 202.22/202.48 cut (((j (h (e13))) = (e13)) = ((e10) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H33. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7b. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.48 cut (((e10) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H7c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H46. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((e10) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((e10) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H7d. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H7c]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e10)) = ((j (h (e13))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H7c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hbf. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((j (e23)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hc8]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e23)) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hc8. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hc4]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L66_); trivial. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L108_ *) % 202.22/202.48 assert (zenon_L109_ : (~((e11) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e23)) -> ((j (e23)) = (e11)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H7a zenon_H7b zenon_Hc5 zenon_Hc1. % 202.22/202.48 cut (((j (h (e13))) = (e13)) = ((e11) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H7a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7b. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.48 cut (((e11) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H81. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H17. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((e11) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((e11) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H82. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H81]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e11)) = ((j (h (e13))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H81. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc1. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (e23)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hc8]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e23)) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hc8. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hc4]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L66_); trivial. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L109_ *) % 202.22/202.48 assert (zenon_L110_ : (~((e12) = (e13))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e23)) -> ((j (e23)) = (e12)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H6a zenon_H7b zenon_Hc5 zenon_Hc2. % 202.22/202.48 cut (((j (h (e13))) = (e13)) = ((e12) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7b. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H83. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((e12) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H84. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H83]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e12)) = ((j (h (e13))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H83. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc2. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (e23)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Hc8]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e23)) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hc8. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hc4]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L66_); trivial. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L110_ *) % 202.22/202.48 assert (zenon_L111_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e23)) -> ((j (e23)) = (e13)) -> (~((e12) = (e13))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H52 zenon_Hf5 zenon_Hc3 zenon_H6a. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((e12) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H6b]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e13) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e13) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6d. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc3. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (e23)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hf7]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e23)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hf7. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hf4]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L105_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L111_ *) % 202.22/202.48 assert (zenon_L112_ : (((j (e23)) = (e10))\/(((j (e23)) = (e11))\/(((j (e23)) = (e12))\/(((j (e23)) = (e13))\/((j (e23)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e11) = (e13))) -> (~((e12) = (e13))) -> ((h (e12)) = (e23)) -> ((j (h (e12))) = (e12)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e23)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hc9 zenon_H33 zenon_H7a zenon_H6a zenon_Hf5 zenon_H52 zenon_H7b zenon_Hc5 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hc9); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hca ]. % 202.22/202.48 apply (zenon_L108_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hca); [ zenon_intro zenon_Hc1 | zenon_intro zenon_Hcb ]. % 202.22/202.48 apply (zenon_L109_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcb); [ zenon_intro zenon_Hc2 | zenon_intro zenon_Hcc ]. % 202.22/202.48 apply (zenon_L110_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcc); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc7 ]. % 202.22/202.48 apply (zenon_L111_); trivial. % 202.22/202.48 apply (zenon_L67_); trivial. % 202.22/202.48 (* end of lemma zenon_L112_ *) % 202.22/202.48 assert (zenon_L113_ : (~((j (h (e12))) = (j (e24)))) -> ((h (e12)) = (e24)) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hf8 zenon_Hf9. % 202.22/202.48 cut (((h (e12)) = (e24))); [idtac | apply NNPP; zenon_intro zenon_Hfa]. % 202.22/202.48 congruence. % 202.22/202.48 exact (zenon_Hfa zenon_Hf9). % 202.22/202.48 (* end of lemma zenon_L113_ *) % 202.22/202.48 assert (zenon_L114_ : (~((e10) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> ((j (e24)) = (e10)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H28 zenon_H52 zenon_Hf9 zenon_Hd0. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e10) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H28. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.48 cut (((e10) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H54. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H46. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((e10) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e10) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H55. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H54. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hd0. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((j (e24)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hfb]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e24)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hfb. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hf8]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L113_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L114_ *) % 202.22/202.48 assert (zenon_L115_ : (~((e11) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> ((j (e24)) = (e11)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H53 zenon_H52 zenon_Hf9 zenon_Hd2. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e11) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H53. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.48 cut (((e11) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H59. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H17. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((e11) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5a]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e11) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H5a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H59. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hd2. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (e24)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hfb]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e24)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hfb. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hf8]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L113_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L115_ *) % 202.22/202.48 assert (zenon_L116_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> ((j (e24)) = (e13)) -> (~((e12) = (e13))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H52 zenon_Hf9 zenon_He3 zenon_H6a. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((e12) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H6b]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e13) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e13) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6d. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e13)) = ((j (h (e12))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_He3. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (e24)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hfb]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e24)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hfb. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hf8]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L113_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L116_ *) % 202.22/202.48 assert (zenon_L117_ : ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> ((j (e24)) = (e14)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H52 zenon_Hf9 zenon_Heb zenon_H6f. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((e12) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H6f. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H70]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e14) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H70. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H71. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H72]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e14) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H72. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e14)) = ((j (h (e12))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H71. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Heb. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((j (e24)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hfb]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e24)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hfb. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hf8]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L113_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L117_ *) % 202.22/202.48 assert (zenon_L118_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e11) = (e13))) -> ((h (e13)) = (e21)) -> ((j (h (e13))) = (e13)) -> (~((e12) = (e13))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H33 zenon_H7a zenon_H86 zenon_H7b zenon_H6a zenon_H52 zenon_H5c zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L32_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L33_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L34_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L26_); trivial. % 202.22/202.48 apply (zenon_L27_); trivial. % 202.22/202.48 (* end of lemma zenon_L118_ *) % 202.22/202.48 assert (zenon_L119_ : (~((j (h (e11))) = (j (e22)))) -> ((h (e11)) = (e22)) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hfc zenon_Hfd. % 202.22/202.48 cut (((h (e11)) = (e22))); [idtac | apply NNPP; zenon_intro zenon_Hfe]. % 202.22/202.48 congruence. % 202.22/202.48 exact (zenon_Hfe zenon_Hfd). % 202.22/202.48 (* end of lemma zenon_L119_ *) % 202.22/202.48 assert (zenon_L120_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e22)) -> ((j (e22)) = (e13)) -> (~((e11) = (e13))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_Hfd zenon_H9a zenon_H7a. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((e11) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H7a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H89]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e13) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H89. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8b]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e13) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e22)) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H9a. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (e22)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_Hff]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e22)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hff. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_Hfc]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L119_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L120_ *) % 202.22/202.48 assert (zenon_L121_ : (((j (e22)) = (e10))\/(((j (e22)) = (e11))\/(((j (e22)) = (e12))\/(((j (e22)) = (e13))\/((j (e22)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e12) = (e13))) -> (~((e11) = (e13))) -> ((h (e11)) = (e22)) -> ((j (h (e11))) = (e11)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e22)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Ha1 zenon_H33 zenon_H6a zenon_H7a zenon_Hfd zenon_H42 zenon_H7b zenon_H91 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha1); [ zenon_intro zenon_H93 | zenon_intro zenon_Ha2 ]. % 202.22/202.48 apply (zenon_L39_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha2); [ zenon_intro zenon_H95 | zenon_intro zenon_Ha3 ]. % 202.22/202.48 apply (zenon_L40_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha3); [ zenon_intro zenon_H96 | zenon_intro zenon_Ha4 ]. % 202.22/202.48 apply (zenon_L41_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha4); [ zenon_intro zenon_H9a | zenon_intro zenon_H9c ]. % 202.22/202.48 apply (zenon_L120_); trivial. % 202.22/202.48 apply (zenon_L44_); trivial. % 202.22/202.48 (* end of lemma zenon_L121_ *) % 202.22/202.48 assert (zenon_L122_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> ((h (e14)) = (e21)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H3b zenon_H8c zenon_Hb5 zenon_Ha8 zenon_H9d zenon_H52 zenon_H5c zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L49_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L50_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L51_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L52_); trivial. % 202.22/202.48 apply (zenon_L27_); trivial. % 202.22/202.48 (* end of lemma zenon_L122_ *) % 202.22/202.48 assert (zenon_L123_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e22)) -> ((j (e22)) = (e14)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_Hfd zenon_H9c zenon_H8c. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((e11) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H8d]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e14) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8d. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8e. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8f]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e14) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8f. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e22)) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8e. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H9c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((j (e22)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_Hff]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e22)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hff. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_Hfc]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L119_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L123_ *) % 202.22/202.48 assert (zenon_L124_ : (((j (e22)) = (e10))\/(((j (e22)) = (e11))\/(((j (e22)) = (e12))\/(((j (e22)) = (e13))\/((j (e22)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e22)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e22)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Ha1 zenon_H3b zenon_H6f zenon_Hb9 zenon_Ha8 zenon_H9d zenon_H42 zenon_Hfd zenon_H8c. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha1); [ zenon_intro zenon_H93 | zenon_intro zenon_Ha2 ]. % 202.22/202.48 apply (zenon_L55_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha2); [ zenon_intro zenon_H95 | zenon_intro zenon_Ha3 ]. % 202.22/202.48 apply (zenon_L56_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha3); [ zenon_intro zenon_H96 | zenon_intro zenon_Ha4 ]. % 202.22/202.48 apply (zenon_L57_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha4); [ zenon_intro zenon_H9a | zenon_intro zenon_H9c ]. % 202.22/202.48 apply (zenon_L58_); trivial. % 202.22/202.48 apply (zenon_L123_); trivial. % 202.22/202.48 (* end of lemma zenon_L124_ *) % 202.22/202.48 assert (zenon_L125_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e12))) -> (~((e11) = (e12))) -> ((op1 (e12) (e12)) = (e10)) -> (~((e10) = (e13))) -> (~((e10) = (e11))) -> (~((e10) = (e14))) -> ((op2 (e21) (e21)) = (e24)) -> ((op1 (e13) (e13)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> (~((e13) = (e14))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e24)) -> (~((e11) = (e14))) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e21)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H28 zenon_H53 zenon_H25 zenon_H33 zenon_H16 zenon_H3b zenon_Hd4 zenon_H30 zenon_H10 zenon_Hdc zenon_H9d zenon_Ha8 zenon_Hce zenon_H8c zenon_He7 zenon_H52 zenon_H5c zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L22_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L23_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L85_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L90_); trivial. % 202.22/202.48 apply (zenon_L27_); trivial. % 202.22/202.48 (* end of lemma zenon_L125_ *) % 202.22/202.48 assert (zenon_L126_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e11) = (e12))) -> ((op1 (e12) (e12)) = (e10)) -> (~((e12) = (e13))) -> ((h (e12)) = (e21)) -> ((j (h (e12))) = (e12)) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e10) = (e12))) -> (~((e10) = (e13))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H53 zenon_H25 zenon_H6a zenon_H5c zenon_H52 zenon_He7 zenon_H16 zenon_H28 zenon_H33 zenon_Hd4 zenon_Hdc zenon_H10 zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L22_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L23_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L97_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L26_); trivial. % 202.22/202.48 apply (zenon_L102_); trivial. % 202.22/202.48 (* end of lemma zenon_L126_ *) % 202.22/202.48 assert (zenon_L127_ : (~((e10) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e22)) -> ((j (e22)) = (e10)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H28 zenon_H52 zenon_H98 zenon_H93. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e10) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H28. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.48 cut (((e10) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H54. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H46. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((e10) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e10) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H55. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e22)) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H54. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H93. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((j (e22)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H9b]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e22)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H9b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L42_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L127_ *) % 202.22/202.48 assert (zenon_L128_ : (~((e11) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e22)) -> ((j (e22)) = (e11)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H53 zenon_H52 zenon_H98 zenon_H95. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e11) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H53. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.48 cut (((e11) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H59. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H17. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((e11) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5a]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e11) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H5a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e22)) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H59. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H95. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (e22)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H9b]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e22)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H9b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L42_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L128_ *) % 202.22/202.48 assert (zenon_L129_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e22)) -> ((j (e22)) = (e12)) -> (~((e11) = (e12))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_Hfd zenon_H96 zenon_H53. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((e11) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H53. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H65]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e12) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H65. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H66. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e12) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H67. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e22)) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H66. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H96. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (e22)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_Hff]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e22)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hff. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e22)))); [idtac | apply NNPP; zenon_intro zenon_Hfc]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L119_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L129_ *) % 202.22/202.48 assert (zenon_L130_ : (((j (e22)) = (e10))\/(((j (e22)) = (e11))\/(((j (e22)) = (e12))\/(((j (e22)) = (e13))\/((j (e22)) = (e14)))))) -> (~((e10) = (e12))) -> ((h (e12)) = (e22)) -> ((j (h (e12))) = (e12)) -> (~((e11) = (e12))) -> (~((e11) = (e13))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e22)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Ha1 zenon_H28 zenon_H98 zenon_H52 zenon_H53 zenon_H7a zenon_H42 zenon_Hfd zenon_H8c. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha1); [ zenon_intro zenon_H93 | zenon_intro zenon_Ha2 ]. % 202.22/202.48 apply (zenon_L127_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha2); [ zenon_intro zenon_H95 | zenon_intro zenon_Ha3 ]. % 202.22/202.48 apply (zenon_L128_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha3); [ zenon_intro zenon_H96 | zenon_intro zenon_Ha4 ]. % 202.22/202.48 apply (zenon_L129_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Ha4); [ zenon_intro zenon_H9a | zenon_intro zenon_H9c ]. % 202.22/202.48 apply (zenon_L120_); trivial. % 202.22/202.48 apply (zenon_L123_); trivial. % 202.22/202.48 (* end of lemma zenon_L130_ *) % 202.22/202.48 assert (zenon_L131_ : ((j (h (e13))) = (e13)) -> ((h (e13)) = (e21)) -> ((j (e21)) = (e14)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H7b zenon_H86 zenon_H6e zenon_H9d. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((e13) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H9d. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e13))) = (e13)) = ((e14) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H9e. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7b. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H9f. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_Ha0]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((e14) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Ha0. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H9f]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e21)) = (e14)) = ((j (h (e13))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H9f. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H6e. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((j (e21)) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H88]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e13))) = (j (h (e13))))); [ zenon_intro zenon_H7e | zenon_intro zenon_H7f ]. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13)))) = ((j (e21)) = (j (h (e13))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H88. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H7e. % 202.22/202.48 cut (((j (h (e13))) = (j (h (e13))))); [idtac | apply NNPP; zenon_intro zenon_H7f]. % 202.22/202.48 cut (((j (h (e13))) = (j (e21)))); [idtac | apply NNPP; zenon_intro zenon_H85]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L31_); trivial. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H7f. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L131_ *) % 202.22/202.48 assert (zenon_L132_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e21)) -> ((j (h (e14))) = (e14)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e21)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H3b zenon_H8c zenon_H6f zenon_Hb5 zenon_Ha8 zenon_H7b zenon_H86 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L49_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L50_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L51_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L52_); trivial. % 202.22/202.48 apply (zenon_L131_); trivial. % 202.22/202.48 (* end of lemma zenon_L132_ *) % 202.22/202.48 assert (zenon_L133_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e11) = (e13))) -> (~((e12) = (e13))) -> (~((e10) = (e14))) -> ((op2 (e21) (e21)) = (e24)) -> ((op1 (e13) (e13)) = (e10)) -> ((op1 (e14) (e14)) = (e10)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((j (h (e14))) = (e14)) -> ((h (e14)) = (e24)) -> (~((e12) = (e14))) -> (~((e11) = (e14))) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e21)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H33 zenon_H7a zenon_H6a zenon_H3b zenon_Hd4 zenon_H30 zenon_H10 zenon_Hdc zenon_Ha8 zenon_Hce zenon_H6f zenon_H8c zenon_He7 zenon_H7b zenon_H86 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L32_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L33_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L34_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L90_); trivial. % 202.22/202.48 apply (zenon_L131_); trivial. % 202.22/202.48 (* end of lemma zenon_L133_ *) % 202.22/202.48 assert (zenon_L134_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e21)) -> ((j (h (e14))) = (e14)) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e10) = (e12))) -> (~((e10) = (e13))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H3b zenon_H8c zenon_H6f zenon_Hb5 zenon_Ha8 zenon_He7 zenon_H16 zenon_H28 zenon_H33 zenon_Hd4 zenon_Hdc zenon_H10 zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L49_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L50_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L51_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L52_); trivial. % 202.22/202.48 apply (zenon_L102_); trivial. % 202.22/202.48 (* end of lemma zenon_L134_ *) % 202.22/202.48 assert (zenon_L135_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e24)) -> ((j (h (e14))) = (e14)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H3b zenon_H8c zenon_H6f zenon_Hce zenon_Ha8 zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L71_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L72_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L83_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L86_); trivial. % 202.22/202.48 apply (zenon_L95_); trivial. % 202.22/202.48 (* end of lemma zenon_L135_ *) % 202.22/202.48 assert (zenon_L136_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e10) = (e12))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e21)) = (e14)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> (~((e12) = (e13))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H16 zenon_H28 zenon_Hd4 zenon_H6e zenon_Hdc zenon_H10 zenon_H6a zenon_H52 zenon_Hf9 zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L114_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L100_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L101_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L116_); trivial. % 202.22/202.48 apply (zenon_L117_); trivial. % 202.22/202.48 (* end of lemma zenon_L136_ *) % 202.22/202.48 assert (zenon_L137_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e11) = (e13))) -> ((h (e13)) = (e21)) -> ((j (h (e13))) = (e13)) -> ((op1 (e13) (e13)) = (e10)) -> (~((e11) = (e12))) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e10) = (e12))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> (~((e12) = (e13))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H33 zenon_H7a zenon_H86 zenon_H7b zenon_H30 zenon_H53 zenon_He7 zenon_H16 zenon_H28 zenon_Hd4 zenon_Hdc zenon_H10 zenon_H6a zenon_H52 zenon_Hf9 zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L32_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L33_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L34_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L114_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L115_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((e10) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H28. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H2a]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((op1 (e14) (e14)) = (e10)) = ((e12) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H2a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H10. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H2b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H2c]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e12) = (op1 (e14) (e14)))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H2c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H1b. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e12)) = ((op1 (e14) (e14)) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H2b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_He2. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_He0. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H1b. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L89_); trivial. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L116_); trivial. % 202.22/202.48 apply (zenon_L117_); trivial. % 202.22/202.48 apply (zenon_L136_); trivial. % 202.22/202.48 (* end of lemma zenon_L137_ *) % 202.22/202.48 assert (zenon_L138_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> ((h (e14)) = (e21)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> (~((e10) = (e12))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> (~((e12) = (e13))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H3b zenon_H8c zenon_Hb5 zenon_Ha8 zenon_H9d zenon_He7 zenon_H16 zenon_H28 zenon_Hd4 zenon_Hdc zenon_H10 zenon_H6a zenon_H52 zenon_Hf9 zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L49_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L50_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L51_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L52_); trivial. % 202.22/202.48 apply (zenon_L136_); trivial. % 202.22/202.48 (* end of lemma zenon_L138_ *) % 202.22/202.48 assert (zenon_L139_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e11) = (e14))) -> ((h (e14)) = (e24)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H3b zenon_H8c zenon_Hce zenon_Ha8 zenon_H9d zenon_H52 zenon_Hf9 zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L71_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L72_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L83_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L86_); trivial. % 202.22/202.48 apply (zenon_L117_); trivial. % 202.22/202.48 (* end of lemma zenon_L139_ *) % 202.22/202.48 assert (zenon_L140_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e11) = (e13))) -> (~((e12) = (e13))) -> ((h (e12)) = (e24)) -> ((j (h (e12))) = (e12)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H33 zenon_H7a zenon_H6a zenon_Hf9 zenon_H52 zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L93_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L94_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L96_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L116_); trivial. % 202.22/202.48 apply (zenon_L95_); trivial. % 202.22/202.48 (* end of lemma zenon_L140_ *) % 202.22/202.48 assert (zenon_L141_ : (~((j (h (e11))) = (j (e23)))) -> ((h (e11)) = (e23)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H100 zenon_H101. % 202.22/202.48 cut (((h (e11)) = (e23))); [idtac | apply NNPP; zenon_intro zenon_H102]. % 202.22/202.48 congruence. % 202.22/202.48 exact (zenon_H102 zenon_H101). % 202.22/202.48 (* end of lemma zenon_L141_ *) % 202.22/202.48 assert (zenon_L142_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e23)) -> ((j (e23)) = (e14)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_H101 zenon_Hc7 zenon_H8c. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((e11) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H8d]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e14) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8d. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8e. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8f]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e14) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8f. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8e. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc7. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((j (e23)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H103]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e23)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H103. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_H100]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L141_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L142_ *) % 202.22/202.48 assert (zenon_L143_ : (((j (e23)) = (e10))\/(((j (e23)) = (e11))\/(((j (e23)) = (e12))\/(((j (e23)) = (e13))\/((j (e23)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e23)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e23)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hc9 zenon_H3b zenon_H6f zenon_Hbd zenon_Ha8 zenon_H9d zenon_H42 zenon_H101 zenon_H8c. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hc9); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hca ]. % 202.22/202.48 apply (zenon_L62_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hca); [ zenon_intro zenon_Hc1 | zenon_intro zenon_Hcb ]. % 202.22/202.48 apply (zenon_L63_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcb); [ zenon_intro zenon_Hc2 | zenon_intro zenon_Hcc ]. % 202.22/202.48 apply (zenon_L64_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcc); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc7 ]. % 202.22/202.48 apply (zenon_L65_); trivial. % 202.22/202.48 apply (zenon_L142_); trivial. % 202.22/202.48 (* end of lemma zenon_L143_ *) % 202.22/202.48 assert (zenon_L144_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e23)) -> ((j (e23)) = (e13)) -> (~((e11) = (e13))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_H101 zenon_Hc3 zenon_H7a. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((e11) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H7a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H89]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e13) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H89. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8b]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e13) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc3. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (e23)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H103]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e23)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H103. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_H100]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L141_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L144_ *) % 202.22/202.48 assert (zenon_L145_ : (((j (e23)) = (e10))\/(((j (e23)) = (e11))\/(((j (e23)) = (e12))\/(((j (e23)) = (e13))\/((j (e23)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e12) = (e13))) -> (~((e11) = (e13))) -> ((h (e11)) = (e23)) -> ((j (h (e11))) = (e11)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e23)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hc9 zenon_H33 zenon_H6a zenon_H7a zenon_H101 zenon_H42 zenon_H7b zenon_Hc5 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hc9); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hca ]. % 202.22/202.48 apply (zenon_L108_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hca); [ zenon_intro zenon_Hc1 | zenon_intro zenon_Hcb ]. % 202.22/202.48 apply (zenon_L109_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcb); [ zenon_intro zenon_Hc2 | zenon_intro zenon_Hcc ]. % 202.22/202.48 apply (zenon_L110_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcc); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc7 ]. % 202.22/202.48 apply (zenon_L144_); trivial. % 202.22/202.48 apply (zenon_L67_); trivial. % 202.22/202.48 (* end of lemma zenon_L145_ *) % 202.22/202.48 assert (zenon_L146_ : (~((e10) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e23)) -> ((j (e23)) = (e10)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H28 zenon_H52 zenon_Hf5 zenon_Hbf. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e10) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H28. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.48 cut (((e10) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H54. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H46. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((e10) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e10) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H55. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e10)) = ((j (h (e12))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H54. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hbf. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((j (e23)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hf7]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e23)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hf7. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hf4]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L105_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L146_ *) % 202.22/202.48 assert (zenon_L147_ : (~((e11) = (e12))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e23)) -> ((j (e23)) = (e11)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H53 zenon_H52 zenon_Hf5 zenon_Hc1. % 202.22/202.48 cut (((j (h (e12))) = (e12)) = ((e11) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H53. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H52. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.48 cut (((e11) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H59. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H17. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((e11) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H5a]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((e11) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H5a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H59]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e11)) = ((j (h (e12))) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H59. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc1. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (e23)) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_Hf7]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e12))) = (j (h (e12))))); [ zenon_intro zenon_H56 | zenon_intro zenon_H57 ]. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12)))) = ((j (e23)) = (j (h (e12))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_Hf7. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H56. % 202.22/202.48 cut (((j (h (e12))) = (j (h (e12))))); [idtac | apply NNPP; zenon_intro zenon_H57]. % 202.22/202.48 cut (((j (h (e12))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_Hf4]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L105_); trivial. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H57. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L147_ *) % 202.22/202.48 assert (zenon_L148_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e23)) -> ((j (e23)) = (e12)) -> (~((e11) = (e12))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_H101 zenon_Hc2 zenon_H53. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((e11) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H53. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H65]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e12) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H65. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H66. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e12) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H67. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e23)) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H66. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hc2. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (e23)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H103]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e23)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H103. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e23)))); [idtac | apply NNPP; zenon_intro zenon_H100]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L141_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L148_ *) % 202.22/202.48 assert (zenon_L149_ : (((j (e23)) = (e10))\/(((j (e23)) = (e11))\/(((j (e23)) = (e12))\/(((j (e23)) = (e13))\/((j (e23)) = (e14)))))) -> (~((e10) = (e12))) -> (~((e11) = (e12))) -> ((h (e11)) = (e23)) -> ((j (h (e11))) = (e11)) -> (~((e12) = (e13))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e23)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_Hc9 zenon_H28 zenon_H53 zenon_H101 zenon_H42 zenon_H6a zenon_H52 zenon_Hf5 zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hc9); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hca ]. % 202.22/202.48 apply (zenon_L146_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hca); [ zenon_intro zenon_Hc1 | zenon_intro zenon_Hcb ]. % 202.22/202.48 apply (zenon_L147_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcb); [ zenon_intro zenon_Hc2 | zenon_intro zenon_Hcc ]. % 202.22/202.48 apply (zenon_L148_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hcc); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc7 ]. % 202.22/202.48 apply (zenon_L111_); trivial. % 202.22/202.48 apply (zenon_L106_); trivial. % 202.22/202.48 (* end of lemma zenon_L149_ *) % 202.22/202.48 assert (zenon_L150_ : (~((j (h (e11))) = (j (e24)))) -> ((h (e11)) = (e24)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H104 zenon_H105. % 202.22/202.48 cut (((h (e11)) = (e24))); [idtac | apply NNPP; zenon_intro zenon_H106]. % 202.22/202.48 congruence. % 202.22/202.48 exact (zenon_H106 zenon_H105). % 202.22/202.48 (* end of lemma zenon_L150_ *) % 202.22/202.48 assert (zenon_L151_ : (~((e10) = (e11))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> ((j (e24)) = (e10)) -> False). % 202.22/202.48 do 0 intro. intros zenon_H16 zenon_H42 zenon_H105 zenon_Hd0. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e10) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H16. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e10) = (e10))); [ zenon_intro zenon_H46 | zenon_intro zenon_H6 ]. % 202.22/202.48 cut (((e10) = (e10)) = ((j (h (e11))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H45. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H46. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((e10) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H47]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e10) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H47. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e10)) = ((j (h (e11))) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H45. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hd0. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((j (e24)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H107]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e24)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H107. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_H104]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L150_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L151_ *) % 202.22/202.48 assert (zenon_L152_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> ((j (e24)) = (e12)) -> (~((e11) = (e12))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_H105 zenon_He2 zenon_H53. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((e11) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H53. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H65]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e12) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H65. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e12) = (e12))); [ zenon_intro zenon_H29 | zenon_intro zenon_H27 ]. % 202.22/202.48 cut (((e12) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H66. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H29. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((e12) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e12) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H67. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e12)) = ((j (h (e11))) = (e12))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H66. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_He2. % 202.22/202.48 cut (((e12) = (e12))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 202.22/202.48 cut (((j (e24)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H107]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e24)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H107. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_H104]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L150_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 apply zenon_H27. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L152_ *) % 202.22/202.48 assert (zenon_L153_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> ((j (e24)) = (e13)) -> (~((e11) = (e13))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_H105 zenon_He3 zenon_H7a. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((e11) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H7a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H89]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e13) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H89. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e13) = (e13))); [ zenon_intro zenon_H34 | zenon_intro zenon_H32 ]. % 202.22/202.48 cut (((e13) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H34. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((e13) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8b]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e13) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8b. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H8a]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e13)) = ((j (h (e11))) = (e13))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_He3. % 202.22/202.48 cut (((e13) = (e13))); [idtac | apply NNPP; zenon_intro zenon_H32]. % 202.22/202.48 cut (((j (e24)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H107]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e24)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H107. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_H104]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L150_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 apply zenon_H32. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L153_ *) % 202.22/202.48 assert (zenon_L154_ : ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> ((j (e24)) = (e14)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H42 zenon_H105 zenon_Heb zenon_H8c. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((e11) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8c. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H8d]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (h (e11))) = (e11)) = ((e14) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8d. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H42. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e14) = (e14))); [ zenon_intro zenon_H3c | zenon_intro zenon_H3a ]. % 202.22/202.48 cut (((e14) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8e. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H3c. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((e14) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H8f]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((e14) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8f. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H8e]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e14)) = ((j (h (e11))) = (e14))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H8e. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Heb. % 202.22/202.48 cut (((e14) = (e14))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 202.22/202.48 cut (((j (e24)) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H107]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((j (h (e11))) = (j (h (e11))))); [ zenon_intro zenon_H48 | zenon_intro zenon_H49 ]. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11)))) = ((j (e24)) = (j (h (e11))))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H107. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H48. % 202.22/202.48 cut (((j (h (e11))) = (j (h (e11))))); [idtac | apply NNPP; zenon_intro zenon_H49]. % 202.22/202.48 cut (((j (h (e11))) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_H104]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L150_); trivial. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H49. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 apply zenon_H3a. apply refl_equal. % 202.22/202.48 (* end of lemma zenon_L154_ *) % 202.22/202.48 assert (zenon_L155_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (e21)) = (e14)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> (~((e11) = (e12))) -> (~((e11) = (e13))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H16 zenon_Hd4 zenon_H6e zenon_Hdc zenon_H10 zenon_H53 zenon_H7a zenon_H42 zenon_H105 zenon_H8c. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L151_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L100_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L152_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L153_); trivial. % 202.22/202.48 apply (zenon_L154_); trivial. % 202.22/202.48 (* end of lemma zenon_L155_ *) % 202.22/202.48 assert (zenon_L156_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e13))) -> ((h (e13)) = (e21)) -> ((j (h (e13))) = (e13)) -> (~((e12) = (e13))) -> ((op1 (e13) (e13)) = (e10)) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> (~((e11) = (e12))) -> (~((e11) = (e13))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H33 zenon_H86 zenon_H7b zenon_H6a zenon_H30 zenon_He7 zenon_H16 zenon_Hd4 zenon_Hdc zenon_H10 zenon_H53 zenon_H7a zenon_H42 zenon_H105 zenon_H8c. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L32_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L33_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L34_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L151_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.48 cut (((e11) = (e11)) = ((e10) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H16. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H17. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((e11) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H18]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((op1 (e14) (e14)) = (e10)) = ((e11) = (e10))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H18. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H10. % 202.22/202.48 cut (((e10) = (e10))); [idtac | apply NNPP; zenon_intro zenon_H6]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((e11) = (e11))); [ zenon_intro zenon_H17 | zenon_intro zenon_H7 ]. % 202.22/202.48 cut (((e11) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H19. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H17. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((e11) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((e11) = (op1 (e14) (e14)))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H1a. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H1b. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H19]. % 202.22/202.48 congruence. % 202.22/202.48 cut (((j (e24)) = (e11)) = ((op1 (e14) (e14)) = (e11))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_H19. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_Hd2. % 202.22/202.48 cut (((e11) = (e11))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 202.22/202.48 cut (((j (e24)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_He0]. % 202.22/202.48 congruence. % 202.22/202.48 elim (classic ((op1 (e14) (e14)) = (op1 (e14) (e14)))); [ zenon_intro zenon_H1b | zenon_intro zenon_H1c ]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14))) = ((j (e24)) = (op1 (e14) (e14)))). % 202.22/202.48 intro zenon_D_pnotp. % 202.22/202.48 apply zenon_He0. % 202.22/202.48 rewrite <- zenon_D_pnotp. % 202.22/202.48 exact zenon_H1b. % 202.22/202.48 cut (((op1 (e14) (e14)) = (op1 (e14) (e14)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 202.22/202.48 cut (((op1 (e14) (e14)) = (j (e24)))); [idtac | apply NNPP; zenon_intro zenon_Hdd]. % 202.22/202.48 congruence. % 202.22/202.48 apply (zenon_L89_); trivial. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H1c. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H6. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply zenon_H7. apply refl_equal. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L152_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L153_); trivial. % 202.22/202.48 apply (zenon_L154_); trivial. % 202.22/202.48 apply (zenon_L155_); trivial. % 202.22/202.48 (* end of lemma zenon_L156_ *) % 202.22/202.48 assert (zenon_L157_ : (((j (e21)) = (e10))\/(((j (e21)) = (e11))\/(((j (e21)) = (e12))\/(((j (e21)) = (e13))\/((j (e21)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e21)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e11))) -> ((op2 (e21) (e21)) = (e24)) -> ((j (op2 (e21) (e21))) = (op1 (j (e21)) (j (e21)))) -> ((op1 (e14) (e14)) = (e10)) -> (~((e11) = (e12))) -> (~((e11) = (e13))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_H73 zenon_H3b zenon_H6f zenon_Hb5 zenon_Ha8 zenon_H9d zenon_He7 zenon_H16 zenon_Hd4 zenon_Hdc zenon_H10 zenon_H53 zenon_H7a zenon_H42 zenon_H105 zenon_H8c. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L49_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L50_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L51_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L52_); trivial. % 202.22/202.48 apply (zenon_L155_); trivial. % 202.22/202.48 (* end of lemma zenon_L157_ *) % 202.22/202.48 assert (zenon_L158_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e14))) -> (~((e12) = (e14))) -> ((h (e14)) = (e24)) -> ((j (h (e14))) = (e14)) -> (~((e13) = (e14))) -> ((j (h (e11))) = (e11)) -> ((h (e11)) = (e24)) -> (~((e11) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H3b zenon_H6f zenon_Hce zenon_Ha8 zenon_H9d zenon_H42 zenon_H105 zenon_H8c. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L71_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L72_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L83_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L86_); trivial. % 202.22/202.48 apply (zenon_L154_); trivial. % 202.22/202.48 (* end of lemma zenon_L158_ *) % 202.22/202.48 assert (zenon_L159_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e13))) -> (~((e12) = (e13))) -> (~((e11) = (e13))) -> ((h (e11)) = (e24)) -> ((j (h (e11))) = (e11)) -> ((j (h (e13))) = (e13)) -> ((h (e13)) = (e24)) -> (~((e13) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H33 zenon_H6a zenon_H7a zenon_H105 zenon_H42 zenon_H7b zenon_Hf0 zenon_H9d. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L93_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L94_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L96_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L153_); trivial. % 202.22/202.48 apply (zenon_L95_); trivial. % 202.22/202.48 (* end of lemma zenon_L159_ *) % 202.22/202.48 assert (zenon_L160_ : (((j (e24)) = (e10))\/(((j (e24)) = (e11))\/(((j (e24)) = (e12))\/(((j (e24)) = (e13))\/((j (e24)) = (e14)))))) -> (~((e10) = (e12))) -> (~((e11) = (e12))) -> ((h (e11)) = (e24)) -> ((j (h (e11))) = (e11)) -> (~((e12) = (e13))) -> ((j (h (e12))) = (e12)) -> ((h (e12)) = (e24)) -> (~((e12) = (e14))) -> False). % 202.22/202.48 do 0 intro. intros zenon_He7 zenon_H28 zenon_H53 zenon_H105 zenon_H42 zenon_H6a zenon_H52 zenon_Hf9 zenon_H6f. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L114_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L115_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L152_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L116_); trivial. % 202.22/202.48 apply (zenon_L117_); trivial. % 202.22/202.48 (* end of lemma zenon_L160_ *) % 202.22/202.48 apply NNPP. intro zenon_G. % 202.22/202.48 apply (zenon_and_s _ _ ax1). zenon_intro zenon_H16. zenon_intro zenon_H108. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H108). zenon_intro zenon_H28. zenon_intro zenon_H109. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H109). zenon_intro zenon_H33. zenon_intro zenon_H10a. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H10a). zenon_intro zenon_H3b. zenon_intro zenon_H10b. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H10b). zenon_intro zenon_H53. zenon_intro zenon_H10c. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H10c). zenon_intro zenon_H7a. zenon_intro zenon_H10d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H10d). zenon_intro zenon_H8c. zenon_intro zenon_H10e. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H10e). zenon_intro zenon_H6a. zenon_intro zenon_H10f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H10f). zenon_intro zenon_H6f. zenon_intro zenon_H9d. % 202.22/202.48 apply (zenon_and_s _ _ ax4). zenon_intro zenon_H111. zenon_intro zenon_H110. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H110). zenon_intro zenon_H113. zenon_intro zenon_H112. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H112). zenon_intro zenon_H115. zenon_intro zenon_H114. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H114). zenon_intro zenon_H117. zenon_intro zenon_H116. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H116). zenon_intro zenon_H119. zenon_intro zenon_H118. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H118). zenon_intro zenon_H11b. zenon_intro zenon_H11a. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H11a). zenon_intro zenon_Hf. zenon_intro zenon_H11c. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H11c). zenon_intro zenon_H11e. zenon_intro zenon_H11d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H11d). zenon_intro zenon_H120. zenon_intro zenon_H11f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H11f). zenon_intro zenon_H122. zenon_intro zenon_H121. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H121). zenon_intro zenon_H124. zenon_intro zenon_H123. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H123). zenon_intro zenon_H126. zenon_intro zenon_H125. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H125). zenon_intro zenon_H25. zenon_intro zenon_H127. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H127). zenon_intro zenon_H129. zenon_intro zenon_H128. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H128). zenon_intro zenon_H12b. zenon_intro zenon_H12a. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H12a). zenon_intro zenon_H12d. zenon_intro zenon_H12c. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H12c). zenon_intro zenon_H12f. zenon_intro zenon_H12e. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H12e). zenon_intro zenon_H131. zenon_intro zenon_H130. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H130). zenon_intro zenon_H30. zenon_intro zenon_H132. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H132). zenon_intro zenon_H134. zenon_intro zenon_H133. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H133). zenon_intro zenon_H136. zenon_intro zenon_H135. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H135). zenon_intro zenon_H138. zenon_intro zenon_H137. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H137). zenon_intro zenon_H13a. zenon_intro zenon_H139. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H139). zenon_intro zenon_H13b. zenon_intro zenon_H10. % 202.22/202.48 apply (zenon_and_s _ _ ax5). zenon_intro zenon_H9. zenon_intro zenon_H13c. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H13c). zenon_intro zenon_H13e. zenon_intro zenon_H13d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H13d). zenon_intro zenon_H140. zenon_intro zenon_H13f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H13f). zenon_intro zenon_H142. zenon_intro zenon_H141. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H141). zenon_intro zenon_H144. zenon_intro zenon_H143. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H143). zenon_intro zenon_H146. zenon_intro zenon_H145. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H145). zenon_intro zenon_Hd4. zenon_intro zenon_H147. % 202.22/202.48 apply (zenon_notimply_s _ _ zenon_G). zenon_intro zenon_H149. zenon_intro zenon_H148. % 202.22/202.48 apply zenon_H148. zenon_intro zenon_H14a. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H14a). zenon_intro zenon_H14c. zenon_intro zenon_H14b. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H14b). zenon_intro zenon_H14e. zenon_intro zenon_H14d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H14d). zenon_intro zenon_H150. zenon_intro zenon_H14f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H14f). zenon_intro zenon_H152. zenon_intro zenon_H151. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H151). zenon_intro zenon_H154. zenon_intro zenon_H153. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H153). zenon_intro zenon_H156. zenon_intro zenon_H155. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H155). zenon_intro zenon_H158. zenon_intro zenon_H157. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H157). zenon_intro zenon_H15a. zenon_intro zenon_H159. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H159). zenon_intro zenon_H15c. zenon_intro zenon_H15b. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H15b). zenon_intro zenon_H15e. zenon_intro zenon_H15d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H15d). zenon_intro zenon_H160. zenon_intro zenon_H15f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H15f). zenon_intro zenon_H162. zenon_intro zenon_H161. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H161). zenon_intro zenon_H164. zenon_intro zenon_H163. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H163). zenon_intro zenon_H166. zenon_intro zenon_H165. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H165). zenon_intro zenon_H168. zenon_intro zenon_H167. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H167). zenon_intro zenon_H16a. zenon_intro zenon_H169. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H169). zenon_intro zenon_H16c. zenon_intro zenon_H16b. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H16b). zenon_intro zenon_H16e. zenon_intro zenon_H16d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H16d). zenon_intro zenon_H170. zenon_intro zenon_H16f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H16f). zenon_intro zenon_H172. zenon_intro zenon_H171. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H171). zenon_intro zenon_H174. zenon_intro zenon_H173. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H173). zenon_intro zenon_H176. zenon_intro zenon_H175. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H175). zenon_intro zenon_H178. zenon_intro zenon_H177. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H177). zenon_intro zenon_H17a. zenon_intro zenon_H179. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H179). zenon_intro zenon_H17c. zenon_intro zenon_H17b. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H17b). zenon_intro zenon_H15. zenon_intro zenon_H17d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H17d). zenon_intro zenon_H17f. zenon_intro zenon_H17e. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H17e). zenon_intro zenon_H181. zenon_intro zenon_H180. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H180). zenon_intro zenon_H183. zenon_intro zenon_H182. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H182). zenon_intro zenon_H185. zenon_intro zenon_H184. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H184). zenon_intro zenon_H187. zenon_intro zenon_H186. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H186). zenon_intro zenon_Hdc. zenon_intro zenon_H188. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H188). zenon_intro zenon_H18a. zenon_intro zenon_H189. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H189). zenon_intro zenon_H18c. zenon_intro zenon_H18b. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H18b). zenon_intro zenon_H18e. zenon_intro zenon_H18d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H18d). zenon_intro zenon_H190. zenon_intro zenon_H18f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H18f). zenon_intro zenon_H192. zenon_intro zenon_H191. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H191). zenon_intro zenon_H194. zenon_intro zenon_H193. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H193). zenon_intro zenon_H196. zenon_intro zenon_H195. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H195). zenon_intro zenon_H198. zenon_intro zenon_H197. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H197). zenon_intro zenon_H19a. zenon_intro zenon_H199. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H199). zenon_intro zenon_H19c. zenon_intro zenon_H19b. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H19b). zenon_intro zenon_H19e. zenon_intro zenon_H19d. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H19d). zenon_intro zenon_H1a0. zenon_intro zenon_H19f. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H19f). zenon_intro zenon_H1a2. zenon_intro zenon_H1a1. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1a1). zenon_intro zenon_H1a4. zenon_intro zenon_H1a3. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1a3). zenon_intro zenon_H1a6. zenon_intro zenon_H1a5. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1a5). zenon_intro zenon_H1a8. zenon_intro zenon_H1a7. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1a7). zenon_intro zenon_H1aa. zenon_intro zenon_H1a9. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1a9). zenon_intro zenon_H1ac. zenon_intro zenon_H1ab. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1ab). zenon_intro zenon_H1ae. zenon_intro zenon_H1ad. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1ad). zenon_intro zenon_H1b0. zenon_intro zenon_H1af. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1af). zenon_intro zenon_H1b2. zenon_intro zenon_H1b1. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1b1). zenon_intro zenon_H1b4. zenon_intro zenon_H1b3. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1b3). zenon_intro zenon_H1b6. zenon_intro zenon_H1b5. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1b5). zenon_intro zenon_H1b8. zenon_intro zenon_H1b7. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1b7). zenon_intro zenon_H42. zenon_intro zenon_H1b9. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1b9). zenon_intro zenon_H52. zenon_intro zenon_H1ba. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1ba). zenon_intro zenon_H7b. zenon_intro zenon_Ha8. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H149). zenon_intro zenon_H1bc. zenon_intro zenon_H1bb. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1bb). zenon_intro zenon_H1be. zenon_intro zenon_H1bd. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1bd). zenon_intro zenon_H1c0. zenon_intro zenon_H1bf. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1bf). zenon_intro zenon_H1c2. zenon_intro zenon_H1c1. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1c1). zenon_intro zenon_H1c4. zenon_intro zenon_H1c3. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1c3). zenon_intro zenon_H40. zenon_intro zenon_H1c5. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1c5). zenon_intro zenon_H73. zenon_intro zenon_H1c6. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1c6). zenon_intro zenon_Ha1. zenon_intro zenon_H1c7. % 202.22/202.48 apply (zenon_and_s _ _ zenon_H1c7). zenon_intro zenon_Hc9. zenon_intro zenon_He7. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1be); [ zenon_intro zenon_H41 | zenon_intro zenon_H1c8 ]. % 202.22/202.48 apply (zenon_L18_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c8); [ zenon_intro zenon_H62 | zenon_intro zenon_H1c9 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c0); [ zenon_intro zenon_H50 | zenon_intro zenon_H1ca ]. % 202.22/202.48 apply (zenon_L20_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ca); [ zenon_intro zenon_H5c | zenon_intro zenon_H1cb ]. % 202.22/202.48 apply (zenon_L28_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cb); [ zenon_intro zenon_H98 | zenon_intro zenon_H1cc ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L37_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_L45_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L53_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L60_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L68_); trivial. % 202.22/202.48 apply (zenon_L91_); trivial. % 202.22/202.48 apply (zenon_L103_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cc); [ zenon_intro zenon_Hf5 | zenon_intro zenon_Hf9 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L37_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L53_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L104_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L107_); trivial. % 202.22/202.48 apply (zenon_L91_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_L112_); trivial. % 202.22/202.48 apply (zenon_L103_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L69_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L114_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L115_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L77_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L116_); trivial. % 202.22/202.48 apply (zenon_L117_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_L25_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L35_); trivial. % 202.22/202.48 apply (zenon_L36_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c9); [ zenon_intro zenon_Hfd | zenon_intro zenon_H1d3 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c0); [ zenon_intro zenon_H50 | zenon_intro zenon_H1ca ]. % 202.22/202.48 apply (zenon_L20_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ca); [ zenon_intro zenon_H5c | zenon_intro zenon_H1cb ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L118_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_L121_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L122_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L124_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L68_); trivial. % 202.22/202.48 apply (zenon_L125_); trivial. % 202.22/202.48 apply (zenon_L126_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cb); [ zenon_intro zenon_H98 | zenon_intro zenon_H1cc ]. % 202.22/202.48 apply (zenon_L130_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cc); [ zenon_intro zenon_Hf5 | zenon_intro zenon_Hf9 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L132_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L124_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L107_); trivial. % 202.22/202.48 apply (zenon_L133_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_L121_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_L112_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L134_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L124_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L107_); trivial. % 202.22/202.48 apply (zenon_L135_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L137_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_L121_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L138_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L124_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L68_); trivial. % 202.22/202.48 apply (zenon_L139_); trivial. % 202.22/202.48 apply (zenon_L140_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d3); [ zenon_intro zenon_H101 | zenon_intro zenon_H105 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c0); [ zenon_intro zenon_H50 | zenon_intro zenon_H1ca ]. % 202.22/202.48 apply (zenon_L20_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ca); [ zenon_intro zenon_H5c | zenon_intro zenon_H1cb ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L118_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L122_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L104_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L143_); trivial. % 202.22/202.48 apply (zenon_L125_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_L145_); trivial. % 202.22/202.48 apply (zenon_L126_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cb); [ zenon_intro zenon_H98 | zenon_intro zenon_H1cc ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L132_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L60_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L143_); trivial. % 202.22/202.48 apply (zenon_L133_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_L45_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_L145_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L134_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L60_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L143_); trivial. % 202.22/202.48 apply (zenon_L135_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cc); [ zenon_intro zenon_Hf5 | zenon_intro zenon_Hf9 ]. % 202.22/202.48 apply (zenon_L149_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L137_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L138_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L104_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L143_); trivial. % 202.22/202.48 apply (zenon_L139_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_L145_); trivial. % 202.22/202.48 apply (zenon_L140_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c0); [ zenon_intro zenon_H50 | zenon_intro zenon_H1ca ]. % 202.22/202.48 apply (zenon_L20_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ca); [ zenon_intro zenon_H5c | zenon_intro zenon_H1cb ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H73); [ zenon_intro zenon_H5e | zenon_intro zenon_H74 ]. % 202.22/202.48 apply (zenon_L22_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H74); [ zenon_intro zenon_H60 | zenon_intro zenon_H75 ]. % 202.22/202.48 apply (zenon_L23_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H75); [ zenon_intro zenon_H64 | zenon_intro zenon_H76 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He7); [ zenon_intro zenon_Hd0 | zenon_intro zenon_He8 ]. % 202.22/202.48 apply (zenon_L151_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He8); [ zenon_intro zenon_Hd2 | zenon_intro zenon_He9 ]. % 202.22/202.48 apply (zenon_L82_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_He9); [ zenon_intro zenon_He2 | zenon_intro zenon_Hea ]. % 202.22/202.48 apply (zenon_L152_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_He3 | zenon_intro zenon_Heb ]. % 202.22/202.48 apply (zenon_L153_); trivial. % 202.22/202.48 apply (zenon_L154_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H76); [ zenon_intro zenon_H69 | zenon_intro zenon_H6e ]. % 202.22/202.48 apply (zenon_L26_); trivial. % 202.22/202.48 apply (zenon_L27_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cb); [ zenon_intro zenon_H98 | zenon_intro zenon_H1cc ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L156_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_L45_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L157_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L60_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L68_); trivial. % 202.22/202.48 apply (zenon_L158_); trivial. % 202.22/202.48 apply (zenon_L159_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cc); [ zenon_intro zenon_Hf5 | zenon_intro zenon_Hf9 ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c2); [ zenon_intro zenon_H78 | zenon_intro zenon_H1cd ]. % 202.22/202.48 apply (zenon_L30_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H86 | zenon_intro zenon_H1ce ]. % 202.22/202.48 apply (zenon_L156_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1ce); [ zenon_intro zenon_H91 | zenon_intro zenon_H1cf ]. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1c4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_H1d0 ]. % 202.22/202.48 apply (zenon_L47_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_Hb5 | zenon_intro zenon_H1d1 ]. % 202.22/202.48 apply (zenon_L157_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d1); [ zenon_intro zenon_Hb9 | zenon_intro zenon_H1d2 ]. % 202.22/202.48 apply (zenon_L104_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1d2); [ zenon_intro zenon_Hbd | zenon_intro zenon_Hce ]. % 202.22/202.48 apply (zenon_L107_); trivial. % 202.22/202.48 apply (zenon_L158_); trivial. % 202.22/202.48 apply (zenon_or_s _ _ zenon_H1cf); [ zenon_intro zenon_Hc5 | zenon_intro zenon_Hf0 ]. % 202.22/202.48 apply (zenon_L112_); trivial. % 202.22/202.48 apply (zenon_L159_); trivial. % 202.22/202.48 apply (zenon_L160_); trivial. % 202.22/202.48 Qed. % 202.22/202.48 % SZS output end Proof % 202.22/202.48 (* END-PROOF *) % 202.22/202.48 nodes searched: 3503435 % 202.22/202.48 max branch formulas: 5848 % 202.22/202.48 proof nodes created: 2913 % 202.22/202.48 formulas created: 6920684 % 202.22/202.48 %------------------------------------------------------------------------------