%------------------------------------------------------------------------------ % File : Zenon---0.7.1 % Problem : ALG065+1 : TPTP v8.1.0. Released v2.7.0. % Transfm : none % Format : tptp:raw % Command : run_zenon %s %d % Computer : n024.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:07 EDT 2022 % Result : Theorem 33.91s 34.08s % Output : Proof 33.97s % Verified : % SZS Type : - % Comments : %------------------------------------------------------------------------------ %----WARNING: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % 0.07/0.12 % Problem : ALG065+1 : TPTP v8.1.0. Released v2.7.0. % 0.07/0.12 % Command : run_zenon %s %d % 0.13/0.34 % Computer : n024.cluster.edu % 0.13/0.34 % Model : x86_64 x86_64 % 0.13/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz % 0.13/0.34 % Memory : 8042.1875MB % 0.13/0.34 % OS : Linux 3.10.0-693.el7.x86_64 % 0.13/0.34 % CPULimit : 300 % 0.13/0.34 % WCLimit : 600 % 0.13/0.34 % DateTime : Wed Jun 8 02:11:04 EDT 2022 % 0.13/0.34 % CPUTime : % 33.91/34.08 (* PROOF-FOUND *) % 33.91/34.08 % SZS status Theorem % 33.91/34.08 (* BEGIN-PROOF *) % 33.91/34.08 % SZS output start Proof % 33.91/34.08 Theorem co1 : (~(((~((op (e0) (e0)) = (e0)))\/((op (e0) (e0)) = (e0)))/\(((~((op (e0) (e0)) = (e1)))\/((op (e0) (e1)) = (e0)))/\(((~((op (e0) (e0)) = (e2)))\/((op (e0) (e2)) = (e0)))/\(((~((op (e0) (e0)) = (e3)))\/((op (e0) (e3)) = (e0)))/\(((~((op (e0) (e0)) = (e4)))\/((op (e0) (e4)) = (e0)))/\(((~((op (e1) (e1)) = (e0)))\/((op (e1) (e0)) = (e1)))/\(((~((op (e1) (e1)) = (e1)))\/((op (e1) (e1)) = (e1)))/\(((~((op (e1) (e1)) = (e2)))\/((op (e1) (e2)) = (e1)))/\(((~((op (e1) (e1)) = (e3)))\/((op (e1) (e3)) = (e1)))/\(((~((op (e1) (e1)) = (e4)))\/((op (e1) (e4)) = (e1)))/\(((~((op (e2) (e2)) = (e0)))\/((op (e2) (e0)) = (e2)))/\(((~((op (e2) (e2)) = (e1)))\/((op (e2) (e1)) = (e2)))/\(((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2)))/\(((~((op (e2) (e2)) = (e3)))\/((op (e2) (e3)) = (e2)))/\(((~((op (e2) (e2)) = (e4)))\/((op (e2) (e4)) = (e2)))/\(((~((op (e3) (e3)) = (e0)))\/((op (e3) (e0)) = (e3)))/\(((~((op (e3) (e3)) = (e1)))\/((op (e3) (e1)) = (e3)))/\(((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3)))/\(((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3)))/\(((~((op (e3) (e3)) = (e4)))\/((op (e3) (e4)) = (e3)))/\(((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4)))/\(((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4)))/\(((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4)))/\(((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4)))/\(((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4)))/\((((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4)))))))/\((((~((op (e0) (op (e0) (e1))) = (e1)))/\((op (e1) (op (e0) (e1))) = (e0)))\/(((~((op (e1) (op (e1) (e1))) = (e1)))/\((op (e1) (op (e1) (e1))) = (e1)))\/(((~((op (e2) (op (e2) (e1))) = (e1)))/\((op (e1) (op (e2) (e1))) = (e2)))\/(((~((op (e3) (op (e3) (e1))) = (e1)))/\((op (e1) (op (e3) (e1))) = (e3)))\/((~((op (e4) (op (e4) (e1))) = (e1)))/\((op (e1) (op (e4) (e1))) = (e4)))))))/\((((~((op (e0) (op (e0) (e2))) = (e2)))/\((op (e2) (op (e0) (e2))) = (e0)))\/(((~((op (e1) (op (e1) (e2))) = (e2)))/\((op (e2) (op (e1) (e2))) = (e1)))\/(((~((op (e2) (op (e2) (e2))) = (e2)))/\((op (e2) (op (e2) (e2))) = (e2)))\/(((~((op (e3) (op (e3) (e2))) = (e2)))/\((op (e2) (op (e3) (e2))) = (e3)))\/((~((op (e4) (op (e4) (e2))) = (e2)))/\((op (e2) (op (e4) (e2))) = (e4)))))))/\((((~((op (e0) (op (e0) (e3))) = (e3)))/\((op (e3) (op (e0) (e3))) = (e0)))\/(((~((op (e1) (op (e1) (e3))) = (e3)))/\((op (e3) (op (e1) (e3))) = (e1)))\/(((~((op (e2) (op (e2) (e3))) = (e3)))/\((op (e3) (op (e2) (e3))) = (e2)))\/(((~((op (e3) (op (e3) (e3))) = (e3)))/\((op (e3) (op (e3) (e3))) = (e3)))\/((~((op (e4) (op (e4) (e3))) = (e3)))/\((op (e3) (op (e4) (e3))) = (e4)))))))/\(((~((op (e0) (op (e0) (e4))) = (e4)))/\((op (e4) (op (e0) (e4))) = (e0)))\/(((~((op (e1) (op (e1) (e4))) = (e4)))/\((op (e4) (op (e1) (e4))) = (e1)))\/(((~((op (e2) (op (e2) (e4))) = (e4)))/\((op (e4) (op (e2) (e4))) = (e2)))\/(((~((op (e3) (op (e3) (e4))) = (e4)))/\((op (e4) (op (e3) (e4))) = (e3)))\/((~((op (e4) (op (e4) (e4))) = (e4)))/\((op (e4) (op (e4) (e4))) = (e4))))))))))))))))))))))))))))))))))))). % 33.91/34.08 Proof. % 33.91/34.08 assert (zenon_L1_ : (~((e2) = (e2))) -> False). % 33.91/34.08 do 0 intro. intros zenon_H7. % 33.91/34.08 apply zenon_H7. apply refl_equal. % 33.91/34.08 (* end of lemma zenon_L1_ *) % 33.91/34.08 assert (zenon_L2_ : (~((op (e0) (e2)) = (op (unit) (e2)))) -> ((unit) = (e0)) -> False). % 33.91/34.08 do 0 intro. intros zenon_H8 zenon_H9. % 33.91/34.08 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.91/34.08 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.91/34.08 congruence. % 33.91/34.08 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.91/34.08 apply zenon_H7. apply refl_equal. % 33.91/34.08 (* end of lemma zenon_L2_ *) % 33.91/34.08 assert (zenon_L3_ : (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e0)) -> ((op (e0) (e3)) = (e2)) -> False). % 33.91/34.08 do 0 intro. intros zenon_Hb zenon_Hc zenon_H9 zenon_Hd. % 33.91/34.08 cut (((op (unit) (e2)) = (e2)) = ((op (e0) (e2)) = (op (e0) (e3)))). % 33.91/34.08 intro zenon_D_pnotp. % 33.91/34.08 apply zenon_Hb. % 33.91/34.08 rewrite <- zenon_D_pnotp. % 33.91/34.08 exact zenon_Hc. % 33.91/34.08 cut (((e2) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_He]. % 33.91/34.08 cut (((op (unit) (e2)) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hf]. % 33.91/34.08 congruence. % 33.91/34.08 elim (classic ((op (e0) (e2)) = (op (e0) (e2)))); [ zenon_intro zenon_H10 | zenon_intro zenon_H11 ]. % 33.91/34.08 cut (((op (e0) (e2)) = (op (e0) (e2))) = ((op (unit) (e2)) = (op (e0) (e2)))). % 33.91/34.08 intro zenon_D_pnotp. % 33.91/34.08 apply zenon_Hf. % 33.91/34.08 rewrite <- zenon_D_pnotp. % 33.91/34.08 exact zenon_H10. % 33.91/34.08 cut (((op (e0) (e2)) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 33.91/34.08 cut (((op (e0) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H8]. % 33.91/34.08 congruence. % 33.91/34.08 apply (zenon_L2_); trivial. % 33.91/34.08 apply zenon_H11. apply refl_equal. % 33.91/34.08 apply zenon_H11. apply refl_equal. % 33.91/34.08 apply zenon_He. apply sym_equal. exact zenon_Hd. % 33.91/34.08 (* end of lemma zenon_L3_ *) % 33.91/34.08 assert (zenon_L4_ : (~((e1) = (e1))) -> False). % 33.91/34.08 do 0 intro. intros zenon_H12. % 33.91/34.08 apply zenon_H12. apply refl_equal. % 33.91/34.08 (* end of lemma zenon_L4_ *) % 33.91/34.08 assert (zenon_L5_ : (~((op (e1) (e1)) = (op (unit) (e1)))) -> ((unit) = (e1)) -> False). % 33.91/34.08 do 0 intro. intros zenon_H13 zenon_H14. % 33.91/34.08 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.91/34.08 cut (((e1) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H15]. % 33.91/34.08 congruence. % 33.91/34.08 apply zenon_H15. apply sym_equal. exact zenon_H14. % 33.91/34.08 apply zenon_H12. apply refl_equal. % 33.91/34.08 (* end of lemma zenon_L5_ *) % 33.91/34.08 assert (zenon_L6_ : ((op (unit) (e1)) = (e1)) -> ((unit) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> False). % 33.91/34.08 do 0 intro. intros zenon_H16 zenon_H14 zenon_H17 zenon_H18. % 33.91/34.08 elim (classic ((op (e1) (e1)) = (op (e1) (e1)))); [ zenon_intro zenon_H19 | zenon_intro zenon_H1a ]. % 33.91/34.08 cut (((op (e1) (e1)) = (op (e1) (e1))) = ((op (e1) (e0)) = (op (e1) (e1)))). % 33.91/34.08 intro zenon_D_pnotp. % 33.91/34.08 apply zenon_H18. % 33.91/34.08 rewrite <- zenon_D_pnotp. % 33.91/34.08 exact zenon_H19. % 33.91/34.08 cut (((op (e1) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 33.91/34.08 cut (((op (e1) (e1)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H1b]. % 33.91/34.08 congruence. % 33.91/34.08 cut (((op (unit) (e1)) = (e1)) = ((op (e1) (e1)) = (op (e1) (e0)))). % 33.91/34.08 intro zenon_D_pnotp. % 33.91/34.08 apply zenon_H1b. % 33.91/34.08 rewrite <- zenon_D_pnotp. % 33.91/34.08 exact zenon_H16. % 33.91/34.08 cut (((e1) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 33.91/34.08 cut (((op (unit) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 33.91/34.08 congruence. % 33.91/34.08 elim (classic ((op (e1) (e1)) = (op (e1) (e1)))); [ zenon_intro zenon_H19 | zenon_intro zenon_H1a ]. % 33.91/34.08 cut (((op (e1) (e1)) = (op (e1) (e1))) = ((op (unit) (e1)) = (op (e1) (e1)))). % 33.91/34.08 intro zenon_D_pnotp. % 33.91/34.08 apply zenon_H1d. % 33.91/34.08 rewrite <- zenon_D_pnotp. % 33.91/34.08 exact zenon_H19. % 33.91/34.08 cut (((op (e1) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 33.91/34.08 cut (((op (e1) (e1)) = (op (unit) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13]. % 33.91/34.08 congruence. % 33.91/34.08 apply (zenon_L5_); trivial. % 33.91/34.08 apply zenon_H1a. apply refl_equal. % 33.91/34.08 apply zenon_H1a. apply refl_equal. % 33.91/34.08 apply zenon_H1c. apply sym_equal. exact zenon_H17. % 33.91/34.08 apply zenon_H1a. apply refl_equal. % 33.91/34.08 apply zenon_H1a. apply refl_equal. % 33.91/34.08 (* end of lemma zenon_L6_ *) % 33.91/34.08 assert (zenon_L7_ : (~((e3) = (e3))) -> False). % 33.91/34.08 do 0 intro. intros zenon_H1e. % 33.91/34.08 apply zenon_H1e. apply refl_equal. % 33.91/34.08 (* end of lemma zenon_L7_ *) % 33.91/34.08 assert (zenon_L8_ : (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((unit) = (e2)) -> ((e3) = (op (e2) (e4))) -> False). % 33.91/34.08 do 0 intro. intros zenon_H1f zenon_H20 zenon_H21 zenon_H22. % 33.91/34.08 cut (((op (unit) (e3)) = (e3)) = ((op (e2) (e3)) = (op (e2) (e4)))). % 33.91/34.08 intro zenon_D_pnotp. % 33.91/34.08 apply zenon_H1f. % 33.91/34.08 rewrite <- zenon_D_pnotp. % 33.91/34.08 exact zenon_H20. % 33.91/34.08 cut (((e3) = (op (e2) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H23]. % 33.91/34.08 cut (((op (unit) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H24]. % 33.91/34.08 congruence. % 33.91/34.08 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.91/34.08 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (unit) (e3)) = (op (e2) (e3)))). % 33.91/34.08 intro zenon_D_pnotp. % 33.91/34.08 apply zenon_H24. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H25. % 33.91/34.09 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.91/34.09 cut (((op (e2) (e3)) = (op (unit) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H27]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.91/34.09 cut (((e2) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H28]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H28. apply sym_equal. exact zenon_H21. % 33.91/34.09 apply zenon_H1e. apply refl_equal. % 33.91/34.09 apply zenon_H26. apply refl_equal. % 33.91/34.09 apply zenon_H26. apply refl_equal. % 33.91/34.09 exact (zenon_H23 zenon_H22). % 33.91/34.09 (* end of lemma zenon_L8_ *) % 33.91/34.09 assert (zenon_L9_ : (~((op (e1) (e3)) = (op (e1) (unit)))) -> ((unit) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H29 zenon_H2a. % 33.91/34.09 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.91/34.09 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H12. apply refl_equal. % 33.91/34.09 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.91/34.09 (* end of lemma zenon_L9_ *) % 33.91/34.09 assert (zenon_L10_ : ((op (e1) (unit)) = (e1)) -> ((unit) = (e3)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H2c zenon_H2a zenon_H17 zenon_H2d. % 33.91/34.09 elim (classic ((op (e1) (e3)) = (op (e1) (e3)))); [ zenon_intro zenon_H2e | zenon_intro zenon_H2f ]. % 33.91/34.09 cut (((op (e1) (e3)) = (op (e1) (e3))) = ((op (e1) (e0)) = (op (e1) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H2d. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H2e. % 33.91/34.09 cut (((op (e1) (e3)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 33.91/34.09 cut (((op (e1) (e3)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H30]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e3)) = (op (e1) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H30. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H2c. % 33.91/34.09 cut (((e1) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H1c]. % 33.91/34.09 cut (((op (e1) (unit)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H31]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e1) (e3)) = (op (e1) (e3)))); [ zenon_intro zenon_H2e | zenon_intro zenon_H2f ]. % 33.91/34.09 cut (((op (e1) (e3)) = (op (e1) (e3))) = ((op (e1) (unit)) = (op (e1) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H31. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H2e. % 33.91/34.09 cut (((op (e1) (e3)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 33.91/34.09 cut (((op (e1) (e3)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H29]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L9_); trivial. % 33.91/34.09 apply zenon_H2f. apply refl_equal. % 33.91/34.09 apply zenon_H2f. apply refl_equal. % 33.91/34.09 apply zenon_H1c. apply sym_equal. exact zenon_H17. % 33.91/34.09 apply zenon_H2f. apply refl_equal. % 33.91/34.09 apply zenon_H2f. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L10_ *) % 33.91/34.09 assert (zenon_L11_ : (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((unit) = (e4)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H32 zenon_H16 zenon_H33 zenon_H34. % 33.91/34.09 cut (((op (unit) (e1)) = (e1)) = ((op (e4) (e1)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H32. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H16. % 33.91/34.09 cut (((e1) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H35]. % 33.91/34.09 cut (((op (unit) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H36]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((op (unit) (e1)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H36. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H37. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (unit) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H39]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.91/34.09 cut (((e4) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H3a. apply sym_equal. exact zenon_H33. % 33.91/34.09 apply zenon_H12. apply refl_equal. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 exact (zenon_H35 zenon_H34). % 33.91/34.09 (* end of lemma zenon_L11_ *) % 33.91/34.09 assert (zenon_L12_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_Hd zenon_Hc zenon_Hb zenon_H18 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L3_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L6_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L10_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L12_ *) % 33.91/34.09 assert (zenon_L13_ : (~((e0) = (e0))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3f. % 33.91/34.09 apply zenon_H3f. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L13_ *) % 33.91/34.09 assert (zenon_L14_ : (~((op (e0) (e0)) = (op (unit) (e0)))) -> ((unit) = (e0)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H40 zenon_H9. % 33.91/34.09 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.91/34.09 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.91/34.09 apply zenon_H3f. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L14_ *) % 33.91/34.09 assert (zenon_L15_ : (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((unit) = (e0)) -> ((op (e0) (e1)) = (e0)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H41 zenon_H42 zenon_H9 zenon_H43. % 33.91/34.09 cut (((op (unit) (e0)) = (e0)) = ((op (e0) (e0)) = (op (e0) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H41. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H42. % 33.91/34.09 cut (((e0) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H44]. % 33.91/34.09 cut (((op (unit) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e0) (e0)) = (op (e0) (e0)))); [ zenon_intro zenon_H46 | zenon_intro zenon_H47 ]. % 33.91/34.09 cut (((op (e0) (e0)) = (op (e0) (e0))) = ((op (unit) (e0)) = (op (e0) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H45. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H46. % 33.91/34.09 cut (((op (e0) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H47]. % 33.91/34.09 cut (((op (e0) (e0)) = (op (unit) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H40]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L14_); trivial. % 33.91/34.09 apply zenon_H47. apply refl_equal. % 33.91/34.09 apply zenon_H47. apply refl_equal. % 33.91/34.09 apply zenon_H44. apply sym_equal. exact zenon_H43. % 33.91/34.09 (* end of lemma zenon_L15_ *) % 33.91/34.09 assert (zenon_L16_ : (~((op (e1) (e2)) = (op (unit) (e2)))) -> ((unit) = (e1)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H48 zenon_H14. % 33.91/34.09 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.91/34.09 cut (((e1) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H15]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H15. apply sym_equal. exact zenon_H14. % 33.91/34.09 apply zenon_H7. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L16_ *) % 33.91/34.09 assert (zenon_L17_ : (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e1)) -> ((op (e1) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H49 zenon_Hc zenon_H14 zenon_H4a. % 33.91/34.09 cut (((op (unit) (e2)) = (e2)) = ((op (e1) (e2)) = (op (e1) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H49. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hc. % 33.91/34.09 cut (((e2) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H4b]. % 33.91/34.09 cut (((op (unit) (e2)) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H4c]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e1) (e2)) = (op (e1) (e2)))); [ zenon_intro zenon_H4d | zenon_intro zenon_H4e ]. % 33.91/34.09 cut (((op (e1) (e2)) = (op (e1) (e2))) = ((op (unit) (e2)) = (op (e1) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H4c. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H4d. % 33.91/34.09 cut (((op (e1) (e2)) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H4e]. % 33.91/34.09 cut (((op (e1) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H48]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L16_); trivial. % 33.91/34.09 apply zenon_H4e. apply refl_equal. % 33.91/34.09 apply zenon_H4e. apply refl_equal. % 33.91/34.09 apply zenon_H4b. apply sym_equal. exact zenon_H4a. % 33.91/34.09 (* end of lemma zenon_L17_ *) % 33.91/34.09 assert (zenon_L18_ : (~((op (e0) (e3)) = (op (e0) (unit)))) -> ((unit) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H4f zenon_H2a. % 33.91/34.09 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.91/34.09 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H3f. apply refl_equal. % 33.91/34.09 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.91/34.09 (* end of lemma zenon_L18_ *) % 33.91/34.09 assert (zenon_L19_ : ((op (e0) (unit)) = (e0)) -> ((unit) = (e3)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H50 zenon_H2a zenon_H43 zenon_H51. % 33.91/34.09 elim (classic ((op (e0) (e3)) = (op (e0) (e3)))); [ zenon_intro zenon_H52 | zenon_intro zenon_H53 ]. % 33.91/34.09 cut (((op (e0) (e3)) = (op (e0) (e3))) = ((op (e0) (e1)) = (op (e0) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H51. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H52. % 33.91/34.09 cut (((op (e0) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H53]. % 33.91/34.09 cut (((op (e0) (e3)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e0) (unit)) = (e0)) = ((op (e0) (e3)) = (op (e0) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H54. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H50. % 33.91/34.09 cut (((e0) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H44]. % 33.91/34.09 cut (((op (e0) (unit)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e0) (e3)) = (op (e0) (e3)))); [ zenon_intro zenon_H52 | zenon_intro zenon_H53 ]. % 33.91/34.09 cut (((op (e0) (e3)) = (op (e0) (e3))) = ((op (e0) (unit)) = (op (e0) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H55. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H52. % 33.91/34.09 cut (((op (e0) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H53]. % 33.91/34.09 cut (((op (e0) (e3)) = (op (e0) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H4f]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L18_); trivial. % 33.91/34.09 apply zenon_H53. apply refl_equal. % 33.91/34.09 apply zenon_H53. apply refl_equal. % 33.91/34.09 apply zenon_H44. apply sym_equal. exact zenon_H43. % 33.91/34.09 apply zenon_H53. apply refl_equal. % 33.91/34.09 apply zenon_H53. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L19_ *) % 33.91/34.09 assert (zenon_L20_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H42 zenon_H41 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H51 zenon_H43 zenon_H50 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L15_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L17_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L19_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L20_ *) % 33.91/34.09 assert (zenon_L21_ : (~((op (e2) (e0)) = (op (e2) (unit)))) -> ((unit) = (e0)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H56 zenon_H9. % 33.91/34.09 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.91/34.09 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H7. apply refl_equal. % 33.91/34.09 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.91/34.09 (* end of lemma zenon_L21_ *) % 33.91/34.09 assert (zenon_L22_ : (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e0)) -> ((op (e2) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H57 zenon_H58 zenon_H9 zenon_H59. % 33.91/34.09 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e0)) = (op (e2) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H57. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H58. % 33.91/34.09 cut (((e2) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H5a]. % 33.91/34.09 cut (((op (e2) (unit)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e2) (e0)) = (op (e2) (e0)))); [ zenon_intro zenon_H5c | zenon_intro zenon_H5d ]. % 33.91/34.09 cut (((op (e2) (e0)) = (op (e2) (e0))) = ((op (e2) (unit)) = (op (e2) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H5b. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5c. % 33.91/34.09 cut (((op (e2) (e0)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5d]. % 33.91/34.09 cut (((op (e2) (e0)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H56]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L21_); trivial. % 33.91/34.09 apply zenon_H5d. apply refl_equal. % 33.91/34.09 apply zenon_H5d. apply refl_equal. % 33.91/34.09 apply zenon_H5a. apply sym_equal. exact zenon_H59. % 33.91/34.09 (* end of lemma zenon_L22_ *) % 33.91/34.09 assert (zenon_L23_ : (~((op (e3) (e1)) = (op (e3) (unit)))) -> ((unit) = (e1)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H5e zenon_H14. % 33.91/34.09 cut (((e1) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H15]. % 33.91/34.09 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H1e. apply refl_equal. % 33.91/34.09 apply zenon_H15. apply sym_equal. exact zenon_H14. % 33.91/34.09 (* end of lemma zenon_L23_ *) % 33.91/34.09 assert (zenon_L24_ : ((op (e3) (unit)) = (e3)) -> ((unit) = (e1)) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H5f zenon_H14 zenon_H60 zenon_H61. % 33.91/34.09 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((op (e3) (e0)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H61. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H62. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H64]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e1)) = (op (e3) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H64. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H65]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((op (e3) (unit)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H66. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H62. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H5e]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L23_); trivial. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H65. apply sym_equal. exact zenon_H60. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L24_ *) % 33.91/34.09 assert (zenon_L25_ : (~((op (e3) (e3)) = (op (unit) (e3)))) -> ((unit) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H67 zenon_H2a. % 33.91/34.09 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.91/34.09 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.91/34.09 apply zenon_H1e. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L25_ *) % 33.91/34.09 assert (zenon_L26_ : ((op (unit) (e3)) = (e3)) -> ((unit) = (e3)) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H20 zenon_H2a zenon_H60 zenon_H68. % 33.91/34.09 elim (classic ((op (e3) (e3)) = (op (e3) (e3)))); [ zenon_intro zenon_H69 | zenon_intro zenon_H6a ]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3))) = ((op (e3) (e0)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H68. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H69. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6a]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H6b]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (unit) (e3)) = (e3)) = ((op (e3) (e3)) = (op (e3) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6b. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H20. % 33.91/34.09 cut (((e3) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H65]. % 33.91/34.09 cut (((op (unit) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e3)) = (op (e3) (e3)))); [ zenon_intro zenon_H69 | zenon_intro zenon_H6a ]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3))) = ((op (unit) (e3)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6c. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H69. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6a]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (unit) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L25_); trivial. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H65. apply sym_equal. exact zenon_H60. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L26_ *) % 33.91/34.09 assert (zenon_L27_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (e0)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H59 zenon_H58 zenon_H57 zenon_H61 zenon_H5f zenon_H22 zenon_H1f zenon_H68 zenon_H60 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L22_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L24_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L26_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L27_ *) % 33.91/34.09 assert (zenon_L28_ : (~((op (e2) (e1)) = (op (e2) (unit)))) -> ((unit) = (e1)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H6d zenon_H14. % 33.91/34.09 cut (((e1) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H15]. % 33.91/34.09 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H7. apply refl_equal. % 33.91/34.09 apply zenon_H15. apply sym_equal. exact zenon_H14. % 33.91/34.09 (* end of lemma zenon_L28_ *) % 33.91/34.09 assert (zenon_L29_ : (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e1)) -> ((op (e2) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H6e zenon_H58 zenon_H14 zenon_H59. % 33.91/34.09 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e1)) = (op (e2) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H58. % 33.91/34.09 cut (((e2) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H5a]. % 33.91/34.09 cut (((op (e2) (unit)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H6f]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((op (e2) (unit)) = (op (e2) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6f. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H70. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L28_); trivial. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 apply zenon_H5a. apply sym_equal. exact zenon_H59. % 33.91/34.09 (* end of lemma zenon_L29_ *) % 33.91/34.09 assert (zenon_L30_ : ((op (unit) (e3)) = (e3)) -> ((unit) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H20 zenon_H2a zenon_H72 zenon_H73. % 33.91/34.09 elim (classic ((op (e3) (e3)) = (op (e3) (e3)))); [ zenon_intro zenon_H69 | zenon_intro zenon_H6a ]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3))) = ((op (e3) (e1)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H73. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H69. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6a]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H74]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (unit) (e3)) = (e3)) = ((op (e3) (e3)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H74. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H20. % 33.91/34.09 cut (((e3) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H75]. % 33.91/34.09 cut (((op (unit) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e3)) = (op (e3) (e3)))); [ zenon_intro zenon_H69 | zenon_intro zenon_H6a ]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3))) = ((op (unit) (e3)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6c. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H69. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6a]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (unit) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L25_); trivial. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H75. apply sym_equal. exact zenon_H72. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L30_ *) % 33.91/34.09 assert (zenon_L31_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H57 zenon_H59 zenon_H58 zenon_H6e zenon_H22 zenon_H1f zenon_H73 zenon_H72 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L22_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L29_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L30_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L31_ *) % 33.91/34.09 assert (zenon_L32_ : ((op (unit) (e3)) = (e3)) -> ((unit) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H20 zenon_H2a zenon_H76 zenon_H77. % 33.91/34.09 elim (classic ((op (e3) (e3)) = (op (e3) (e3)))); [ zenon_intro zenon_H69 | zenon_intro zenon_H6a ]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3))) = ((op (e3) (e2)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H77. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H69. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6a]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H78]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (unit) (e3)) = (e3)) = ((op (e3) (e3)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H78. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H20. % 33.91/34.09 cut (((e3) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H79]. % 33.91/34.09 cut (((op (unit) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e3)) = (op (e3) (e3)))); [ zenon_intro zenon_H69 | zenon_intro zenon_H6a ]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3))) = ((op (unit) (e3)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6c. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H69. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6a]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (unit) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L25_); trivial. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H79. apply sym_equal. exact zenon_H76. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L32_ *) % 33.91/34.09 assert (zenon_L33_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H57 zenon_H59 zenon_H58 zenon_H6e zenon_H22 zenon_H1f zenon_H77 zenon_H76 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L22_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L29_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L32_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L33_ *) % 33.91/34.09 assert (zenon_L34_ : (~((op (e3) (e0)) = (op (e3) (unit)))) -> ((unit) = (e0)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H7a zenon_H9. % 33.91/34.09 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.91/34.09 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H1e. apply refl_equal. % 33.91/34.09 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.91/34.09 (* end of lemma zenon_L34_ *) % 33.91/34.09 assert (zenon_L35_ : (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e0)) -> ((op (e3) (e4)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H7b zenon_H5f zenon_H9 zenon_H7c. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e0)) = (op (e3) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H7b. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H7e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e0)) = (op (e3) (e0)))); [ zenon_intro zenon_H7f | zenon_intro zenon_H80 ]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0))) = ((op (e3) (unit)) = (op (e3) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H7e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H7f. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H7a]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L34_); trivial. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_H7d. apply sym_equal. exact zenon_H7c. % 33.91/34.09 (* end of lemma zenon_L35_ *) % 33.91/34.09 assert (zenon_L36_ : (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e1)) -> ((op (e3) (e4)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H81 zenon_H5f zenon_H14 zenon_H7c. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e1)) = (op (e3) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H81. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((op (e3) (unit)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H66. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H62. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H5e]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L23_); trivial. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H7d. apply sym_equal. exact zenon_H7c. % 33.91/34.09 (* end of lemma zenon_L36_ *) % 33.91/34.09 assert (zenon_L37_ : (~((op (e3) (e2)) = (op (e3) (unit)))) -> ((unit) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H82 zenon_H21. % 33.91/34.09 cut (((e2) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H28]. % 33.91/34.09 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H1e. apply refl_equal. % 33.91/34.09 apply zenon_H28. apply sym_equal. exact zenon_H21. % 33.91/34.09 (* end of lemma zenon_L37_ *) % 33.91/34.09 assert (zenon_L38_ : (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e2)) -> ((op (e3) (e4)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H83 zenon_H5f zenon_H21 zenon_H7c. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e2)) = (op (e3) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H83. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (e3) (unit)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H84. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H85. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L37_); trivial. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H7d. apply sym_equal. exact zenon_H7c. % 33.91/34.09 (* end of lemma zenon_L38_ *) % 33.91/34.09 assert (zenon_L39_ : (~((op (e3) (e3)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((unit) = (e3)) -> ((op (e3) (e4)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H87 zenon_H20 zenon_H2a zenon_H7c. % 33.91/34.09 cut (((op (unit) (e3)) = (e3)) = ((op (e3) (e3)) = (op (e3) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H87. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H20. % 33.91/34.09 cut (((e3) = (op (e3) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H7d]. % 33.91/34.09 cut (((op (unit) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6c]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e3)) = (op (e3) (e3)))); [ zenon_intro zenon_H69 | zenon_intro zenon_H6a ]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3))) = ((op (unit) (e3)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6c. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H69. % 33.91/34.09 cut (((op (e3) (e3)) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H6a]. % 33.91/34.09 cut (((op (e3) (e3)) = (op (unit) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H67]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L25_); trivial. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H6a. apply refl_equal. % 33.91/34.09 apply zenon_H7d. apply sym_equal. exact zenon_H7c. % 33.91/34.09 (* end of lemma zenon_L39_ *) % 33.91/34.09 assert (zenon_L40_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (e4)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H7c zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L35_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L36_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L38_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L39_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L40_ *) % 33.91/34.09 assert (zenon_L41_ : (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e3)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H88 zenon_H68 zenon_H61 zenon_H73 zenon_H77 zenon_H1f zenon_H22 zenon_H6e zenon_H58 zenon_H59 zenon_H57 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.91/34.09 apply (zenon_L27_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.91/34.09 apply (zenon_L31_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.91/34.09 apply (zenon_L33_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.91/34.09 exact (zenon_H89 zenon_H8d). % 33.91/34.09 apply (zenon_L40_); trivial. % 33.91/34.09 (* end of lemma zenon_L41_ *) % 33.91/34.09 assert (zenon_L42_ : ((op (e3) (unit)) = (e3)) -> ((unit) = (e2)) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H5f zenon_H21 zenon_H60 zenon_H8e. % 33.91/34.09 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (e3) (e0)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H8e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H85. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H8f]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e2)) = (op (e3) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H8f. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H65]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (e3) (unit)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H84. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H85. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L37_); trivial. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H65. apply sym_equal. exact zenon_H60. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L42_ *) % 33.91/34.09 assert (zenon_L43_ : (~((op (e4) (e2)) = (op (unit) (e2)))) -> ((unit) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H90 zenon_H33. % 33.91/34.09 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.91/34.09 cut (((e4) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H3a. apply sym_equal. exact zenon_H33. % 33.91/34.09 apply zenon_H7. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L43_ *) % 33.91/34.09 assert (zenon_L44_ : (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e4)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H91 zenon_Hc zenon_H33 zenon_H92. % 33.91/34.09 cut (((op (unit) (e2)) = (e2)) = ((op (e4) (e2)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H91. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hc. % 33.91/34.09 cut (((e2) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H93]. % 33.91/34.09 cut (((op (unit) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H94]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (unit) (e2)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H94. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H95. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H90]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L43_); trivial. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H93. apply sym_equal. exact zenon_H92. % 33.91/34.09 (* end of lemma zenon_L44_ *) % 33.91/34.09 assert (zenon_L45_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (e0)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H43 zenon_H42 zenon_H41 zenon_H18 zenon_H16 zenon_H8e zenon_H60 zenon_H5f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L15_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L6_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L42_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L10_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L45_ *) % 33.91/34.09 assert (zenon_L46_ : (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e0)) -> ((op (e3) (e1)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H61 zenon_H5f zenon_H9 zenon_H72. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e0)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H61. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H75]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H7e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e0)) = (op (e3) (e0)))); [ zenon_intro zenon_H7f | zenon_intro zenon_H80 ]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0))) = ((op (e3) (unit)) = (op (e3) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H7e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H7f. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H7a]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L34_); trivial. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_H75. apply sym_equal. exact zenon_H72. % 33.91/34.09 (* end of lemma zenon_L46_ *) % 33.91/34.09 assert (zenon_L47_ : (~((e4) = (e4))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H97. % 33.91/34.09 apply zenon_H97. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L47_ *) % 33.91/34.09 assert (zenon_L48_ : (~((op (e4) (e1)) = (op (e4) (unit)))) -> ((unit) = (e1)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H98 zenon_H14. % 33.91/34.09 cut (((e1) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H15]. % 33.91/34.09 cut (((e4) = (e4))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H97. apply refl_equal. % 33.91/34.09 apply zenon_H15. apply sym_equal. exact zenon_H14. % 33.91/34.09 (* end of lemma zenon_L48_ *) % 33.91/34.09 assert (zenon_L49_ : ((op (e4) (unit)) = (e4)) -> ((unit) = (e1)) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H99 zenon_H14 zenon_H9a zenon_H9b. % 33.91/34.09 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((op (e4) (e0)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9b. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H37. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H9c]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e1)) = (op (e4) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9c. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H9d]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((op (e4) (unit)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H37. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H98]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L48_); trivial. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_H9d. apply sym_equal. exact zenon_H9a. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L49_ *) % 33.91/34.09 assert (zenon_L50_ : ((op (e3) (unit)) = (e3)) -> ((unit) = (e2)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H5f zenon_H21 zenon_H72 zenon_H9f. % 33.91/34.09 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (e3) (e1)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9f. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H85. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Ha0]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e2)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Ha0. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H75]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (e3) (unit)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H84. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H85. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L37_); trivial. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H75. apply sym_equal. exact zenon_H72. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L50_ *) % 33.91/34.09 assert (zenon_L51_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H61 zenon_H9b zenon_H9a zenon_H99 zenon_H9f zenon_H5f zenon_H73 zenon_H72 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L46_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L49_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L50_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L30_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L51_ *) % 33.91/34.09 assert (zenon_L52_ : (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e0)) -> ((op (e0) (e4)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Ha1 zenon_Hc zenon_H9 zenon_Ha2. % 33.91/34.09 cut (((op (unit) (e2)) = (e2)) = ((op (e0) (e2)) = (op (e0) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Ha1. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hc. % 33.91/34.09 cut (((e2) = (op (e0) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Ha3]. % 33.91/34.09 cut (((op (unit) (e2)) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hf]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e0) (e2)) = (op (e0) (e2)))); [ zenon_intro zenon_H10 | zenon_intro zenon_H11 ]. % 33.91/34.09 cut (((op (e0) (e2)) = (op (e0) (e2))) = ((op (unit) (e2)) = (op (e0) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hf. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H10. % 33.91/34.09 cut (((op (e0) (e2)) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H11]. % 33.91/34.09 cut (((op (e0) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H8]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L2_); trivial. % 33.91/34.09 apply zenon_H11. apply refl_equal. % 33.91/34.09 apply zenon_H11. apply refl_equal. % 33.91/34.09 apply zenon_Ha3. apply sym_equal. exact zenon_Ha2. % 33.91/34.09 (* end of lemma zenon_L52_ *) % 33.91/34.09 assert (zenon_L53_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_Ha2 zenon_Ha1 zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L52_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L6_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L10_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L53_ *) % 33.91/34.09 assert (zenon_L54_ : (~((op (e4) (e0)) = (op (e4) (unit)))) -> ((unit) = (e0)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Ha4 zenon_H9. % 33.91/34.09 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.91/34.09 cut (((e4) = (e4))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H97. apply refl_equal. % 33.91/34.09 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.91/34.09 (* end of lemma zenon_L54_ *) % 33.91/34.09 assert (zenon_L55_ : (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e0)) -> ((op (e4) (e1)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H9b zenon_H99 zenon_H9 zenon_Ha5. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e0)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9b. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Ha6]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha7]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e0)) = (op (e4) (e0)))); [ zenon_intro zenon_Ha8 | zenon_intro zenon_Ha9 ]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0))) = ((op (e4) (unit)) = (op (e4) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Ha7. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Ha8. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Ha4]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L54_); trivial. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_Ha6. apply sym_equal. exact zenon_Ha5. % 33.91/34.09 (* end of lemma zenon_L55_ *) % 33.91/34.09 assert (zenon_L56_ : (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e1)) -> ((op (e1) (e4)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Haa zenon_Hc zenon_H14 zenon_Hab. % 33.91/34.09 cut (((op (unit) (e2)) = (e2)) = ((op (e1) (e2)) = (op (e1) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Haa. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hc. % 33.91/34.09 cut (((e2) = (op (e1) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hac]. % 33.91/34.09 cut (((op (unit) (e2)) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H4c]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e1) (e2)) = (op (e1) (e2)))); [ zenon_intro zenon_H4d | zenon_intro zenon_H4e ]. % 33.91/34.09 cut (((op (e1) (e2)) = (op (e1) (e2))) = ((op (unit) (e2)) = (op (e1) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H4c. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H4d. % 33.91/34.09 cut (((op (e1) (e2)) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H4e]. % 33.91/34.09 cut (((op (e1) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H48]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L16_); trivial. % 33.91/34.09 apply zenon_H4e. apply refl_equal. % 33.91/34.09 apply zenon_H4e. apply refl_equal. % 33.91/34.09 apply zenon_Hac. apply sym_equal. exact zenon_Hab. % 33.91/34.09 (* end of lemma zenon_L56_ *) % 33.91/34.09 assert (zenon_L57_ : (~((op (e4) (e2)) = (op (e4) (unit)))) -> ((unit) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Had zenon_H21. % 33.91/34.09 cut (((e2) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H28]. % 33.91/34.09 cut (((e4) = (e4))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H97. apply refl_equal. % 33.91/34.09 apply zenon_H28. apply sym_equal. exact zenon_H21. % 33.91/34.09 (* end of lemma zenon_L57_ *) % 33.91/34.09 assert (zenon_L58_ : ((op (e4) (unit)) = (e4)) -> ((unit) = (e2)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H99 zenon_H21 zenon_Ha5 zenon_H32. % 33.91/34.09 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (e4) (e1)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H32. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H95. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Hae]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e2)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hae. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Ha6]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (e4) (unit)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Haf. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H95. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L57_); trivial. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_Ha6. apply sym_equal. exact zenon_Ha5. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L58_ *) % 33.91/34.09 assert (zenon_L59_ : (~((op (e4) (e3)) = (op (e4) (unit)))) -> ((unit) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hb0 zenon_H2a. % 33.91/34.09 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.91/34.09 cut (((e4) = (e4))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H97. apply refl_equal. % 33.91/34.09 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.91/34.09 (* end of lemma zenon_L59_ *) % 33.91/34.09 assert (zenon_L60_ : ((op (e4) (unit)) = (e4)) -> ((unit) = (e3)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H99 zenon_H2a zenon_Ha5 zenon_Hb1. % 33.91/34.09 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (e1)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb1. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hb2. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Hb4]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e3)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb4. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Ha6]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb5]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (unit)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb5. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hb2. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L59_); trivial. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Ha6. apply sym_equal. exact zenon_Ha5. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L60_ *) % 33.91/34.09 assert (zenon_L61_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e1) (e4)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H9b zenon_Hab zenon_Haa zenon_H32 zenon_Hb1 zenon_Ha5 zenon_H99 zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L55_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L56_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L58_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L60_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L61_ *) % 33.91/34.09 assert (zenon_L62_ : (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e0)) -> ((op (e2) (e4)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hb6 zenon_H58 zenon_H9 zenon_Hb7. % 33.91/34.09 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e0)) = (op (e2) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb6. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H58. % 33.91/34.09 cut (((e2) = (op (e2) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hb8]. % 33.91/34.09 cut (((op (e2) (unit)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e2) (e0)) = (op (e2) (e0)))); [ zenon_intro zenon_H5c | zenon_intro zenon_H5d ]. % 33.91/34.09 cut (((op (e2) (e0)) = (op (e2) (e0))) = ((op (e2) (unit)) = (op (e2) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H5b. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5c. % 33.91/34.09 cut (((op (e2) (e0)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5d]. % 33.91/34.09 cut (((op (e2) (e0)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H56]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L21_); trivial. % 33.91/34.09 apply zenon_H5d. apply refl_equal. % 33.91/34.09 apply zenon_H5d. apply refl_equal. % 33.91/34.09 apply zenon_Hb8. apply sym_equal. exact zenon_Hb7. % 33.91/34.09 (* end of lemma zenon_L62_ *) % 33.91/34.09 assert (zenon_L63_ : (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e1)) -> ((op (e2) (e4)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hb9 zenon_H58 zenon_H14 zenon_Hb7. % 33.91/34.09 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e1)) = (op (e2) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb9. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H58. % 33.91/34.09 cut (((e2) = (op (e2) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hb8]. % 33.91/34.09 cut (((op (e2) (unit)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H6f]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((op (e2) (unit)) = (op (e2) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6f. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H70. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L28_); trivial. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 apply zenon_Hb8. apply sym_equal. exact zenon_Hb7. % 33.91/34.09 (* end of lemma zenon_L63_ *) % 33.91/34.09 assert (zenon_L64_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (e4)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_Hb6 zenon_Hb7 zenon_H58 zenon_Hb9 zenon_H9f zenon_H5f zenon_H73 zenon_H72 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L62_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L63_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L50_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L30_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L64_ *) % 33.91/34.09 assert (zenon_L65_ : ((op (e2) (unit)) = (e2)) -> ((unit) = (e1)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H58 zenon_H14 zenon_Hba zenon_Hbb. % 33.91/34.09 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((op (e2) (e0)) = (op (e2) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hbb. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H70. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Hbc]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e1)) = (op (e2) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hbc. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H58. % 33.91/34.09 cut (((e2) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Hbd]. % 33.91/34.09 cut (((op (e2) (unit)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H6f]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((op (e2) (unit)) = (op (e2) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H6f. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H70. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.91/34.09 cut (((op (e2) (e1)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L28_); trivial. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 apply zenon_Hbd. apply sym_equal. exact zenon_Hba. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 apply zenon_H71. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L65_ *) % 33.91/34.09 assert (zenon_L66_ : (~((op (e3) (e2)) = (op (unit) (e2)))) -> ((unit) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hbe zenon_H2a. % 33.91/34.09 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.91/34.09 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.91/34.09 apply zenon_H7. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L66_ *) % 33.91/34.09 assert (zenon_L67_ : (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e3)) -> ((op (e3) (e4)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H83 zenon_Hc zenon_H2a zenon_Hbf. % 33.91/34.09 cut (((op (unit) (e2)) = (e2)) = ((op (e3) (e2)) = (op (e3) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H83. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hc. % 33.91/34.09 cut (((e2) = (op (e3) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hc0]. % 33.91/34.09 cut (((op (unit) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hc1]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (unit) (e2)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hc1. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H85. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hbe]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L66_); trivial. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_Hc0. apply sym_equal. exact zenon_Hbf. % 33.91/34.09 (* end of lemma zenon_L67_ *) % 33.91/34.09 assert (zenon_L68_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> ((op (e3) (e4)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H9b zenon_Hbb zenon_Hba zenon_H58 zenon_H32 zenon_Ha5 zenon_H99 zenon_Hbf zenon_H83 zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L55_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L65_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L58_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L67_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L68_ *) % 33.91/34.09 assert (zenon_L69_ : (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> ((op (unit) (e3)) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e4) (unit)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hc2 zenon_H2c zenon_H17 zenon_H2d zenon_H1f zenon_H22 zenon_H18 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_H34 zenon_H16 zenon_H20 zenon_H72 zenon_H73 zenon_H5f zenon_H9f zenon_Hb9 zenon_Hb6 zenon_H92 zenon_Hc zenon_H91 zenon_H83 zenon_H99 zenon_Ha5 zenon_H32 zenon_H58 zenon_Hba zenon_Hbb zenon_H9b zenon_H3b zenon_Hc3. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc2); [ zenon_intro zenon_Ha2 | zenon_intro zenon_Hc4 ]. % 33.91/34.09 apply (zenon_L53_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc4); [ zenon_intro zenon_Hab | zenon_intro zenon_Hc5 ]. % 33.91/34.09 apply (zenon_L61_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc5); [ zenon_intro zenon_Hb7 | zenon_intro zenon_Hc6 ]. % 33.91/34.09 apply (zenon_L64_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc6); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hc7 ]. % 33.91/34.09 apply (zenon_L68_); trivial. % 33.91/34.09 exact (zenon_Hc3 zenon_Hc7). % 33.91/34.09 (* end of lemma zenon_L69_ *) % 33.91/34.09 assert (zenon_L70_ : (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e0)) -> ((op (e4) (e2)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hc8 zenon_H99 zenon_H9 zenon_Hc9. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e0)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hc8. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hca]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha7]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e0)) = (op (e4) (e0)))); [ zenon_intro zenon_Ha8 | zenon_intro zenon_Ha9 ]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0))) = ((op (e4) (unit)) = (op (e4) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Ha7. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Ha8. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Ha4]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L54_); trivial. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_Hca. apply sym_equal. exact zenon_Hc9. % 33.91/34.09 (* end of lemma zenon_L70_ *) % 33.91/34.09 assert (zenon_L71_ : (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e1)) -> ((op (e4) (e2)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H32 zenon_H99 zenon_H14 zenon_Hc9. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e1)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H32. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hca]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((op (e4) (unit)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H37. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H98]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L48_); trivial. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_Hca. apply sym_equal. exact zenon_Hc9. % 33.91/34.09 (* end of lemma zenon_L71_ *) % 33.91/34.09 assert (zenon_L72_ : ((op (e4) (unit)) = (e4)) -> ((unit) = (e3)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H99 zenon_H2a zenon_Hc9 zenon_H91. % 33.91/34.09 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (e2)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H91. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hb2. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hcb]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e3)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hcb. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hca]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb5]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (unit)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb5. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hb2. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L59_); trivial. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hca. apply sym_equal. exact zenon_Hc9. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L72_ *) % 33.91/34.09 assert (zenon_L73_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc9 zenon_H99 zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L70_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L71_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L72_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L73_ *) % 33.91/34.09 assert (zenon_L74_ : (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e0)) -> ((op (e4) (e3)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hcc zenon_H99 zenon_H9 zenon_Hcd. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e0)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hcc. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hce]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha7]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e0)) = (op (e4) (e0)))); [ zenon_intro zenon_Ha8 | zenon_intro zenon_Ha9 ]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0))) = ((op (e4) (unit)) = (op (e4) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Ha7. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Ha8. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Ha4]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L54_); trivial. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_Hce. apply sym_equal. exact zenon_Hcd. % 33.91/34.09 (* end of lemma zenon_L74_ *) % 33.91/34.09 assert (zenon_L75_ : (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e1)) -> ((op (e4) (e3)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hb1 zenon_H99 zenon_H14 zenon_Hcd. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e1)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb1. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hce]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((op (e4) (unit)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H37. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H98]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L48_); trivial. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_Hce. apply sym_equal. exact zenon_Hcd. % 33.91/34.09 (* end of lemma zenon_L75_ *) % 33.91/34.09 assert (zenon_L76_ : (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e2)) -> ((op (e4) (e3)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H91 zenon_H99 zenon_H21 zenon_Hcd. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e2)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H91. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hce]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (e4) (unit)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Haf. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H95. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L57_); trivial. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_Hce. apply sym_equal. exact zenon_Hcd. % 33.91/34.09 (* end of lemma zenon_L76_ *) % 33.91/34.09 assert (zenon_L77_ : (~((op (e2) (e3)) = (op (e2) (unit)))) -> ((unit) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hcf zenon_H2a. % 33.91/34.09 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.91/34.09 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H7. apply refl_equal. % 33.91/34.09 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.91/34.09 (* end of lemma zenon_L77_ *) % 33.91/34.09 assert (zenon_L78_ : ((op (e2) (unit)) = (e2)) -> ((unit) = (e3)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H58 zenon_H2a zenon_Hba zenon_H57. % 33.91/34.09 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.91/34.09 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (e2) (e0)) = (op (e2) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H57. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H25. % 33.91/34.09 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.91/34.09 cut (((op (e2) (e3)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Hd0]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e3)) = (op (e2) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hd0. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H58. % 33.91/34.09 cut (((e2) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Hbd]. % 33.91/34.09 cut (((op (e2) (unit)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.91/34.09 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (e2) (unit)) = (op (e2) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hd1. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H25. % 33.91/34.09 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.91/34.09 cut (((op (e2) (e3)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hcf]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L77_); trivial. % 33.91/34.09 apply zenon_H26. apply refl_equal. % 33.91/34.09 apply zenon_H26. apply refl_equal. % 33.91/34.09 apply zenon_Hbd. apply sym_equal. exact zenon_Hba. % 33.91/34.09 apply zenon_H26. apply refl_equal. % 33.91/34.09 apply zenon_H26. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L78_ *) % 33.91/34.09 assert (zenon_L79_ : (~((op (e4) (e4)) = (op (unit) (e4)))) -> ((unit) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hd2 zenon_H33. % 33.91/34.09 cut (((e4) = (e4))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 33.91/34.09 cut (((e4) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 33.91/34.09 congruence. % 33.91/34.09 apply zenon_H3a. apply sym_equal. exact zenon_H33. % 33.91/34.09 apply zenon_H97. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L79_ *) % 33.91/34.09 assert (zenon_L80_ : ((op (unit) (e4)) = (e4)) -> ((unit) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hd3 zenon_H33 zenon_Hcd zenon_Hd4. % 33.91/34.09 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((op (e4) (e3)) = (op (e4) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hd4. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hd5. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hd7]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (unit) (e4)) = (e4)) = ((op (e4) (e4)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hd7. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hd3. % 33.91/34.09 cut (((e4) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hce]. % 33.91/34.09 cut (((op (unit) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd8]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((op (unit) (e4)) = (op (e4) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hd8. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hd5. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.91/34.09 cut (((op (e4) (e4)) = (op (unit) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd2]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L79_); trivial. % 33.91/34.09 apply zenon_Hd6. apply refl_equal. % 33.91/34.09 apply zenon_Hd6. apply refl_equal. % 33.91/34.09 apply zenon_Hce. apply sym_equal. exact zenon_Hcd. % 33.91/34.09 apply zenon_Hd6. apply refl_equal. % 33.91/34.09 apply zenon_Hd6. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L80_ *) % 33.91/34.09 assert (zenon_L81_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L74_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L75_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L76_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L78_); trivial. % 33.91/34.09 apply (zenon_L80_); trivial. % 33.91/34.09 (* end of lemma zenon_L81_ *) % 33.91/34.09 assert (zenon_L82_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e1)) = (e3)) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hd9 zenon_H61 zenon_Hc3 zenon_H9b zenon_Hbb zenon_H83 zenon_Hb6 zenon_Hb9 zenon_H9f zenon_H5f zenon_H73 zenon_H72 zenon_H16 zenon_H34 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H92 zenon_Hc zenon_H1f zenon_H20 zenon_H22 zenon_H32 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.09 apply (zenon_L51_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.09 apply (zenon_L69_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.09 apply (zenon_L73_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.09 apply (zenon_L81_); trivial. % 33.91/34.09 exact (zenon_Hda zenon_Hde). % 33.91/34.09 (* end of lemma zenon_L82_ *) % 33.91/34.09 assert (zenon_L83_ : (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e0)) -> ((op (e3) (e2)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H8e zenon_H5f zenon_H9 zenon_H76. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e0)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H8e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H79]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H7e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e0)) = (op (e3) (e0)))); [ zenon_intro zenon_H7f | zenon_intro zenon_H80 ]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0))) = ((op (e3) (unit)) = (op (e3) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H7e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H7f. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H7a]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L34_); trivial. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_H79. apply sym_equal. exact zenon_H76. % 33.91/34.09 (* end of lemma zenon_L83_ *) % 33.91/34.09 assert (zenon_L84_ : ((op (e4) (unit)) = (e4)) -> ((unit) = (e2)) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H99 zenon_H21 zenon_H9a zenon_Hc8. % 33.91/34.09 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (e4) (e0)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hc8. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H95. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Hdf]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e2)) = (op (e4) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hdf. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H9d]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (e4) (unit)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Haf. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H95. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L57_); trivial. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H9d. apply sym_equal. exact zenon_H9a. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L84_ *) % 33.91/34.09 assert (zenon_L85_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H5f zenon_H8e zenon_H9b zenon_Hc8 zenon_H9a zenon_H99 zenon_H77 zenon_H76 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L83_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L49_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L84_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L32_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L85_ *) % 33.91/34.09 assert (zenon_L86_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (e1) (e4)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hd9 zenon_H34 zenon_H16 zenon_H76 zenon_H77 zenon_H8e zenon_H5f zenon_Haa zenon_Hab zenon_H9b zenon_H92 zenon_Hc zenon_H1f zenon_H20 zenon_H22 zenon_H32 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.09 apply (zenon_L85_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.09 apply (zenon_L61_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.09 apply (zenon_L73_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.09 apply (zenon_L81_); trivial. % 33.91/34.09 exact (zenon_Hda zenon_Hde). % 33.91/34.09 (* end of lemma zenon_L86_ *) % 33.91/34.09 assert (zenon_L87_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (e4)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_Hb6 zenon_Hb7 zenon_H58 zenon_Hb9 zenon_H22 zenon_H1f zenon_H77 zenon_H76 zenon_H20 zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L62_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L63_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L8_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L32_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L87_ *) % 33.91/34.09 assert (zenon_L88_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> ((op (e3) (e4)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H76 zenon_H5f zenon_H8e zenon_H9b zenon_Hc8 zenon_H9a zenon_H99 zenon_Hbf zenon_H83 zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L83_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L49_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L84_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L67_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L88_ *) % 33.91/34.09 assert (zenon_L89_ : (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e1)) -> ((op (e3) (e2)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H9f zenon_H5f zenon_H14 zenon_H76. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e1)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9f. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H79]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((op (e3) (unit)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H66. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H62. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H5e]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L23_); trivial. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H79. apply sym_equal. exact zenon_H76. % 33.91/34.09 (* end of lemma zenon_L89_ *) % 33.91/34.09 assert (zenon_L90_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> ((op (e3) (e4)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H9b zenon_H76 zenon_H5f zenon_H9f zenon_H32 zenon_Ha5 zenon_H99 zenon_Hbf zenon_H83 zenon_H91 zenon_Hc zenon_H92. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L55_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L89_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L58_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L67_); trivial. % 33.91/34.09 apply (zenon_L44_); trivial. % 33.91/34.09 (* end of lemma zenon_L90_ *) % 33.91/34.09 assert (zenon_L91_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (e4)) = (e2)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hd9 zenon_H8e zenon_H83 zenon_Hbf zenon_H9f zenon_H5f zenon_H76 zenon_H9b zenon_H92 zenon_Hc zenon_H1f zenon_H20 zenon_H22 zenon_H32 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.09 apply (zenon_L88_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.09 apply (zenon_L90_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.09 apply (zenon_L73_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.09 apply (zenon_L81_); trivial. % 33.91/34.09 exact (zenon_Hda zenon_Hde). % 33.91/34.09 (* end of lemma zenon_L91_ *) % 33.91/34.09 assert (zenon_L92_ : (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hc2 zenon_H2c zenon_H17 zenon_H2d zenon_H18 zenon_Ha1 zenon_Haa zenon_H16 zenon_H34 zenon_H77 zenon_Hb9 zenon_Hb6 zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc zenon_H92 zenon_H9b zenon_H76 zenon_H5f zenon_H9f zenon_H83 zenon_H8e zenon_Hd9 zenon_Hc3. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc2); [ zenon_intro zenon_Ha2 | zenon_intro zenon_Hc4 ]. % 33.91/34.09 apply (zenon_L53_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc4); [ zenon_intro zenon_Hab | zenon_intro zenon_Hc5 ]. % 33.91/34.09 apply (zenon_L86_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc5); [ zenon_intro zenon_Hb7 | zenon_intro zenon_Hc6 ]. % 33.91/34.09 apply (zenon_L87_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hc6); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hc7 ]. % 33.91/34.09 apply (zenon_L91_); trivial. % 33.91/34.09 exact (zenon_Hc3 zenon_Hc7). % 33.91/34.09 (* end of lemma zenon_L92_ *) % 33.91/34.09 assert (zenon_L93_ : (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H88 zenon_H41 zenon_H42 zenon_H43 zenon_H73 zenon_Hbb zenon_H61 zenon_Hc3 zenon_Hd9 zenon_H8e zenon_H9f zenon_H9b zenon_H92 zenon_Hc zenon_H1f zenon_H22 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_Hda zenon_Hb6 zenon_Hb9 zenon_H77 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.91/34.09 apply (zenon_L45_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.91/34.09 apply (zenon_L82_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.91/34.09 apply (zenon_L92_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.91/34.09 exact (zenon_H89 zenon_H8d). % 33.91/34.09 apply (zenon_L40_); trivial. % 33.91/34.09 (* end of lemma zenon_L93_ *) % 33.91/34.09 assert (zenon_L94_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_He0 zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H6e zenon_H68 zenon_He1 zenon_H88 zenon_H41 zenon_H42 zenon_H43 zenon_H73 zenon_Hbb zenon_H61 zenon_Hc3 zenon_Hd9 zenon_H8e zenon_H9f zenon_H9b zenon_Hc zenon_H1f zenon_H22 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_Hda zenon_Hb6 zenon_Hb9 zenon_H77 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.91/34.09 apply (zenon_L12_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.91/34.09 apply (zenon_L20_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.91/34.09 apply (zenon_L41_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.91/34.09 exact (zenon_He1 zenon_He5). % 33.91/34.09 apply (zenon_L93_); trivial. % 33.91/34.09 (* end of lemma zenon_L94_ *) % 33.91/34.09 assert (zenon_L95_ : (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e0)) -> ((op (e4) (e4)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_He6 zenon_H99 zenon_H9 zenon_Hde. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e0)) = (op (e4) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_He6. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_He7]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha7]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e0)) = (op (e4) (e0)))); [ zenon_intro zenon_Ha8 | zenon_intro zenon_Ha9 ]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0))) = ((op (e4) (unit)) = (op (e4) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Ha7. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Ha8. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Ha9]. % 33.91/34.09 cut (((op (e4) (e0)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Ha4]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L54_); trivial. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_Ha9. apply refl_equal. % 33.91/34.09 apply zenon_He7. apply sym_equal. exact zenon_Hde. % 33.91/34.09 (* end of lemma zenon_L95_ *) % 33.91/34.09 assert (zenon_L96_ : (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e1)) -> ((op (e4) (e4)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_He8 zenon_H99 zenon_H14 zenon_Hde. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e1)) = (op (e4) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_He8. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_He7]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H9e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((op (e4) (unit)) = (op (e4) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H9e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H37. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.91/34.09 cut (((op (e4) (e1)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H98]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L48_); trivial. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_H38. apply refl_equal. % 33.91/34.09 apply zenon_He7. apply sym_equal. exact zenon_Hde. % 33.91/34.09 (* end of lemma zenon_L96_ *) % 33.91/34.09 assert (zenon_L97_ : (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e2)) -> ((op (e4) (e4)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_He9 zenon_H99 zenon_H21 zenon_Hde. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e2)) = (op (e4) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_He9. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_He7]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Haf]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (e4) (unit)) = (op (e4) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Haf. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H95. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.91/34.09 cut (((op (e4) (e2)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Had]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L57_); trivial. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_H96. apply refl_equal. % 33.91/34.09 apply zenon_He7. apply sym_equal. exact zenon_Hde. % 33.91/34.09 (* end of lemma zenon_L97_ *) % 33.91/34.09 assert (zenon_L98_ : (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> ((unit) = (e3)) -> ((op (e4) (e4)) = (e4)) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hd4 zenon_H99 zenon_H2a zenon_Hde. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e3)) = (op (e4) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hd4. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_He7]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb5]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (unit)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb5. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hb2. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L59_); trivial. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_He7. apply sym_equal. exact zenon_Hde. % 33.91/34.09 (* end of lemma zenon_L98_ *) % 33.91/34.09 assert (zenon_L99_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (e4) (e4)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_He6 zenon_He8 zenon_He9 zenon_Hde zenon_H99 zenon_Hd4 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L95_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L96_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L97_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L98_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L99_ *) % 33.91/34.09 assert (zenon_L100_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hea zenon_He6 zenon_He8 zenon_He9 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H43 zenon_H42 zenon_H41 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H89 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_He1 zenon_H9f zenon_H99 zenon_H9b zenon_Hc2 zenon_Hc3 zenon_Hbb zenon_Hba zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Hb1 zenon_Ha1 zenon_Hc8 zenon_Hd3 zenon_Hd4 zenon_Hcc zenon_Hd9 zenon_H8e zenon_H91 zenon_He0. % 33.91/34.09 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.91/34.09 apply (zenon_L94_); trivial. % 33.91/34.09 apply (zenon_L99_); trivial. % 33.91/34.09 (* end of lemma zenon_L100_ *) % 33.91/34.09 assert (zenon_L101_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.91/34.09 do 0 intro. intros zenon_He0 zenon_H2c zenon_H17 zenon_H2d zenon_H18 zenon_Hb zenon_H50 zenon_H43 zenon_H51 zenon_H49 zenon_H41 zenon_H42 zenon_H34 zenon_H16 zenon_H87 zenon_H83 zenon_H5f zenon_H81 zenon_H7b zenon_H89 zenon_H57 zenon_H58 zenon_H6e zenon_H77 zenon_H73 zenon_H61 zenon_H68 zenon_H88 zenon_He1 zenon_H3b zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc9 zenon_H99 zenon_H91 zenon_Hc. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.91/34.09 apply (zenon_L12_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.91/34.09 apply (zenon_L20_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.91/34.09 apply (zenon_L41_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.91/34.09 exact (zenon_He1 zenon_He5). % 33.91/34.09 apply (zenon_L73_); trivial. % 33.91/34.09 (* end of lemma zenon_L101_ *) % 33.91/34.09 assert (zenon_L102_ : (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e0)) -> ((op (e3) (e3)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H68 zenon_H5f zenon_H9 zenon_H8d. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e0)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H68. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Heb]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H7e]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e0)) = (op (e3) (e0)))); [ zenon_intro zenon_H7f | zenon_intro zenon_H80 ]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0))) = ((op (e3) (unit)) = (op (e3) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H7e. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H7f. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 33.91/34.09 cut (((op (e3) (e0)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H7a]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L34_); trivial. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_H80. apply refl_equal. % 33.91/34.09 apply zenon_Heb. apply sym_equal. exact zenon_H8d. % 33.91/34.09 (* end of lemma zenon_L102_ *) % 33.91/34.09 assert (zenon_L103_ : ((op (e4) (unit)) = (e4)) -> ((unit) = (e3)) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H99 zenon_H2a zenon_H9a zenon_Hcc. % 33.91/34.09 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (e0)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hcc. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hb2. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_Hec]. % 33.91/34.09 congruence. % 33.91/34.09 cut (((op (e4) (unit)) = (e4)) = ((op (e4) (e3)) = (op (e4) (e0)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hec. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H99. % 33.91/34.09 cut (((e4) = (op (e4) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H9d]. % 33.91/34.09 cut (((op (e4) (unit)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb5]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (unit)) = (op (e4) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_Hb5. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hb2. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.91/34.09 cut (((op (e4) (e3)) = (op (e4) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hb0]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L59_); trivial. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_H9d. apply sym_equal. exact zenon_H9a. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 apply zenon_Hb3. apply refl_equal. % 33.91/34.09 (* end of lemma zenon_L103_ *) % 33.91/34.09 assert (zenon_L104_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H8d zenon_H5f zenon_H68 zenon_H9b zenon_Hc8 zenon_Hcc zenon_H9a zenon_H99 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L102_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L49_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L84_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L103_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L104_ *) % 33.91/34.09 assert (zenon_L105_ : (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e1)) -> ((op (e3) (e3)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H73 zenon_H5f zenon_H14 zenon_H8d. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e1)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H73. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Heb]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H66]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((op (e3) (unit)) = (op (e3) (e1)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H66. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H62. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.91/34.09 cut (((op (e3) (e1)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H5e]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L23_); trivial. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_H63. apply refl_equal. % 33.91/34.09 apply zenon_Heb. apply sym_equal. exact zenon_H8d. % 33.91/34.09 (* end of lemma zenon_L105_ *) % 33.91/34.09 assert (zenon_L106_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.09 do 0 intro. intros zenon_H3b zenon_H68 zenon_H8d zenon_H5f zenon_H73 zenon_Hb1 zenon_Ha5 zenon_H99 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.09 apply (zenon_L102_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.09 apply (zenon_L105_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.09 apply (zenon_L58_); trivial. % 33.91/34.09 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.09 apply (zenon_L60_); trivial. % 33.91/34.09 apply (zenon_L11_); trivial. % 33.91/34.09 (* end of lemma zenon_L106_ *) % 33.91/34.09 assert (zenon_L107_ : (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> ((unit) = (e2)) -> ((op (e3) (e3)) = (e3)) -> False). % 33.91/34.09 do 0 intro. intros zenon_H77 zenon_H5f zenon_H21 zenon_H8d. % 33.91/34.09 cut (((op (e3) (unit)) = (e3)) = ((op (e3) (e2)) = (op (e3) (e3)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H77. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H5f. % 33.91/34.09 cut (((e3) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Heb]. % 33.91/34.09 cut (((op (e3) (unit)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H84]. % 33.91/34.09 congruence. % 33.91/34.09 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (e3) (unit)) = (op (e3) (e2)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_H84. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_H85. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.09 cut (((op (e3) (e2)) = (op (e3) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H82]. % 33.91/34.09 congruence. % 33.91/34.09 apply (zenon_L37_); trivial. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_H86. apply refl_equal. % 33.91/34.09 apply zenon_Heb. apply sym_equal. exact zenon_H8d. % 33.91/34.09 (* end of lemma zenon_L107_ *) % 33.91/34.09 assert (zenon_L108_ : ((op (unit) (e4)) = (e4)) -> ((unit) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.91/34.09 do 0 intro. intros zenon_Hd3 zenon_H33 zenon_Hc9 zenon_He9. % 33.91/34.09 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((op (e4) (e2)) = (op (e4) (e4)))). % 33.91/34.09 intro zenon_D_pnotp. % 33.91/34.09 apply zenon_He9. % 33.91/34.09 rewrite <- zenon_D_pnotp. % 33.91/34.09 exact zenon_Hd5. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.91/34.09 cut (((op (e4) (e4)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hed]. % 33.91/34.09 congruence. % 33.91/34.10 cut (((op (unit) (e4)) = (e4)) = ((op (e4) (e4)) = (op (e4) (e2)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hed. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_Hd3. % 33.91/34.10 cut (((e4) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hca]. % 33.91/34.10 cut (((op (unit) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd8]. % 33.91/34.10 congruence. % 33.91/34.10 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.91/34.10 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((op (unit) (e4)) = (op (e4) (e4)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hd8. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_Hd5. % 33.91/34.10 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.91/34.10 cut (((op (e4) (e4)) = (op (unit) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd2]. % 33.91/34.10 congruence. % 33.91/34.10 apply (zenon_L79_); trivial. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 apply zenon_Hca. apply sym_equal. exact zenon_Hc9. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 (* end of lemma zenon_L108_ *) % 33.91/34.10 assert (zenon_L109_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_Hc8 zenon_H32 zenon_H8d zenon_H5f zenon_H77 zenon_H91 zenon_H99 zenon_Hd3 zenon_Hc9 zenon_He9. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L70_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L71_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L107_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L72_); trivial. % 33.91/34.10 apply (zenon_L108_); trivial. % 33.91/34.10 (* end of lemma zenon_L109_ *) % 33.91/34.10 assert (zenon_L110_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_H68 zenon_H73 zenon_H8d zenon_H5f zenon_H77 zenon_H2d zenon_H17 zenon_H2c zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L102_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L105_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L107_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L10_); trivial. % 33.91/34.10 apply (zenon_L80_); trivial. % 33.91/34.10 (* end of lemma zenon_L110_ *) % 33.91/34.10 assert (zenon_L111_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hea zenon_He6 zenon_He8 zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_H8d zenon_H5f zenon_H68 zenon_Hb1 zenon_H73 zenon_Hd3 zenon_He9 zenon_H91 zenon_H77 zenon_Hd4 zenon_H17 zenon_H2c zenon_H2d zenon_Hd9. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.10 apply (zenon_L104_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.10 apply (zenon_L106_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.10 apply (zenon_L109_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_L110_); trivial. % 33.91/34.10 exact (zenon_Hda zenon_Hde). % 33.91/34.10 apply (zenon_L99_); trivial. % 33.91/34.10 (* end of lemma zenon_L111_ *) % 33.91/34.10 assert (zenon_L112_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hee zenon_Hea zenon_He6 zenon_He8 zenon_He9 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H43 zenon_H42 zenon_H41 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_He1 zenon_H9f zenon_H99 zenon_H9b zenon_Hc2 zenon_Hbb zenon_Hba zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Hb1 zenon_Ha1 zenon_Hc8 zenon_Hd3 zenon_Hd4 zenon_Hcc zenon_Hd9 zenon_H8e zenon_H91 zenon_He0 zenon_Hef. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.91/34.10 apply (zenon_L100_); trivial. % 33.91/34.10 apply (zenon_L101_); trivial. % 33.91/34.10 apply (zenon_L111_); trivial. % 33.91/34.10 (* end of lemma zenon_L112_ *) % 33.91/34.10 assert (zenon_L113_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hea zenon_He6 zenon_He8 zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_H8d zenon_H5f zenon_H68 zenon_Hb1 zenon_H73 zenon_Hd3 zenon_He9 zenon_H91 zenon_H77 zenon_Hd4 zenon_Hba zenon_H58 zenon_H57 zenon_Hd9. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.10 apply (zenon_L104_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.10 apply (zenon_L106_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.10 apply (zenon_L109_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_L81_); trivial. % 33.91/34.10 exact (zenon_Hda zenon_Hde). % 33.91/34.10 apply (zenon_L99_); trivial. % 33.91/34.10 (* end of lemma zenon_L113_ *) % 33.91/34.10 assert (zenon_L114_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hee zenon_Hd9 zenon_Hba zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H68 zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_H59 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.91/34.10 apply (zenon_L41_); trivial. % 33.91/34.10 apply (zenon_L113_); trivial. % 33.91/34.10 (* end of lemma zenon_L114_ *) % 33.91/34.10 assert (zenon_L115_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_H8e zenon_H5f zenon_H9f zenon_Ha5 zenon_H99 zenon_H77 zenon_H76 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L83_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L89_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L58_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L32_); trivial. % 33.91/34.10 apply (zenon_L11_); trivial. % 33.91/34.10 (* end of lemma zenon_L115_ *) % 33.91/34.10 assert (zenon_L116_ : (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e3)) -> ((op (e3) (e3)) = (e2)) -> False). % 33.91/34.10 do 0 intro. intros zenon_H77 zenon_Hc zenon_H2a zenon_He5. % 33.91/34.10 cut (((op (unit) (e2)) = (e2)) = ((op (e3) (e2)) = (op (e3) (e3)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_H77. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_Hc. % 33.91/34.10 cut (((e2) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hf0]. % 33.91/34.10 cut (((op (unit) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hc1]. % 33.91/34.10 congruence. % 33.91/34.10 elim (classic ((op (e3) (e2)) = (op (e3) (e2)))); [ zenon_intro zenon_H85 | zenon_intro zenon_H86 ]. % 33.91/34.10 cut (((op (e3) (e2)) = (op (e3) (e2))) = ((op (unit) (e2)) = (op (e3) (e2)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hc1. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H85. % 33.91/34.10 cut (((op (e3) (e2)) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H86]. % 33.91/34.10 cut (((op (e3) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hbe]. % 33.91/34.10 congruence. % 33.91/34.10 apply (zenon_L66_); trivial. % 33.91/34.10 apply zenon_H86. apply refl_equal. % 33.91/34.10 apply zenon_H86. apply refl_equal. % 33.91/34.10 apply zenon_Hf0. apply sym_equal. exact zenon_He5. % 33.91/34.10 (* end of lemma zenon_L116_ *) % 33.91/34.10 assert (zenon_L117_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_H8e zenon_H76 zenon_H5f zenon_H9f zenon_H22 zenon_H20 zenon_H1f zenon_He5 zenon_Hc zenon_H77 zenon_Hd3 zenon_Hc9 zenon_He9. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L83_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L89_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L8_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L116_); trivial. % 33.91/34.10 apply (zenon_L108_); trivial. % 33.91/34.10 (* end of lemma zenon_L117_ *) % 33.91/34.10 assert (zenon_L118_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e3) (e3)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hd9 zenon_Hc8 zenon_H9b zenon_H34 zenon_H16 zenon_H32 zenon_He9 zenon_H77 zenon_Hc zenon_He5 zenon_H1f zenon_H20 zenon_H22 zenon_H9f zenon_H5f zenon_H76 zenon_H8e zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.10 apply (zenon_L85_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.10 apply (zenon_L115_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.10 apply (zenon_L117_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_L81_); trivial. % 33.91/34.10 exact (zenon_Hda zenon_Hde). % 33.91/34.10 (* end of lemma zenon_L118_ *) % 33.91/34.10 assert (zenon_L119_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> False). % 33.91/34.10 do 0 intro. intros zenon_He0 zenon_Hb zenon_H50 zenon_H43 zenon_H51 zenon_H49 zenon_H41 zenon_H42 zenon_H88 zenon_H7b zenon_H81 zenon_H87 zenon_H6e zenon_H73 zenon_H61 zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hee zenon_He9 zenon_Hc2 zenon_H2c zenon_H17 zenon_H2d zenon_H18 zenon_Ha1 zenon_Haa zenon_H16 zenon_H34 zenon_H77 zenon_Hb9 zenon_Hb6 zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc zenon_H9b zenon_H76 zenon_H5f zenon_H9f zenon_H83 zenon_H8e zenon_Hd9 zenon_Hc3. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.91/34.10 apply (zenon_L12_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.91/34.10 apply (zenon_L20_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.91/34.10 apply (zenon_L114_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.91/34.10 apply (zenon_L118_); trivial. % 33.91/34.10 apply (zenon_L92_); trivial. % 33.91/34.10 (* end of lemma zenon_L119_ *) % 33.91/34.10 assert (zenon_L120_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_H8e zenon_H5f zenon_H9f zenon_H22 zenon_H1f zenon_H77 zenon_H76 zenon_H20 zenon_Hd3 zenon_Hc9 zenon_He9. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L83_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L89_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L8_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L32_); trivial. % 33.91/34.10 apply (zenon_L108_); trivial. % 33.91/34.10 (* end of lemma zenon_L120_ *) % 33.91/34.10 assert (zenon_L121_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hf1 zenon_Hef zenon_He0 zenon_H91 zenon_H8e zenon_Hd9 zenon_Hcc zenon_Hd4 zenon_Hd3 zenon_Hc8 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hba zenon_Hbb zenon_Hc2 zenon_H9b zenon_H99 zenon_H9f zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H41 zenon_H42 zenon_H43 zenon_H49 zenon_H51 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_He9 zenon_He8 zenon_He6 zenon_Hea zenon_Hee. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.91/34.10 apply (zenon_L112_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_L119_); trivial. % 33.91/34.10 apply (zenon_L99_); trivial. % 33.91/34.10 apply (zenon_L120_); trivial. % 33.91/34.10 (* end of lemma zenon_L121_ *) % 33.91/34.10 assert (zenon_L122_ : (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e0)) -> ((op (e2) (e1)) = (e2)) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hbb zenon_H58 zenon_H9 zenon_Hf2. % 33.91/34.10 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e0)) = (op (e2) (e1)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hbb. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H58. % 33.91/34.10 cut (((e2) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Hf3]. % 33.91/34.10 cut (((op (e2) (unit)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 33.91/34.10 congruence. % 33.91/34.10 elim (classic ((op (e2) (e0)) = (op (e2) (e0)))); [ zenon_intro zenon_H5c | zenon_intro zenon_H5d ]. % 33.91/34.10 cut (((op (e2) (e0)) = (op (e2) (e0))) = ((op (e2) (unit)) = (op (e2) (e0)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_H5b. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H5c. % 33.91/34.10 cut (((op (e2) (e0)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5d]. % 33.91/34.10 cut (((op (e2) (e0)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H56]. % 33.91/34.10 congruence. % 33.91/34.10 apply (zenon_L21_); trivial. % 33.91/34.10 apply zenon_H5d. apply refl_equal. % 33.91/34.10 apply zenon_H5d. apply refl_equal. % 33.91/34.10 apply zenon_Hf3. apply sym_equal. exact zenon_Hf2. % 33.91/34.10 (* end of lemma zenon_L122_ *) % 33.91/34.10 assert (zenon_L123_ : ((op (e2) (unit)) = (e2)) -> ((unit) = (e3)) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H58 zenon_H2a zenon_Hf2 zenon_H6e. % 33.91/34.10 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (e2) (e1)) = (op (e2) (e3)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_H6e. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H25. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Hf4]. % 33.91/34.10 congruence. % 33.91/34.10 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e3)) = (op (e2) (e1)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hf4. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H58. % 33.91/34.10 cut (((e2) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Hf3]. % 33.91/34.10 cut (((op (e2) (unit)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 33.91/34.10 congruence. % 33.91/34.10 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (e2) (unit)) = (op (e2) (e3)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hd1. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H25. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hcf]. % 33.91/34.10 congruence. % 33.91/34.10 apply (zenon_L77_); trivial. % 33.91/34.10 apply zenon_H26. apply refl_equal. % 33.91/34.10 apply zenon_H26. apply refl_equal. % 33.91/34.10 apply zenon_Hf3. apply sym_equal. exact zenon_Hf2. % 33.91/34.10 apply zenon_H26. apply refl_equal. % 33.91/34.10 apply zenon_H26. apply refl_equal. % 33.91/34.10 (* end of lemma zenon_L123_ *) % 33.91/34.10 assert (zenon_L124_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_Hbb zenon_H9b zenon_H9a zenon_H99 zenon_H22 zenon_H20 zenon_H1f zenon_H6e zenon_Hf2 zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L122_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L49_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L8_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L123_); trivial. % 33.91/34.10 apply (zenon_L11_); trivial. % 33.91/34.10 (* end of lemma zenon_L124_ *) % 33.91/34.10 assert (zenon_L125_ : (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e3)) -> ((op (e2) (e4)) = (e2)) -> False). % 33.91/34.10 do 0 intro. intros zenon_H1f zenon_H58 zenon_H2a zenon_Hb7. % 33.91/34.10 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e3)) = (op (e2) (e4)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_H1f. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H58. % 33.91/34.10 cut (((e2) = (op (e2) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hb8]. % 33.91/34.10 cut (((op (e2) (unit)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 33.91/34.10 congruence. % 33.91/34.10 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (e2) (unit)) = (op (e2) (e3)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hd1. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_H25. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.91/34.10 cut (((op (e2) (e3)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hcf]. % 33.91/34.10 congruence. % 33.91/34.10 apply (zenon_L77_); trivial. % 33.91/34.10 apply zenon_H26. apply refl_equal. % 33.91/34.10 apply zenon_H26. apply refl_equal. % 33.91/34.10 apply zenon_Hb8. apply sym_equal. exact zenon_Hb7. % 33.91/34.10 (* end of lemma zenon_L125_ *) % 33.91/34.10 assert (zenon_L126_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> ((op (e2) (e4)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_Hb6 zenon_Hb9 zenon_H22 zenon_H20 zenon_Hb7 zenon_H58 zenon_H1f zenon_H32 zenon_H16 zenon_H34. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L62_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L63_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L8_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L125_); trivial. % 33.91/34.10 apply (zenon_L11_); trivial. % 33.91/34.10 (* end of lemma zenon_L126_ *) % 33.91/34.10 assert (zenon_L127_ : ((op (unit) (e4)) = (e4)) -> ((unit) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hd3 zenon_H33 zenon_Ha5 zenon_He8. % 33.91/34.10 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.91/34.10 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((op (e4) (e1)) = (op (e4) (e4)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_He8. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_Hd5. % 33.91/34.10 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.91/34.10 cut (((op (e4) (e4)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Hf5]. % 33.91/34.10 congruence. % 33.91/34.10 cut (((op (unit) (e4)) = (e4)) = ((op (e4) (e4)) = (op (e4) (e1)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hf5. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_Hd3. % 33.91/34.10 cut (((e4) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Ha6]. % 33.91/34.10 cut (((op (unit) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd8]. % 33.91/34.10 congruence. % 33.91/34.10 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.91/34.10 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((op (unit) (e4)) = (op (e4) (e4)))). % 33.91/34.10 intro zenon_D_pnotp. % 33.91/34.10 apply zenon_Hd8. % 33.91/34.10 rewrite <- zenon_D_pnotp. % 33.91/34.10 exact zenon_Hd5. % 33.91/34.10 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.91/34.10 cut (((op (e4) (e4)) = (op (unit) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd2]. % 33.91/34.10 congruence. % 33.91/34.10 apply (zenon_L79_); trivial. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 apply zenon_Ha6. apply sym_equal. exact zenon_Ha5. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 apply zenon_Hd6. apply refl_equal. % 33.91/34.10 (* end of lemma zenon_L127_ *) % 33.91/34.10 assert (zenon_L128_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> ((op (e3) (e4)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_H9b zenon_H18 zenon_H17 zenon_H16 zenon_H32 zenon_H99 zenon_Hbf zenon_Hc zenon_H83 zenon_Hd3 zenon_Ha5 zenon_He8. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L55_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L6_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L58_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L67_); trivial. % 33.91/34.10 apply (zenon_L127_); trivial. % 33.91/34.10 (* end of lemma zenon_L128_ *) % 33.91/34.10 assert (zenon_L129_ : (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((op (e4) (e3)) = (e2)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (e1)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hc2 zenon_H2c zenon_H2d zenon_Ha1 zenon_H92 zenon_H91 zenon_Hb1 zenon_Haa zenon_H34 zenon_H1f zenon_H58 zenon_H20 zenon_H22 zenon_Hb9 zenon_Hb6 zenon_He8 zenon_Ha5 zenon_Hd3 zenon_H83 zenon_Hc zenon_H99 zenon_H32 zenon_H16 zenon_H17 zenon_H18 zenon_H9b zenon_H3b zenon_Hc3. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hc2); [ zenon_intro zenon_Ha2 | zenon_intro zenon_Hc4 ]. % 33.91/34.10 apply (zenon_L53_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hc4); [ zenon_intro zenon_Hab | zenon_intro zenon_Hc5 ]. % 33.91/34.10 apply (zenon_L61_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hc5); [ zenon_intro zenon_Hb7 | zenon_intro zenon_Hc6 ]. % 33.91/34.10 apply (zenon_L126_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hc6); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hc7 ]. % 33.91/34.10 apply (zenon_L128_); trivial. % 33.91/34.10 exact (zenon_Hc3 zenon_Hc7). % 33.91/34.10 (* end of lemma zenon_L129_ *) % 33.91/34.10 assert (zenon_L130_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.91/34.10 do 0 intro. intros zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H6e zenon_Hf2 zenon_H58 zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.91/34.10 apply (zenon_L74_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.91/34.10 apply (zenon_L75_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.91/34.10 apply (zenon_L76_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.91/34.10 apply (zenon_L123_); trivial. % 33.91/34.10 apply (zenon_L80_); trivial. % 33.91/34.10 (* end of lemma zenon_L130_ *) % 33.91/34.10 assert (zenon_L131_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hd9 zenon_Hbb zenon_Hc3 zenon_H9b zenon_H18 zenon_H17 zenon_H16 zenon_H83 zenon_He8 zenon_Hb6 zenon_Hb9 zenon_H34 zenon_Haa zenon_Ha1 zenon_H2d zenon_H2c zenon_Hc2 zenon_H92 zenon_Hc zenon_H1f zenon_H20 zenon_H22 zenon_H32 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hf2 zenon_H6e zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.10 apply (zenon_L124_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.10 apply (zenon_L129_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.10 apply (zenon_L73_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_L130_); trivial. % 33.91/34.10 exact (zenon_Hda zenon_Hde). % 33.91/34.10 (* end of lemma zenon_L131_ *) % 33.91/34.10 assert (zenon_L132_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hea zenon_He6 zenon_He9 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H43 zenon_H42 zenon_H41 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H89 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_He1 zenon_Hd9 zenon_Hcc zenon_Hd4 zenon_Hc8 zenon_H91 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hd3 zenon_He8 zenon_Hc3 zenon_Hc2 zenon_Hbb zenon_Hf2 zenon_H9b zenon_H99 zenon_He0. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.91/34.10 apply (zenon_L12_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.91/34.10 apply (zenon_L20_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.91/34.10 apply (zenon_L41_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.91/34.10 exact (zenon_He1 zenon_He5). % 33.91/34.10 apply (zenon_L131_); trivial. % 33.91/34.10 apply (zenon_L99_); trivial. % 33.91/34.10 (* end of lemma zenon_L132_ *) % 33.91/34.10 assert (zenon_L133_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hea zenon_He6 zenon_He8 zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_H8d zenon_H5f zenon_H68 zenon_Hb1 zenon_H73 zenon_Hd3 zenon_He9 zenon_H91 zenon_H77 zenon_Hd4 zenon_Hf2 zenon_H58 zenon_H6e zenon_Hd9. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.10 apply (zenon_L104_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.10 apply (zenon_L106_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.10 apply (zenon_L109_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_L130_); trivial. % 33.91/34.10 exact (zenon_Hda zenon_Hde). % 33.91/34.10 apply (zenon_L99_); trivial. % 33.91/34.10 (* end of lemma zenon_L133_ *) % 33.91/34.10 assert (zenon_L134_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hee zenon_Hea zenon_He6 zenon_He9 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H43 zenon_H42 zenon_H41 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_He1 zenon_Hd9 zenon_Hcc zenon_Hd4 zenon_Hc8 zenon_H91 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hd3 zenon_He8 zenon_Hc2 zenon_Hbb zenon_Hf2 zenon_H9b zenon_H99 zenon_He0 zenon_Hef. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.91/34.10 apply (zenon_L132_); trivial. % 33.91/34.10 apply (zenon_L101_); trivial. % 33.91/34.10 apply (zenon_L133_); trivial. % 33.91/34.10 (* end of lemma zenon_L134_ *) % 33.91/34.10 assert (zenon_L135_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hee zenon_Hd9 zenon_H2d zenon_H2c zenon_H17 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H68 zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_H59 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.91/34.10 apply (zenon_L41_); trivial. % 33.91/34.10 apply (zenon_L111_); trivial. % 33.91/34.10 (* end of lemma zenon_L135_ *) % 33.91/34.10 assert (zenon_L136_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e3) (e3)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hd9 zenon_Hc8 zenon_H9b zenon_H34 zenon_H16 zenon_H32 zenon_He9 zenon_H77 zenon_Hc zenon_He5 zenon_H1f zenon_H20 zenon_H22 zenon_H9f zenon_H5f zenon_H76 zenon_H8e zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hf2 zenon_H6e zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.91/34.10 apply (zenon_L85_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.91/34.10 apply (zenon_L115_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.91/34.10 apply (zenon_L117_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_L130_); trivial. % 33.91/34.10 exact (zenon_Hda zenon_Hde). % 33.91/34.10 (* end of lemma zenon_L136_ *) % 33.91/34.10 assert (zenon_L137_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> False). % 33.91/34.10 do 0 intro. intros zenon_Hf1 zenon_H9f zenon_H8e zenon_Hef zenon_He0 zenon_H99 zenon_H9b zenon_Hf2 zenon_Hbb zenon_Hc2 zenon_He8 zenon_Hd3 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Hb1 zenon_Ha1 zenon_H91 zenon_Hc8 zenon_Hd4 zenon_Hcc zenon_Hd9 zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H41 zenon_H42 zenon_H43 zenon_H49 zenon_H51 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_He9 zenon_He6 zenon_Hea zenon_Hee. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.91/34.10 apply (zenon_L134_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.91/34.10 apply (zenon_L12_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.91/34.10 apply (zenon_L20_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.91/34.10 apply (zenon_L135_); trivial. % 33.91/34.10 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.91/34.10 apply (zenon_L136_); trivial. % 33.91/34.10 apply (zenon_L131_); trivial. % 33.91/34.10 apply (zenon_L99_); trivial. % 33.91/34.10 apply (zenon_L120_); trivial. % 33.91/34.10 (* end of lemma zenon_L137_ *) % 33.91/34.10 assert (zenon_L138_ : (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.10 do 0 intro. intros zenon_Hf6 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H43 zenon_H42 zenon_H41 zenon_Ha1 zenon_Haa zenon_Hc2 zenon_Hbb zenon_He0 zenon_Hef zenon_H8e zenon_H9f zenon_Hf1 zenon_Hf7 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_H17 zenon_H2c zenon_H2d zenon_Hd9 zenon_Hee zenon_H3b zenon_Hb6 zenon_Hb9 zenon_H22 zenon_H20 zenon_H58 zenon_H1f zenon_H32 zenon_H16 zenon_H34. % 33.93/34.10 apply (zenon_or_s _ _ zenon_Hf6); [ zenon_intro zenon_Hba | zenon_intro zenon_Hf8 ]. % 33.93/34.10 apply (zenon_L121_); trivial. % 33.93/34.10 apply (zenon_or_s _ _ zenon_Hf8); [ zenon_intro zenon_Hf2 | zenon_intro zenon_Hf9 ]. % 33.93/34.10 apply (zenon_L137_); trivial. % 33.93/34.10 apply (zenon_or_s _ _ zenon_Hf9); [ zenon_intro zenon_Hfb | zenon_intro zenon_Hfa ]. % 33.93/34.10 exact (zenon_Hf7 zenon_Hfb). % 33.93/34.10 apply (zenon_or_s _ _ zenon_Hfa); [ zenon_intro zenon_H59 | zenon_intro zenon_Hb7 ]. % 33.93/34.10 apply (zenon_L135_); trivial. % 33.93/34.10 apply (zenon_L126_); trivial. % 33.93/34.10 (* end of lemma zenon_L138_ *) % 33.93/34.10 assert (zenon_L139_ : (~((op (e2) (e0)) = (op (e2) (e2)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e0)) -> ((op (e2) (e2)) = (e2)) -> False). % 33.93/34.10 do 0 intro. intros zenon_Hfc zenon_H58 zenon_H9 zenon_Hfb. % 33.93/34.10 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e0)) = (op (e2) (e2)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_Hfc. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H58. % 33.93/34.10 cut (((e2) = (op (e2) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hfd]. % 33.93/34.10 cut (((op (e2) (unit)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5b]. % 33.93/34.10 congruence. % 33.93/34.10 elim (classic ((op (e2) (e0)) = (op (e2) (e0)))); [ zenon_intro zenon_H5c | zenon_intro zenon_H5d ]. % 33.93/34.10 cut (((op (e2) (e0)) = (op (e2) (e0))) = ((op (e2) (unit)) = (op (e2) (e0)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_H5b. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H5c. % 33.93/34.10 cut (((op (e2) (e0)) = (op (e2) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H5d]. % 33.93/34.10 cut (((op (e2) (e0)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H56]. % 33.93/34.10 congruence. % 33.93/34.10 apply (zenon_L21_); trivial. % 33.93/34.10 apply zenon_H5d. apply refl_equal. % 33.93/34.10 apply zenon_H5d. apply refl_equal. % 33.93/34.10 apply zenon_Hfd. apply sym_equal. exact zenon_Hfb. % 33.93/34.10 (* end of lemma zenon_L139_ *) % 33.93/34.10 assert (zenon_L140_ : (~((op (e2) (e1)) = (op (e2) (e2)))) -> ((op (e2) (unit)) = (e2)) -> ((unit) = (e1)) -> ((op (e2) (e2)) = (e2)) -> False). % 33.93/34.10 do 0 intro. intros zenon_Hfe zenon_H58 zenon_H14 zenon_Hfb. % 33.93/34.10 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e1)) = (op (e2) (e2)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_Hfe. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H58. % 33.93/34.10 cut (((e2) = (op (e2) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hfd]. % 33.93/34.10 cut (((op (e2) (unit)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H6f]. % 33.93/34.10 congruence. % 33.93/34.10 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.93/34.10 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((op (e2) (unit)) = (op (e2) (e1)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_H6f. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H70. % 33.93/34.10 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.93/34.10 cut (((op (e2) (e1)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H6d]. % 33.93/34.10 congruence. % 33.93/34.10 apply (zenon_L28_); trivial. % 33.93/34.10 apply zenon_H71. apply refl_equal. % 33.93/34.10 apply zenon_H71. apply refl_equal. % 33.93/34.10 apply zenon_Hfd. apply sym_equal. exact zenon_Hfb. % 33.93/34.10 (* end of lemma zenon_L140_ *) % 33.93/34.10 assert (zenon_L141_ : ((op (e2) (unit)) = (e2)) -> ((unit) = (e3)) -> ((op (e2) (e2)) = (e2)) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> False). % 33.93/34.10 do 0 intro. intros zenon_H58 zenon_H2a zenon_Hfb zenon_Hff. % 33.93/34.10 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.93/34.10 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (e2) (e2)) = (op (e2) (e3)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_Hff. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H25. % 33.93/34.10 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.93/34.10 cut (((op (e2) (e3)) = (op (e2) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H100]. % 33.93/34.10 congruence. % 33.93/34.10 cut (((op (e2) (unit)) = (e2)) = ((op (e2) (e3)) = (op (e2) (e2)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_H100. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H58. % 33.93/34.10 cut (((e2) = (op (e2) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hfd]. % 33.93/34.10 cut (((op (e2) (unit)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hd1]. % 33.93/34.10 congruence. % 33.93/34.10 elim (classic ((op (e2) (e3)) = (op (e2) (e3)))); [ zenon_intro zenon_H25 | zenon_intro zenon_H26 ]. % 33.93/34.10 cut (((op (e2) (e3)) = (op (e2) (e3))) = ((op (e2) (unit)) = (op (e2) (e3)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_Hd1. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H25. % 33.93/34.10 cut (((op (e2) (e3)) = (op (e2) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H26]. % 33.93/34.10 cut (((op (e2) (e3)) = (op (e2) (unit)))); [idtac | apply NNPP; zenon_intro zenon_Hcf]. % 33.93/34.10 congruence. % 33.93/34.10 apply (zenon_L77_); trivial. % 33.93/34.10 apply zenon_H26. apply refl_equal. % 33.93/34.10 apply zenon_H26. apply refl_equal. % 33.93/34.10 apply zenon_Hfd. apply sym_equal. exact zenon_Hfb. % 33.93/34.10 apply zenon_H26. apply refl_equal. % 33.93/34.10 apply zenon_H26. apply refl_equal. % 33.93/34.10 (* end of lemma zenon_L141_ *) % 33.93/34.10 assert (zenon_L142_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> ((op (e2) (e2)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.10 do 0 intro. intros zenon_H3b zenon_Hfc zenon_Hfe zenon_H22 zenon_H20 zenon_H1f zenon_Hff zenon_Hfb zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.10 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.10 apply (zenon_L139_); trivial. % 33.93/34.10 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.10 apply (zenon_L140_); trivial. % 33.93/34.10 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.10 apply (zenon_L8_); trivial. % 33.93/34.10 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.10 apply (zenon_L141_); trivial. % 33.93/34.10 apply (zenon_L11_); trivial. % 33.93/34.10 (* end of lemma zenon_L142_ *) % 33.93/34.10 assert (zenon_L143_ : ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> False). % 33.93/34.10 do 0 intro. intros zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_Hf1 zenon_Hef zenon_He0 zenon_H91 zenon_H8e zenon_Hd9 zenon_Hcc zenon_Hd4 zenon_Hd3 zenon_Hc8 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hbb zenon_Hc2 zenon_H9b zenon_H99 zenon_H9f zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H41 zenon_H42 zenon_H43 zenon_H49 zenon_H51 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_He9 zenon_He8 zenon_He6 zenon_Hea zenon_Hee zenon_Hf6. % 33.93/34.10 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.93/34.10 apply (zenon_L138_); trivial. % 33.93/34.10 apply (zenon_L142_); trivial. % 33.93/34.10 (* end of lemma zenon_L143_ *) % 33.93/34.10 assert (zenon_L144_ : (~((op (e1) (e0)) = (op (e1) (unit)))) -> ((unit) = (e0)) -> False). % 33.93/34.10 do 0 intro. intros zenon_H102 zenon_H9. % 33.93/34.10 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.93/34.10 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.93/34.10 congruence. % 33.93/34.10 apply zenon_H12. apply refl_equal. % 33.93/34.10 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.93/34.10 (* end of lemma zenon_L144_ *) % 33.93/34.10 assert (zenon_L145_ : (~((op (e1) (e0)) = (op (e1) (e2)))) -> ((op (e1) (unit)) = (e1)) -> ((unit) = (e0)) -> ((op (e1) (e2)) = (e1)) -> False). % 33.93/34.10 do 0 intro. intros zenon_H103 zenon_H2c zenon_H9 zenon_H104. % 33.93/34.10 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e0)) = (op (e1) (e2)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_H103. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H2c. % 33.93/34.10 cut (((e1) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H105]. % 33.93/34.10 cut (((op (e1) (unit)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H106]. % 33.93/34.10 congruence. % 33.93/34.10 elim (classic ((op (e1) (e0)) = (op (e1) (e0)))); [ zenon_intro zenon_H107 | zenon_intro zenon_H108 ]. % 33.93/34.10 cut (((op (e1) (e0)) = (op (e1) (e0))) = ((op (e1) (unit)) = (op (e1) (e0)))). % 33.93/34.10 intro zenon_D_pnotp. % 33.93/34.10 apply zenon_H106. % 33.93/34.10 rewrite <- zenon_D_pnotp. % 33.93/34.10 exact zenon_H107. % 33.93/34.10 cut (((op (e1) (e0)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H108]. % 33.93/34.10 cut (((op (e1) (e0)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H102]. % 33.93/34.10 congruence. % 33.93/34.10 apply (zenon_L144_); trivial. % 33.93/34.10 apply zenon_H108. apply refl_equal. % 33.93/34.10 apply zenon_H108. apply refl_equal. % 33.93/34.10 apply zenon_H105. apply sym_equal. exact zenon_H104. % 33.93/34.10 (* end of lemma zenon_L145_ *) % 33.93/34.10 assert (zenon_L146_ : (~((op (e1) (e1)) = (op (e1) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((unit) = (e1)) -> ((op (e1) (e2)) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H109 zenon_H16 zenon_H14 zenon_H104. % 33.93/34.11 cut (((op (unit) (e1)) = (e1)) = ((op (e1) (e1)) = (op (e1) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H109. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H16. % 33.93/34.11 cut (((e1) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H105]. % 33.93/34.11 cut (((op (unit) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e1)) = (op (e1) (e1)))); [ zenon_intro zenon_H19 | zenon_intro zenon_H1a ]. % 33.93/34.11 cut (((op (e1) (e1)) = (op (e1) (e1))) = ((op (unit) (e1)) = (op (e1) (e1)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H1d. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H19. % 33.93/34.11 cut (((op (e1) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 33.93/34.11 cut (((op (e1) (e1)) = (op (unit) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L5_); trivial. % 33.93/34.11 apply zenon_H1a. apply refl_equal. % 33.93/34.11 apply zenon_H1a. apply refl_equal. % 33.93/34.11 apply zenon_H105. apply sym_equal. exact zenon_H104. % 33.93/34.11 (* end of lemma zenon_L146_ *) % 33.93/34.11 assert (zenon_L147_ : ((op (e1) (unit)) = (e1)) -> ((unit) = (e3)) -> ((op (e1) (e2)) = (e1)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H2c zenon_H2a zenon_H104 zenon_H49. % 33.93/34.11 elim (classic ((op (e1) (e3)) = (op (e1) (e3)))); [ zenon_intro zenon_H2e | zenon_intro zenon_H2f ]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3))) = ((op (e1) (e2)) = (op (e1) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H49. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2e. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H10a]. % 33.93/34.11 congruence. % 33.93/34.11 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e3)) = (op (e1) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H10a. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2c. % 33.93/34.11 cut (((e1) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H105]. % 33.93/34.11 cut (((op (e1) (unit)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H31]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e3)) = (op (e1) (e3)))); [ zenon_intro zenon_H2e | zenon_intro zenon_H2f ]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3))) = ((op (e1) (unit)) = (op (e1) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H31. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2e. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H29]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L9_); trivial. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H105. apply sym_equal. exact zenon_H104. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 (* end of lemma zenon_L147_ *) % 33.93/34.11 assert (zenon_L148_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e1) (e2)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H103 zenon_H109 zenon_H22 zenon_H20 zenon_H1f zenon_H49 zenon_H104 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L145_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L146_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L147_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L148_ *) % 33.93/34.11 assert (zenon_L149_ : (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((op (unit) (e0)) = (e0)) -> ((unit) = (e0)) -> ((op (e0) (e2)) = (e0)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H10b zenon_H42 zenon_H9 zenon_H10c. % 33.93/34.11 cut (((op (unit) (e0)) = (e0)) = ((op (e0) (e0)) = (op (e0) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H10b. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H42. % 33.93/34.11 cut (((e0) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H10d]. % 33.93/34.11 cut (((op (unit) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e0) (e0)) = (op (e0) (e0)))); [ zenon_intro zenon_H46 | zenon_intro zenon_H47 ]. % 33.93/34.11 cut (((op (e0) (e0)) = (op (e0) (e0))) = ((op (unit) (e0)) = (op (e0) (e0)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H45. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H46. % 33.93/34.11 cut (((op (e0) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H47]. % 33.93/34.11 cut (((op (e0) (e0)) = (op (unit) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H40]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L14_); trivial. % 33.93/34.11 apply zenon_H47. apply refl_equal. % 33.93/34.11 apply zenon_H47. apply refl_equal. % 33.93/34.11 apply zenon_H10d. apply sym_equal. exact zenon_H10c. % 33.93/34.11 (* end of lemma zenon_L149_ *) % 33.93/34.11 assert (zenon_L150_ : ((op (e0) (unit)) = (e0)) -> ((unit) = (e3)) -> ((op (e0) (e2)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H50 zenon_H2a zenon_H10c zenon_Hb. % 33.93/34.11 elim (classic ((op (e0) (e3)) = (op (e0) (e3)))); [ zenon_intro zenon_H52 | zenon_intro zenon_H53 ]. % 33.93/34.11 cut (((op (e0) (e3)) = (op (e0) (e3))) = ((op (e0) (e2)) = (op (e0) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_Hb. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H52. % 33.93/34.11 cut (((op (e0) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H53]. % 33.93/34.11 cut (((op (e0) (e3)) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H10e]. % 33.93/34.11 congruence. % 33.93/34.11 cut (((op (e0) (unit)) = (e0)) = ((op (e0) (e3)) = (op (e0) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H10e. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H50. % 33.93/34.11 cut (((e0) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H10d]. % 33.93/34.11 cut (((op (e0) (unit)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e0) (e3)) = (op (e0) (e3)))); [ zenon_intro zenon_H52 | zenon_intro zenon_H53 ]. % 33.93/34.11 cut (((op (e0) (e3)) = (op (e0) (e3))) = ((op (e0) (unit)) = (op (e0) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H55. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H52. % 33.93/34.11 cut (((op (e0) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H53]. % 33.93/34.11 cut (((op (e0) (e3)) = (op (e0) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H4f]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L18_); trivial. % 33.93/34.11 apply zenon_H53. apply refl_equal. % 33.93/34.11 apply zenon_H53. apply refl_equal. % 33.93/34.11 apply zenon_H10d. apply sym_equal. exact zenon_H10c. % 33.93/34.11 apply zenon_H53. apply refl_equal. % 33.93/34.11 apply zenon_H53. apply refl_equal. % 33.93/34.11 (* end of lemma zenon_L150_ *) % 33.93/34.11 assert (zenon_L151_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H42 zenon_H10b zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_Hb zenon_H10c zenon_H50 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L149_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L17_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L150_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L151_ *) % 33.93/34.11 assert (zenon_L152_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H42 zenon_H10b zenon_H18 zenon_H17 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_Hb zenon_H10c zenon_H50 zenon_H91 zenon_Hc zenon_H92. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L149_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L6_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L150_); trivial. % 33.93/34.11 apply (zenon_L44_); trivial. % 33.93/34.11 (* end of lemma zenon_L152_ *) % 33.93/34.11 assert (zenon_L153_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e0)) = (e2)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_He0 zenon_H2c zenon_H2d zenon_H49 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_H32 zenon_H34 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_Hd4 zenon_Hba zenon_Hd9 zenon_Hee zenon_He1 zenon_H3b zenon_H42 zenon_H10b zenon_H18 zenon_H17 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_Hb zenon_H10c zenon_H50 zenon_H91 zenon_Hc. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.11 apply (zenon_L12_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.11 apply (zenon_L151_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.11 apply (zenon_L114_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.11 exact (zenon_He1 zenon_He5). % 33.93/34.11 apply (zenon_L152_); trivial. % 33.93/34.11 (* end of lemma zenon_L153_ *) % 33.93/34.11 assert (zenon_L154_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hf1 zenon_H8e zenon_H9f zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H49 zenon_H10c zenon_H42 zenon_H10b zenon_Hee zenon_Hd9 zenon_Hba zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_He0. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.93/34.11 apply (zenon_L153_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.11 apply (zenon_L12_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.11 apply (zenon_L151_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.11 apply (zenon_L114_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.11 apply (zenon_L118_); trivial. % 33.93/34.11 apply (zenon_L152_); trivial. % 33.93/34.11 apply (zenon_L99_); trivial. % 33.93/34.11 (* end of lemma zenon_L154_ *) % 33.93/34.11 assert (zenon_L155_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hee zenon_Hd9 zenon_Hf2 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H68 zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_H59 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.11 apply (zenon_L41_); trivial. % 33.93/34.11 apply (zenon_L133_); trivial. % 33.93/34.11 (* end of lemma zenon_L155_ *) % 33.93/34.11 assert (zenon_L156_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e1)) = (e2)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_He0 zenon_H2c zenon_H2d zenon_H49 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_H32 zenon_H34 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_Hd4 zenon_Hf2 zenon_Hd9 zenon_Hee zenon_He1 zenon_H3b zenon_H42 zenon_H10b zenon_H18 zenon_H17 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_Hb zenon_H10c zenon_H50 zenon_H91 zenon_Hc. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.11 apply (zenon_L12_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.11 apply (zenon_L151_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.11 apply (zenon_L155_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.11 exact (zenon_He1 zenon_He5). % 33.93/34.11 apply (zenon_L152_); trivial. % 33.93/34.11 (* end of lemma zenon_L156_ *) % 33.93/34.11 assert (zenon_L157_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_He0 zenon_H2c zenon_H2d zenon_H49 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H73 zenon_H57 zenon_H61 zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hee zenon_Hda zenon_Hcc zenon_Hb1 zenon_H99 zenon_H6e zenon_Hf2 zenon_H58 zenon_Hd3 zenon_Hd4 zenon_H8e zenon_H76 zenon_H5f zenon_H9f zenon_H77 zenon_He9 zenon_H32 zenon_H34 zenon_H9b zenon_Hc8 zenon_Hd9 zenon_H3b zenon_H42 zenon_H10b zenon_H18 zenon_H17 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_Hb zenon_H10c zenon_H50 zenon_H91 zenon_Hc. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.11 apply (zenon_L12_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.11 apply (zenon_L151_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.11 apply (zenon_L155_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.11 apply (zenon_L136_); trivial. % 33.93/34.11 apply (zenon_L152_); trivial. % 33.93/34.11 (* end of lemma zenon_L157_ *) % 33.93/34.11 assert (zenon_L158_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hf1 zenon_H8e zenon_H9f zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H49 zenon_H10c zenon_H42 zenon_H10b zenon_Hee zenon_Hd9 zenon_Hf2 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_He0. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.93/34.11 apply (zenon_L156_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_L157_); trivial. % 33.93/34.11 apply (zenon_L99_); trivial. % 33.93/34.11 (* end of lemma zenon_L158_ *) % 33.93/34.11 assert (zenon_L159_ : (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e2)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hf6 zenon_He0 zenon_H10b zenon_H42 zenon_H10c zenon_H49 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H9f zenon_H8e zenon_Hf1 zenon_Hf7 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_H17 zenon_H2c zenon_H2d zenon_Hd9 zenon_Hee zenon_H3b zenon_Hb6 zenon_Hb9 zenon_H22 zenon_H20 zenon_H58 zenon_H1f zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf6); [ zenon_intro zenon_Hba | zenon_intro zenon_Hf8 ]. % 33.93/34.11 apply (zenon_L154_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf8); [ zenon_intro zenon_Hf2 | zenon_intro zenon_Hf9 ]. % 33.93/34.11 apply (zenon_L158_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf9); [ zenon_intro zenon_Hfb | zenon_intro zenon_Hfa ]. % 33.93/34.11 exact (zenon_Hf7 zenon_Hfb). % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hfa); [ zenon_intro zenon_H59 | zenon_intro zenon_Hb7 ]. % 33.93/34.11 apply (zenon_L135_); trivial. % 33.93/34.11 apply (zenon_L126_); trivial. % 33.93/34.11 (* end of lemma zenon_L159_ *) % 33.93/34.11 assert (zenon_L160_ : ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_Hf1 zenon_H8e zenon_H9f zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H49 zenon_H10c zenon_H42 zenon_H10b zenon_Hee zenon_Hd9 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_He0 zenon_Hb9 zenon_Hb6 zenon_Hf6. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.93/34.11 apply (zenon_L159_); trivial. % 33.93/34.11 apply (zenon_L142_); trivial. % 33.93/34.11 (* end of lemma zenon_L160_ *) % 33.93/34.11 assert (zenon_L161_ : (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> ((unit) = (e0)) -> ((op (e1) (e3)) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H2d zenon_H2c zenon_H9 zenon_H10f. % 33.93/34.11 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e0)) = (op (e1) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H2d. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2c. % 33.93/34.11 cut (((e1) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H110]. % 33.93/34.11 cut (((op (e1) (unit)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H106]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e0)) = (op (e1) (e0)))); [ zenon_intro zenon_H107 | zenon_intro zenon_H108 ]. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (e0))) = ((op (e1) (unit)) = (op (e1) (e0)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H106. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H107. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H108]. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H102]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L144_); trivial. % 33.93/34.11 apply zenon_H108. apply refl_equal. % 33.93/34.11 apply zenon_H108. apply refl_equal. % 33.93/34.11 apply zenon_H110. apply sym_equal. exact zenon_H10f. % 33.93/34.11 (* end of lemma zenon_L161_ *) % 33.93/34.11 assert (zenon_L162_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (e3)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H10f zenon_H2c zenon_H2d zenon_Hbb zenon_H22 zenon_H20 zenon_H1f zenon_H57 zenon_Hba zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L161_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L65_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L78_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L162_ *) % 33.93/34.11 assert (zenon_L163_ : (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (unit) (e1)) = (e1)) -> ((unit) = (e1)) -> ((op (e1) (e3)) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H111 zenon_H16 zenon_H14 zenon_H10f. % 33.93/34.11 cut (((op (unit) (e1)) = (e1)) = ((op (e1) (e1)) = (op (e1) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H111. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H16. % 33.93/34.11 cut (((e1) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H110]. % 33.93/34.11 cut (((op (unit) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e1)) = (op (e1) (e1)))); [ zenon_intro zenon_H19 | zenon_intro zenon_H1a ]. % 33.93/34.11 cut (((op (e1) (e1)) = (op (e1) (e1))) = ((op (unit) (e1)) = (op (e1) (e1)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H1d. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H19. % 33.93/34.11 cut (((op (e1) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 33.93/34.11 cut (((op (e1) (e1)) = (op (unit) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L5_); trivial. % 33.93/34.11 apply zenon_H1a. apply refl_equal. % 33.93/34.11 apply zenon_H1a. apply refl_equal. % 33.93/34.11 apply zenon_H110. apply sym_equal. exact zenon_H10f. % 33.93/34.11 (* end of lemma zenon_L163_ *) % 33.93/34.11 assert (zenon_L164_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e3)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H2c zenon_H2d zenon_H10f zenon_H111 zenon_H22 zenon_H20 zenon_H1f zenon_H6e zenon_Hf2 zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L161_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L163_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L123_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L164_ *) % 33.93/34.11 assert (zenon_L165_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e3)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H2c zenon_H2d zenon_H10f zenon_H16 zenon_H111 zenon_H8d zenon_H5f zenon_H77 zenon_Hb zenon_H10c zenon_H50 zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L161_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L163_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L107_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L150_); trivial. % 33.93/34.11 apply (zenon_L80_); trivial. % 33.93/34.11 (* end of lemma zenon_L165_ *) % 33.93/34.11 assert (zenon_L166_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e3)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e2)) = (e0)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hee zenon_Hd9 zenon_H2d zenon_H2c zenon_H10f zenon_H111 zenon_Hb zenon_H50 zenon_H10c zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H68 zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_H59 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.11 apply (zenon_L41_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.93/34.11 apply (zenon_L104_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.93/34.11 apply (zenon_L106_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.93/34.11 apply (zenon_L109_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_L165_); trivial. % 33.93/34.11 exact (zenon_Hda zenon_Hde). % 33.93/34.11 apply (zenon_L99_); trivial. % 33.93/34.11 (* end of lemma zenon_L166_ *) % 33.93/34.11 assert (zenon_L167_ : (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e2) (e2)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (e3)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hf6 zenon_Hbb zenon_Hf7 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_H10c zenon_H50 zenon_Hb zenon_H111 zenon_H10f zenon_H2c zenon_H2d zenon_Hd9 zenon_Hee zenon_H3b zenon_Hb6 zenon_Hb9 zenon_H22 zenon_H20 zenon_H58 zenon_H1f zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf6); [ zenon_intro zenon_Hba | zenon_intro zenon_Hf8 ]. % 33.93/34.11 apply (zenon_L162_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf8); [ zenon_intro zenon_Hf2 | zenon_intro zenon_Hf9 ]. % 33.93/34.11 apply (zenon_L164_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf9); [ zenon_intro zenon_Hfb | zenon_intro zenon_Hfa ]. % 33.93/34.11 exact (zenon_Hf7 zenon_Hfb). % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hfa); [ zenon_intro zenon_H59 | zenon_intro zenon_Hb7 ]. % 33.93/34.11 apply (zenon_L166_); trivial. % 33.93/34.11 apply (zenon_L126_); trivial. % 33.93/34.11 (* end of lemma zenon_L167_ *) % 33.93/34.11 assert (zenon_L168_ : ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e1) (e3)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e2)) = (e0)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H57 zenon_H22 zenon_H20 zenon_H1f zenon_H58 zenon_Hbb zenon_H10f zenon_H2c zenon_H2d zenon_H6e zenon_H111 zenon_Hee zenon_Hd9 zenon_Hb zenon_H50 zenon_H10c zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H73 zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_Hb9 zenon_Hb6 zenon_Hf6. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.93/34.11 apply (zenon_L167_); trivial. % 33.93/34.11 apply (zenon_L142_); trivial. % 33.93/34.11 (* end of lemma zenon_L168_ *) % 33.93/34.11 assert (zenon_L169_ : (~((op (e1) (e0)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> ((unit) = (e0)) -> ((op (e1) (e4)) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H112 zenon_H2c zenon_H9 zenon_H113. % 33.93/34.11 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e0)) = (op (e1) (e4)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H112. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2c. % 33.93/34.11 cut (((e1) = (op (e1) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H114]. % 33.93/34.11 cut (((op (e1) (unit)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H106]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e0)) = (op (e1) (e0)))); [ zenon_intro zenon_H107 | zenon_intro zenon_H108 ]. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (e0))) = ((op (e1) (unit)) = (op (e1) (e0)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H106. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H107. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H108]. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H102]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L144_); trivial. % 33.93/34.11 apply zenon_H108. apply refl_equal. % 33.93/34.11 apply zenon_H108. apply refl_equal. % 33.93/34.11 apply zenon_H114. apply sym_equal. exact zenon_H113. % 33.93/34.11 (* end of lemma zenon_L169_ *) % 33.93/34.11 assert (zenon_L170_ : (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((unit) = (e1)) -> ((op (e1) (e4)) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H115 zenon_H16 zenon_H14 zenon_H113. % 33.93/34.11 cut (((op (unit) (e1)) = (e1)) = ((op (e1) (e1)) = (op (e1) (e4)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H115. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H16. % 33.93/34.11 cut (((e1) = (op (e1) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H114]. % 33.93/34.11 cut (((op (unit) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1d]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e1)) = (op (e1) (e1)))); [ zenon_intro zenon_H19 | zenon_intro zenon_H1a ]. % 33.93/34.11 cut (((op (e1) (e1)) = (op (e1) (e1))) = ((op (unit) (e1)) = (op (e1) (e1)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H1d. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H19. % 33.93/34.11 cut (((op (e1) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1a]. % 33.93/34.11 cut (((op (e1) (e1)) = (op (unit) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L5_); trivial. % 33.93/34.11 apply zenon_H1a. apply refl_equal. % 33.93/34.11 apply zenon_H1a. apply refl_equal. % 33.93/34.11 apply zenon_H114. apply sym_equal. exact zenon_H113. % 33.93/34.11 (* end of lemma zenon_L170_ *) % 33.93/34.11 assert (zenon_L171_ : (~((op (e1) (e3)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> ((unit) = (e3)) -> ((op (e1) (e4)) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H116 zenon_H2c zenon_H2a zenon_H113. % 33.93/34.11 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e3)) = (op (e1) (e4)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H116. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2c. % 33.93/34.11 cut (((e1) = (op (e1) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H114]. % 33.93/34.11 cut (((op (e1) (unit)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H31]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e3)) = (op (e1) (e3)))); [ zenon_intro zenon_H2e | zenon_intro zenon_H2f ]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3))) = ((op (e1) (unit)) = (op (e1) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H31. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2e. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H29]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L9_); trivial. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H114. apply sym_equal. exact zenon_H113. % 33.93/34.11 (* end of lemma zenon_L171_ *) % 33.93/34.11 assert (zenon_L172_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e4)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H112 zenon_H115 zenon_H22 zenon_H20 zenon_H1f zenon_H113 zenon_H2c zenon_H116 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L169_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L170_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L171_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L172_ *) % 33.93/34.11 assert (zenon_L173_ : (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((op (unit) (e0)) = (e0)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e1) (e1)) = (e1))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H117 zenon_He0 zenon_H10b zenon_H42 zenon_Hc zenon_H18 zenon_H9f zenon_H8e zenon_Hf1 zenon_H118 zenon_H49 zenon_H109 zenon_H103 zenon_Hf6 zenon_Hb6 zenon_Hb9 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H73 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_H10c zenon_H50 zenon_Hb zenon_Hd9 zenon_Hee zenon_H111 zenon_H6e zenon_H2d zenon_Hbb zenon_H58 zenon_H57 zenon_Hff zenon_Hfe zenon_Hfc zenon_H101 zenon_H3b zenon_H112 zenon_H115 zenon_H22 zenon_H20 zenon_H1f zenon_H2c zenon_H116 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H117); [ zenon_intro zenon_H17 | zenon_intro zenon_H119 ]. % 33.93/34.11 apply (zenon_L160_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H119); [ zenon_intro zenon_H11b | zenon_intro zenon_H11a ]. % 33.93/34.11 exact (zenon_H118 zenon_H11b). % 33.93/34.11 apply (zenon_or_s _ _ zenon_H11a); [ zenon_intro zenon_H104 | zenon_intro zenon_H11c ]. % 33.93/34.11 apply (zenon_L148_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H11c); [ zenon_intro zenon_H10f | zenon_intro zenon_H113 ]. % 33.93/34.11 apply (zenon_L168_); trivial. % 33.93/34.11 apply (zenon_L172_); trivial. % 33.93/34.11 (* end of lemma zenon_L173_ *) % 33.93/34.11 assert (zenon_L174_ : (~((op (op (e4) (e2)) (op (e4) (e2))) = (op (e1) (e1)))) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H11d zenon_H34. % 33.93/34.11 cut (((op (e4) (e2)) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H11e]. % 33.93/34.11 cut (((op (e4) (e2)) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H11e]. % 33.93/34.11 congruence. % 33.93/34.11 apply zenon_H11e. apply sym_equal. exact zenon_H34. % 33.93/34.11 apply zenon_H11e. apply sym_equal. exact zenon_H34. % 33.93/34.11 (* end of lemma zenon_L174_ *) % 33.93/34.11 assert (zenon_L175_ : ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> ((op (e1) (e2)) = (e0)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H11f zenon_H120 zenon_H34 zenon_H109. % 33.93/34.11 elim (classic ((op (e1) (e2)) = (op (e1) (e2)))); [ zenon_intro zenon_H4d | zenon_intro zenon_H4e ]. % 33.93/34.11 cut (((op (e1) (e2)) = (op (e1) (e2))) = ((op (e1) (e1)) = (op (e1) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H109. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H4d. % 33.93/34.11 cut (((op (e1) (e2)) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H4e]. % 33.93/34.11 cut (((op (e1) (e2)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H121]. % 33.93/34.11 congruence. % 33.93/34.11 cut (((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) = ((op (e1) (e2)) = (op (e1) (e1)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H121. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H11f. % 33.93/34.11 cut (((op (op (e4) (e2)) (op (e4) (e2))) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H11d]. % 33.93/34.11 cut (((e0) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H122]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e2)) = (op (e1) (e2)))); [ zenon_intro zenon_H4d | zenon_intro zenon_H4e ]. % 33.93/34.11 cut (((op (e1) (e2)) = (op (e1) (e2))) = ((e0) = (op (e1) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H122. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H4d. % 33.93/34.11 cut (((op (e1) (e2)) = (op (e1) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H4e]. % 33.93/34.11 cut (((op (e1) (e2)) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H123]. % 33.93/34.11 congruence. % 33.93/34.11 exact (zenon_H123 zenon_H120). % 33.93/34.11 apply zenon_H4e. apply refl_equal. % 33.93/34.11 apply zenon_H4e. apply refl_equal. % 33.93/34.11 apply (zenon_L174_); trivial. % 33.93/34.11 apply zenon_H4e. apply refl_equal. % 33.93/34.11 apply zenon_H4e. apply refl_equal. % 33.93/34.11 (* end of lemma zenon_L175_ *) % 33.93/34.11 assert (zenon_L176_ : (~((op (e3) (e0)) = (op (unit) (e0)))) -> ((unit) = (e3)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H124 zenon_H2a. % 33.93/34.11 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.93/34.11 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.93/34.11 congruence. % 33.93/34.11 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.93/34.11 apply zenon_H3f. apply refl_equal. % 33.93/34.11 (* end of lemma zenon_L176_ *) % 33.93/34.11 assert (zenon_L177_ : (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (unit) (e0)) = (e0)) -> ((unit) = (e3)) -> ((op (e3) (e2)) = (e0)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H8e zenon_H42 zenon_H2a zenon_H125. % 33.93/34.11 cut (((op (unit) (e0)) = (e0)) = ((op (e3) (e0)) = (op (e3) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H8e. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H42. % 33.93/34.11 cut (((e0) = (op (e3) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H126]. % 33.93/34.11 cut (((op (unit) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H127]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e3) (e0)) = (op (e3) (e0)))); [ zenon_intro zenon_H7f | zenon_intro zenon_H80 ]. % 33.93/34.11 cut (((op (e3) (e0)) = (op (e3) (e0))) = ((op (unit) (e0)) = (op (e3) (e0)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H127. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H7f. % 33.93/34.11 cut (((op (e3) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 33.93/34.11 cut (((op (e3) (e0)) = (op (unit) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H124]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L176_); trivial. % 33.93/34.11 apply zenon_H80. apply refl_equal. % 33.93/34.11 apply zenon_H80. apply refl_equal. % 33.93/34.11 apply zenon_H126. apply sym_equal. exact zenon_H125. % 33.93/34.11 (* end of lemma zenon_L177_ *) % 33.93/34.11 assert (zenon_L178_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e3)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (e2)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H2c zenon_H2d zenon_H10f zenon_H111 zenon_H22 zenon_H20 zenon_H1f zenon_H125 zenon_H42 zenon_H8e zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L161_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L163_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L177_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L178_ *) % 33.93/34.11 assert (zenon_L179_ : ((e1) = (op (e4) (e2))) -> ((op (e4) (e2)) = (e0)) -> (~((e0) = (e1))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H34 zenon_H128 zenon_H129. % 33.93/34.11 elim (classic ((e1) = (e1))); [ zenon_intro zenon_H12a | zenon_intro zenon_H12 ]. % 33.93/34.11 cut (((e1) = (e1)) = ((e0) = (e1))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H129. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H12a. % 33.93/34.11 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.93/34.11 cut (((e1) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H12b]. % 33.93/34.11 congruence. % 33.93/34.11 cut (((e1) = (op (e4) (e2))) = ((e1) = (e0))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H12b. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H34. % 33.93/34.11 cut (((op (e4) (e2)) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H12c]. % 33.93/34.11 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.93/34.11 congruence. % 33.93/34.11 apply zenon_H12. apply refl_equal. % 33.93/34.11 exact (zenon_H12c zenon_H128). % 33.93/34.11 apply zenon_H12. apply refl_equal. % 33.93/34.11 apply zenon_H12. apply refl_equal. % 33.93/34.11 (* end of lemma zenon_L179_ *) % 33.93/34.11 assert (zenon_L180_ : (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e1) (e1)) = (e1))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e2) (e2)) = (e0))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (e3)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((e0) = (e1))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H12d zenon_H116 zenon_H115 zenon_H112 zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_H57 zenon_H58 zenon_Hbb zenon_H6e zenon_Hee zenon_Hd9 zenon_Hb zenon_H50 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H73 zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_Hb9 zenon_Hb6 zenon_Hf6 zenon_H103 zenon_H49 zenon_H118 zenon_Hf1 zenon_H9f zenon_H18 zenon_Hc zenon_H10b zenon_He0 zenon_H117 zenon_H109 zenon_H11f zenon_H12e zenon_H16 zenon_H32 zenon_H8e zenon_H42 zenon_H1f zenon_H20 zenon_H22 zenon_H111 zenon_H10f zenon_H2d zenon_H2c zenon_H3b zenon_H34 zenon_H129. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H12d); [ zenon_intro zenon_H10c | zenon_intro zenon_H12f ]. % 33.93/34.11 apply (zenon_L173_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H12f); [ zenon_intro zenon_H120 | zenon_intro zenon_H130 ]. % 33.93/34.11 apply (zenon_L175_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H130); [ zenon_intro zenon_H132 | zenon_intro zenon_H131 ]. % 33.93/34.11 exact (zenon_H12e zenon_H132). % 33.93/34.11 apply (zenon_or_s _ _ zenon_H131); [ zenon_intro zenon_H125 | zenon_intro zenon_H128 ]. % 33.93/34.11 apply (zenon_L178_); trivial. % 33.93/34.11 apply (zenon_L179_); trivial. % 33.93/34.11 (* end of lemma zenon_L180_ *) % 33.93/34.11 assert (zenon_L181_ : (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e1)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((e0) = (e1))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e2) (e2)) = (e0))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e1) (e1)) = (e1))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H51 zenon_H43 zenon_H41 zenon_Hc2 zenon_Haa zenon_Ha1 zenon_Hef zenon_H129 zenon_H2d zenon_H111 zenon_H42 zenon_H8e zenon_H12e zenon_H11f zenon_H109 zenon_H117 zenon_He0 zenon_H10b zenon_Hc zenon_H18 zenon_H9f zenon_Hf1 zenon_H118 zenon_H49 zenon_H103 zenon_Hf6 zenon_Hb6 zenon_Hb9 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H73 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_H50 zenon_Hb zenon_Hd9 zenon_Hee zenon_H6e zenon_Hbb zenon_H58 zenon_H57 zenon_Hff zenon_Hfe zenon_Hfc zenon_H101 zenon_H12d zenon_H3b zenon_H112 zenon_H115 zenon_H22 zenon_H20 zenon_H1f zenon_H2c zenon_H116 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H117); [ zenon_intro zenon_H17 | zenon_intro zenon_H119 ]. % 33.93/34.11 apply (zenon_L143_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H119); [ zenon_intro zenon_H11b | zenon_intro zenon_H11a ]. % 33.93/34.11 exact (zenon_H118 zenon_H11b). % 33.93/34.11 apply (zenon_or_s _ _ zenon_H11a); [ zenon_intro zenon_H104 | zenon_intro zenon_H11c ]. % 33.93/34.11 apply (zenon_L148_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H11c); [ zenon_intro zenon_H10f | zenon_intro zenon_H113 ]. % 33.93/34.11 apply (zenon_L180_); trivial. % 33.93/34.11 apply (zenon_L172_); trivial. % 33.93/34.11 (* end of lemma zenon_L181_ *) % 33.93/34.11 assert (zenon_L182_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e1) (e2)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H103 zenon_Hbb zenon_Hba zenon_H58 zenon_H22 zenon_H20 zenon_H1f zenon_H49 zenon_H104 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L145_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L65_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L147_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L182_ *) % 33.93/34.11 assert (zenon_L183_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (e4)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H113 zenon_H2c zenon_H112 zenon_Hbb zenon_H22 zenon_H20 zenon_H1f zenon_H57 zenon_Hba zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L169_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L65_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L78_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L183_ *) % 33.93/34.11 assert (zenon_L184_ : ((~((op (e2) (e2)) = (e0)))\/((op (e2) (e0)) = (e2))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e1) (e1)) = (e1))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> (~((e0) = (e1))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H133 zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_Hf1 zenon_Hef zenon_He0 zenon_H91 zenon_H8e zenon_Hd9 zenon_Hcc zenon_Hd4 zenon_Hd3 zenon_Hc8 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hbb zenon_Hc2 zenon_H9b zenon_H99 zenon_H9f zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H41 zenon_H42 zenon_H43 zenon_H49 zenon_H51 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_He9 zenon_He8 zenon_He6 zenon_Hea zenon_Hee zenon_Hf6 zenon_H118 zenon_H109 zenon_H103 zenon_H12d zenon_H129 zenon_H11f zenon_H10b zenon_H111 zenon_H116 zenon_H115 zenon_H112 zenon_H117. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H133); [ zenon_intro zenon_H12e | zenon_intro zenon_Hba ]. % 33.93/34.11 apply (zenon_L181_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H117); [ zenon_intro zenon_H17 | zenon_intro zenon_H119 ]. % 33.93/34.11 apply (zenon_L138_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H119); [ zenon_intro zenon_H11b | zenon_intro zenon_H11a ]. % 33.93/34.11 exact (zenon_H118 zenon_H11b). % 33.93/34.11 apply (zenon_or_s _ _ zenon_H11a); [ zenon_intro zenon_H104 | zenon_intro zenon_H11c ]. % 33.93/34.11 apply (zenon_L182_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H11c); [ zenon_intro zenon_H10f | zenon_intro zenon_H113 ]. % 33.93/34.11 apply (zenon_L162_); trivial. % 33.93/34.11 apply (zenon_L183_); trivial. % 33.93/34.11 apply (zenon_L142_); trivial. % 33.93/34.11 (* end of lemma zenon_L184_ *) % 33.93/34.11 assert (zenon_L185_ : (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (unit)) = (e1)) -> ((unit) = (e0)) -> ((op (e1) (e1)) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H18 zenon_H2c zenon_H9 zenon_H11b. % 33.93/34.11 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e0)) = (op (e1) (e1)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H18. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2c. % 33.93/34.11 cut (((e1) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H134]. % 33.93/34.11 cut (((op (e1) (unit)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H106]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e0)) = (op (e1) (e0)))); [ zenon_intro zenon_H107 | zenon_intro zenon_H108 ]. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (e0))) = ((op (e1) (unit)) = (op (e1) (e0)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H106. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H107. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H108]. % 33.93/34.11 cut (((op (e1) (e0)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H102]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L144_); trivial. % 33.93/34.11 apply zenon_H108. apply refl_equal. % 33.93/34.11 apply zenon_H108. apply refl_equal. % 33.93/34.11 apply zenon_H134. apply sym_equal. exact zenon_H11b. % 33.93/34.11 (* end of lemma zenon_L185_ *) % 33.93/34.11 assert (zenon_L186_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H11b zenon_H2c zenon_H18 zenon_Hbb zenon_H22 zenon_H20 zenon_H1f zenon_H57 zenon_Hba zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L185_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L65_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L78_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L186_ *) % 33.93/34.11 assert (zenon_L187_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (e0)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_Hbb zenon_H61 zenon_H60 zenon_H5f zenon_H22 zenon_H20 zenon_H1f zenon_H6e zenon_Hf2 zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L122_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L24_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L123_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L187_ *) % 33.93/34.11 assert (zenon_L188_ : (~((op (e0) (e1)) = (op (e0) (unit)))) -> ((unit) = (e1)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H135 zenon_H14. % 33.93/34.11 cut (((e1) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H15]. % 33.93/34.11 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.93/34.11 congruence. % 33.93/34.11 apply zenon_H3f. apply refl_equal. % 33.93/34.11 apply zenon_H15. apply sym_equal. exact zenon_H14. % 33.93/34.11 (* end of lemma zenon_L188_ *) % 33.93/34.11 assert (zenon_L189_ : ((op (e1) (unit)) = (e1)) -> ((unit) = (e3)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H2c zenon_H2a zenon_H11b zenon_H111. % 33.93/34.11 elim (classic ((op (e1) (e3)) = (op (e1) (e3)))); [ zenon_intro zenon_H2e | zenon_intro zenon_H2f ]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3))) = ((op (e1) (e1)) = (op (e1) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H111. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2e. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H136]. % 33.93/34.11 congruence. % 33.93/34.11 cut (((op (e1) (unit)) = (e1)) = ((op (e1) (e3)) = (op (e1) (e1)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H136. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2c. % 33.93/34.11 cut (((e1) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H134]. % 33.93/34.11 cut (((op (e1) (unit)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H31]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e1) (e3)) = (op (e1) (e3)))); [ zenon_intro zenon_H2e | zenon_intro zenon_H2f ]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3))) = ((op (e1) (unit)) = (op (e1) (e3)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H31. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H2e. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H2f]. % 33.93/34.11 cut (((op (e1) (e3)) = (op (e1) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H29]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L9_); trivial. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H134. apply sym_equal. exact zenon_H11b. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 apply zenon_H2f. apply refl_equal. % 33.93/34.11 (* end of lemma zenon_L189_ *) % 33.93/34.11 assert (zenon_L190_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H18 zenon_H10c zenon_H50 zenon_H137 zenon_H9f zenon_H72 zenon_H5f zenon_H111 zenon_H11b zenon_H2c zenon_Hd3 zenon_Ha5 zenon_He8. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L185_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 cut (((op (e0) (unit)) = (e0)) = ((op (e0) (e1)) = (op (e0) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H137. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H50. % 33.93/34.11 cut (((e0) = (op (e0) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H10d]. % 33.93/34.11 cut (((op (e0) (unit)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H138]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e0) (e1)) = (op (e0) (e1)))); [ zenon_intro zenon_H139 | zenon_intro zenon_H13a ]. % 33.93/34.11 cut (((op (e0) (e1)) = (op (e0) (e1))) = ((op (e0) (unit)) = (op (e0) (e1)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H138. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H139. % 33.93/34.11 cut (((op (e0) (e1)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13a]. % 33.93/34.11 cut (((op (e0) (e1)) = (op (e0) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H135]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L188_); trivial. % 33.93/34.11 apply zenon_H13a. apply refl_equal. % 33.93/34.11 apply zenon_H13a. apply refl_equal. % 33.93/34.11 apply zenon_H10d. apply sym_equal. exact zenon_H10c. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L50_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L189_); trivial. % 33.93/34.11 apply (zenon_L127_); trivial. % 33.93/34.11 (* end of lemma zenon_L190_ *) % 33.93/34.11 assert (zenon_L191_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_Hd zenon_Hc zenon_Hb zenon_H32 zenon_H9f zenon_H72 zenon_H5f zenon_H91 zenon_H99 zenon_Hd3 zenon_Hc9 zenon_He9. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L3_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L71_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L50_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L72_); trivial. % 33.93/34.11 apply (zenon_L108_); trivial. % 33.93/34.11 (* end of lemma zenon_L191_ *) % 33.93/34.11 assert (zenon_L192_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H111 zenon_H11b zenon_H2c zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L74_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L75_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L76_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L189_); trivial. % 33.93/34.11 apply (zenon_L80_); trivial. % 33.93/34.11 (* end of lemma zenon_L192_ *) % 33.93/34.11 assert (zenon_L193_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e2)) = (e0)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e0) (e3)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hd9 zenon_H34 zenon_H16 zenon_H20 zenon_H73 zenon_H9b zenon_H61 zenon_He8 zenon_H137 zenon_H50 zenon_H10c zenon_H18 zenon_He9 zenon_H5f zenon_H72 zenon_H9f zenon_H32 zenon_Hb zenon_Hc zenon_Hd zenon_Hd4 zenon_Hd3 zenon_H2c zenon_H11b zenon_H111 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.93/34.11 apply (zenon_L51_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.93/34.11 apply (zenon_L190_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.93/34.11 apply (zenon_L191_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_L192_); trivial. % 33.93/34.11 exact (zenon_Hda zenon_Hde). % 33.93/34.11 (* end of lemma zenon_L193_ *) % 33.93/34.11 assert (zenon_L194_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H18 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H111 zenon_H11b zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L185_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L17_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L189_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L194_ *) % 33.93/34.11 assert (zenon_L195_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_Ha2 zenon_Ha1 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc9 zenon_H99 zenon_H91 zenon_Hc zenon_H92. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L52_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L71_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L72_); trivial. % 33.93/34.11 apply (zenon_L44_); trivial. % 33.93/34.11 (* end of lemma zenon_L195_ *) % 33.93/34.11 assert (zenon_L196_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e4)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H18 zenon_Hab zenon_Hc zenon_Haa zenon_H22 zenon_H20 zenon_H1f zenon_H111 zenon_H11b zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L185_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L56_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L189_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L196_ *) % 33.93/34.11 assert (zenon_L197_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e4)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_Hc8 zenon_H99 zenon_H32 zenon_H9f zenon_H72 zenon_H5f zenon_Hbf zenon_Hc zenon_H83 zenon_Hd3 zenon_Hc9 zenon_He9. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L70_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L71_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L50_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L67_); trivial. % 33.93/34.11 apply (zenon_L108_); trivial. % 33.93/34.11 (* end of lemma zenon_L197_ *) % 33.93/34.11 assert (zenon_L198_ : (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((unit) = (e4)) -> ((op (e4) (e4)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_He9 zenon_Hc zenon_H33 zenon_Hc7. % 33.93/34.11 cut (((op (unit) (e2)) = (e2)) = ((op (e4) (e2)) = (op (e4) (e4)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_He9. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_Hc. % 33.93/34.11 cut (((e2) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H13b]. % 33.93/34.11 cut (((op (unit) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H94]. % 33.93/34.11 congruence. % 33.93/34.11 elim (classic ((op (e4) (e2)) = (op (e4) (e2)))); [ zenon_intro zenon_H95 | zenon_intro zenon_H96 ]. % 33.93/34.11 cut (((op (e4) (e2)) = (op (e4) (e2))) = ((op (unit) (e2)) = (op (e4) (e2)))). % 33.93/34.11 intro zenon_D_pnotp. % 33.93/34.11 apply zenon_H94. % 33.93/34.11 rewrite <- zenon_D_pnotp. % 33.93/34.11 exact zenon_H95. % 33.93/34.11 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.93/34.11 cut (((op (e4) (e2)) = (op (unit) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H90]. % 33.93/34.11 congruence. % 33.93/34.11 apply (zenon_L43_); trivial. % 33.93/34.11 apply zenon_H96. apply refl_equal. % 33.93/34.11 apply zenon_H96. apply refl_equal. % 33.93/34.11 apply zenon_H13b. apply sym_equal. exact zenon_Hc7. % 33.93/34.11 (* end of lemma zenon_L198_ *) % 33.93/34.11 assert (zenon_L199_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e4)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_H91 zenon_Hc9 zenon_H99 zenon_He9 zenon_Hc zenon_Hc7. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L70_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L71_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L8_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L72_); trivial. % 33.93/34.11 apply (zenon_L198_); trivial. % 33.93/34.11 (* end of lemma zenon_L199_ *) % 33.93/34.11 assert (zenon_L200_ : (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e4) (e3)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hc2 zenon_H92 zenon_Ha1 zenon_H2c zenon_H11b zenon_H111 zenon_Haa zenon_H18 zenon_H34 zenon_H16 zenon_H58 zenon_Hb9 zenon_Hb6 zenon_Hd3 zenon_H83 zenon_H5f zenon_H72 zenon_H9f zenon_H3b zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_H91 zenon_Hc9 zenon_H99 zenon_He9 zenon_Hc. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hc2); [ zenon_intro zenon_Ha2 | zenon_intro zenon_Hc4 ]. % 33.93/34.11 apply (zenon_L195_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hc4); [ zenon_intro zenon_Hab | zenon_intro zenon_Hc5 ]. % 33.93/34.11 apply (zenon_L196_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hc5); [ zenon_intro zenon_Hb7 | zenon_intro zenon_Hc6 ]. % 33.93/34.11 apply (zenon_L126_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hc6); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hc7 ]. % 33.93/34.11 apply (zenon_L197_); trivial. % 33.93/34.11 apply (zenon_L199_); trivial. % 33.93/34.11 (* end of lemma zenon_L200_ *) % 33.93/34.11 assert (zenon_L201_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e2)) = (e0)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((op (e4) (e3)) = (e2)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hd9 zenon_Hf2 zenon_H6e zenon_H9b zenon_Hbb zenon_He8 zenon_H137 zenon_H50 zenon_H10c zenon_Hc zenon_He9 zenon_H1f zenon_H20 zenon_H22 zenon_H32 zenon_Hc8 zenon_H9f zenon_H72 zenon_H5f zenon_H83 zenon_Hb6 zenon_Hb9 zenon_H58 zenon_H16 zenon_H34 zenon_H18 zenon_Haa zenon_Ha1 zenon_H92 zenon_Hc2 zenon_Hd4 zenon_Hd3 zenon_H2c zenon_H11b zenon_H111 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.93/34.11 apply (zenon_L124_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.93/34.11 apply (zenon_L190_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.93/34.11 apply (zenon_L200_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_L192_); trivial. % 33.93/34.11 exact (zenon_Hda zenon_Hde). % 33.93/34.11 (* end of lemma zenon_L201_ *) % 33.93/34.11 assert (zenon_L202_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H8e zenon_H9f zenon_H72 zenon_H5f zenon_H77 zenon_H76 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.11 apply (zenon_L83_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.11 apply (zenon_L89_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.11 apply (zenon_L50_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.11 apply (zenon_L32_); trivial. % 33.93/34.11 apply (zenon_L11_); trivial. % 33.93/34.11 (* end of lemma zenon_L202_ *) % 33.93/34.11 assert (zenon_L203_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e2) (e1)) = (e2)) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hf1 zenon_H8e zenon_He0 zenon_Hbb zenon_Hc2 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Ha1 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H57 zenon_H58 zenon_H68 zenon_Hea zenon_He6 zenon_Hc8 zenon_Hf2 zenon_Hee zenon_H49 zenon_H1f zenon_H22 zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H20 zenon_H73 zenon_H9f zenon_H99 zenon_H9b zenon_H72 zenon_H5f zenon_H61 zenon_Hd3 zenon_He8 zenon_H111 zenon_H10c zenon_H50 zenon_H137 zenon_H11b zenon_H2c zenon_H18 zenon_He9 zenon_H91 zenon_Hc zenon_Hb zenon_Hd4 zenon_Hb1 zenon_Hcc zenon_Hd9. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.11 apply (zenon_L193_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.11 apply (zenon_L194_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.11 apply (zenon_L155_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.11 exact (zenon_He1 zenon_He5). % 33.93/34.11 apply (zenon_L201_); trivial. % 33.93/34.11 apply (zenon_L99_); trivial. % 33.93/34.11 apply (zenon_L202_); trivial. % 33.93/34.11 (* end of lemma zenon_L203_ *) % 33.93/34.11 assert (zenon_L204_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hd9 zenon_Hc8 zenon_H9b zenon_H34 zenon_H16 zenon_H32 zenon_He9 zenon_H20 zenon_H76 zenon_H77 zenon_H1f zenon_H22 zenon_H9f zenon_H5f zenon_H8e zenon_Hd4 zenon_Hd3 zenon_H2c zenon_H11b zenon_H111 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.93/34.11 apply (zenon_L85_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.93/34.11 apply (zenon_L115_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.93/34.11 apply (zenon_L120_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_L192_); trivial. % 33.93/34.11 exact (zenon_Hda zenon_Hde). % 33.93/34.11 (* end of lemma zenon_L204_ *) % 33.93/34.11 assert (zenon_L205_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hea zenon_He6 zenon_He8 zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H20 zenon_H77 zenon_Hc8 zenon_H99 zenon_H9b zenon_H76 zenon_H5f zenon_H8e zenon_H9f zenon_Hd3 zenon_He9 zenon_H22 zenon_H1f zenon_Hd4 zenon_H11b zenon_H2c zenon_H111 zenon_H91 zenon_Hb1 zenon_Hcc zenon_Hd9. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_L204_); trivial. % 33.93/34.11 apply (zenon_L99_); trivial. % 33.93/34.11 (* end of lemma zenon_L205_ *) % 33.93/34.11 assert (zenon_L206_ : (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e2)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hb zenon_Hc zenon_H18 zenon_H137 zenon_H50 zenon_H10c zenon_H61 zenon_H73 zenon_H49 zenon_Hee zenon_Hf2 zenon_H68 zenon_H58 zenon_H57 zenon_H6e zenon_H88 zenon_Ha1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hc2 zenon_Hbb zenon_He0 zenon_Hf1 zenon_Hd9 zenon_Hcc zenon_Hb1 zenon_H91 zenon_H111 zenon_H2c zenon_H11b zenon_Hd4 zenon_H1f zenon_H22 zenon_He9 zenon_Hd3 zenon_H9f zenon_H8e zenon_H9b zenon_H99 zenon_Hc8 zenon_H77 zenon_He8 zenon_He6 zenon_Hea zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.93/34.11 apply (zenon_L187_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.93/34.11 apply (zenon_L203_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.93/34.11 apply (zenon_L205_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.93/34.11 exact (zenon_H89 zenon_H8d). % 33.93/34.11 apply (zenon_L40_); trivial. % 33.93/34.11 (* end of lemma zenon_L206_ *) % 33.93/34.11 assert (zenon_L207_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H6e zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_Hf2 zenon_H58 zenon_Hbb zenon_Hf1 zenon_H8e zenon_He0 zenon_Hc2 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Ha1 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H57 zenon_H68 zenon_Hea zenon_He6 zenon_Hc8 zenon_Hee zenon_H49 zenon_H73 zenon_H9f zenon_H99 zenon_H9b zenon_Hd3 zenon_He8 zenon_H111 zenon_H10c zenon_H50 zenon_H137 zenon_H11b zenon_H2c zenon_H18 zenon_He9 zenon_H91 zenon_Hc zenon_Hb zenon_Hd4 zenon_Hb1 zenon_Hcc zenon_Hd9. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.11 apply (zenon_L206_); trivial. % 33.93/34.11 apply (zenon_L133_); trivial. % 33.93/34.11 (* end of lemma zenon_L207_ *) % 33.93/34.11 assert (zenon_L208_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.93/34.11 do 0 intro. intros zenon_Hea zenon_He6 zenon_He8 zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_H8d zenon_H5f zenon_H68 zenon_Hb1 zenon_H73 zenon_Hd3 zenon_He9 zenon_H91 zenon_H77 zenon_Hd4 zenon_H11b zenon_H2c zenon_H111 zenon_Hd9. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.93/34.11 apply (zenon_L104_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.93/34.11 apply (zenon_L106_); trivial. % 33.93/34.11 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.93/34.12 apply (zenon_L109_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.93/34.12 apply (zenon_L192_); trivial. % 33.93/34.12 exact (zenon_Hda zenon_Hde). % 33.93/34.12 apply (zenon_L99_); trivial. % 33.93/34.12 (* end of lemma zenon_L208_ *) % 33.93/34.12 assert (zenon_L209_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (e3)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hee zenon_Hd9 zenon_H111 zenon_H2c zenon_H11b zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H68 zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_H59 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.12 apply (zenon_L41_); trivial. % 33.93/34.12 apply (zenon_L208_); trivial. % 33.93/34.12 (* end of lemma zenon_L209_ *) % 33.93/34.12 assert (zenon_L210_ : (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e2)) = (e0)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e2) (e2)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hf6 zenon_Hb zenon_Hc zenon_H18 zenon_H137 zenon_H50 zenon_H10c zenon_H9f zenon_H49 zenon_Ha1 zenon_Haa zenon_Hc2 zenon_He0 zenon_H8e zenon_Hf1 zenon_Hbb zenon_Hf7 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_H11b zenon_H2c zenon_H111 zenon_Hd9 zenon_Hee zenon_H3b zenon_Hb6 zenon_Hb9 zenon_H22 zenon_H20 zenon_H58 zenon_H1f zenon_H32 zenon_H16 zenon_H34. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf6); [ zenon_intro zenon_Hba | zenon_intro zenon_Hf8 ]. % 33.93/34.12 apply (zenon_L186_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf8); [ zenon_intro zenon_Hf2 | zenon_intro zenon_Hf9 ]. % 33.93/34.12 apply (zenon_L207_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf9); [ zenon_intro zenon_Hfb | zenon_intro zenon_Hfa ]. % 33.93/34.12 exact (zenon_Hf7 zenon_Hfb). % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hfa); [ zenon_intro zenon_H59 | zenon_intro zenon_Hb7 ]. % 33.93/34.12 apply (zenon_L209_); trivial. % 33.93/34.12 apply (zenon_L126_); trivial. % 33.93/34.12 (* end of lemma zenon_L210_ *) % 33.93/34.12 assert (zenon_L211_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e4)) = (e3))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hea zenon_He6 zenon_H99 zenon_He8 zenon_Hd4 zenon_H32 zenon_H16 zenon_H3b zenon_H13c zenon_He9 zenon_H34 zenon_Hc3 zenon_H13d zenon_H13e. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H13e); [ zenon_intro zenon_H140 | zenon_intro zenon_H13f ]. % 33.93/34.12 exact (zenon_H13c zenon_H140). % 33.93/34.12 apply (zenon_or_s _ _ zenon_H13f); [ zenon_intro zenon_H142 | zenon_intro zenon_H141 ]. % 33.93/34.12 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.93/34.12 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((op (e4) (e2)) = (op (e4) (e4)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_He9. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_Hd5. % 33.93/34.12 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.93/34.12 cut (((op (e4) (e4)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_Hed]. % 33.93/34.12 congruence. % 33.93/34.12 cut (((e1) = (op (e4) (e2))) = ((op (e4) (e4)) = (op (e4) (e2)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_Hed. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H34. % 33.93/34.12 cut (((op (e4) (e2)) = (op (e4) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H96]. % 33.93/34.12 cut (((e1) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H143]. % 33.93/34.12 congruence. % 33.93/34.12 elim (classic ((op (e4) (e4)) = (op (e4) (e4)))); [ zenon_intro zenon_Hd5 | zenon_intro zenon_Hd6 ]. % 33.93/34.12 cut (((op (e4) (e4)) = (op (e4) (e4))) = ((e1) = (op (e4) (e4)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H143. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_Hd5. % 33.93/34.12 cut (((op (e4) (e4)) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_Hd6]. % 33.93/34.12 cut (((op (e4) (e4)) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H144]. % 33.93/34.12 congruence. % 33.93/34.12 exact (zenon_H144 zenon_H142). % 33.93/34.12 apply zenon_Hd6. apply refl_equal. % 33.93/34.12 apply zenon_Hd6. apply refl_equal. % 33.93/34.12 apply zenon_H96. apply refl_equal. % 33.93/34.12 apply zenon_Hd6. apply refl_equal. % 33.93/34.12 apply zenon_Hd6. apply refl_equal. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H141); [ zenon_intro zenon_Hc7 | zenon_intro zenon_H145 ]. % 33.93/34.12 exact (zenon_Hc3 zenon_Hc7). % 33.93/34.12 apply (zenon_or_s _ _ zenon_H145); [ zenon_intro zenon_H146 | zenon_intro zenon_Hde ]. % 33.93/34.12 exact (zenon_H13d zenon_H146). % 33.93/34.12 exact (zenon_Hda zenon_Hde). % 33.93/34.12 apply (zenon_L99_); trivial. % 33.93/34.12 (* end of lemma zenon_L211_ *) % 33.93/34.12 assert (zenon_L212_ : ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e1)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e4)) = (e0))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H147 zenon_Hcc zenon_Hb1 zenon_H91 zenon_H6e zenon_H58 zenon_Hf2 zenon_Hd3 zenon_H13e zenon_Hc3 zenon_H34 zenon_He9 zenon_H13c zenon_H3b zenon_H16 zenon_H32 zenon_Hd4 zenon_He8 zenon_H99 zenon_He6 zenon_Hea. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H147); [ zenon_intro zenon_H13d | zenon_intro zenon_Hcd ]. % 33.93/34.12 apply (zenon_L211_); trivial. % 33.93/34.12 apply (zenon_L130_); trivial. % 33.93/34.12 (* end of lemma zenon_L212_ *) % 33.93/34.12 assert (zenon_L213_ : (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e4) (e2)) = (e4)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e0) (e3)) = (e2)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e1)) = (e1)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H88 zenon_H58 zenon_Hf2 zenon_H6e zenon_H61 zenon_Hbb zenon_Hc9 zenon_Hb zenon_Hc zenon_Hd zenon_Hd9 zenon_Hcc zenon_Hb1 zenon_H91 zenon_H111 zenon_H2c zenon_H11b zenon_Hd4 zenon_H1f zenon_H22 zenon_He9 zenon_Hd3 zenon_H9f zenon_H8e zenon_H9b zenon_H99 zenon_Hc8 zenon_H77 zenon_He8 zenon_He6 zenon_Hea zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.93/34.12 apply (zenon_L187_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.93/34.12 apply (zenon_L191_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.93/34.12 apply (zenon_L205_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.93/34.12 exact (zenon_H89 zenon_H8d). % 33.93/34.12 apply (zenon_L40_); trivial. % 33.93/34.12 (* end of lemma zenon_L213_ *) % 33.93/34.12 assert (zenon_L214_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e1)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hf1 zenon_H148 zenon_H147 zenon_Hcc zenon_Hb1 zenon_H91 zenon_H6e zenon_H58 zenon_Hf2 zenon_Hd3 zenon_H13e zenon_H34 zenon_He9 zenon_H3b zenon_H16 zenon_H32 zenon_Hd4 zenon_He8 zenon_H99 zenon_He6 zenon_Hea zenon_He0 zenon_H68 zenon_H57 zenon_H73 zenon_H41 zenon_H42 zenon_H43 zenon_H49 zenon_H51 zenon_H50 zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_Hbb zenon_H9f zenon_Hc zenon_Hb zenon_H77 zenon_Hc8 zenon_H9b zenon_H8e zenon_H11b zenon_H2c zenon_H111 zenon_Hd9 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_Hef zenon_Hee. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.93/34.12 apply (zenon_L212_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.12 apply (zenon_L213_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.12 apply (zenon_L20_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.12 apply (zenon_L41_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.12 exact (zenon_He1 zenon_He5). % 33.93/34.12 apply (zenon_L73_); trivial. % 33.93/34.12 apply (zenon_L124_); trivial. % 33.93/34.12 apply (zenon_L208_); trivial. % 33.93/34.12 apply (zenon_L205_); trivial. % 33.93/34.12 (* end of lemma zenon_L214_ *) % 33.93/34.12 assert (zenon_L215_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (e4)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (e2)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H3b zenon_Hb6 zenon_Hb7 zenon_H58 zenon_Hb9 zenon_H22 zenon_H20 zenon_H1f zenon_H125 zenon_H42 zenon_H8e zenon_H32 zenon_H16 zenon_H34. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.12 apply (zenon_L62_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.12 apply (zenon_L63_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.12 apply (zenon_L8_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.12 apply (zenon_L177_); trivial. % 33.93/34.12 apply (zenon_L11_); trivial. % 33.93/34.12 (* end of lemma zenon_L215_ *) % 33.93/34.12 assert (zenon_L216_ : ((~((op (e1) (e1)) = (e1)))\/((op (e1) (e1)) = (e1))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e1))) -> (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> ((~((op (e2) (e2)) = (e0)))\/((op (e2) (e0)) = (e2))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H149 zenon_H137 zenon_H13e zenon_H147 zenon_H148 zenon_H117 zenon_H112 zenon_H115 zenon_H116 zenon_H111 zenon_H10b zenon_H11f zenon_H129 zenon_H12d zenon_H103 zenon_H109 zenon_Hf6 zenon_Hee zenon_Hea zenon_He6 zenon_He8 zenon_He9 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H43 zenon_H42 zenon_H41 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_H9f zenon_H99 zenon_H9b zenon_Hc2 zenon_Hbb zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Hb1 zenon_Ha1 zenon_Hc8 zenon_Hd3 zenon_Hd4 zenon_Hcc zenon_Hd9 zenon_H8e zenon_H91 zenon_He0 zenon_Hef zenon_Hf1 zenon_Hff zenon_Hfe zenon_Hfc zenon_H101 zenon_H133. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H149); [ zenon_intro zenon_H118 | zenon_intro zenon_H11b ]. % 33.93/34.12 apply (zenon_L184_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H133); [ zenon_intro zenon_H12e | zenon_intro zenon_Hba ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H12d); [ zenon_intro zenon_H10c | zenon_intro zenon_H12f ]. % 33.93/34.12 apply (zenon_L210_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H12f); [ zenon_intro zenon_H120 | zenon_intro zenon_H130 ]. % 33.93/34.12 apply (zenon_L175_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H130); [ zenon_intro zenon_H132 | zenon_intro zenon_H131 ]. % 33.93/34.12 exact (zenon_H12e zenon_H132). % 33.93/34.12 apply (zenon_or_s _ _ zenon_H131); [ zenon_intro zenon_H125 | zenon_intro zenon_H128 ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf6); [ zenon_intro zenon_Hba | zenon_intro zenon_Hf8 ]. % 33.93/34.12 apply (zenon_L186_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf8); [ zenon_intro zenon_Hf2 | zenon_intro zenon_Hf9 ]. % 33.93/34.12 apply (zenon_L214_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf9); [ zenon_intro zenon_Hfb | zenon_intro zenon_Hfa ]. % 33.93/34.12 exact (zenon_Hf7 zenon_Hfb). % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hfa); [ zenon_intro zenon_H59 | zenon_intro zenon_Hb7 ]. % 33.93/34.12 apply (zenon_L209_); trivial. % 33.93/34.12 apply (zenon_L215_); trivial. % 33.93/34.12 apply (zenon_L179_); trivial. % 33.93/34.12 apply (zenon_L142_); trivial. % 33.93/34.12 apply (zenon_L186_); trivial. % 33.93/34.12 (* end of lemma zenon_L216_ *) % 33.93/34.12 assert (zenon_L217_ : ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> ((op (e2) (e1)) = (e0)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H11f zenon_H14a zenon_H34 zenon_H14b. % 33.93/34.12 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.93/34.12 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((op (e1) (e1)) = (op (e2) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H14b. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H70. % 33.93/34.12 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.93/34.12 cut (((op (e2) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H14c]. % 33.93/34.12 congruence. % 33.93/34.12 cut (((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) = ((op (e2) (e1)) = (op (e1) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H14c. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H11f. % 33.93/34.12 cut (((op (op (e4) (e2)) (op (e4) (e2))) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H11d]. % 33.93/34.12 cut (((e0) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H14d]. % 33.93/34.12 congruence. % 33.93/34.12 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.93/34.12 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((e0) = (op (e2) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H14d. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H70. % 33.93/34.12 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.93/34.12 cut (((op (e2) (e1)) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H14e]. % 33.93/34.12 congruence. % 33.93/34.12 exact (zenon_H14e zenon_H14a). % 33.93/34.12 apply zenon_H71. apply refl_equal. % 33.93/34.12 apply zenon_H71. apply refl_equal. % 33.93/34.12 apply (zenon_L174_); trivial. % 33.93/34.12 apply zenon_H71. apply refl_equal. % 33.93/34.12 apply zenon_H71. apply refl_equal. % 33.93/34.12 (* end of lemma zenon_L217_ *) % 33.93/34.12 assert (zenon_L218_ : ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> ((op (e3) (e1)) = (e0)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H11f zenon_H14f zenon_H34 zenon_H150. % 33.93/34.12 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.93/34.12 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((op (e1) (e1)) = (op (e3) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H150. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H62. % 33.93/34.12 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.93/34.12 cut (((op (e3) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H151]. % 33.93/34.12 congruence. % 33.93/34.12 cut (((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) = ((op (e3) (e1)) = (op (e1) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H151. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H11f. % 33.93/34.12 cut (((op (op (e4) (e2)) (op (e4) (e2))) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H11d]. % 33.93/34.12 cut (((e0) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H152]. % 33.93/34.12 congruence. % 33.93/34.12 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.93/34.12 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((e0) = (op (e3) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H152. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H62. % 33.93/34.12 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.93/34.12 cut (((op (e3) (e1)) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H153]. % 33.93/34.12 congruence. % 33.93/34.12 exact (zenon_H153 zenon_H14f). % 33.93/34.12 apply zenon_H63. apply refl_equal. % 33.93/34.12 apply zenon_H63. apply refl_equal. % 33.93/34.12 apply (zenon_L174_); trivial. % 33.93/34.12 apply zenon_H63. apply refl_equal. % 33.93/34.12 apply zenon_H63. apply refl_equal. % 33.93/34.12 (* end of lemma zenon_L218_ *) % 33.93/34.12 assert (zenon_L219_ : ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> ((op (e4) (e1)) = (e0)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H11f zenon_H154 zenon_H34 zenon_H155. % 33.93/34.12 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.93/34.12 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((op (e1) (e1)) = (op (e4) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H155. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H37. % 33.93/34.12 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.93/34.12 cut (((op (e4) (e1)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H156]. % 33.93/34.12 congruence. % 33.93/34.12 cut (((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) = ((op (e4) (e1)) = (op (e1) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H156. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H11f. % 33.93/34.12 cut (((op (op (e4) (e2)) (op (e4) (e2))) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H11d]. % 33.93/34.12 cut (((e0) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H157]. % 33.93/34.12 congruence. % 33.93/34.12 elim (classic ((op (e4) (e1)) = (op (e4) (e1)))); [ zenon_intro zenon_H37 | zenon_intro zenon_H38 ]. % 33.93/34.12 cut (((op (e4) (e1)) = (op (e4) (e1))) = ((e0) = (op (e4) (e1)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H157. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H37. % 33.93/34.12 cut (((op (e4) (e1)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H38]. % 33.93/34.12 cut (((op (e4) (e1)) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H158]. % 33.93/34.12 congruence. % 33.93/34.12 exact (zenon_H158 zenon_H154). % 33.93/34.12 apply zenon_H38. apply refl_equal. % 33.93/34.12 apply zenon_H38. apply refl_equal. % 33.93/34.12 apply (zenon_L174_); trivial. % 33.93/34.12 apply zenon_H38. apply refl_equal. % 33.93/34.12 apply zenon_H38. apply refl_equal. % 33.93/34.12 (* end of lemma zenon_L219_ *) % 33.93/34.12 assert (zenon_L220_ : (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> ((~((op (e2) (e2)) = (e0)))\/((op (e2) (e0)) = (e2))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> (~((e0) = (e1))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> ((~((op (e1) (e1)) = (e1)))\/((op (e1) (e1)) = (e1))) -> (~((op (e1) (e1)) = (e0))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H159 zenon_H133 zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_Hf1 zenon_Hef zenon_He0 zenon_H91 zenon_H8e zenon_Hd9 zenon_Hcc zenon_Hd4 zenon_Hd3 zenon_Hc8 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hbb zenon_Hc2 zenon_H9b zenon_H99 zenon_H9f zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H41 zenon_H42 zenon_H49 zenon_H51 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H3b zenon_He9 zenon_He8 zenon_He6 zenon_Hea zenon_Hee zenon_Hf6 zenon_H109 zenon_H103 zenon_H12d zenon_H129 zenon_H10b zenon_H111 zenon_H116 zenon_H115 zenon_H112 zenon_H117 zenon_H148 zenon_H147 zenon_H13e zenon_H137 zenon_H149 zenon_H15a zenon_H14b zenon_H150 zenon_H11f zenon_H34 zenon_H155. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H159); [ zenon_intro zenon_H43 | zenon_intro zenon_H15b ]. % 33.93/34.12 apply (zenon_L216_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H15b); [ zenon_intro zenon_H15d | zenon_intro zenon_H15c ]. % 33.93/34.12 exact (zenon_H15a zenon_H15d). % 33.93/34.12 apply (zenon_or_s _ _ zenon_H15c); [ zenon_intro zenon_H14a | zenon_intro zenon_H15e ]. % 33.93/34.12 apply (zenon_L217_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H15e); [ zenon_intro zenon_H14f | zenon_intro zenon_H154 ]. % 33.93/34.12 apply (zenon_L218_); trivial. % 33.93/34.12 apply (zenon_L219_); trivial. % 33.93/34.12 (* end of lemma zenon_L220_ *) % 33.93/34.12 assert (zenon_L221_ : ((~((op (e1) (e1)) = (e1)))\/((op (e1) (e1)) = (e1))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e2)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H149 zenon_H137 zenon_Ha1 zenon_Haa zenon_Hc2 zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_Hf1 zenon_H8e zenon_H9f zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H49 zenon_H10c zenon_H42 zenon_H10b zenon_Hee zenon_Hd9 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_He0 zenon_Hb9 zenon_Hb6 zenon_Hf6 zenon_H109 zenon_H103 zenon_Hbb zenon_H111 zenon_H116 zenon_H115 zenon_H112 zenon_H117. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H149); [ zenon_intro zenon_H118 | zenon_intro zenon_H11b ]. % 33.93/34.12 apply (zenon_L173_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.93/34.12 apply (zenon_L210_); trivial. % 33.93/34.12 apply (zenon_L142_); trivial. % 33.93/34.12 (* end of lemma zenon_L221_ *) % 33.93/34.12 assert (zenon_L222_ : (~((op (e0) (e0)) = (op (e0) (e3)))) -> ((op (unit) (e0)) = (e0)) -> ((unit) = (e0)) -> ((op (e0) (e3)) = (e0)) -> False). % 33.93/34.12 do 0 intro. intros zenon_H15f zenon_H42 zenon_H9 zenon_H160. % 33.93/34.12 cut (((op (unit) (e0)) = (e0)) = ((op (e0) (e0)) = (op (e0) (e3)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H15f. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H42. % 33.93/34.12 cut (((e0) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H161]. % 33.93/34.12 cut (((op (unit) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 33.93/34.12 congruence. % 33.93/34.12 elim (classic ((op (e0) (e0)) = (op (e0) (e0)))); [ zenon_intro zenon_H46 | zenon_intro zenon_H47 ]. % 33.93/34.12 cut (((op (e0) (e0)) = (op (e0) (e0))) = ((op (unit) (e0)) = (op (e0) (e0)))). % 33.93/34.12 intro zenon_D_pnotp. % 33.93/34.12 apply zenon_H45. % 33.93/34.12 rewrite <- zenon_D_pnotp. % 33.93/34.12 exact zenon_H46. % 33.93/34.12 cut (((op (e0) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H47]. % 33.93/34.12 cut (((op (e0) (e0)) = (op (unit) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H40]. % 33.93/34.12 congruence. % 33.93/34.12 apply (zenon_L14_); trivial. % 33.93/34.12 apply zenon_H47. apply refl_equal. % 33.93/34.12 apply zenon_H47. apply refl_equal. % 33.93/34.12 apply zenon_H161. apply sym_equal. exact zenon_H160. % 33.93/34.12 (* end of lemma zenon_L222_ *) % 33.93/34.12 assert (zenon_L223_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e3)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H3b zenon_H160 zenon_H42 zenon_H15f zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.12 apply (zenon_L222_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.12 apply (zenon_L17_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.12 apply (zenon_L8_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.12 apply (zenon_L10_); trivial. % 33.93/34.12 apply (zenon_L11_); trivial. % 33.93/34.12 (* end of lemma zenon_L223_ *) % 33.93/34.12 assert (zenon_L224_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e3)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.93/34.12 do 0 intro. intros zenon_H3b zenon_H160 zenon_H42 zenon_H15f zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc zenon_H92. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.12 apply (zenon_L222_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.12 apply (zenon_L6_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.12 apply (zenon_L8_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.12 apply (zenon_L10_); trivial. % 33.93/34.12 apply (zenon_L44_); trivial. % 33.93/34.12 (* end of lemma zenon_L224_ *) % 33.93/34.12 assert (zenon_L225_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e3)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.12 do 0 intro. intros zenon_He0 zenon_Hb zenon_H49 zenon_H34 zenon_H32 zenon_H87 zenon_H83 zenon_H5f zenon_H81 zenon_H7b zenon_H89 zenon_H57 zenon_H58 zenon_H6e zenon_H77 zenon_H73 zenon_H61 zenon_H68 zenon_H88 zenon_He1 zenon_H3b zenon_H160 zenon_H42 zenon_H15f zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.12 apply (zenon_L12_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.12 apply (zenon_L223_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.12 apply (zenon_L41_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.12 exact (zenon_He1 zenon_He5). % 33.93/34.12 apply (zenon_L224_); trivial. % 33.93/34.12 (* end of lemma zenon_L225_ *) % 33.93/34.12 assert (zenon_L226_ : ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e3)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hee zenon_Hd9 zenon_Hd4 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H49 zenon_H160 zenon_H42 zenon_H15f zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_He1 zenon_H91 zenon_He0. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.12 apply (zenon_L225_); trivial. % 33.93/34.12 apply (zenon_L111_); trivial. % 33.93/34.12 (* end of lemma zenon_L226_ *) % 33.93/34.12 assert (zenon_L227_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e3)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.12 do 0 intro. intros zenon_H3b zenon_H68 zenon_H73 zenon_H8d zenon_H5f zenon_H77 zenon_H76 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.12 apply (zenon_L102_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.12 apply (zenon_L105_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.12 apply (zenon_L107_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.12 apply (zenon_L32_); trivial. % 33.93/34.12 apply (zenon_L11_); trivial. % 33.93/34.12 (* end of lemma zenon_L227_ *) % 33.93/34.12 assert (zenon_L228_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e3)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hf1 zenon_Hba zenon_H9f zenon_H8e zenon_He0 zenon_H91 zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H15f zenon_H42 zenon_H160 zenon_H49 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_Hd4 zenon_Hd9 zenon_Hee. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.93/34.12 apply (zenon_L226_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.12 apply (zenon_L12_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.12 apply (zenon_L223_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.12 apply (zenon_L41_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.12 apply (zenon_L118_); trivial. % 33.93/34.12 apply (zenon_L224_); trivial. % 33.93/34.12 apply (zenon_L99_); trivial. % 33.93/34.12 apply (zenon_L227_); trivial. % 33.93/34.12 (* end of lemma zenon_L228_ *) % 33.93/34.12 assert (zenon_L229_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e3)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hf1 zenon_Hf2 zenon_H9f zenon_H8e zenon_He0 zenon_H91 zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H15f zenon_H42 zenon_H160 zenon_H49 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_Hd4 zenon_Hd9 zenon_Hee. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.93/34.12 apply (zenon_L226_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.12 apply (zenon_L12_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.12 apply (zenon_L223_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.12 apply (zenon_L41_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.12 apply (zenon_L136_); trivial. % 33.93/34.12 apply (zenon_L224_); trivial. % 33.93/34.12 apply (zenon_L99_); trivial. % 33.93/34.12 apply (zenon_L227_); trivial. % 33.93/34.12 (* end of lemma zenon_L229_ *) % 33.93/34.12 assert (zenon_L230_ : (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e3)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.12 do 0 intro. intros zenon_Hf6 zenon_H18 zenon_Hc zenon_Hb zenon_H49 zenon_H160 zenon_H42 zenon_H15f zenon_He0 zenon_H8e zenon_H9f zenon_Hf1 zenon_Hf7 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_H17 zenon_H2c zenon_H2d zenon_Hd9 zenon_Hee zenon_H3b zenon_Hb6 zenon_Hb9 zenon_H22 zenon_H20 zenon_H58 zenon_H1f zenon_H32 zenon_H16 zenon_H34. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf6); [ zenon_intro zenon_Hba | zenon_intro zenon_Hf8 ]. % 33.93/34.12 apply (zenon_L228_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf8); [ zenon_intro zenon_Hf2 | zenon_intro zenon_Hf9 ]. % 33.93/34.12 apply (zenon_L229_); trivial. % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hf9); [ zenon_intro zenon_Hfb | zenon_intro zenon_Hfa ]. % 33.93/34.12 exact (zenon_Hf7 zenon_Hfb). % 33.93/34.12 apply (zenon_or_s _ _ zenon_Hfa); [ zenon_intro zenon_H59 | zenon_intro zenon_Hb7 ]. % 33.93/34.12 apply (zenon_L135_); trivial. % 33.93/34.12 apply (zenon_L126_); trivial. % 33.93/34.12 (* end of lemma zenon_L230_ *) % 33.93/34.12 assert (zenon_L231_ : ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e3)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H101 zenon_Hfc zenon_Hfe zenon_Hff zenon_Hf1 zenon_H9f zenon_H8e zenon_He0 zenon_H91 zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H15f zenon_H42 zenon_H160 zenon_H49 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_Hd4 zenon_Hd9 zenon_Hee zenon_Hb9 zenon_Hb6 zenon_Hf6. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.93/34.13 apply (zenon_L230_); trivial. % 33.93/34.13 apply (zenon_L142_); trivial. % 33.93/34.13 (* end of lemma zenon_L231_ *) % 33.93/34.13 assert (zenon_L232_ : ((~((op (e1) (e1)) = (e0)))\/((op (e1) (e0)) = (e1))) -> ((op (e0) (e3)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> ((~((op (e1) (e1)) = (e1)))\/((op (e1) (e1)) = (e1))) -> (~((op (e0) (e1)) = (op (e0) (e2)))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> (((op (e1) (e0)) = (e1))\/(((op (e1) (e1)) = (e1))\/(((op (e1) (e2)) = (e1))\/(((op (e1) (e3)) = (e1))\/((op (e1) (e4)) = (e1)))))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e1))) -> (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> (~((op (e1) (e0)) = (op (e1) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (((op (e2) (e0)) = (e2))\/(((op (e2) (e1)) = (e2))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e3)) = (e2))\/((op (e2) (e4)) = (e2)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> ((~((op (e2) (e2)) = (e0)))\/((op (e2) (e0)) = (e2))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H162 zenon_H160 zenon_H15f zenon_H149 zenon_H137 zenon_H13e zenon_H147 zenon_H148 zenon_H117 zenon_H112 zenon_H115 zenon_H116 zenon_H111 zenon_H10b zenon_H11f zenon_H129 zenon_H12d zenon_H103 zenon_H109 zenon_Hf6 zenon_Hee zenon_Hea zenon_He6 zenon_He8 zenon_He9 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H42 zenon_H41 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_H9f zenon_H99 zenon_H9b zenon_Hc2 zenon_Hbb zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Hb1 zenon_Ha1 zenon_Hc8 zenon_Hd3 zenon_Hd4 zenon_Hcc zenon_Hd9 zenon_H8e zenon_H91 zenon_He0 zenon_Hef zenon_Hf1 zenon_Hff zenon_Hfe zenon_Hfc zenon_H101 zenon_H133 zenon_H14b zenon_H150 zenon_H155 zenon_H159. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H162); [ zenon_intro zenon_H15a | zenon_intro zenon_H17 ]. % 33.93/34.13 apply (zenon_L220_); trivial. % 33.93/34.13 apply (zenon_L231_); trivial. % 33.93/34.13 (* end of lemma zenon_L232_ *) % 33.93/34.13 assert (zenon_L233_ : (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((unit) = (e0)) -> ((op (e0) (e4)) = (e0)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H163 zenon_H42 zenon_H9 zenon_H164. % 33.93/34.13 cut (((op (unit) (e0)) = (e0)) = ((op (e0) (e0)) = (op (e0) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H163. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H42. % 33.93/34.13 cut (((e0) = (op (e0) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H165]. % 33.93/34.13 cut (((op (unit) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H45]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e0) (e0)) = (op (e0) (e0)))); [ zenon_intro zenon_H46 | zenon_intro zenon_H47 ]. % 33.93/34.13 cut (((op (e0) (e0)) = (op (e0) (e0))) = ((op (unit) (e0)) = (op (e0) (e0)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H45. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H46. % 33.93/34.13 cut (((op (e0) (e0)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H47]. % 33.93/34.13 cut (((op (e0) (e0)) = (op (unit) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H40]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L14_); trivial. % 33.93/34.13 apply zenon_H47. apply refl_equal. % 33.93/34.13 apply zenon_H47. apply refl_equal. % 33.93/34.13 apply zenon_H165. apply sym_equal. exact zenon_H164. % 33.93/34.13 (* end of lemma zenon_L233_ *) % 33.93/34.13 assert (zenon_L234_ : (~((op (e0) (e1)) = (op (e0) (e4)))) -> ((op (e0) (unit)) = (e0)) -> ((unit) = (e1)) -> ((op (e0) (e4)) = (e0)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H166 zenon_H50 zenon_H14 zenon_H164. % 33.93/34.13 cut (((op (e0) (unit)) = (e0)) = ((op (e0) (e1)) = (op (e0) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H166. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H50. % 33.93/34.13 cut (((e0) = (op (e0) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H165]. % 33.93/34.13 cut (((op (e0) (unit)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H138]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e0) (e1)) = (op (e0) (e1)))); [ zenon_intro zenon_H139 | zenon_intro zenon_H13a ]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1))) = ((op (e0) (unit)) = (op (e0) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H138. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H139. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13a]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H135]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L188_); trivial. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 apply zenon_H165. apply sym_equal. exact zenon_H164. % 33.93/34.13 (* end of lemma zenon_L234_ *) % 33.93/34.13 assert (zenon_L235_ : (~((op (e0) (e3)) = (op (e0) (e4)))) -> ((op (e0) (unit)) = (e0)) -> ((unit) = (e3)) -> ((op (e0) (e4)) = (e0)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H167 zenon_H50 zenon_H2a zenon_H164. % 33.93/34.13 cut (((op (e0) (unit)) = (e0)) = ((op (e0) (e3)) = (op (e0) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H167. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H50. % 33.93/34.13 cut (((e0) = (op (e0) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H165]. % 33.93/34.13 cut (((op (e0) (unit)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H55]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e0) (e3)) = (op (e0) (e3)))); [ zenon_intro zenon_H52 | zenon_intro zenon_H53 ]. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (e3))) = ((op (e0) (unit)) = (op (e0) (e3)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H55. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H52. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H53]. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H4f]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L18_); trivial. % 33.93/34.13 apply zenon_H53. apply refl_equal. % 33.93/34.13 apply zenon_H53. apply refl_equal. % 33.93/34.13 apply zenon_H165. apply sym_equal. exact zenon_H164. % 33.93/34.13 (* end of lemma zenon_L235_ *) % 33.93/34.13 assert (zenon_L236_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e0) (e4)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e3)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H42 zenon_H163 zenon_H166 zenon_H22 zenon_H20 zenon_H1f zenon_H164 zenon_H50 zenon_H167 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L233_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L234_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L8_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L235_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L236_ *) % 33.93/34.13 assert (zenon_L237_ : ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e4)) = (e0))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H147 zenon_Hcc zenon_Hb1 zenon_H91 zenon_H57 zenon_H58 zenon_Hba zenon_Hd3 zenon_H13e zenon_Hc3 zenon_H34 zenon_He9 zenon_H13c zenon_H3b zenon_H16 zenon_H32 zenon_Hd4 zenon_He8 zenon_H99 zenon_He6 zenon_Hea. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H147); [ zenon_intro zenon_H13d | zenon_intro zenon_Hcd ]. % 33.93/34.13 apply (zenon_L211_); trivial. % 33.93/34.13 apply (zenon_L81_); trivial. % 33.93/34.13 (* end of lemma zenon_L237_ *) % 33.93/34.13 assert (zenon_L238_ : (~((op (e0) (e1)) = (op (unit) (e1)))) -> ((unit) = (e0)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H168 zenon_H9. % 33.93/34.13 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.93/34.13 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.93/34.13 congruence. % 33.93/34.13 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.93/34.13 apply zenon_H12. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L238_ *) % 33.93/34.13 assert (zenon_L239_ : (~((op (e0) (e1)) = (op (e0) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((unit) = (e0)) -> ((op (e0) (e4)) = (e1)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H166 zenon_H16 zenon_H9 zenon_H169. % 33.93/34.13 cut (((op (unit) (e1)) = (e1)) = ((op (e0) (e1)) = (op (e0) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H166. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H16. % 33.93/34.13 cut (((e1) = (op (e0) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H16a]. % 33.93/34.13 cut (((op (unit) (e1)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H16b]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e0) (e1)) = (op (e0) (e1)))); [ zenon_intro zenon_H139 | zenon_intro zenon_H13a ]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1))) = ((op (unit) (e1)) = (op (e0) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H16b. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H139. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13a]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (unit) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H168]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L238_); trivial. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 apply zenon_H16a. apply sym_equal. exact zenon_H169. % 33.93/34.13 (* end of lemma zenon_L239_ *) % 33.93/34.13 assert (zenon_L240_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e1)) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H169 zenon_H166 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L239_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L17_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L8_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L10_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L240_ *) % 33.93/34.13 assert (zenon_L241_ : ((e3) = (op (e2) (e4))) -> ((op (e2) (e4)) = (e1)) -> (~((e1) = (e3))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H22 zenon_H16c zenon_H16d. % 33.93/34.13 elim (classic ((e3) = (e3))); [ zenon_intro zenon_H16e | zenon_intro zenon_H1e ]. % 33.93/34.13 cut (((e3) = (e3)) = ((e1) = (e3))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H16d. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H16e. % 33.93/34.13 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.93/34.13 cut (((e3) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H16f]. % 33.93/34.13 congruence. % 33.93/34.13 cut (((e3) = (op (e2) (e4))) = ((e3) = (e1))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H16f. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H22. % 33.93/34.13 cut (((op (e2) (e4)) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H170]. % 33.93/34.13 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.93/34.13 congruence. % 33.93/34.13 apply zenon_H1e. apply refl_equal. % 33.93/34.13 exact (zenon_H170 zenon_H16c). % 33.93/34.13 apply zenon_H1e. apply refl_equal. % 33.93/34.13 apply zenon_H1e. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L241_ *) % 33.93/34.13 assert (zenon_L242_ : (~((op (e3) (e1)) = (op (unit) (e1)))) -> ((unit) = (e3)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H171 zenon_H2a. % 33.93/34.13 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.93/34.13 cut (((e3) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H2b]. % 33.93/34.13 congruence. % 33.93/34.13 apply zenon_H2b. apply sym_equal. exact zenon_H2a. % 33.93/34.13 apply zenon_H12. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L242_ *) % 33.93/34.13 assert (zenon_L243_ : (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((unit) = (e3)) -> ((op (e3) (e4)) = (e1)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H81 zenon_H16 zenon_H2a zenon_H172. % 33.93/34.13 cut (((op (unit) (e1)) = (e1)) = ((op (e3) (e1)) = (op (e3) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H81. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H16. % 33.93/34.13 cut (((e1) = (op (e3) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H173]. % 33.93/34.13 cut (((op (unit) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H174]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e3) (e1)) = (op (e3) (e1)))); [ zenon_intro zenon_H62 | zenon_intro zenon_H63 ]. % 33.93/34.13 cut (((op (e3) (e1)) = (op (e3) (e1))) = ((op (unit) (e1)) = (op (e3) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H174. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H62. % 33.93/34.13 cut (((op (e3) (e1)) = (op (e3) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H63]. % 33.93/34.13 cut (((op (e3) (e1)) = (op (unit) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H171]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L242_); trivial. % 33.93/34.13 apply zenon_H63. apply refl_equal. % 33.93/34.13 apply zenon_H63. apply refl_equal. % 33.93/34.13 apply zenon_H173. apply sym_equal. exact zenon_H172. % 33.93/34.13 (* end of lemma zenon_L243_ *) % 33.93/34.13 assert (zenon_L244_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (e4)) = (e1)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_Hc9 zenon_H99 zenon_Hc8 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H172 zenon_H81 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L70_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L17_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L8_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L243_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L244_ *) % 33.93/34.13 assert (zenon_L245_ : (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e1) (e3)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H175 zenon_H17 zenon_H2d zenon_H166 zenon_H116 zenon_H2c zenon_H115 zenon_H112 zenon_H16d zenon_H34 zenon_H16 zenon_H32 zenon_H81 zenon_H1f zenon_H20 zenon_H22 zenon_H49 zenon_Hc zenon_H4a zenon_Hc8 zenon_H99 zenon_Hc9 zenon_H3b zenon_H144. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H175); [ zenon_intro zenon_H169 | zenon_intro zenon_H176 ]. % 33.93/34.13 apply (zenon_L240_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H176); [ zenon_intro zenon_H113 | zenon_intro zenon_H177 ]. % 33.93/34.13 apply (zenon_L172_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H177); [ zenon_intro zenon_H16c | zenon_intro zenon_H178 ]. % 33.93/34.13 apply (zenon_L241_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H178); [ zenon_intro zenon_H172 | zenon_intro zenon_H142 ]. % 33.93/34.13 apply (zenon_L244_); trivial. % 33.93/34.13 exact (zenon_H144 zenon_H142). % 33.93/34.13 (* end of lemma zenon_L245_ *) % 33.93/34.13 assert (zenon_L246_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.13 do 0 intro. intros zenon_He0 zenon_H18 zenon_Hb zenon_H144 zenon_H49 zenon_H16d zenon_H112 zenon_H115 zenon_H2c zenon_H116 zenon_H166 zenon_H2d zenon_H17 zenon_H175 zenon_H34 zenon_H16 zenon_H87 zenon_H83 zenon_H5f zenon_H81 zenon_H7b zenon_H89 zenon_H57 zenon_H58 zenon_H6e zenon_H77 zenon_H73 zenon_H61 zenon_H68 zenon_H88 zenon_He1 zenon_H3b zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc9 zenon_H99 zenon_H91 zenon_Hc. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.13 apply (zenon_L12_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.13 apply (zenon_L245_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.13 apply (zenon_L41_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.13 exact (zenon_He1 zenon_He5). % 33.93/34.13 apply (zenon_L73_); trivial. % 33.93/34.13 (* end of lemma zenon_L246_ *) % 33.93/34.13 assert (zenon_L247_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_Hcc zenon_H32 zenon_Hb1 zenon_Ha5 zenon_H99 zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L74_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L75_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L58_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L60_); trivial. % 33.93/34.13 apply (zenon_L80_); trivial. % 33.93/34.13 (* end of lemma zenon_L247_ *) % 33.93/34.13 assert (zenon_L248_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_Hc8 zenon_H32 zenon_Ha5 zenon_H91 zenon_H99 zenon_Hd3 zenon_Hc9 zenon_He9. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L70_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L71_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L58_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L72_); trivial. % 33.93/34.13 apply (zenon_L108_); trivial. % 33.93/34.13 (* end of lemma zenon_L248_ *) % 33.93/34.13 assert (zenon_L249_ : ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((e1) = (op (e4) (e2))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> False). % 33.93/34.13 do 0 intro. intros zenon_Hef zenon_Hc8 zenon_H91 zenon_Hea zenon_He6 zenon_H99 zenon_He8 zenon_Hd4 zenon_H32 zenon_H16 zenon_H3b zenon_H13c zenon_He9 zenon_H34 zenon_H13e zenon_Hd3 zenon_Ha5 zenon_Hb1 zenon_Hcc zenon_H147. % 33.93/34.13 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H147); [ zenon_intro zenon_H13d | zenon_intro zenon_Hcd ]. % 33.93/34.13 apply (zenon_L211_); trivial. % 33.93/34.13 apply (zenon_L247_); trivial. % 33.93/34.13 apply (zenon_L248_); trivial. % 33.93/34.13 (* end of lemma zenon_L249_ *) % 33.93/34.13 assert (zenon_L250_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (e4)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H7c zenon_H5f zenon_H7b zenon_H9b zenon_Hc8 zenon_Hcc zenon_H9a zenon_H99 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L35_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L49_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L84_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L103_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L250_ *) % 33.93/34.13 assert (zenon_L251_ : (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e3)) = (e2)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H88 zenon_H68 zenon_H1f zenon_H22 zenon_H57 zenon_H58 zenon_H59 zenon_H73 zenon_H9f zenon_H61 zenon_H20 zenon_H77 zenon_H8e zenon_H89 zenon_H3b zenon_H5f zenon_H7b zenon_H9b zenon_Hc8 zenon_Hcc zenon_H9a zenon_H99 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.93/34.13 apply (zenon_L27_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.93/34.13 apply (zenon_L51_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.93/34.13 apply (zenon_L85_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.93/34.13 exact (zenon_H89 zenon_H8d). % 33.93/34.13 apply (zenon_L250_); trivial. % 33.93/34.13 (* end of lemma zenon_L251_ *) % 33.93/34.13 assert (zenon_L252_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (e4)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H7c zenon_H5f zenon_H7b zenon_H9b zenon_Hc8 zenon_Hcc zenon_H9a zenon_H99 zenon_H91 zenon_Hc zenon_H92. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L35_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L49_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L84_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L103_); trivial. % 33.93/34.13 apply (zenon_L44_); trivial. % 33.93/34.13 (* end of lemma zenon_L252_ *) % 33.93/34.13 assert (zenon_L253_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (e1)) = (e0)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.13 do 0 intro. intros zenon_He0 zenon_Hb zenon_H50 zenon_H51 zenon_H49 zenon_H68 zenon_He1 zenon_H88 zenon_H41 zenon_H42 zenon_H43 zenon_H73 zenon_Hbb zenon_H61 zenon_Hc3 zenon_Hd9 zenon_H8e zenon_H83 zenon_H9f zenon_H1f zenon_H20 zenon_H22 zenon_H32 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_Hb1 zenon_Hda zenon_Hb6 zenon_Hb9 zenon_H77 zenon_H34 zenon_H16 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H89 zenon_H3b zenon_H5f zenon_H7b zenon_H9b zenon_Hc8 zenon_Hcc zenon_H9a zenon_H99 zenon_H91 zenon_Hc. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.13 apply (zenon_L12_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.13 apply (zenon_L20_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.13 apply (zenon_L251_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.13 exact (zenon_He1 zenon_He5). % 33.93/34.13 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.93/34.13 apply (zenon_L45_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.93/34.13 apply (zenon_L82_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.93/34.13 apply (zenon_L92_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.93/34.13 exact (zenon_H89 zenon_H8d). % 33.93/34.13 apply (zenon_L252_); trivial. % 33.93/34.13 (* end of lemma zenon_L253_ *) % 33.93/34.13 assert (zenon_L254_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e3)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.13 do 0 intro. intros zenon_He0 zenon_Hb zenon_H49 zenon_H34 zenon_H32 zenon_H99 zenon_H9a zenon_Hcc zenon_Hc8 zenon_H9b zenon_H7b zenon_H5f zenon_H89 zenon_H8e zenon_H77 zenon_H61 zenon_H9f zenon_H73 zenon_H58 zenon_H57 zenon_H68 zenon_H88 zenon_He1 zenon_H3b zenon_H160 zenon_H42 zenon_H15f zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.13 apply (zenon_L12_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.13 apply (zenon_L223_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.13 apply (zenon_L251_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.13 exact (zenon_He1 zenon_He5). % 33.93/34.13 apply (zenon_L224_); trivial. % 33.93/34.13 (* end of lemma zenon_L254_ *) % 33.93/34.13 assert (zenon_L255_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H164 zenon_H42 zenon_H163 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L233_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L17_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L8_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L10_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L255_ *) % 33.93/34.13 assert (zenon_L256_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H164 zenon_H42 zenon_H163 zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc zenon_H92. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L233_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L6_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L8_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L10_); trivial. % 33.93/34.13 apply (zenon_L44_); trivial. % 33.93/34.13 (* end of lemma zenon_L256_ *) % 33.93/34.13 assert (zenon_L257_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e0)) = (e2)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.93/34.13 do 0 intro. intros zenon_He0 zenon_Hb zenon_H49 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_H32 zenon_H34 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_Hd4 zenon_Hba zenon_Hd9 zenon_Hee zenon_He1 zenon_H3b zenon_H164 zenon_H42 zenon_H163 zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.93/34.13 apply (zenon_L12_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.93/34.13 apply (zenon_L255_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.93/34.13 apply (zenon_L114_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.93/34.13 exact (zenon_He1 zenon_He5). % 33.93/34.13 apply (zenon_L256_); trivial. % 33.93/34.13 (* end of lemma zenon_L257_ *) % 33.93/34.13 assert (zenon_L258_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H9b zenon_H9a zenon_H32 zenon_Hb1 zenon_H99 zenon_Hd3 zenon_Ha5 zenon_He8. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L55_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L49_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L58_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L60_); trivial. % 33.93/34.13 apply (zenon_L127_); trivial. % 33.93/34.13 (* end of lemma zenon_L258_ *) % 33.93/34.13 assert (zenon_L259_ : ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H148 zenon_H9b zenon_Hc8 zenon_H147 zenon_Hcc zenon_Hb1 zenon_H91 zenon_H57 zenon_H58 zenon_Hba zenon_Hd3 zenon_H13e zenon_H34 zenon_He9 zenon_H3b zenon_H16 zenon_H32 zenon_Hd4 zenon_He8 zenon_H99 zenon_He6 zenon_Hea zenon_H77 zenon_H22 zenon_H20 zenon_H1f zenon_H9f zenon_H76 zenon_H5f zenon_H8e zenon_Hef. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.93/34.13 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.93/34.13 apply (zenon_L237_); trivial. % 33.93/34.13 apply (zenon_L120_); trivial. % 33.93/34.13 apply (zenon_L85_); trivial. % 33.93/34.13 (* end of lemma zenon_L259_ *) % 33.93/34.13 assert (zenon_L260_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e3)))) -> ((op (e1) (e1)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H18 zenon_H17 zenon_H22 zenon_H20 zenon_H1f zenon_H111 zenon_H11b zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L185_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L6_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L8_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L189_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L260_ *) % 33.93/34.13 assert (zenon_L261_ : ((op (e0) (unit)) = (e0)) -> ((unit) = (e1)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H50 zenon_H14 zenon_H179 zenon_H41. % 33.93/34.13 elim (classic ((op (e0) (e1)) = (op (e0) (e1)))); [ zenon_intro zenon_H139 | zenon_intro zenon_H13a ]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1))) = ((op (e0) (e0)) = (op (e0) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H41. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H139. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13a]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H17a]. % 33.93/34.13 congruence. % 33.93/34.13 cut (((op (e0) (unit)) = (e0)) = ((op (e0) (e1)) = (op (e0) (e0)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H17a. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H50. % 33.93/34.13 cut (((e0) = (op (e0) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H17b]. % 33.93/34.13 cut (((op (e0) (unit)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H138]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e0) (e1)) = (op (e0) (e1)))); [ zenon_intro zenon_H139 | zenon_intro zenon_H13a ]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1))) = ((op (e0) (unit)) = (op (e0) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H138. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H139. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H13a]. % 33.93/34.13 cut (((op (e0) (e1)) = (op (e0) (unit)))); [idtac | apply NNPP; zenon_intro zenon_H135]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L188_); trivial. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 apply zenon_H17b. apply sym_equal. exact zenon_H179. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 apply zenon_H13a. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L261_ *) % 33.93/34.13 assert (zenon_L262_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (e0) (e0)) = (e0)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e1)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H42 zenon_H41 zenon_H179 zenon_H22 zenon_H20 zenon_H1f zenon_H51 zenon_H43 zenon_H50 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L15_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L261_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L8_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L19_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L262_ *) % 33.93/34.13 assert (zenon_L263_ : (~((op (e0) (e3)) = (op (unit) (e3)))) -> ((unit) = (e0)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H17c zenon_H9. % 33.93/34.13 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.93/34.13 cut (((e0) = (unit))); [idtac | apply NNPP; zenon_intro zenon_Ha]. % 33.93/34.13 congruence. % 33.93/34.13 apply zenon_Ha. apply sym_equal. exact zenon_H9. % 33.93/34.13 apply zenon_H1e. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L263_ *) % 33.93/34.13 assert (zenon_L264_ : ((op (unit) (e3)) = (e3)) -> ((unit) = (e0)) -> ((op (e0) (e1)) = (e3)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H20 zenon_H9 zenon_H17d zenon_H51. % 33.93/34.13 elim (classic ((op (e0) (e3)) = (op (e0) (e3)))); [ zenon_intro zenon_H52 | zenon_intro zenon_H53 ]. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (e3))) = ((op (e0) (e1)) = (op (e0) (e3)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H51. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H52. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H53]. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H54]. % 33.93/34.13 congruence. % 33.93/34.13 cut (((op (unit) (e3)) = (e3)) = ((op (e0) (e3)) = (op (e0) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H54. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H20. % 33.93/34.13 cut (((e3) = (op (e0) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H17e]. % 33.93/34.13 cut (((op (unit) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H17f]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e0) (e3)) = (op (e0) (e3)))); [ zenon_intro zenon_H52 | zenon_intro zenon_H53 ]. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (e3))) = ((op (unit) (e3)) = (op (e0) (e3)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H17f. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H52. % 33.93/34.13 cut (((op (e0) (e3)) = (op (e0) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H53]. % 33.93/34.13 cut (((op (e0) (e3)) = (op (unit) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H17c]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L263_); trivial. % 33.93/34.13 apply zenon_H53. apply refl_equal. % 33.93/34.13 apply zenon_H53. apply refl_equal. % 33.93/34.13 apply zenon_H17e. apply sym_equal. exact zenon_H17d. % 33.93/34.13 apply zenon_H53. apply refl_equal. % 33.93/34.13 apply zenon_H53. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L264_ *) % 33.93/34.13 assert (zenon_L265_ : (~((op (e1) (e0)) = (op (unit) (e0)))) -> ((unit) = (e1)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H180 zenon_H14. % 33.93/34.13 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.93/34.13 cut (((e1) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H15]. % 33.93/34.13 congruence. % 33.93/34.13 apply zenon_H15. apply sym_equal. exact zenon_H14. % 33.93/34.13 apply zenon_H3f. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L265_ *) % 33.93/34.13 assert (zenon_L266_ : (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((unit) = (e1)) -> ((op (e1) (e1)) = (e0)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H18 zenon_H42 zenon_H14 zenon_H15d. % 33.93/34.13 cut (((op (unit) (e0)) = (e0)) = ((op (e1) (e0)) = (op (e1) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H18. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H42. % 33.93/34.13 cut (((e0) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H181]. % 33.93/34.13 cut (((op (unit) (e0)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H182]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e1) (e0)) = (op (e1) (e0)))); [ zenon_intro zenon_H107 | zenon_intro zenon_H108 ]. % 33.93/34.13 cut (((op (e1) (e0)) = (op (e1) (e0))) = ((op (unit) (e0)) = (op (e1) (e0)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H182. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H107. % 33.93/34.13 cut (((op (e1) (e0)) = (op (e1) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H108]. % 33.93/34.13 cut (((op (e1) (e0)) = (op (unit) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H180]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L265_); trivial. % 33.93/34.13 apply zenon_H108. apply refl_equal. % 33.93/34.13 apply zenon_H108. apply refl_equal. % 33.93/34.13 apply zenon_H181. apply sym_equal. exact zenon_H15d. % 33.93/34.13 (* end of lemma zenon_L266_ *) % 33.93/34.13 assert (zenon_L267_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> ((op (e1) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H51 zenon_H17d zenon_H20 zenon_H15d zenon_H42 zenon_H18 zenon_Hc8 zenon_Hcc zenon_H9a zenon_H99 zenon_H32 zenon_H16 zenon_H34. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L264_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L266_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L84_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L103_); trivial. % 33.93/34.13 apply (zenon_L11_); trivial. % 33.93/34.13 (* end of lemma zenon_L267_ *) % 33.93/34.13 assert (zenon_L268_ : ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> ((op (e1) (e4)) = (e0)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H11f zenon_H183 zenon_H34 zenon_H115. % 33.93/34.13 elim (classic ((op (e1) (e4)) = (op (e1) (e4)))); [ zenon_intro zenon_H184 | zenon_intro zenon_H185 ]. % 33.93/34.13 cut (((op (e1) (e4)) = (op (e1) (e4))) = ((op (e1) (e1)) = (op (e1) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H115. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H184. % 33.93/34.13 cut (((op (e1) (e4)) = (op (e1) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H185]. % 33.93/34.13 cut (((op (e1) (e4)) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H186]. % 33.93/34.13 congruence. % 33.93/34.13 cut (((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) = ((op (e1) (e4)) = (op (e1) (e1)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H186. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H11f. % 33.93/34.13 cut (((op (op (e4) (e2)) (op (e4) (e2))) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H11d]. % 33.93/34.13 cut (((e0) = (op (e1) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H187]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e1) (e4)) = (op (e1) (e4)))); [ zenon_intro zenon_H184 | zenon_intro zenon_H185 ]. % 33.93/34.13 cut (((op (e1) (e4)) = (op (e1) (e4))) = ((e0) = (op (e1) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H187. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H184. % 33.93/34.13 cut (((op (e1) (e4)) = (op (e1) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H185]. % 33.93/34.13 cut (((op (e1) (e4)) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H188]. % 33.93/34.13 congruence. % 33.93/34.13 exact (zenon_H188 zenon_H183). % 33.93/34.13 apply zenon_H185. apply refl_equal. % 33.93/34.13 apply zenon_H185. apply refl_equal. % 33.93/34.13 apply (zenon_L174_); trivial. % 33.93/34.13 apply zenon_H185. apply refl_equal. % 33.93/34.13 apply zenon_H185. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L268_ *) % 33.93/34.13 assert (zenon_L269_ : ((e3) = (op (e2) (e4))) -> ((op (e2) (e4)) = (e0)) -> (~((e0) = (e3))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H22 zenon_H189 zenon_H18a. % 33.93/34.13 elim (classic ((e3) = (e3))); [ zenon_intro zenon_H16e | zenon_intro zenon_H1e ]. % 33.93/34.13 cut (((e3) = (e3)) = ((e0) = (e3))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H18a. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H16e. % 33.93/34.13 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.93/34.13 cut (((e3) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H18b]. % 33.93/34.13 congruence. % 33.93/34.13 cut (((e3) = (op (e2) (e4))) = ((e3) = (e0))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H18b. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H22. % 33.93/34.13 cut (((op (e2) (e4)) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H18c]. % 33.93/34.13 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.93/34.13 congruence. % 33.93/34.13 apply zenon_H1e. apply refl_equal. % 33.93/34.13 exact (zenon_H18c zenon_H189). % 33.93/34.13 apply zenon_H1e. apply refl_equal. % 33.93/34.13 apply zenon_H1e. apply refl_equal. % 33.93/34.13 (* end of lemma zenon_L269_ *) % 33.93/34.13 assert (zenon_L270_ : (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((unit) = (e3)) -> ((op (e3) (e4)) = (e0)) -> False). % 33.93/34.13 do 0 intro. intros zenon_H7b zenon_H42 zenon_H2a zenon_H18d. % 33.93/34.13 cut (((op (unit) (e0)) = (e0)) = ((op (e3) (e0)) = (op (e3) (e4)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H7b. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H42. % 33.93/34.13 cut (((e0) = (op (e3) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H18e]. % 33.93/34.13 cut (((op (unit) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H127]. % 33.93/34.13 congruence. % 33.93/34.13 elim (classic ((op (e3) (e0)) = (op (e3) (e0)))); [ zenon_intro zenon_H7f | zenon_intro zenon_H80 ]. % 33.93/34.13 cut (((op (e3) (e0)) = (op (e3) (e0))) = ((op (unit) (e0)) = (op (e3) (e0)))). % 33.93/34.13 intro zenon_D_pnotp. % 33.93/34.13 apply zenon_H127. % 33.93/34.13 rewrite <- zenon_D_pnotp. % 33.93/34.13 exact zenon_H7f. % 33.93/34.13 cut (((op (e3) (e0)) = (op (e3) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H80]. % 33.93/34.13 cut (((op (e3) (e0)) = (op (unit) (e0)))); [idtac | apply NNPP; zenon_intro zenon_H124]. % 33.93/34.13 congruence. % 33.93/34.13 apply (zenon_L176_); trivial. % 33.93/34.13 apply zenon_H80. apply refl_equal. % 33.93/34.13 apply zenon_H80. apply refl_equal. % 33.93/34.13 apply zenon_H18e. apply sym_equal. exact zenon_H18d. % 33.93/34.13 (* end of lemma zenon_L270_ *) % 33.93/34.13 assert (zenon_L271_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> ((op (e3) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H3b zenon_H9b zenon_H18 zenon_H17 zenon_H16 zenon_H32 zenon_H99 zenon_H18d zenon_H42 zenon_H7b zenon_Hd3 zenon_Ha5 zenon_He8. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.93/34.13 apply (zenon_L55_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.93/34.13 apply (zenon_L6_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.93/34.13 apply (zenon_L58_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.93/34.13 apply (zenon_L270_); trivial. % 33.93/34.13 apply (zenon_L127_); trivial. % 33.93/34.13 (* end of lemma zenon_L271_ *) % 33.93/34.13 assert (zenon_L272_ : (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e1) (e3)) = (e2)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e1) = (op (e4) (e2))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (e1)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e0))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H18f zenon_H2c zenon_H2d zenon_H1f zenon_H20 zenon_H49 zenon_Hc zenon_H4a zenon_H163 zenon_H115 zenon_H34 zenon_H11f zenon_H18a zenon_H22 zenon_He8 zenon_Ha5 zenon_Hd3 zenon_H7b zenon_H42 zenon_H99 zenon_H32 zenon_H16 zenon_H17 zenon_H18 zenon_H9b zenon_H3b zenon_H13c. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H18f); [ zenon_intro zenon_H164 | zenon_intro zenon_H190 ]. % 33.93/34.13 apply (zenon_L255_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H190); [ zenon_intro zenon_H183 | zenon_intro zenon_H191 ]. % 33.93/34.13 apply (zenon_L268_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H191); [ zenon_intro zenon_H189 | zenon_intro zenon_H192 ]. % 33.93/34.13 apply (zenon_L269_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H192); [ zenon_intro zenon_H18d | zenon_intro zenon_H140 ]. % 33.93/34.13 apply (zenon_L271_); trivial. % 33.93/34.13 exact (zenon_H13c zenon_H140). % 33.93/34.13 (* end of lemma zenon_L272_ *) % 33.93/34.13 assert (zenon_L273_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e1) (e1)) = (e0)) -> ((op (e0) (e1)) = (e3)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (e4)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e1) (e3)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.93/34.13 do 0 intro. intros zenon_Hd9 zenon_H15d zenon_H17d zenon_H51 zenon_H13c zenon_H9b zenon_H18 zenon_H17 zenon_H42 zenon_H7b zenon_He8 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H2d zenon_H2c zenon_H18f zenon_H34 zenon_H16 zenon_H32 zenon_H81 zenon_H172 zenon_H1f zenon_H20 zenon_H22 zenon_H49 zenon_Hc zenon_H4a zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.93/34.13 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.93/34.13 apply (zenon_L267_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.93/34.13 apply (zenon_L272_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.93/34.13 apply (zenon_L244_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.93/34.13 apply (zenon_L81_); trivial. % 33.93/34.13 exact (zenon_Hda zenon_Hde). % 33.93/34.13 (* end of lemma zenon_L273_ *) % 33.93/34.13 assert (zenon_L274_ : (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e1)) = (e3)) -> ((op (e1) (e1)) = (e0)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> False). % 33.93/34.13 do 0 intro. intros zenon_H175 zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_Hc8 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H81 zenon_H32 zenon_H16 zenon_H34 zenon_H18f zenon_H2c zenon_H2d zenon_H163 zenon_H115 zenon_H11f zenon_H18a zenon_He8 zenon_H7b zenon_H42 zenon_H17 zenon_H18 zenon_H9b zenon_H13c zenon_H51 zenon_H17d zenon_H15d zenon_Hd9 zenon_H144. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H175); [ zenon_intro zenon_H169 | zenon_intro zenon_H176 ]. % 33.93/34.13 apply (zenon_L240_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H176); [ zenon_intro zenon_H113 | zenon_intro zenon_H177 ]. % 33.93/34.13 apply (zenon_L172_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H177); [ zenon_intro zenon_H16c | zenon_intro zenon_H178 ]. % 33.93/34.13 apply (zenon_L241_); trivial. % 33.93/34.13 apply (zenon_or_s _ _ zenon_H178); [ zenon_intro zenon_H172 | zenon_intro zenon_H142 ]. % 33.93/34.13 apply (zenon_L273_); trivial. % 33.93/34.13 exact (zenon_H144 zenon_H142). % 33.93/34.13 (* end of lemma zenon_L274_ *) % 33.93/34.13 assert (zenon_L275_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e1)) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.97/34.13 do 0 intro. intros zenon_H3b zenon_H169 zenon_H166 zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc zenon_H92. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.13 apply (zenon_L239_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.13 apply (zenon_L6_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.13 apply (zenon_L8_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.13 apply (zenon_L10_); trivial. % 33.97/34.13 apply (zenon_L44_); trivial. % 33.97/34.13 (* end of lemma zenon_L275_ *) % 33.97/34.13 assert (zenon_L276_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (e4)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (e0)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> False). % 33.97/34.13 do 0 intro. intros zenon_H3b zenon_H113 zenon_H2c zenon_H112 zenon_H61 zenon_H8e zenon_H5f zenon_H68 zenon_H60 zenon_H20 zenon_H91 zenon_Hc zenon_H92. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.13 apply (zenon_L169_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.13 apply (zenon_L24_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.13 apply (zenon_L42_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.13 apply (zenon_L26_); trivial. % 33.97/34.13 apply (zenon_L44_); trivial. % 33.97/34.13 (* end of lemma zenon_L276_ *) % 33.97/34.13 assert (zenon_L277_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e3) (e4)) = (e1)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e4) (e2)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.97/34.13 do 0 intro. intros zenon_He0 zenon_H2c zenon_H17 zenon_H2d zenon_H18 zenon_Hb zenon_H172 zenon_H49 zenon_H34 zenon_H16 zenon_H87 zenon_H83 zenon_H5f zenon_H81 zenon_H7b zenon_H89 zenon_H57 zenon_H58 zenon_H6e zenon_H77 zenon_H73 zenon_H61 zenon_H68 zenon_H88 zenon_He1 zenon_H3b zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc9 zenon_H99 zenon_H91 zenon_Hc. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.13 apply (zenon_L12_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.13 apply (zenon_L244_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.13 apply (zenon_L41_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.13 exact (zenon_He1 zenon_He5). % 33.97/34.13 apply (zenon_L73_); trivial. % 33.97/34.13 (* end of lemma zenon_L277_ *) % 33.97/34.13 assert (zenon_L278_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (unit) (e0)) = (e0)) -> ((op (e1) (e1)) = (e0)) -> ((op (e0) (e1)) = (e3)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (e4) (e3)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e3) (e4)) = (e1)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hd9 zenon_H42 zenon_H15d zenon_H17d zenon_H51 zenon_Hc3 zenon_H9b zenon_He8 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_H92 zenon_Ha1 zenon_Hc2 zenon_Hc zenon_H1f zenon_H20 zenon_H22 zenon_H32 zenon_Hc8 zenon_He1 zenon_H88 zenon_H68 zenon_H61 zenon_H73 zenon_H77 zenon_H6e zenon_H89 zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H87 zenon_H16 zenon_H34 zenon_H49 zenon_H172 zenon_Hb zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_He0 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.97/34.13 apply (zenon_L267_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.97/34.13 apply (zenon_L129_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.97/34.13 apply (zenon_L277_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.97/34.13 apply (zenon_L81_); trivial. % 33.97/34.13 exact (zenon_Hda zenon_Hde). % 33.97/34.13 (* end of lemma zenon_L278_ *) % 33.97/34.13 assert (zenon_L279_ : (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e2)) = (e2)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((op (e4) (e3)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e1)) = (e3)) -> ((op (e1) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H175 zenon_H166 zenon_H60 zenon_H8e zenon_H112 zenon_H16d zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_He0 zenon_H2c zenon_H17 zenon_H2d zenon_H18 zenon_Hb zenon_H49 zenon_H34 zenon_H16 zenon_H87 zenon_H83 zenon_H5f zenon_H81 zenon_H7b zenon_H89 zenon_H6e zenon_H77 zenon_H73 zenon_H61 zenon_H68 zenon_H88 zenon_He1 zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc zenon_Hc2 zenon_Ha1 zenon_H92 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_He8 zenon_H9b zenon_Hc3 zenon_H51 zenon_H17d zenon_H15d zenon_H42 zenon_Hd9 zenon_H144. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H175); [ zenon_intro zenon_H169 | zenon_intro zenon_H176 ]. % 33.97/34.13 apply (zenon_L275_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H176); [ zenon_intro zenon_H113 | zenon_intro zenon_H177 ]. % 33.97/34.13 apply (zenon_L276_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H177); [ zenon_intro zenon_H16c | zenon_intro zenon_H178 ]. % 33.97/34.13 apply (zenon_L241_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H178); [ zenon_intro zenon_H172 | zenon_intro zenon_H142 ]. % 33.97/34.13 apply (zenon_L278_); trivial. % 33.97/34.13 exact (zenon_H144 zenon_H142). % 33.97/34.13 (* end of lemma zenon_L279_ *) % 33.97/34.13 assert (zenon_L280_ : (~((op (e4) (e4)) = (e1))) -> ((op (unit) (e0)) = (e0)) -> ((op (e1) (e1)) = (e0)) -> ((op (e0) (e1)) = (e3)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H144 zenon_H42 zenon_H15d zenon_H17d zenon_H51 zenon_He8 zenon_He1 zenon_H88 zenon_H68 zenon_H6e zenon_H49 zenon_Hb zenon_He0 zenon_H16d zenon_H112 zenon_H166 zenon_H175 zenon_H73 zenon_Hbb zenon_H61 zenon_Hc3 zenon_Hd9 zenon_H8e zenon_H9f zenon_H9b zenon_H92 zenon_Hc zenon_H1f zenon_H22 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_Hda zenon_Hb6 zenon_Hb9 zenon_H77 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.97/34.13 apply (zenon_L279_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.97/34.13 apply (zenon_L82_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.97/34.13 apply (zenon_L92_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.97/34.13 exact (zenon_H89 zenon_H8d). % 33.97/34.13 apply (zenon_L40_); trivial. % 33.97/34.13 (* end of lemma zenon_L280_ *) % 33.97/34.13 assert (zenon_L281_ : (~((op (e4) (e4)) = (e0))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e4) (e4)) = (e1))) -> ((op (unit) (e0)) = (e0)) -> ((op (e1) (e1)) = (e0)) -> ((op (e0) (e1)) = (e3)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H13c zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H18f zenon_H116 zenon_H144 zenon_H42 zenon_H15d zenon_H17d zenon_H51 zenon_He8 zenon_He1 zenon_H88 zenon_H68 zenon_H6e zenon_H49 zenon_Hb zenon_He0 zenon_H16d zenon_H112 zenon_H166 zenon_H175 zenon_H73 zenon_Hbb zenon_H61 zenon_Hc3 zenon_Hd9 zenon_H8e zenon_H9f zenon_H9b zenon_Hc zenon_H1f zenon_H22 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_Hda zenon_Hb6 zenon_Hb9 zenon_H77 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.13 apply (zenon_L12_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.13 apply (zenon_L274_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.13 apply (zenon_L41_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.13 exact (zenon_He1 zenon_He5). % 33.97/34.13 apply (zenon_L280_); trivial. % 33.97/34.13 (* end of lemma zenon_L281_ *) % 33.97/34.13 assert (zenon_L282_ : (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> ((op (e2) (e1)) = (e3)) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hb9 zenon_H22 zenon_H193. % 33.97/34.13 cut (((e3) = (op (e2) (e4))) = ((op (e2) (e1)) = (op (e2) (e4)))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_Hb9. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H22. % 33.97/34.13 cut (((op (e2) (e4)) = (op (e2) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H194]. % 33.97/34.13 cut (((e3) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H195]. % 33.97/34.13 congruence. % 33.97/34.13 elim (classic ((op (e2) (e1)) = (op (e2) (e1)))); [ zenon_intro zenon_H70 | zenon_intro zenon_H71 ]. % 33.97/34.13 cut (((op (e2) (e1)) = (op (e2) (e1))) = ((e3) = (op (e2) (e1)))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H195. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H70. % 33.97/34.13 cut (((op (e2) (e1)) = (op (e2) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H71]. % 33.97/34.13 cut (((op (e2) (e1)) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H196]. % 33.97/34.13 congruence. % 33.97/34.13 exact (zenon_H196 zenon_H193). % 33.97/34.13 apply zenon_H71. apply refl_equal. % 33.97/34.13 apply zenon_H71. apply refl_equal. % 33.97/34.13 apply zenon_H194. apply refl_equal. % 33.97/34.13 (* end of lemma zenon_L282_ *) % 33.97/34.13 assert (zenon_L283_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H3b zenon_Ha2 zenon_Hc zenon_Ha1 zenon_H18 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.13 apply (zenon_L52_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.13 apply (zenon_L6_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.13 apply (zenon_L8_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.13 apply (zenon_L10_); trivial. % 33.97/34.13 apply (zenon_L11_); trivial. % 33.97/34.13 (* end of lemma zenon_L283_ *) % 33.97/34.13 assert (zenon_L284_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e1) (e4)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e3) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H3b zenon_Hcc zenon_Hab zenon_Hc zenon_Haa zenon_H99 zenon_H91 zenon_H18d zenon_H42 zenon_H7b zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.13 apply (zenon_L74_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.13 apply (zenon_L56_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.13 apply (zenon_L76_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.13 apply (zenon_L270_); trivial. % 33.97/34.13 apply (zenon_L80_); trivial. % 33.97/34.13 (* end of lemma zenon_L284_ *) % 33.97/34.13 assert (zenon_L285_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e1) (e3)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e3) (e4)) = (e0)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e1) (e4)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hd9 zenon_H72 zenon_H73 zenon_H5f zenon_H9f zenon_H61 zenon_He8 zenon_H18 zenon_H9b zenon_H144 zenon_Hc8 zenon_H4a zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H81 zenon_H32 zenon_H16 zenon_H34 zenon_H16d zenon_H112 zenon_H115 zenon_H2c zenon_H116 zenon_H166 zenon_H2d zenon_H17 zenon_H175 zenon_Hd4 zenon_Hd3 zenon_H7b zenon_H42 zenon_H18d zenon_H91 zenon_H99 zenon_Haa zenon_Hc zenon_Hab zenon_Hcc zenon_H3b zenon_Hda. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.97/34.13 apply (zenon_L51_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.97/34.13 apply (zenon_L271_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.97/34.13 apply (zenon_L245_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.97/34.13 apply (zenon_L284_); trivial. % 33.97/34.13 exact (zenon_Hda zenon_Hde). % 33.97/34.13 (* end of lemma zenon_L285_ *) % 33.97/34.13 assert (zenon_L286_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e3) (e4)) = (e0)) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e3) (e4)) = (e2)) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hd9 zenon_H34 zenon_H20 zenon_H73 zenon_H61 zenon_He8 zenon_H7b zenon_H42 zenon_H18d zenon_H16 zenon_H17 zenon_H18 zenon_H9b zenon_He9 zenon_H83 zenon_Hc zenon_Hbf zenon_H5f zenon_H72 zenon_H9f zenon_H32 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.97/34.13 apply (zenon_L51_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.97/34.13 apply (zenon_L271_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.97/34.13 apply (zenon_L197_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.97/34.13 apply (zenon_L81_); trivial. % 33.97/34.13 exact (zenon_Hda zenon_Hde). % 33.97/34.13 (* end of lemma zenon_L286_ *) % 33.97/34.13 assert (zenon_L287_ : (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e1) (e3)) = (e2)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e4)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (unit) (e3)) = (e3)) -> ((e1) = (op (e4) (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e0))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H18f zenon_H2c zenon_H2d zenon_H1f zenon_H49 zenon_H4a zenon_H163 zenon_H115 zenon_H11f zenon_H18a zenon_H22 zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_Hc8 zenon_H32 zenon_H9f zenon_H72 zenon_H5f zenon_Hbf zenon_Hc zenon_H83 zenon_He9 zenon_H9b zenon_H18 zenon_H17 zenon_H16 zenon_H42 zenon_H7b zenon_He8 zenon_H61 zenon_H73 zenon_H20 zenon_H34 zenon_Hd9 zenon_H13c. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H18f); [ zenon_intro zenon_H164 | zenon_intro zenon_H190 ]. % 33.97/34.13 apply (zenon_L255_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H190); [ zenon_intro zenon_H183 | zenon_intro zenon_H191 ]. % 33.97/34.13 apply (zenon_L268_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H191); [ zenon_intro zenon_H189 | zenon_intro zenon_H192 ]. % 33.97/34.13 apply (zenon_L269_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H192); [ zenon_intro zenon_H18d | zenon_intro zenon_H140 ]. % 33.97/34.13 apply (zenon_L286_); trivial. % 33.97/34.13 exact (zenon_H13c zenon_H140). % 33.97/34.13 (* end of lemma zenon_L287_ *) % 33.97/34.13 assert (zenon_L288_ : (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (e3) (e4)) = (e0)) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e4)) = (e0))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> ((e3) = (op (e2) (e4))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (e1) (e3)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e4)) = (e2))) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hc2 zenon_Ha1 zenon_Haa zenon_H18d zenon_H175 zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H81 zenon_H144 zenon_Hb9 zenon_Hb6 zenon_H13c zenon_Hd9 zenon_H34 zenon_H20 zenon_H73 zenon_H61 zenon_He8 zenon_H7b zenon_H42 zenon_H16 zenon_H17 zenon_H18 zenon_H9b zenon_He9 zenon_H83 zenon_Hc zenon_H5f zenon_H72 zenon_H9f zenon_H32 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda zenon_H22 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H4a zenon_H49 zenon_H1f zenon_H2d zenon_H2c zenon_H18f zenon_Hc3. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hc2); [ zenon_intro zenon_Ha2 | zenon_intro zenon_Hc4 ]. % 33.97/34.13 apply (zenon_L283_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hc4); [ zenon_intro zenon_Hab | zenon_intro zenon_Hc5 ]. % 33.97/34.13 apply (zenon_L285_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hc5); [ zenon_intro zenon_Hb7 | zenon_intro zenon_Hc6 ]. % 33.97/34.13 apply (zenon_L126_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hc6); [ zenon_intro zenon_Hbf | zenon_intro zenon_Hc7 ]. % 33.97/34.13 apply (zenon_L287_); trivial. % 33.97/34.13 exact (zenon_Hc3 zenon_Hc7). % 33.97/34.13 (* end of lemma zenon_L288_ *) % 33.97/34.13 assert (zenon_L289_ : (~((op (e4) (e4)) = (e2))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e1) (e3)) = (e2)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (unit) (e3)) = (e3)) -> ((e1) = (op (e4) (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e4)) = (e0))) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hc3 zenon_H18f zenon_H2c zenon_H2d zenon_H1f zenon_H49 zenon_H4a zenon_H163 zenon_H115 zenon_H11f zenon_H18a zenon_H22 zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_Hc8 zenon_H32 zenon_H9f zenon_H72 zenon_H5f zenon_Hc zenon_H83 zenon_He9 zenon_H9b zenon_H18 zenon_H17 zenon_H16 zenon_H42 zenon_H7b zenon_He8 zenon_H61 zenon_H73 zenon_H20 zenon_H34 zenon_Hd9 zenon_Hb6 zenon_Hb9 zenon_H144 zenon_H81 zenon_H16d zenon_H112 zenon_H116 zenon_H166 zenon_H175 zenon_Haa zenon_Ha1 zenon_Hc2 zenon_H13c. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H18f); [ zenon_intro zenon_H164 | zenon_intro zenon_H190 ]. % 33.97/34.13 apply (zenon_L255_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H190); [ zenon_intro zenon_H183 | zenon_intro zenon_H191 ]. % 33.97/34.13 apply (zenon_L268_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H191); [ zenon_intro zenon_H189 | zenon_intro zenon_H192 ]. % 33.97/34.13 apply (zenon_L269_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H192); [ zenon_intro zenon_H18d | zenon_intro zenon_H140 ]. % 33.97/34.13 apply (zenon_L288_); trivial. % 33.97/34.13 exact (zenon_H13c zenon_H140). % 33.97/34.13 (* end of lemma zenon_L289_ *) % 33.97/34.13 assert (zenon_L290_ : ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e4)) = (e1))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hea zenon_He6 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_Ha1 zenon_Hd9 zenon_Hcc zenon_Haa zenon_H91 zenon_Hd4 zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H81 zenon_Hc8 zenon_H144 zenon_H175 zenon_H7b zenon_He8 zenon_Hd3 zenon_H61 zenon_H5f zenon_H72 zenon_H9b zenon_H99 zenon_H9f zenon_H73 zenon_Hb9 zenon_H58 zenon_Hb6 zenon_H18f zenon_H13c zenon_He9 zenon_H83 zenon_Hba zenon_H57 zenon_Hb1 zenon_Hc3 zenon_Hc2 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H42 zenon_H49 zenon_H88 zenon_H87 zenon_H89 zenon_H77 zenon_H6e zenon_H68 zenon_He1 zenon_Hbb zenon_He0. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.13 apply (zenon_L12_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.13 apply (zenon_L289_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.13 apply (zenon_L41_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.13 exact (zenon_He1 zenon_He5). % 33.97/34.13 apply (zenon_L82_); trivial. % 33.97/34.13 apply (zenon_L99_); trivial. % 33.97/34.13 (* end of lemma zenon_L290_ *) % 33.97/34.13 assert (zenon_L291_ : (~((op (e1) (op (e1) (e0))) = (e0))) -> ((op (e1) (e1)) = (e0)) -> ((op (e1) (e0)) = (e1)) -> False). % 33.97/34.13 do 0 intro. intros zenon_H197 zenon_H15d zenon_H17. % 33.97/34.13 cut (((op (e1) (e1)) = (e0)) = ((op (e1) (op (e1) (e0))) = (e0))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H197. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H15d. % 33.97/34.13 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.97/34.13 cut (((op (e1) (e1)) = (op (e1) (op (e1) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H198]. % 33.97/34.13 congruence. % 33.97/34.13 elim (classic ((op (e1) (op (e1) (e0))) = (op (e1) (op (e1) (e0))))); [ zenon_intro zenon_H199 | zenon_intro zenon_H19a ]. % 33.97/34.13 cut (((op (e1) (op (e1) (e0))) = (op (e1) (op (e1) (e0)))) = ((op (e1) (e1)) = (op (e1) (op (e1) (e0))))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H198. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H199. % 33.97/34.13 cut (((op (e1) (op (e1) (e0))) = (op (e1) (op (e1) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H19a]. % 33.97/34.13 cut (((op (e1) (op (e1) (e0))) = (op (e1) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H19b]. % 33.97/34.13 congruence. % 33.97/34.13 cut (((op (e1) (e0)) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H19c]. % 33.97/34.13 cut (((e1) = (e1))); [idtac | apply NNPP; zenon_intro zenon_H12]. % 33.97/34.13 congruence. % 33.97/34.13 apply zenon_H12. apply refl_equal. % 33.97/34.13 exact (zenon_H19c zenon_H17). % 33.97/34.13 apply zenon_H19a. apply refl_equal. % 33.97/34.13 apply zenon_H19a. apply refl_equal. % 33.97/34.13 apply zenon_H3f. apply refl_equal. % 33.97/34.13 (* end of lemma zenon_L291_ *) % 33.97/34.13 assert (zenon_L292_ : (~((op (e2) (op (e2) (e0))) = (e0))) -> ((op (e2) (e2)) = (e0)) -> ((op (e2) (e0)) = (e2)) -> False). % 33.97/34.13 do 0 intro. intros zenon_H19d zenon_H132 zenon_Hba. % 33.97/34.13 cut (((op (e2) (e2)) = (e0)) = ((op (e2) (op (e2) (e0))) = (e0))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H19d. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H132. % 33.97/34.13 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.97/34.13 cut (((op (e2) (e2)) = (op (e2) (op (e2) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H19e]. % 33.97/34.13 congruence. % 33.97/34.13 elim (classic ((op (e2) (op (e2) (e0))) = (op (e2) (op (e2) (e0))))); [ zenon_intro zenon_H19f | zenon_intro zenon_H1a0 ]. % 33.97/34.13 cut (((op (e2) (op (e2) (e0))) = (op (e2) (op (e2) (e0)))) = ((op (e2) (e2)) = (op (e2) (op (e2) (e0))))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H19e. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H19f. % 33.97/34.13 cut (((op (e2) (op (e2) (e0))) = (op (e2) (op (e2) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H1a0]. % 33.97/34.13 cut (((op (e2) (op (e2) (e0))) = (op (e2) (e2)))); [idtac | apply NNPP; zenon_intro zenon_H1a1]. % 33.97/34.13 congruence. % 33.97/34.13 cut (((op (e2) (e0)) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H1a2]. % 33.97/34.13 cut (((e2) = (e2))); [idtac | apply NNPP; zenon_intro zenon_H7]. % 33.97/34.13 congruence. % 33.97/34.13 apply zenon_H7. apply refl_equal. % 33.97/34.13 exact (zenon_H1a2 zenon_Hba). % 33.97/34.13 apply zenon_H1a0. apply refl_equal. % 33.97/34.13 apply zenon_H1a0. apply refl_equal. % 33.97/34.13 apply zenon_H3f. apply refl_equal. % 33.97/34.13 (* end of lemma zenon_L292_ *) % 33.97/34.13 assert (zenon_L293_ : (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (op (e2) (e0))) = (e0))) -> (~((op (e2) (e2)) = (e1))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e4))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H1a3 zenon_Hba zenon_H19d zenon_H1a4 zenon_Hf7 zenon_H1a5 zenon_H1a6. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1a3); [ zenon_intro zenon_H132 | zenon_intro zenon_H1a7 ]. % 33.97/34.13 apply (zenon_L292_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1a7); [ zenon_intro zenon_H1a9 | zenon_intro zenon_H1a8 ]. % 33.97/34.13 exact (zenon_H1a4 zenon_H1a9). % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1a8); [ zenon_intro zenon_Hfb | zenon_intro zenon_H1aa ]. % 33.97/34.13 exact (zenon_Hf7 zenon_Hfb). % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1aa); [ zenon_intro zenon_H1ac | zenon_intro zenon_H1ab ]. % 33.97/34.13 exact (zenon_H1a5 zenon_H1ac). % 33.97/34.13 exact (zenon_H1a6 zenon_H1ab). % 33.97/34.13 (* end of lemma zenon_L293_ *) % 33.97/34.13 assert (zenon_L294_ : ((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e2)) = (e1))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e4))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H1ad zenon_Hba zenon_H1a4 zenon_Hf7 zenon_H1a5 zenon_H1a6 zenon_H1a3. % 33.97/34.13 apply (zenon_and_s _ _ zenon_H1ad). zenon_intro zenon_H19d. zenon_intro zenon_H1ae. % 33.97/34.13 apply (zenon_L293_); trivial. % 33.97/34.13 (* end of lemma zenon_L294_ *) % 33.97/34.13 assert (zenon_L295_ : (~((op (e3) (op (e3) (e0))) = (e0))) -> ((op (e3) (e3)) = (e0)) -> ((op (e3) (e0)) = (e3)) -> False). % 33.97/34.13 do 0 intro. intros zenon_H1af zenon_H1b0 zenon_H60. % 33.97/34.13 cut (((op (e3) (e3)) = (e0)) = ((op (e3) (op (e3) (e0))) = (e0))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H1af. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H1b0. % 33.97/34.13 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.97/34.13 cut (((op (e3) (e3)) = (op (e3) (op (e3) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H1b1]. % 33.97/34.13 congruence. % 33.97/34.13 elim (classic ((op (e3) (op (e3) (e0))) = (op (e3) (op (e3) (e0))))); [ zenon_intro zenon_H1b2 | zenon_intro zenon_H1b3 ]. % 33.97/34.13 cut (((op (e3) (op (e3) (e0))) = (op (e3) (op (e3) (e0)))) = ((op (e3) (e3)) = (op (e3) (op (e3) (e0))))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H1b1. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H1b2. % 33.97/34.13 cut (((op (e3) (op (e3) (e0))) = (op (e3) (op (e3) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H1b3]. % 33.97/34.13 cut (((op (e3) (op (e3) (e0))) = (op (e3) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H1b4]. % 33.97/34.13 congruence. % 33.97/34.13 cut (((op (e3) (e0)) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1b5]. % 33.97/34.13 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.97/34.13 congruence. % 33.97/34.13 apply zenon_H1e. apply refl_equal. % 33.97/34.13 exact (zenon_H1b5 zenon_H60). % 33.97/34.13 apply zenon_H1b3. apply refl_equal. % 33.97/34.13 apply zenon_H1b3. apply refl_equal. % 33.97/34.13 apply zenon_H3f. apply refl_equal. % 33.97/34.13 (* end of lemma zenon_L295_ *) % 33.97/34.13 assert (zenon_L296_ : ((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e3)) = (e1))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e4))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H1b6 zenon_H60 zenon_H1b7 zenon_He1 zenon_H89 zenon_H1b8 zenon_H1b9. % 33.97/34.13 apply (zenon_and_s _ _ zenon_H1b6). zenon_intro zenon_H1af. zenon_intro zenon_H1ba. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1b9); [ zenon_intro zenon_H1b0 | zenon_intro zenon_H1bb ]. % 33.97/34.13 apply (zenon_L295_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1bb); [ zenon_intro zenon_H1bd | zenon_intro zenon_H1bc ]. % 33.97/34.13 exact (zenon_H1b7 zenon_H1bd). % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1bc); [ zenon_intro zenon_He5 | zenon_intro zenon_H1be ]. % 33.97/34.13 exact (zenon_He1 zenon_He5). % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1be); [ zenon_intro zenon_H8d | zenon_intro zenon_H1bf ]. % 33.97/34.13 exact (zenon_H89 zenon_H8d). % 33.97/34.13 exact (zenon_H1b8 zenon_H1bf). % 33.97/34.13 (* end of lemma zenon_L296_ *) % 33.97/34.13 assert (zenon_L297_ : (~((op (e4) (op (e4) (e0))) = (e0))) -> ((op (e4) (e4)) = (e0)) -> ((op (e4) (e0)) = (e4)) -> False). % 33.97/34.13 do 0 intro. intros zenon_H1c0 zenon_H140 zenon_H9a. % 33.97/34.13 cut (((op (e4) (e4)) = (e0)) = ((op (e4) (op (e4) (e0))) = (e0))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H1c0. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H140. % 33.97/34.13 cut (((e0) = (e0))); [idtac | apply NNPP; zenon_intro zenon_H3f]. % 33.97/34.13 cut (((op (e4) (e4)) = (op (e4) (op (e4) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H1c1]. % 33.97/34.13 congruence. % 33.97/34.13 elim (classic ((op (e4) (op (e4) (e0))) = (op (e4) (op (e4) (e0))))); [ zenon_intro zenon_H1c2 | zenon_intro zenon_H1c3 ]. % 33.97/34.13 cut (((op (e4) (op (e4) (e0))) = (op (e4) (op (e4) (e0)))) = ((op (e4) (e4)) = (op (e4) (op (e4) (e0))))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H1c1. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H1c2. % 33.97/34.13 cut (((op (e4) (op (e4) (e0))) = (op (e4) (op (e4) (e0))))); [idtac | apply NNPP; zenon_intro zenon_H1c3]. % 33.97/34.13 cut (((op (e4) (op (e4) (e0))) = (op (e4) (e4)))); [idtac | apply NNPP; zenon_intro zenon_H1c4]. % 33.97/34.13 congruence. % 33.97/34.13 cut (((op (e4) (e0)) = (e4))); [idtac | apply NNPP; zenon_intro zenon_H1c5]. % 33.97/34.13 cut (((e4) = (e4))); [idtac | apply NNPP; zenon_intro zenon_H97]. % 33.97/34.13 congruence. % 33.97/34.13 apply zenon_H97. apply refl_equal. % 33.97/34.13 exact (zenon_H1c5 zenon_H9a). % 33.97/34.13 apply zenon_H1c3. apply refl_equal. % 33.97/34.13 apply zenon_H1c3. apply refl_equal. % 33.97/34.13 apply zenon_H3f. apply refl_equal. % 33.97/34.13 (* end of lemma zenon_L297_ *) % 33.97/34.13 assert (zenon_L298_ : (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (op (e4) (e0))) = (e0))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e4)) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H13e zenon_H9a zenon_H1c0 zenon_H144 zenon_Hc3 zenon_H13d zenon_Hda. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H13e); [ zenon_intro zenon_H140 | zenon_intro zenon_H13f ]. % 33.97/34.13 apply (zenon_L297_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H13f); [ zenon_intro zenon_H142 | zenon_intro zenon_H141 ]. % 33.97/34.13 exact (zenon_H144 zenon_H142). % 33.97/34.13 apply (zenon_or_s _ _ zenon_H141); [ zenon_intro zenon_Hc7 | zenon_intro zenon_H145 ]. % 33.97/34.13 exact (zenon_Hc3 zenon_Hc7). % 33.97/34.13 apply (zenon_or_s _ _ zenon_H145); [ zenon_intro zenon_H146 | zenon_intro zenon_Hde ]. % 33.97/34.13 exact (zenon_H13d zenon_H146). % 33.97/34.13 exact (zenon_Hda zenon_Hde). % 33.97/34.13 (* end of lemma zenon_L298_ *) % 33.97/34.13 assert (zenon_L299_ : ((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e4)) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H1c6 zenon_H9a zenon_H144 zenon_Hc3 zenon_H13d zenon_Hda zenon_H13e. % 33.97/34.13 apply (zenon_and_s _ _ zenon_H1c6). zenon_intro zenon_H1c0. zenon_intro zenon_H1c7. % 33.97/34.13 apply (zenon_L298_); trivial. % 33.97/34.13 (* end of lemma zenon_L299_ *) % 33.97/34.13 assert (zenon_L300_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e0)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e3)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H3b zenon_H9b zenon_Hc8 zenon_Hcc zenon_H9a zenon_H99 zenon_Hd3 zenon_Hcd zenon_Hd4. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.13 apply (zenon_L74_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.13 apply (zenon_L49_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.13 apply (zenon_L84_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.13 apply (zenon_L103_); trivial. % 33.97/34.13 apply (zenon_L80_); trivial. % 33.97/34.13 (* end of lemma zenon_L300_ *) % 33.97/34.13 assert (zenon_L301_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e2)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H3b zenon_H32 zenon_Hc8 zenon_H9a zenon_H91 zenon_H99 zenon_Hd3 zenon_Hc9 zenon_He9. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.13 apply (zenon_L70_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.13 apply (zenon_L71_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.13 apply (zenon_L84_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.13 apply (zenon_L72_); trivial. % 33.97/34.13 apply (zenon_L108_); trivial. % 33.97/34.13 (* end of lemma zenon_L301_ *) % 33.97/34.13 assert (zenon_L302_ : ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e0) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e2)) = (e1))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e4))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e3)) = (e1))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e4))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> ((op (e4) (e0)) = (e4)) -> (~((op (e4) (e4)) = (e1))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> False). % 33.97/34.13 do 0 intro. intros zenon_Hef zenon_H91 zenon_Hea zenon_He6 zenon_H99 zenon_He8 zenon_He9 zenon_Hd4 zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H51 zenon_H22 zenon_H20 zenon_H1f zenon_H179 zenon_H50 zenon_H42 zenon_H41 zenon_H17 zenon_H14b zenon_H11f zenon_H150 zenon_H155 zenon_H159 zenon_Hba zenon_H1a4 zenon_Hf7 zenon_H1a5 zenon_H1a6 zenon_H1a3 zenon_H60 zenon_H1b7 zenon_He1 zenon_H89 zenon_H1b8 zenon_H1b9 zenon_H9a zenon_H144 zenon_H13e zenon_H1c8 zenon_Hd3 zenon_Hc8 zenon_H9b zenon_Hcc zenon_H147. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H147); [ zenon_intro zenon_H13d | zenon_intro zenon_Hcd ]. % 33.97/34.13 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1c8); [ zenon_intro zenon_H1ca | zenon_intro zenon_H1c9 ]. % 33.97/34.13 apply (zenon_and_s _ _ zenon_H1ca). zenon_intro zenon_H1cc. zenon_intro zenon_H1cb. % 33.97/34.13 exact (zenon_H1cc zenon_H1cb). % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1c9); [ zenon_intro zenon_H1ce | zenon_intro zenon_H1cd ]. % 33.97/34.13 apply (zenon_and_s _ _ zenon_H1ce). zenon_intro zenon_H197. zenon_intro zenon_H1cf. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H159); [ zenon_intro zenon_H43 | zenon_intro zenon_H15b ]. % 33.97/34.13 apply (zenon_L262_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H15b); [ zenon_intro zenon_H15d | zenon_intro zenon_H15c ]. % 33.97/34.13 apply (zenon_L291_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H15c); [ zenon_intro zenon_H14a | zenon_intro zenon_H15e ]. % 33.97/34.13 apply (zenon_L217_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H15e); [ zenon_intro zenon_H14f | zenon_intro zenon_H154 ]. % 33.97/34.13 apply (zenon_L218_); trivial. % 33.97/34.13 apply (zenon_L219_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1cd); [ zenon_intro zenon_H1ad | zenon_intro zenon_H1d0 ]. % 33.97/34.13 apply (zenon_L294_); trivial. % 33.97/34.13 apply (zenon_or_s _ _ zenon_H1d0); [ zenon_intro zenon_H1b6 | zenon_intro zenon_H1c6 ]. % 33.97/34.13 apply (zenon_L296_); trivial. % 33.97/34.13 apply (zenon_L299_); trivial. % 33.97/34.13 apply (zenon_L99_); trivial. % 33.97/34.13 apply (zenon_L300_); trivial. % 33.97/34.13 apply (zenon_L301_); trivial. % 33.97/34.13 (* end of lemma zenon_L302_ *) % 33.97/34.13 assert (zenon_L303_ : (~((op (e4) (e3)) = (op (unit) (e3)))) -> ((unit) = (e4)) -> False). % 33.97/34.13 do 0 intro. intros zenon_H1d1 zenon_H33. % 33.97/34.13 cut (((e3) = (e3))); [idtac | apply NNPP; zenon_intro zenon_H1e]. % 33.97/34.13 cut (((e4) = (unit))); [idtac | apply NNPP; zenon_intro zenon_H3a]. % 33.97/34.13 congruence. % 33.97/34.13 apply zenon_H3a. apply sym_equal. exact zenon_H33. % 33.97/34.13 apply zenon_H1e. apply refl_equal. % 33.97/34.13 (* end of lemma zenon_L303_ *) % 33.97/34.13 assert (zenon_L304_ : ((op (unit) (e3)) = (e3)) -> ((unit) = (e4)) -> ((op (e4) (e1)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> False). % 33.97/34.13 do 0 intro. intros zenon_H20 zenon_H33 zenon_H1d2 zenon_Hb1. % 33.97/34.13 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.97/34.13 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (e4) (e1)) = (op (e4) (e3)))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_Hb1. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_Hb2. % 33.97/34.13 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.97/34.13 cut (((op (e4) (e3)) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_Hb4]. % 33.97/34.13 congruence. % 33.97/34.13 cut (((op (unit) (e3)) = (e3)) = ((op (e4) (e3)) = (op (e4) (e1)))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_Hb4. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_H20. % 33.97/34.13 cut (((e3) = (op (e4) (e1)))); [idtac | apply NNPP; zenon_intro zenon_H1d3]. % 33.97/34.13 cut (((op (unit) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H1d4]. % 33.97/34.13 congruence. % 33.97/34.13 elim (classic ((op (e4) (e3)) = (op (e4) (e3)))); [ zenon_intro zenon_Hb2 | zenon_intro zenon_Hb3 ]. % 33.97/34.13 cut (((op (e4) (e3)) = (op (e4) (e3))) = ((op (unit) (e3)) = (op (e4) (e3)))). % 33.97/34.13 intro zenon_D_pnotp. % 33.97/34.13 apply zenon_H1d4. % 33.97/34.13 rewrite <- zenon_D_pnotp. % 33.97/34.13 exact zenon_Hb2. % 33.97/34.13 cut (((op (e4) (e3)) = (op (e4) (e3)))); [idtac | apply NNPP; zenon_intro zenon_Hb3]. % 33.97/34.13 cut (((op (e4) (e3)) = (op (unit) (e3)))); [idtac | apply NNPP; zenon_intro zenon_H1d1]. % 33.97/34.13 congruence. % 33.97/34.13 apply (zenon_L303_); trivial. % 33.97/34.13 apply zenon_Hb3. apply refl_equal. % 33.97/34.13 apply zenon_Hb3. apply refl_equal. % 33.97/34.13 apply zenon_H1d3. apply sym_equal. exact zenon_H1d2. % 33.97/34.13 apply zenon_Hb3. apply refl_equal. % 33.97/34.13 apply zenon_Hb3. apply refl_equal. % 33.97/34.13 (* end of lemma zenon_L304_ *) % 33.97/34.13 assert (zenon_L305_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (e3)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e3) (e4)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((op (e4) (e1)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H3b zenon_Hcc zenon_Hcd zenon_H99 zenon_H91 zenon_H172 zenon_H16 zenon_H81 zenon_H20 zenon_H1d2 zenon_Hb1. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.14 apply (zenon_L74_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.14 apply (zenon_L75_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.14 apply (zenon_L76_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.14 apply (zenon_L243_); trivial. % 33.97/34.14 apply (zenon_L304_); trivial. % 33.97/34.14 (* end of lemma zenon_L305_ *) % 33.97/34.14 assert (zenon_L306_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (~((op (e3) (e3)) = (e4))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e1))) -> ((op (e3) (e0)) = (e3)) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (~((op (e2) (e2)) = (e4))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e1))) -> ((op (e2) (e0)) = (e2)) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e3) (e4)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.14 do 0 intro. intros zenon_Hd9 zenon_H147 zenon_H1c8 zenon_H13e zenon_H1b9 zenon_H1b8 zenon_H89 zenon_He1 zenon_H1b7 zenon_H60 zenon_H1a3 zenon_H1a6 zenon_H1a5 zenon_Hf7 zenon_H1a4 zenon_Hba zenon_H159 zenon_H155 zenon_H150 zenon_H14b zenon_H41 zenon_H50 zenon_H179 zenon_H51 zenon_Hd4 zenon_He9 zenon_He6 zenon_Hea zenon_Hef zenon_H13c zenon_H9b zenon_H18 zenon_H42 zenon_H7b zenon_Hd3 zenon_He8 zenon_H18a zenon_H11f zenon_H163 zenon_H18f zenon_H144 zenon_Hc8 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H1f zenon_H32 zenon_H34 zenon_H16d zenon_H112 zenon_H115 zenon_H2c zenon_H116 zenon_H166 zenon_H2d zenon_H17 zenon_H175 zenon_Hb1 zenon_H1d2 zenon_H20 zenon_H81 zenon_H16 zenon_H172 zenon_H91 zenon_H99 zenon_Hcc zenon_H3b zenon_Hda. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.97/34.14 apply (zenon_L302_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.97/34.14 apply (zenon_L272_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.97/34.14 apply (zenon_L245_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.97/34.14 apply (zenon_L305_); trivial. % 33.97/34.14 exact (zenon_Hda zenon_Hde). % 33.97/34.14 (* end of lemma zenon_L306_ *) % 33.97/34.14 assert (zenon_L307_ : ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((op (e4) (e1)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e1) (e3)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e0))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e2)) = (e1))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e4))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e3)) = (e1))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e4))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H58 zenon_H57 zenon_Hbb zenon_Hda zenon_H3b zenon_Hcc zenon_H99 zenon_H91 zenon_H16 zenon_H81 zenon_H20 zenon_H1d2 zenon_Hb1 zenon_H175 zenon_H17 zenon_H2d zenon_H166 zenon_H116 zenon_H2c zenon_H115 zenon_H112 zenon_H16d zenon_H34 zenon_H32 zenon_H1f zenon_H22 zenon_H49 zenon_Hc zenon_H4a zenon_Hc8 zenon_H18f zenon_H163 zenon_H11f zenon_H18a zenon_He8 zenon_Hd3 zenon_H7b zenon_H42 zenon_H18 zenon_H9b zenon_H13c zenon_Hef zenon_Hea zenon_He6 zenon_He9 zenon_Hd4 zenon_H51 zenon_H179 zenon_H50 zenon_H41 zenon_H14b zenon_H150 zenon_H155 zenon_H159 zenon_Hba zenon_H1a4 zenon_Hf7 zenon_H1a5 zenon_H1a6 zenon_H1a3 zenon_H60 zenon_H1b7 zenon_He1 zenon_H89 zenon_H1b8 zenon_H1b9 zenon_H13e zenon_H1c8 zenon_H147 zenon_Hd9 zenon_H144. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H175); [ zenon_intro zenon_H169 | zenon_intro zenon_H176 ]. % 33.97/34.14 apply (zenon_L240_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H176); [ zenon_intro zenon_H113 | zenon_intro zenon_H177 ]. % 33.97/34.14 apply (zenon_L183_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H177); [ zenon_intro zenon_H16c | zenon_intro zenon_H178 ]. % 33.97/34.14 apply (zenon_L241_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H178); [ zenon_intro zenon_H172 | zenon_intro zenon_H142 ]. % 33.97/34.14 apply (zenon_L306_); trivial. % 33.97/34.14 exact (zenon_H144 zenon_H142). % 33.97/34.14 (* end of lemma zenon_L307_ *) % 33.97/34.14 assert (zenon_L308_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> ((op (e4) (e1)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H3b zenon_H8e zenon_H5f zenon_H9f zenon_H22 zenon_H1f zenon_H77 zenon_H76 zenon_H20 zenon_H1d2 zenon_Hb1. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.14 apply (zenon_L83_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.14 apply (zenon_L89_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.14 apply (zenon_L8_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.14 apply (zenon_L32_); trivial. % 33.97/34.14 apply (zenon_L304_); trivial. % 33.97/34.14 (* end of lemma zenon_L308_ *) % 33.97/34.14 assert (zenon_L309_ : (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (~((op (e3) (e3)) = (e4))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e1))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (~((op (e2) (e2)) = (e4))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e1))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e4) (e4)) = (e0))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (e1) (e3)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H88 zenon_H147 zenon_H1c8 zenon_H13e zenon_H1b9 zenon_H1b8 zenon_He1 zenon_H1b7 zenon_H1a3 zenon_H1a6 zenon_H1a5 zenon_Hf7 zenon_H1a4 zenon_H159 zenon_H155 zenon_H150 zenon_H14b zenon_H41 zenon_H50 zenon_H179 zenon_H51 zenon_He6 zenon_Hea zenon_Hef zenon_Hbb zenon_H13c zenon_Hc2 zenon_Ha1 zenon_Haa zenon_H175 zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H144 zenon_Hb9 zenon_Hb6 zenon_Hd9 zenon_H73 zenon_H61 zenon_He8 zenon_H42 zenon_H17 zenon_H18 zenon_H9b zenon_He9 zenon_Hc zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hcc zenon_Hda zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H4a zenon_H49 zenon_H2d zenon_H2c zenon_H18f zenon_Hc3 zenon_Hb1 zenon_H1d2 zenon_H77 zenon_H1f zenon_H22 zenon_H9f zenon_H8e zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.97/34.14 apply (zenon_L307_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.97/34.14 apply (zenon_L289_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.97/34.14 apply (zenon_L308_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.97/34.14 exact (zenon_H89 zenon_H8d). % 33.97/34.14 apply (zenon_L40_); trivial. % 33.97/34.14 (* end of lemma zenon_L309_ *) % 33.97/34.14 assert (zenon_L310_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (~((op (e3) (e3)) = (e4))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e1))) -> ((op (e3) (e0)) = (e3)) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (~((op (e2) (e2)) = (e4))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e1))) -> ((op (e2) (e0)) = (e2)) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e3) (e4)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.14 do 0 intro. intros zenon_Hd9 zenon_H147 zenon_H1c8 zenon_H13e zenon_H144 zenon_H1b9 zenon_H1b8 zenon_H89 zenon_He1 zenon_H1b7 zenon_H60 zenon_H1a3 zenon_H1a6 zenon_H1a5 zenon_Hf7 zenon_H1a4 zenon_Hba zenon_H159 zenon_H155 zenon_H150 zenon_H11f zenon_H14b zenon_H41 zenon_H42 zenon_H50 zenon_H179 zenon_H51 zenon_Hd4 zenon_He9 zenon_He6 zenon_Hea zenon_Hef zenon_Hc3 zenon_H9b zenon_H18 zenon_H17 zenon_H83 zenon_Hd3 zenon_He8 zenon_Hb6 zenon_Hb9 zenon_H58 zenon_H34 zenon_Haa zenon_Ha1 zenon_H2d zenon_H2c zenon_Hc2 zenon_H92 zenon_Hc zenon_H1f zenon_H22 zenon_H32 zenon_Hc8 zenon_Hb1 zenon_H1d2 zenon_H20 zenon_H81 zenon_H16 zenon_H172 zenon_H91 zenon_H99 zenon_Hcc zenon_H3b zenon_Hda. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.97/34.14 apply (zenon_L302_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.97/34.14 apply (zenon_L129_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.97/34.14 apply (zenon_L73_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.97/34.14 apply (zenon_L305_); trivial. % 33.97/34.14 exact (zenon_Hda zenon_Hde). % 33.97/34.14 (* end of lemma zenon_L310_ *) % 33.97/34.14 assert (zenon_L311_ : (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((op (e4) (e1)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (e3)) = (e2)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((e1) = (op (e4) (e2))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e2)) = (e1))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e4))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e3)) = (e1))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e4))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H175 zenon_H166 zenon_H68 zenon_H5f zenon_H8e zenon_H61 zenon_H112 zenon_H16d zenon_Hda zenon_H3b zenon_Hcc zenon_H99 zenon_H91 zenon_H16 zenon_H81 zenon_H20 zenon_H1d2 zenon_Hb1 zenon_Hc8 zenon_H32 zenon_H22 zenon_H1f zenon_Hc zenon_H92 zenon_Hc2 zenon_H2c zenon_H2d zenon_Ha1 zenon_Haa zenon_H34 zenon_H58 zenon_Hb9 zenon_Hb6 zenon_He8 zenon_Hd3 zenon_H83 zenon_H17 zenon_H18 zenon_H9b zenon_Hc3 zenon_Hef zenon_Hea zenon_He6 zenon_He9 zenon_Hd4 zenon_H51 zenon_H179 zenon_H50 zenon_H42 zenon_H41 zenon_H14b zenon_H11f zenon_H150 zenon_H155 zenon_H159 zenon_Hba zenon_H1a4 zenon_Hf7 zenon_H1a5 zenon_H1a6 zenon_H1a3 zenon_H60 zenon_H1b7 zenon_He1 zenon_H89 zenon_H1b8 zenon_H1b9 zenon_H13e zenon_H1c8 zenon_H147 zenon_Hd9 zenon_H144. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H175); [ zenon_intro zenon_H169 | zenon_intro zenon_H176 ]. % 33.97/34.14 apply (zenon_L275_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H176); [ zenon_intro zenon_H113 | zenon_intro zenon_H177 ]. % 33.97/34.14 apply (zenon_L276_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H177); [ zenon_intro zenon_H16c | zenon_intro zenon_H178 ]. % 33.97/34.14 apply (zenon_L241_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H178); [ zenon_intro zenon_H172 | zenon_intro zenon_H142 ]. % 33.97/34.14 apply (zenon_L310_); trivial. % 33.97/34.14 exact (zenon_H144 zenon_H142). % 33.97/34.14 (* end of lemma zenon_L311_ *) % 33.97/34.14 assert (zenon_L312_ : (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e4) (e4)) = (e1))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (~((op (e3) (e3)) = (e4))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e1))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (~((op (e2) (e2)) = (e4))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e1))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (e1)) = (e3)) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H88 zenon_H144 zenon_H147 zenon_H1c8 zenon_H13e zenon_H1b9 zenon_H1b8 zenon_He1 zenon_H1b7 zenon_H1a3 zenon_H1a6 zenon_H1a5 zenon_Hf7 zenon_H1a4 zenon_H159 zenon_H155 zenon_H150 zenon_H11f zenon_H14b zenon_H41 zenon_H42 zenon_H50 zenon_H179 zenon_H51 zenon_He9 zenon_He6 zenon_Hea zenon_Hef zenon_He8 zenon_H1d2 zenon_H16d zenon_H112 zenon_H68 zenon_H166 zenon_H175 zenon_H73 zenon_Hbb zenon_H61 zenon_Hc3 zenon_Hd9 zenon_H8e zenon_H9f zenon_H9b zenon_H92 zenon_Hc zenon_H1f zenon_H22 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_Hda zenon_Hb6 zenon_Hb9 zenon_H77 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.97/34.14 apply (zenon_L311_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.97/34.14 apply (zenon_L82_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.97/34.14 apply (zenon_L92_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.97/34.14 exact (zenon_H89 zenon_H8d). % 33.97/34.14 apply (zenon_L40_); trivial. % 33.97/34.14 (* end of lemma zenon_L312_ *) % 33.97/34.14 assert (zenon_L313_ : (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> ((op (e1) (e1)) = (e0)) -> (~((op (e1) (e1)) = (e3))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((e0) = (e3))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e4) (e4)) = (e1))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (~((op (e3) (e3)) = (e4))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e1))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (~((op (e2) (e2)) = (e4))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e1))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H1d5 zenon_H15d zenon_H1d6 zenon_He0 zenon_Hb zenon_H18f zenon_H49 zenon_H163 zenon_H115 zenon_H18a zenon_H116 zenon_H13c zenon_H6e zenon_H88 zenon_H144 zenon_H147 zenon_H1c8 zenon_H13e zenon_H1b9 zenon_H1b8 zenon_He1 zenon_H1b7 zenon_H1a3 zenon_H1a6 zenon_H1a5 zenon_Hf7 zenon_H1a4 zenon_H159 zenon_H155 zenon_H150 zenon_H11f zenon_H14b zenon_H41 zenon_H42 zenon_H50 zenon_H179 zenon_H51 zenon_He9 zenon_He6 zenon_Hea zenon_Hef zenon_He8 zenon_H16d zenon_H112 zenon_H68 zenon_H166 zenon_H175 zenon_H73 zenon_Hbb zenon_H61 zenon_Hc3 zenon_Hd9 zenon_H8e zenon_H9f zenon_H9b zenon_Hc zenon_H1f zenon_H22 zenon_Hc8 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hba zenon_H57 zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_Hda zenon_Hb6 zenon_Hb9 zenon_H77 zenon_Haa zenon_Ha1 zenon_H18 zenon_H2d zenon_H17 zenon_H2c zenon_Hc2 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1d5); [ zenon_intro zenon_H17d | zenon_intro zenon_H1d7 ]. % 33.97/34.14 apply (zenon_L281_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1d7); [ zenon_intro zenon_H1d9 | zenon_intro zenon_H1d8 ]. % 33.97/34.14 exact (zenon_H1d6 zenon_H1d9). % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1d8); [ zenon_intro zenon_H193 | zenon_intro zenon_H1da ]. % 33.97/34.14 apply (zenon_L282_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1da); [ zenon_intro zenon_H72 | zenon_intro zenon_H1d2 ]. % 33.97/34.14 apply (zenon_L290_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.14 apply (zenon_L12_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.14 apply (zenon_L309_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.14 apply (zenon_L41_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.14 exact (zenon_He1 zenon_He5). % 33.97/34.14 apply (zenon_L312_); trivial. % 33.97/34.14 (* end of lemma zenon_L313_ *) % 33.97/34.14 assert (zenon_L314_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (e3) (e4)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H3b zenon_H7b zenon_H7c zenon_H5f zenon_H81 zenon_Hb1 zenon_Ha5 zenon_H99 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.14 apply (zenon_L35_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.14 apply (zenon_L36_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.14 apply (zenon_L58_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.14 apply (zenon_L60_); trivial. % 33.97/34.14 apply (zenon_L11_); trivial. % 33.97/34.14 (* end of lemma zenon_L314_ *) % 33.97/34.14 assert (zenon_L315_ : (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e3)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (e1)) = (e4)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H88 zenon_H68 zenon_H61 zenon_H73 zenon_H1f zenon_H22 zenon_H6e zenon_H58 zenon_H59 zenon_H57 zenon_H20 zenon_H77 zenon_H9f zenon_H8e zenon_H89 zenon_H3b zenon_H7b zenon_H5f zenon_H81 zenon_Hb1 zenon_Ha5 zenon_H99 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.97/34.14 apply (zenon_L27_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.97/34.14 apply (zenon_L31_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.97/34.14 apply (zenon_L115_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.97/34.14 exact (zenon_H89 zenon_H8d). % 33.97/34.14 apply (zenon_L314_); trivial. % 33.97/34.14 (* end of lemma zenon_L315_ *) % 33.97/34.14 assert (zenon_L316_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e0))) -> ((op (unit) (e0)) = (e0)) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (e4) (e1)) = (e4)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_He0 zenon_Hb zenon_H13c zenon_H42 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H49 zenon_H18f zenon_H81 zenon_H5f zenon_H7b zenon_H89 zenon_H8e zenon_H9f zenon_H77 zenon_H57 zenon_H6e zenon_H73 zenon_H61 zenon_H68 zenon_H88 zenon_He1 zenon_Hc2 zenon_H2c zenon_H2d zenon_Ha1 zenon_H91 zenon_Hb1 zenon_Haa zenon_H34 zenon_H1f zenon_H58 zenon_H20 zenon_H22 zenon_Hb9 zenon_Hb6 zenon_He8 zenon_Ha5 zenon_Hd3 zenon_H83 zenon_Hc zenon_H99 zenon_H32 zenon_H16 zenon_H17 zenon_H18 zenon_H9b zenon_H3b zenon_Hc3. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.14 apply (zenon_L12_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.14 apply (zenon_L272_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.14 apply (zenon_L315_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.14 exact (zenon_He1 zenon_He5). % 33.97/34.14 apply (zenon_L129_); trivial. % 33.97/34.14 (* end of lemma zenon_L316_ *) % 33.97/34.14 assert (zenon_L317_ : ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.97/34.14 do 0 intro. intros zenon_Hef zenon_Hc8 zenon_He9 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H18f zenon_H13c zenon_H9b zenon_H99 zenon_Ha5 zenon_H7b zenon_He8 zenon_Hd3 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H42 zenon_H49 zenon_H88 zenon_H81 zenon_Hb1 zenon_H89 zenon_H8e zenon_H9f zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_He1 zenon_Hc2 zenon_H83 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Ha1 zenon_H91 zenon_He0. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.14 apply (zenon_L316_); trivial. % 33.97/34.14 apply (zenon_L248_); trivial. % 33.97/34.14 (* end of lemma zenon_L317_ *) % 33.97/34.14 assert (zenon_L318_ : (~((op (e4) (e4)) = (e0))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e2)) = (e2)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e1)) = (e3)) -> ((op (e1) (e1)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H13c zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H18f zenon_H116 zenon_Hea zenon_He6 zenon_He9 zenon_Hee zenon_H175 zenon_H166 zenon_H60 zenon_H8e zenon_H112 zenon_H16d zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_He0 zenon_H2c zenon_H17 zenon_H2d zenon_H18 zenon_Hb zenon_H49 zenon_H34 zenon_H16 zenon_H87 zenon_H83 zenon_H5f zenon_H81 zenon_H7b zenon_H89 zenon_H6e zenon_H77 zenon_H73 zenon_H61 zenon_H68 zenon_H88 zenon_He1 zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc zenon_Hc2 zenon_Ha1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_He8 zenon_H9b zenon_Hc3 zenon_H51 zenon_H17d zenon_H15d zenon_H42 zenon_Hd9 zenon_H144. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.14 apply (zenon_L12_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.14 apply (zenon_L274_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.14 apply (zenon_L114_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.14 exact (zenon_He1 zenon_He5). % 33.97/34.14 apply (zenon_L279_); trivial. % 33.97/34.14 (* end of lemma zenon_L318_ *) % 33.97/34.14 assert (zenon_L319_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H3b zenon_H61 zenon_H60 zenon_H9f zenon_H5f zenon_H73 zenon_H72 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.14 apply (zenon_L46_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.14 apply (zenon_L24_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.14 apply (zenon_L50_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.14 apply (zenon_L30_); trivial. % 33.97/34.14 apply (zenon_L11_); trivial. % 33.97/34.14 (* end of lemma zenon_L319_ *) % 33.97/34.14 assert (zenon_L320_ : (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> ((op (e1) (e1)) = (e0)) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e1) (e1)) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e0))) -> (~((e0) = (e3))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e2)) = (e2)) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((e1) = (op (e4) (e2))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e2))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e2)) = (e1))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e4))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> ((op (e3) (e0)) = (e3)) -> (~((op (e3) (e3)) = (e1))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e4))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e1))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H1d5 zenon_H15d zenon_Hee zenon_H1d6 zenon_H9f zenon_He0 zenon_Hb zenon_H13c zenon_H18a zenon_H163 zenon_H18f zenon_H49 zenon_H115 zenon_H116 zenon_Hbb zenon_H87 zenon_H7b zenon_H57 zenon_H6e zenon_H77 zenon_H73 zenon_H88 zenon_H175 zenon_H166 zenon_H68 zenon_H5f zenon_H8e zenon_H61 zenon_H112 zenon_H16d zenon_Hda zenon_H3b zenon_Hcc zenon_H99 zenon_H91 zenon_H16 zenon_H81 zenon_H20 zenon_Hb1 zenon_Hc8 zenon_H32 zenon_H22 zenon_H1f zenon_Hc zenon_Hc2 zenon_H2c zenon_H2d zenon_Ha1 zenon_Haa zenon_H34 zenon_H58 zenon_Hb9 zenon_Hb6 zenon_He8 zenon_Hd3 zenon_H83 zenon_H17 zenon_H18 zenon_H9b zenon_Hc3 zenon_Hef zenon_Hea zenon_He6 zenon_He9 zenon_Hd4 zenon_H51 zenon_H179 zenon_H50 zenon_H42 zenon_H41 zenon_H14b zenon_H11f zenon_H150 zenon_H155 zenon_H159 zenon_Hba zenon_H1a4 zenon_Hf7 zenon_H1a5 zenon_H1a6 zenon_H1a3 zenon_H60 zenon_H1b7 zenon_He1 zenon_H89 zenon_H1b8 zenon_H1b9 zenon_H13e zenon_H1c8 zenon_H147 zenon_Hd9 zenon_H144. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1d5); [ zenon_intro zenon_H17d | zenon_intro zenon_H1d7 ]. % 33.97/34.14 apply (zenon_L318_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1d7); [ zenon_intro zenon_H1d9 | zenon_intro zenon_H1d8 ]. % 33.97/34.14 exact (zenon_H1d6 zenon_H1d9). % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1d8); [ zenon_intro zenon_H193 | zenon_intro zenon_H1da ]. % 33.97/34.14 apply (zenon_L282_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1da); [ zenon_intro zenon_H72 | zenon_intro zenon_H1d2 ]. % 33.97/34.14 apply (zenon_L319_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.14 apply (zenon_L12_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.14 apply (zenon_L307_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.14 apply (zenon_L41_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.14 exact (zenon_He1 zenon_He5). % 33.97/34.14 apply (zenon_L311_); trivial. % 33.97/34.14 (* end of lemma zenon_L320_ *) % 33.97/34.14 assert (zenon_L321_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e3) (e3)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (e0)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H3b zenon_H8d zenon_H61 zenon_H8e zenon_H5f zenon_H68 zenon_H60 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.14 apply (zenon_L102_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.14 apply (zenon_L24_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.14 apply (zenon_L42_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.14 apply (zenon_L26_); trivial. % 33.97/34.14 apply (zenon_L11_); trivial. % 33.97/34.14 (* end of lemma zenon_L321_ *) % 33.97/34.14 assert (zenon_L322_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (e0)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H3b zenon_H61 zenon_H8e zenon_H60 zenon_H5f zenon_H77 zenon_H76 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.14 apply (zenon_L83_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.14 apply (zenon_L24_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.14 apply (zenon_L42_); trivial. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.14 apply (zenon_L32_); trivial. % 33.97/34.14 apply (zenon_L11_); trivial. % 33.97/34.14 (* end of lemma zenon_L322_ *) % 33.97/34.14 assert (zenon_L323_ : ((~((op (e3) (e3)) = (e1)))\/((op (e3) (e1)) = (e3))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (e0)) = (e3)) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (~((op (e2) (e2)) = (e4))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e1))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> ((~((op (e3) (e3)) = (e4)))\/((op (e3) (e4)) = (e3))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> False). % 33.97/34.14 do 0 intro. intros zenon_H1db zenon_H148 zenon_H8e zenon_H60 zenon_He0 zenon_Ha1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hc2 zenon_H88 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He9 zenon_Hee zenon_H49 zenon_H166 zenon_H116 zenon_H115 zenon_H112 zenon_H16d zenon_Hd9 zenon_Hb1 zenon_H91 zenon_H57 zenon_H58 zenon_Hba zenon_Hd4 zenon_H81 zenon_H163 zenon_H11f zenon_H18a zenon_Hd3 zenon_He8 zenon_H7b zenon_H9b zenon_H18f zenon_Hc8 zenon_H99 zenon_Hcc zenon_H175 zenon_Hb zenon_Hc zenon_H18 zenon_H17 zenon_H2d zenon_H2c zenon_H1d6 zenon_H9f zenon_Hbb zenon_H147 zenon_H1c8 zenon_H13e zenon_H1b9 zenon_H1a3 zenon_H1a6 zenon_H1a5 zenon_Hf7 zenon_H1a4 zenon_H159 zenon_H155 zenon_H150 zenon_H14b zenon_Hef zenon_H1d5 zenon_H41 zenon_H42 zenon_H50 zenon_H179 zenon_H1f zenon_H20 zenon_H22 zenon_H51 zenon_H32 zenon_H16 zenon_H34 zenon_H3b zenon_H1dc zenon_H1dd zenon_Hf1. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1db); [ zenon_intro zenon_H1b7 | zenon_intro zenon_H72 ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1dd); [ zenon_intro zenon_H1b8 | zenon_intro zenon_H7c ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.14 apply (zenon_or_s _ _ zenon_H159); [ zenon_intro zenon_H43 | zenon_intro zenon_H15b ]. % 33.97/34.15 apply (zenon_L262_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15b); [ zenon_intro zenon_H15d | zenon_intro zenon_H15c ]. % 33.97/34.15 apply (zenon_L320_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15c); [ zenon_intro zenon_H14a | zenon_intro zenon_H15e ]. % 33.97/34.15 apply (zenon_L217_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15e); [ zenon_intro zenon_H14f | zenon_intro zenon_H154 ]. % 33.97/34.15 apply (zenon_L218_); trivial. % 33.97/34.15 apply (zenon_L219_); trivial. % 33.97/34.15 apply (zenon_L99_); trivial. % 33.97/34.15 apply (zenon_L246_); trivial. % 33.97/34.15 apply (zenon_L317_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_L302_); trivial. % 33.97/34.15 apply (zenon_L258_); trivial. % 33.97/34.15 apply (zenon_L40_); trivial. % 33.97/34.15 apply (zenon_L321_); trivial. % 33.97/34.15 apply (zenon_L322_); trivial. % 33.97/34.15 apply (zenon_L319_); trivial. % 33.97/34.15 (* end of lemma zenon_L323_ *) % 33.97/34.15 assert (zenon_L324_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e1))) -> ((op (e1) (e1)) = (e0)) -> ((op (e0) (e1)) = (e3)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e0))) -> ((op (unit) (e0)) = (e0)) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e1) (unit)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e2))) -> False). % 33.97/34.15 do 0 intro. intros zenon_He0 zenon_Hb zenon_H144 zenon_H15d zenon_H17d zenon_H51 zenon_H13c zenon_H42 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H18f zenon_H49 zenon_H16d zenon_H112 zenon_H116 zenon_H166 zenon_H175 zenon_H88 zenon_H7b zenon_H81 zenon_H87 zenon_H6e zenon_H73 zenon_H61 zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hee zenon_He9 zenon_Hc2 zenon_H2c zenon_H17 zenon_H2d zenon_H18 zenon_Ha1 zenon_Haa zenon_H16 zenon_H34 zenon_H77 zenon_Hb9 zenon_Hb6 zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H57 zenon_Hba zenon_H58 zenon_Hd3 zenon_Hd4 zenon_Hc8 zenon_H32 zenon_H22 zenon_H20 zenon_H1f zenon_Hc zenon_H9b zenon_H76 zenon_H5f zenon_H9f zenon_H83 zenon_H8e zenon_Hd9 zenon_Hc3. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.15 apply (zenon_L12_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.15 apply (zenon_L274_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.15 apply (zenon_L135_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.15 apply (zenon_L118_); trivial. % 33.97/34.15 apply (zenon_L92_); trivial. % 33.97/34.15 (* end of lemma zenon_L324_ *) % 33.97/34.15 assert (zenon_L325_ : ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e1)) = (e3)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (e3))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H1dc zenon_H8e zenon_Hea zenon_He6 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_Ha1 zenon_Hd9 zenon_Hcc zenon_Haa zenon_H91 zenon_Hd4 zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H81 zenon_Hc8 zenon_H175 zenon_H7b zenon_He8 zenon_Hd3 zenon_H61 zenon_H5f zenon_H72 zenon_H9b zenon_H99 zenon_H9f zenon_H73 zenon_Hb9 zenon_H58 zenon_Hb6 zenon_H18f zenon_H13c zenon_He9 zenon_H83 zenon_Hba zenon_H57 zenon_Hb1 zenon_Hc2 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H42 zenon_H49 zenon_H88 zenon_H87 zenon_H89 zenon_H77 zenon_H6e zenon_H68 zenon_He1 zenon_Hbb zenon_He0 zenon_Hef. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.15 apply (zenon_L290_); trivial. % 33.97/34.15 apply (zenon_L246_); trivial. % 33.97/34.15 apply (zenon_L317_); trivial. % 33.97/34.15 (* end of lemma zenon_L325_ *) % 33.97/34.15 assert (zenon_L326_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (e3)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e3) (e1)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H3b zenon_H68 zenon_H8d zenon_H9f zenon_H5f zenon_H73 zenon_H72 zenon_H20 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.15 apply (zenon_L102_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.15 apply (zenon_L105_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.15 apply (zenon_L50_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.15 apply (zenon_L30_); trivial. % 33.97/34.15 apply (zenon_L11_); trivial. % 33.97/34.15 (* end of lemma zenon_L326_ *) % 33.97/34.15 assert (zenon_L327_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e3) (e1)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> False). % 33.97/34.15 do 0 intro. intros zenon_Hf1 zenon_H148 zenon_Hef zenon_He0 zenon_Hbb zenon_H68 zenon_H6e zenon_H77 zenon_H87 zenon_H88 zenon_H49 zenon_H42 zenon_H163 zenon_H115 zenon_H11f zenon_H18a zenon_Hc2 zenon_Hb1 zenon_H57 zenon_Hba zenon_H83 zenon_He9 zenon_H18f zenon_Hb6 zenon_H58 zenon_Hb9 zenon_H73 zenon_H9f zenon_H99 zenon_H9b zenon_H72 zenon_H5f zenon_H61 zenon_Hd3 zenon_He8 zenon_H7b zenon_H175 zenon_Hc8 zenon_H81 zenon_H16d zenon_H112 zenon_H116 zenon_H166 zenon_Hd4 zenon_H91 zenon_Haa zenon_Hcc zenon_Hd9 zenon_Ha1 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_He6 zenon_Hea zenon_H8e zenon_H1dc zenon_Hee. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.97/34.15 apply (zenon_L325_); trivial. % 33.97/34.15 apply (zenon_L51_); trivial. % 33.97/34.15 apply (zenon_L326_); trivial. % 33.97/34.15 apply (zenon_L202_); trivial. % 33.97/34.15 (* end of lemma zenon_L327_ *) % 33.97/34.15 assert (zenon_L328_ : (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> (~((op (e4) (e4)) = (e2))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e1) (e1)) = (e0)) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e1) (e1)) = (e3))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (e3) (e2)) = (e3)) -> ((op (unit) (e3)) = (e3)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H1d5 zenon_Hc3 zenon_Hda zenon_H13c zenon_H51 zenon_H15d zenon_H144 zenon_H1d6 zenon_Hee zenon_H1dc zenon_Hea zenon_He6 zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_Ha1 zenon_Hd9 zenon_Hcc zenon_Haa zenon_H91 zenon_Hd4 zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H81 zenon_Hc8 zenon_H175 zenon_H7b zenon_He8 zenon_Hd3 zenon_H61 zenon_H9b zenon_H99 zenon_H73 zenon_Hb9 zenon_H58 zenon_Hb6 zenon_H18f zenon_He9 zenon_H83 zenon_Hba zenon_H57 zenon_Hc2 zenon_H18a zenon_H11f zenon_H115 zenon_H163 zenon_H42 zenon_H49 zenon_H88 zenon_H87 zenon_H6e zenon_H68 zenon_Hbb zenon_He0 zenon_Hef zenon_H148 zenon_Hf1 zenon_H3b zenon_H8e zenon_H5f zenon_H9f zenon_H22 zenon_H1f zenon_H77 zenon_H76 zenon_H20 zenon_Hb1. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1d5); [ zenon_intro zenon_H17d | zenon_intro zenon_H1d7 ]. % 33.97/34.15 apply (zenon_L324_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1d7); [ zenon_intro zenon_H1d9 | zenon_intro zenon_H1d8 ]. % 33.97/34.15 exact (zenon_H1d6 zenon_H1d9). % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1d8); [ zenon_intro zenon_H193 | zenon_intro zenon_H1da ]. % 33.97/34.15 apply (zenon_L282_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1da); [ zenon_intro zenon_H72 | zenon_intro zenon_H1d2 ]. % 33.97/34.15 apply (zenon_L327_); trivial. % 33.97/34.15 apply (zenon_L308_); trivial. % 33.97/34.15 (* end of lemma zenon_L328_ *) % 33.97/34.15 assert (zenon_L329_ : (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e3)) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((e0) = (e3))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e1) (e1)) = (e3))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H159 zenon_H50 zenon_H179 zenon_H41 zenon_Hb1 zenon_H20 zenon_H76 zenon_H77 zenon_H1f zenon_H22 zenon_H9f zenon_H5f zenon_H8e zenon_H3b zenon_Hf1 zenon_H148 zenon_Hef zenon_He0 zenon_Hbb zenon_H68 zenon_H6e zenon_H87 zenon_H88 zenon_H49 zenon_H42 zenon_H163 zenon_H115 zenon_H18a zenon_Hc2 zenon_H57 zenon_Hba zenon_H83 zenon_He9 zenon_H18f zenon_Hb6 zenon_H58 zenon_Hb9 zenon_H73 zenon_H99 zenon_H9b zenon_H61 zenon_Hd3 zenon_He8 zenon_H7b zenon_H175 zenon_Hc8 zenon_H81 zenon_H16d zenon_H112 zenon_H116 zenon_H166 zenon_Hd4 zenon_H91 zenon_Haa zenon_Hcc zenon_Hd9 zenon_Ha1 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H2d zenon_H2c zenon_H32 zenon_He6 zenon_Hea zenon_H1dc zenon_Hee zenon_H1d6 zenon_H144 zenon_H51 zenon_H13c zenon_Hda zenon_Hc3 zenon_H1d5 zenon_H14b zenon_H150 zenon_H11f zenon_H34 zenon_H155. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H159); [ zenon_intro zenon_H43 | zenon_intro zenon_H15b ]. % 33.97/34.15 apply (zenon_L262_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15b); [ zenon_intro zenon_H15d | zenon_intro zenon_H15c ]. % 33.97/34.15 apply (zenon_L328_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15c); [ zenon_intro zenon_H14a | zenon_intro zenon_H15e ]. % 33.97/34.15 apply (zenon_L217_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15e); [ zenon_intro zenon_H14f | zenon_intro zenon_H154 ]. % 33.97/34.15 apply (zenon_L218_); trivial. % 33.97/34.15 apply (zenon_L219_); trivial. % 33.97/34.15 (* end of lemma zenon_L329_ *) % 33.97/34.15 assert (zenon_L330_ : (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e0)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (e3))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (e0) (e0)) = (e0)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H159 zenon_H155 zenon_H150 zenon_H14b zenon_He0 zenon_Ha1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hc2 zenon_H76 zenon_H8e zenon_H9f zenon_H88 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He9 zenon_Hee zenon_H49 zenon_H166 zenon_H116 zenon_H115 zenon_H112 zenon_H16d zenon_Hd9 zenon_Hb1 zenon_H91 zenon_H57 zenon_H58 zenon_Hba zenon_Hd4 zenon_H81 zenon_H163 zenon_H11f zenon_H18a zenon_Hd3 zenon_He8 zenon_H7b zenon_H9b zenon_H18f zenon_Hc8 zenon_H99 zenon_Hcc zenon_H175 zenon_Hb zenon_Hc zenon_H18 zenon_H17 zenon_H2d zenon_H2c zenon_H1d6 zenon_Hf1 zenon_H148 zenon_Hef zenon_Hbb zenon_H1dc zenon_H1d5 zenon_H41 zenon_H42 zenon_H50 zenon_H179 zenon_H1f zenon_H20 zenon_H22 zenon_H51 zenon_H32 zenon_H16 zenon_H34 zenon_H3b. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.15 apply (zenon_L329_); trivial. % 33.97/34.15 apply (zenon_L99_); trivial. % 33.97/34.15 apply (zenon_L120_); trivial. % 33.97/34.15 apply (zenon_L115_); trivial. % 33.97/34.15 apply (zenon_L85_); trivial. % 33.97/34.15 (* end of lemma zenon_L330_ *) % 33.97/34.15 assert (zenon_L331_ : ((~((op (e3) (e3)) = (e4)))\/((op (e3) (e4)) = (e3))) -> (~((op (e2) (e2)) = (e1))) -> (~((op (e2) (e2)) = (e2))) -> (~((op (e2) (e2)) = (e3))) -> (~((op (e2) (e2)) = (e4))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> ((~((op (e3) (e3)) = (e1)))\/((op (e3) (e1)) = (e3))) -> ((op (e4) (e0)) = (e4)) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((e3) = (op (e2) (e4))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e0) (e0)) = (e0)) -> ((op (e0) (unit)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e1) (e1)) = (e3))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e0)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (~((op (e3) (e3)) = (e3))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H1dd zenon_H1a4 zenon_Hf7 zenon_H1a5 zenon_H1a6 zenon_H1a3 zenon_H1b9 zenon_H13e zenon_H1c8 zenon_H147 zenon_H1db zenon_H9a zenon_H51 zenon_H22 zenon_H1f zenon_H179 zenon_H50 zenon_H42 zenon_H41 zenon_H1d5 zenon_H1dc zenon_Hbb zenon_Hef zenon_H148 zenon_Hf1 zenon_H1d6 zenon_H2c zenon_H2d zenon_H17 zenon_H18 zenon_Hc zenon_Hb zenon_H175 zenon_Hcc zenon_H99 zenon_Hc8 zenon_H18f zenon_H9b zenon_He8 zenon_Hd3 zenon_H18a zenon_H11f zenon_H163 zenon_Hd4 zenon_Hba zenon_H58 zenon_H57 zenon_H91 zenon_Hb1 zenon_Hd9 zenon_H16d zenon_H112 zenon_H115 zenon_H116 zenon_H166 zenon_H49 zenon_Hee zenon_He9 zenon_He6 zenon_Hea zenon_H68 zenon_H61 zenon_H73 zenon_H6e zenon_H77 zenon_H88 zenon_H9f zenon_H8e zenon_Hc2 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Ha1 zenon_He0 zenon_H14b zenon_H150 zenon_H155 zenon_H159 zenon_H89 zenon_H3b zenon_H7b zenon_H81 zenon_H5f zenon_H83 zenon_H20 zenon_H87 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.97/34.15 apply (zenon_L323_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.97/34.15 apply (zenon_L51_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.97/34.15 apply (zenon_L330_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.97/34.15 exact (zenon_H89 zenon_H8d). % 33.97/34.15 apply (zenon_L40_); trivial. % 33.97/34.15 (* end of lemma zenon_L331_ *) % 33.97/34.15 assert (zenon_L332_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((op (e2) (e0)) = (e2)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H3b zenon_Hbb zenon_Hba zenon_H22 zenon_H20 zenon_H1f zenon_H6e zenon_Hf2 zenon_H58 zenon_H32 zenon_H16 zenon_H34. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.15 apply (zenon_L122_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.15 apply (zenon_L65_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.15 apply (zenon_L8_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.15 apply (zenon_L123_); trivial. % 33.97/34.15 apply (zenon_L11_); trivial. % 33.97/34.15 (* end of lemma zenon_L332_ *) % 33.97/34.15 assert (zenon_L333_ : ((~((op (e2) (e2)) = (e1)))\/((op (e2) (e1)) = (e2))) -> ((~((op (e2) (e2)) = (e3)))\/((op (e2) (e3)) = (e2))) -> ((~((op (e3) (e3)) = (e1)))\/((op (e3) (e1)) = (e3))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> ((~((op (e3) (e3)) = (e4)))\/((op (e3) (e4)) = (e3))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e1) (e1)) = (e3))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((op (e0) (e0)) = (e0)) -> (~((op (e1) (e1)) = (op (e2) (e1)))) -> (~((op (e1) (e1)) = (op (e3) (e1)))) -> (~((op (e1) (e1)) = (op (e4) (e1)))) -> (((op (e0) (e1)) = (e0))\/(((op (e1) (e1)) = (e0))\/(((op (e2) (e1)) = (e0))\/(((op (e3) (e1)) = (e0))\/((op (e4) (e1)) = (e0)))))) -> (((op (e2) (e2)) = (e0))\/(((op (e2) (e2)) = (e1))\/(((op (e2) (e2)) = (e2))\/(((op (e2) (e2)) = (e3))\/((op (e2) (e2)) = (e4)))))) -> (((op (e3) (e3)) = (e0))\/(((op (e3) (e3)) = (e1))\/(((op (e3) (e3)) = (e2))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e3)) = (e4)))))) -> (((op (e4) (e4)) = (e0))\/(((op (e4) (e4)) = (e1))\/(((op (e4) (e4)) = (e2))\/(((op (e4) (e4)) = (e3))\/((op (e4) (e4)) = (e4)))))) -> (((~((op (e0) (op (e0) (e0))) = (e0)))/\((op (e0) (op (e0) (e0))) = (e0)))\/(((~((op (e1) (op (e1) (e0))) = (e0)))/\((op (e0) (op (e1) (e0))) = (e1)))\/(((~((op (e2) (op (e2) (e0))) = (e0)))/\((op (e0) (op (e2) (e0))) = (e2)))\/(((~((op (e3) (op (e3) (e0))) = (e0)))/\((op (e0) (op (e3) (e0))) = (e3)))\/((~((op (e4) (op (e4) (e0))) = (e0)))/\((op (e0) (op (e4) (e0))) = (e4))))))) -> ((~((op (e4) (e4)) = (e3)))\/((op (e4) (e3)) = (e4))) -> (((op (e0) (e1)) = (e3))\/(((op (e1) (e1)) = (e3))\/(((op (e2) (e1)) = (e3))\/(((op (e3) (e1)) = (e3))\/((op (e4) (e1)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> ((op (e2) (e0)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e0)) = (op (e0) (e1)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> ((~((op (e2) (e2)) = (e4)))\/((op (e2) (e4)) = (e2))) -> (~((op (e2) (e2)) = (op (e2) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e2)))) -> (~((op (e2) (e0)) = (op (e2) (e2)))) -> ((~((op (e2) (e2)) = (e2)))\/((op (e2) (e2)) = (e2))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H1de zenon_H1df zenon_H1db zenon_H148 zenon_Hee zenon_H1dd zenon_Hf1 zenon_H166 zenon_H116 zenon_H115 zenon_H112 zenon_H16d zenon_H163 zenon_H11f zenon_H18a zenon_H18f zenon_H175 zenon_H1d6 zenon_Hef zenon_H179 zenon_H14b zenon_H150 zenon_H155 zenon_H159 zenon_H1a3 zenon_H1b9 zenon_H13e zenon_H1c8 zenon_H147 zenon_H1d5 zenon_He0 zenon_H91 zenon_H8e zenon_Hd9 zenon_Hcc zenon_Hd4 zenon_Hd3 zenon_Hc8 zenon_Ha1 zenon_Hb1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hba zenon_Hbb zenon_Hc2 zenon_H9b zenon_H99 zenon_H9f zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_H41 zenon_H42 zenon_H49 zenon_H51 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_He9 zenon_He8 zenon_He6 zenon_Hea zenon_H1dc zenon_H1e0 zenon_Hff zenon_Hfe zenon_Hfc zenon_H101. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1de); [ zenon_intro zenon_H1a4 | zenon_intro zenon_Hf2 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1df); [ zenon_intro zenon_H1a5 | zenon_intro zenon_H59 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1e0); [ zenon_intro zenon_H1a6 | zenon_intro zenon_Hb7 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1db); [ zenon_intro zenon_H1b7 | zenon_intro zenon_H72 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dd); [ zenon_intro zenon_H1b8 | zenon_intro zenon_H7c ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H159); [ zenon_intro zenon_H43 | zenon_intro zenon_H15b ]. % 33.97/34.15 apply (zenon_L100_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15b); [ zenon_intro zenon_H15d | zenon_intro zenon_H15c ]. % 33.97/34.15 apply (zenon_L313_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15c); [ zenon_intro zenon_H14a | zenon_intro zenon_H15e ]. % 33.97/34.15 apply (zenon_L217_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15e); [ zenon_intro zenon_H14f | zenon_intro zenon_H154 ]. % 33.97/34.15 apply (zenon_L218_); trivial. % 33.97/34.15 apply (zenon_L219_); trivial. % 33.97/34.15 apply (zenon_L99_); trivial. % 33.97/34.15 apply (zenon_L246_); trivial. % 33.97/34.15 apply (zenon_L317_); trivial. % 33.97/34.15 apply (zenon_L331_); trivial. % 33.97/34.15 apply (zenon_L40_); trivial. % 33.97/34.15 apply (zenon_L111_); trivial. % 33.97/34.15 apply (zenon_L330_); trivial. % 33.97/34.15 apply (zenon_L327_); trivial. % 33.97/34.15 apply (zenon_L126_); trivial. % 33.97/34.15 apply (zenon_L114_); trivial. % 33.97/34.15 apply (zenon_L142_); trivial. % 33.97/34.15 apply (zenon_L332_); trivial. % 33.97/34.15 (* end of lemma zenon_L333_ *) % 33.97/34.15 assert (zenon_L334_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e1)) = (e2)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e3) (e3)) = (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.97/34.15 do 0 intro. intros zenon_He0 zenon_Hb zenon_H49 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_H32 zenon_H34 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_Hd4 zenon_Hf2 zenon_Hd9 zenon_Hee zenon_He1 zenon_H3b zenon_H164 zenon_H42 zenon_H163 zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.15 apply (zenon_L12_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.15 apply (zenon_L255_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.15 apply (zenon_L155_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.15 exact (zenon_He1 zenon_He5). % 33.97/34.15 apply (zenon_L256_); trivial. % 33.97/34.15 (* end of lemma zenon_L334_ *) % 33.97/34.15 assert (zenon_L335_ : ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> False). % 33.97/34.15 do 0 intro. intros zenon_Hf1 zenon_H8e zenon_H9f zenon_H72 zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H49 zenon_H164 zenon_H42 zenon_H163 zenon_Hee zenon_Hd9 zenon_Hf2 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_He0. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.97/34.15 apply (zenon_L334_); trivial. % 33.97/34.15 apply (zenon_L202_); trivial. % 33.97/34.15 (* end of lemma zenon_L335_ *) % 33.97/34.15 assert (zenon_L336_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e3) (e4)) = (e0)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e1) (e3)) = (e2)) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.15 do 0 intro. intros zenon_Hd9 zenon_Hbb zenon_He8 zenon_H7b zenon_H42 zenon_H18d zenon_H18 zenon_H9b zenon_H144 zenon_Hc8 zenon_H4a zenon_Hc zenon_H49 zenon_H22 zenon_H20 zenon_H1f zenon_H81 zenon_H32 zenon_H16 zenon_H34 zenon_H16d zenon_H112 zenon_H115 zenon_H2c zenon_H116 zenon_H166 zenon_H2d zenon_H17 zenon_H175 zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hf2 zenon_H6e zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.97/34.15 apply (zenon_L124_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.97/34.15 apply (zenon_L271_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.97/34.15 apply (zenon_L245_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.97/34.15 apply (zenon_L130_); trivial. % 33.97/34.15 exact (zenon_Hda zenon_Hde). % 33.97/34.15 (* end of lemma zenon_L336_ *) % 33.97/34.15 assert (zenon_L337_ : (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e1) (e3)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e0))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H18f zenon_He0 zenon_H88 zenon_H83 zenon_H87 zenon_H77 zenon_H73 zenon_H57 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He9 zenon_Hee zenon_H163 zenon_Hb zenon_H72 zenon_H9f zenon_H8e zenon_Hf1 zenon_H11f zenon_H18a zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H6e zenon_Hf2 zenon_H58 zenon_Hd3 zenon_Hd4 zenon_H175 zenon_H17 zenon_H2d zenon_H166 zenon_H116 zenon_H2c zenon_H115 zenon_H112 zenon_H16d zenon_H34 zenon_H16 zenon_H32 zenon_H81 zenon_H1f zenon_H20 zenon_H22 zenon_H49 zenon_Hc zenon_H4a zenon_Hc8 zenon_H144 zenon_H9b zenon_H18 zenon_H42 zenon_H7b zenon_He8 zenon_Hbb zenon_Hd9 zenon_H13c. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H18f); [ zenon_intro zenon_H164 | zenon_intro zenon_H190 ]. % 33.97/34.15 apply (zenon_L335_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H190); [ zenon_intro zenon_H183 | zenon_intro zenon_H191 ]. % 33.97/34.15 apply (zenon_L268_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H191); [ zenon_intro zenon_H189 | zenon_intro zenon_H192 ]. % 33.97/34.15 apply (zenon_L269_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H192); [ zenon_intro zenon_H18d | zenon_intro zenon_H140 ]. % 33.97/34.15 apply (zenon_L336_); trivial. % 33.97/34.15 exact (zenon_H13c zenon_H140). % 33.97/34.15 (* end of lemma zenon_L337_ *) % 33.97/34.15 assert (zenon_L338_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e4) (e4)) = (e0))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e4) (e4)) = (e1))) -> (~((e1) = (e3))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((e0) = (e3))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e1)) = (e2)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e3) (e1)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e3)) = (e2))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e4) (e4)) = (e2))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H3b zenon_H34 zenon_H32 zenon_H2c zenon_H2d zenon_H22 zenon_H20 zenon_H1f zenon_H17 zenon_H16 zenon_H18 zenon_Hc zenon_Hb zenon_H18f zenon_H13c zenon_Hbb zenon_H175 zenon_H144 zenon_H16d zenon_H112 zenon_H116 zenon_H166 zenon_H18a zenon_H11f zenon_H115 zenon_He0 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_Hf2 zenon_Hd9 zenon_Hee zenon_H163 zenon_H42 zenon_H49 zenon_H72 zenon_H9f zenon_H8e zenon_Hf1 zenon_He1 zenon_Ha1 zenon_Haa zenon_Hb9 zenon_Hb6 zenon_Hc3 zenon_Hc2. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.15 apply (zenon_L12_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.15 apply (zenon_L337_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.15 apply (zenon_L155_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.15 exact (zenon_He1 zenon_He5). % 33.97/34.15 apply (zenon_L131_); trivial. % 33.97/34.15 apply (zenon_L99_); trivial. % 33.97/34.15 (* end of lemma zenon_L338_ *) % 33.97/34.15 assert (zenon_L339_ : ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (e1)) = (e3)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((op (e2) (e1)) = (e2)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H148 zenon_Hef zenon_Hc2 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Ha1 zenon_Hf1 zenon_H8e zenon_H9f zenon_H72 zenon_H49 zenon_H42 zenon_H163 zenon_Hee zenon_Hd9 zenon_Hf2 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H5f zenon_H61 zenon_H58 zenon_H57 zenon_H73 zenon_H6e zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_He0 zenon_H115 zenon_H11f zenon_H18a zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H175 zenon_Hbb zenon_H18f zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_H1dc. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.15 apply (zenon_L338_); trivial. % 33.97/34.15 apply (zenon_L246_); trivial. % 33.97/34.15 apply (zenon_L317_); trivial. % 33.97/34.15 apply (zenon_L124_); trivial. % 33.97/34.15 apply (zenon_L133_); trivial. % 33.97/34.15 apply (zenon_L202_); trivial. % 33.97/34.15 (* end of lemma zenon_L339_ *) % 33.97/34.15 assert (zenon_L340_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> ((op (e3) (e2)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e4) (e1)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H3b zenon_H9b zenon_H18 zenon_H17 zenon_H16 zenon_H32 zenon_H99 zenon_H125 zenon_H42 zenon_H8e zenon_Hd3 zenon_Ha5 zenon_He8. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.15 apply (zenon_L55_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.15 apply (zenon_L6_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.15 apply (zenon_L58_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.15 apply (zenon_L177_); trivial. % 33.97/34.15 apply (zenon_L127_); trivial. % 33.97/34.15 (* end of lemma zenon_L340_ *) % 33.97/34.15 assert (zenon_L341_ : (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> ((op (unit) (e0)) = (e0)) -> ((op (e3) (e2)) = (e0)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e3) (e3)) = (e2)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> ((op (e2) (unit)) = (e2)) -> ((op (e2) (e1)) = (e2)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e4)) = (e4))) -> False). % 33.97/34.15 do 0 intro. intros zenon_Hd9 zenon_H34 zenon_Hc8 zenon_He8 zenon_H42 zenon_H125 zenon_H32 zenon_H16 zenon_H17 zenon_H18 zenon_H9b zenon_He9 zenon_H77 zenon_Hc zenon_He5 zenon_H1f zenon_H20 zenon_H22 zenon_H9f zenon_H5f zenon_H76 zenon_H8e zenon_Hd4 zenon_Hd3 zenon_H58 zenon_Hf2 zenon_H6e zenon_H91 zenon_H99 zenon_Hb1 zenon_Hcc zenon_H3b zenon_Hda. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hd9); [ zenon_intro zenon_H9a | zenon_intro zenon_Hdb ]. % 33.97/34.15 apply (zenon_L85_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hdb); [ zenon_intro zenon_Ha5 | zenon_intro zenon_Hdc ]. % 33.97/34.15 apply (zenon_L340_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hdc); [ zenon_intro zenon_Hc9 | zenon_intro zenon_Hdd ]. % 33.97/34.15 apply (zenon_L117_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hdd); [ zenon_intro zenon_Hcd | zenon_intro zenon_Hde ]. % 33.97/34.15 apply (zenon_L130_); trivial. % 33.97/34.15 exact (zenon_Hda zenon_Hde). % 33.97/34.15 (* end of lemma zenon_L341_ *) % 33.97/34.15 assert (zenon_L342_ : (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((op (e3) (e2)) = (e3)) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (e3) (e2)) = (e0)) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e0) (e4)) = (e0)) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> ((op (unit) (e2)) = (e2)) -> False). % 33.97/34.15 do 0 intro. intros zenon_He0 zenon_Hb zenon_H49 zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H73 zenon_H57 zenon_H61 zenon_H68 zenon_Hea zenon_He6 zenon_Hee zenon_Hda zenon_Hcc zenon_Hb1 zenon_H99 zenon_H6e zenon_Hf2 zenon_H58 zenon_Hd3 zenon_Hd4 zenon_H8e zenon_H76 zenon_H5f zenon_H9f zenon_H77 zenon_He9 zenon_H9b zenon_H32 zenon_H125 zenon_He8 zenon_Hc8 zenon_H34 zenon_Hd9 zenon_H3b zenon_H164 zenon_H42 zenon_H163 zenon_H18 zenon_H16 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H91 zenon_Hc. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.15 apply (zenon_L12_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.15 apply (zenon_L255_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.15 apply (zenon_L155_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.15 apply (zenon_L341_); trivial. % 33.97/34.15 apply (zenon_L256_); trivial. % 33.97/34.15 (* end of lemma zenon_L342_ *) % 33.97/34.15 assert (zenon_L343_ : (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((op (e3) (e2)) = (e0)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> ((op (e3) (unit)) = (e3)) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (~((op (e4) (e4)) = (e4))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e2)) = (e2)) -> ((op (e1) (e3)) = (e2)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e4)) = (e1))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e4)) = (e0))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H18f zenon_H163 zenon_H125 zenon_He9 zenon_H77 zenon_H9f zenon_H5f zenon_H76 zenon_H8e zenon_Hee zenon_He6 zenon_Hea zenon_H68 zenon_H61 zenon_H57 zenon_H73 zenon_H87 zenon_H83 zenon_H88 zenon_Hb zenon_He0 zenon_H11f zenon_H18a zenon_Hda zenon_H3b zenon_Hcc zenon_Hb1 zenon_H99 zenon_H91 zenon_H6e zenon_Hf2 zenon_H58 zenon_Hd3 zenon_Hd4 zenon_H175 zenon_H17 zenon_H2d zenon_H166 zenon_H116 zenon_H2c zenon_H115 zenon_H112 zenon_H16d zenon_H34 zenon_H16 zenon_H32 zenon_H81 zenon_H1f zenon_H20 zenon_H22 zenon_H49 zenon_Hc zenon_H4a zenon_Hc8 zenon_H144 zenon_H9b zenon_H18 zenon_H42 zenon_H7b zenon_He8 zenon_Hbb zenon_Hd9 zenon_H13c. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H18f); [ zenon_intro zenon_H164 | zenon_intro zenon_H190 ]. % 33.97/34.15 apply (zenon_L342_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H190); [ zenon_intro zenon_H183 | zenon_intro zenon_H191 ]. % 33.97/34.15 apply (zenon_L268_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H191); [ zenon_intro zenon_H189 | zenon_intro zenon_H192 ]. % 33.97/34.15 apply (zenon_L269_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H192); [ zenon_intro zenon_H18d | zenon_intro zenon_H140 ]. % 33.97/34.15 apply (zenon_L336_); trivial. % 33.97/34.15 exact (zenon_H13c zenon_H140). % 33.97/34.15 (* end of lemma zenon_L343_ *) % 33.97/34.15 assert (zenon_L344_ : ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> ((op (e3) (e2)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> ((op (e2) (unit)) = (e2)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> ((op (e2) (e1)) = (e2)) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (unit) (e1)) = (e1)) -> ((op (e1) (e0)) = (e1)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (unit) (e3)) = (e3)) -> ((e3) = (op (e2) (e4))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((e1) = (op (e4) (e2))) -> (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((op (e2) (e2)) = (e0))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> (~((e0) = (e3))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((e0) = (e1))) -> (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H1dc zenon_He0 zenon_H76 zenon_H8e zenon_H9f zenon_H88 zenon_H7b zenon_H81 zenon_H83 zenon_H87 zenon_H77 zenon_H6e zenon_H73 zenon_H57 zenon_H58 zenon_H61 zenon_H5f zenon_H68 zenon_Hea zenon_He6 zenon_He8 zenon_Hcc zenon_Hc8 zenon_H99 zenon_H9b zenon_Hb1 zenon_Hd3 zenon_He9 zenon_H91 zenon_Hd4 zenon_Hf2 zenon_Hd9 zenon_Hee zenon_H10b zenon_H42 zenon_H49 zenon_H50 zenon_Hb zenon_Hc zenon_H18 zenon_H16 zenon_H17 zenon_H1f zenon_H20 zenon_H22 zenon_H2d zenon_H2c zenon_H32 zenon_H34 zenon_H3b zenon_H109 zenon_H11f zenon_H12e zenon_Hc2 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Ha1 zenon_H163 zenon_H115 zenon_H18a zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H175 zenon_Hbb zenon_H18f zenon_H129 zenon_H12d zenon_Hef zenon_H148. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H12d); [ zenon_intro zenon_H10c | zenon_intro zenon_H12f ]. % 33.97/34.15 apply (zenon_L157_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H12f); [ zenon_intro zenon_H120 | zenon_intro zenon_H130 ]. % 33.97/34.15 apply (zenon_L175_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H130); [ zenon_intro zenon_H132 | zenon_intro zenon_H131 ]. % 33.97/34.15 exact (zenon_H12e zenon_H132). % 33.97/34.15 apply (zenon_or_s _ _ zenon_H131); [ zenon_intro zenon_H125 | zenon_intro zenon_H128 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He0); [ zenon_intro zenon_Hd | zenon_intro zenon_He2 ]. % 33.97/34.15 apply (zenon_L12_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He2); [ zenon_intro zenon_H4a | zenon_intro zenon_He3 ]. % 33.97/34.15 apply (zenon_L343_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He3); [ zenon_intro zenon_H59 | zenon_intro zenon_He4 ]. % 33.97/34.15 apply (zenon_L41_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_He4); [ zenon_intro zenon_He5 | zenon_intro zenon_H92 ]. % 33.97/34.15 apply (zenon_L136_); trivial. % 33.97/34.15 apply (zenon_L131_); trivial. % 33.97/34.15 apply (zenon_L179_); trivial. % 33.97/34.15 apply (zenon_L99_); trivial. % 33.97/34.15 apply (zenon_L120_); trivial. % 33.97/34.15 apply (zenon_L115_); trivial. % 33.97/34.15 apply (zenon_L85_); trivial. % 33.97/34.15 apply (zenon_L227_); trivial. % 33.97/34.15 (* end of lemma zenon_L344_ *) % 33.97/34.15 assert (zenon_L345_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((e1) = (op (e4) (e2))) -> ((op (unit) (e1)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> (~((op (e2) (e1)) = (op (e2) (e3)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> ((op (e3) (unit)) = (e3)) -> (~((op (e3) (e0)) = (op (e3) (e1)))) -> ((op (e2) (e1)) = (e2)) -> ((op (e2) (unit)) = (e2)) -> (~((op (e2) (e0)) = (op (e2) (e1)))) -> ((~((op (e4) (e4)) = (e0)))\/((op (e4) (e0)) = (e4))) -> ((~((op (e4) (e4)) = (e2)))\/((op (e4) (e2)) = (e4))) -> (((op (e0) (e4)) = (e2))\/(((op (e1) (e4)) = (e2))\/(((op (e2) (e4)) = (e2))\/(((op (e3) (e4)) = (e2))\/((op (e4) (e4)) = (e2)))))) -> (~((op (e2) (e0)) = (op (e2) (e4)))) -> (~((op (e2) (e1)) = (op (e2) (e4)))) -> (~((op (e1) (e2)) = (op (e1) (e4)))) -> (~((op (e0) (e2)) = (op (e0) (e4)))) -> ((~((op (e3) (e3)) = (e2)))\/((op (e3) (e2)) = (e3))) -> (~((op (e3) (e0)) = (op (e3) (e2)))) -> (~((op (e3) (e1)) = (op (e3) (e2)))) -> (~((op (e1) (e2)) = (op (e1) (e3)))) -> ((op (unit) (e0)) = (e0)) -> (~((op (e0) (e0)) = (op (e0) (e4)))) -> ((~((op (e3) (e3)) = (e3)))\/((op (e3) (e3)) = (e3))) -> (((op (e4) (e0)) = (e4))\/(((op (e4) (e1)) = (e4))\/(((op (e4) (e2)) = (e4))\/(((op (e4) (e3)) = (e4))\/((op (e4) (e4)) = (e4)))))) -> (~((op (e4) (e3)) = (op (e4) (e4)))) -> (~((op (e4) (e2)) = (op (e4) (e3)))) -> (~((op (e4) (e2)) = (op (e4) (e4)))) -> ((op (unit) (e4)) = (e4)) -> (~((op (e4) (e1)) = (op (e4) (e3)))) -> (~((op (e4) (e0)) = (op (e4) (e1)))) -> ((op (e4) (unit)) = (e4)) -> (~((op (e4) (e0)) = (op (e4) (e2)))) -> (~((op (e4) (e0)) = (op (e4) (e3)))) -> (~((op (e4) (e1)) = (op (e4) (e4)))) -> (~((op (e4) (e0)) = (op (e4) (e4)))) -> ((~((op (e4) (e4)) = (e4)))\/((op (e4) (e4)) = (e4))) -> (~((op (e3) (e0)) = (op (e3) (e3)))) -> (~((op (e2) (e0)) = (op (e2) (e3)))) -> (~((op (e3) (e1)) = (op (e3) (e3)))) -> (~((op (e3) (e2)) = (op (e3) (e3)))) -> (~((op (e3) (e3)) = (op (e3) (e4)))) -> (~((op (e3) (e2)) = (op (e3) (e4)))) -> (~((op (e3) (e1)) = (op (e3) (e4)))) -> (~((op (e3) (e0)) = (op (e3) (e4)))) -> (((op (e3) (e0)) = (e3))\/(((op (e3) (e1)) = (e3))\/(((op (e3) (e2)) = (e3))\/(((op (e3) (e3)) = (e3))\/((op (e3) (e4)) = (e3)))))) -> (((op (e0) (e3)) = (e2))\/(((op (e1) (e3)) = (e2))\/(((op (e2) (e3)) = (e2))\/(((op (e3) (e3)) = (e2))\/((op (e4) (e3)) = (e2)))))) -> (~((op (e1) (e1)) = (op (e1) (e4)))) -> ((e0) = (op (op (e4) (e2)) (op (e4) (e2)))) -> (~((e0) = (e3))) -> (~((op (e0) (e1)) = (op (e0) (e4)))) -> (~((op (e1) (e3)) = (op (e1) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e4)))) -> (~((e1) = (e3))) -> (((op (e0) (e4)) = (e1))\/(((op (e1) (e4)) = (e1))\/(((op (e2) (e4)) = (e1))\/(((op (e3) (e4)) = (e1))\/((op (e4) (e4)) = (e1)))))) -> (((op (e0) (e4)) = (e0))\/(((op (e1) (e4)) = (e0))\/(((op (e2) (e4)) = (e0))\/(((op (e3) (e4)) = (e0))\/((op (e4) (e4)) = (e0)))))) -> (~((op (e0) (e2)) = (op (e0) (e3)))) -> ((op (unit) (e2)) = (e2)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((op (e1) (e0)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (unit)) = (e1)) -> ((~((op (e4) (e4)) = (e1)))\/((op (e4) (e1)) = (e4))) -> (~((op (e0) (e0)) = (op (e0) (e2)))) -> ((op (e0) (unit)) = (e0)) -> (~((op (e1) (e1)) = (op (e1) (e2)))) -> (~((op (e2) (e2)) = (e0))) -> (~((e0) = (e1))) -> (((op (e0) (e2)) = (e0))\/(((op (e1) (e2)) = (e0))\/(((op (e2) (e2)) = (e0))\/(((op (e3) (e2)) = (e0))\/((op (e4) (e2)) = (e0)))))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H3b zenon_H34 zenon_H16 zenon_H32 zenon_H6e zenon_H22 zenon_H20 zenon_H1f zenon_H5f zenon_H61 zenon_Hf2 zenon_H58 zenon_Hbb zenon_H148 zenon_Hef zenon_Hc2 zenon_Hb6 zenon_Hb9 zenon_Haa zenon_Ha1 zenon_Hf1 zenon_H8e zenon_H9f zenon_H49 zenon_H42 zenon_H163 zenon_Hee zenon_Hd9 zenon_Hd4 zenon_H91 zenon_He9 zenon_Hd3 zenon_Hb1 zenon_H9b zenon_H99 zenon_Hc8 zenon_Hcc zenon_He8 zenon_He6 zenon_Hea zenon_H68 zenon_H57 zenon_H73 zenon_H77 zenon_H87 zenon_H83 zenon_H81 zenon_H7b zenon_H88 zenon_He0 zenon_H115 zenon_H11f zenon_H18a zenon_H166 zenon_H116 zenon_H112 zenon_H16d zenon_H175 zenon_H18f zenon_Hb zenon_Hc zenon_H18 zenon_H17 zenon_H2d zenon_H2c zenon_H1dc zenon_H10b zenon_H50 zenon_H109 zenon_H12e zenon_H129 zenon_H12d. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H88); [ zenon_intro zenon_H60 | zenon_intro zenon_H8a ]. % 33.97/34.15 apply (zenon_L187_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H8a); [ zenon_intro zenon_H72 | zenon_intro zenon_H8b ]. % 33.97/34.15 apply (zenon_L339_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H8b); [ zenon_intro zenon_H76 | zenon_intro zenon_H8c ]. % 33.97/34.15 apply (zenon_L344_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H8c); [ zenon_intro zenon_H8d | zenon_intro zenon_H7c ]. % 33.97/34.15 exact (zenon_H89 zenon_H8d). % 33.97/34.15 apply (zenon_L40_); trivial. % 33.97/34.15 apply (zenon_L133_); trivial. % 33.97/34.15 (* end of lemma zenon_L345_ *) % 33.97/34.15 assert (zenon_L346_ : (((unit) = (e0))\/(((unit) = (e1))\/(((unit) = (e2))\/(((unit) = (e3))\/((unit) = (e4)))))) -> ((op (e1) (e3)) = (e1)) -> (~((op (e1) (e0)) = (op (e1) (e1)))) -> ((e3) = (op (e2) (e4))) -> ((op (unit) (e3)) = (e3)) -> (~((op (e2) (e3)) = (op (e2) (e4)))) -> (~((op (e1) (e0)) = (op (e1) (e3)))) -> ((op (e1) (e0)) = (e1)) -> ((op (e1) (unit)) = (e1)) -> (~((op (e4) (e1)) = (op (e4) (e2)))) -> ((op (unit) (e1)) = (e1)) -> ((e1) = (op (e4) (e2))) -> False). % 33.97/34.15 do 0 intro. intros zenon_H3b zenon_H10f zenon_H18 zenon_H22 zenon_H20 zenon_H1f zenon_H2d zenon_H17 zenon_H2c zenon_H32 zenon_H16 zenon_H34. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3b); [ zenon_intro zenon_H9 | zenon_intro zenon_H3c ]. % 33.97/34.15 apply (zenon_L161_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3c); [ zenon_intro zenon_H14 | zenon_intro zenon_H3d ]. % 33.97/34.15 apply (zenon_L6_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3d); [ zenon_intro zenon_H21 | zenon_intro zenon_H3e ]. % 33.97/34.15 apply (zenon_L8_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H3e); [ zenon_intro zenon_H2a | zenon_intro zenon_H33 ]. % 33.97/34.15 apply (zenon_L10_); trivial. % 33.97/34.15 apply (zenon_L11_); trivial. % 33.97/34.15 (* end of lemma zenon_L346_ *) % 33.97/34.15 apply NNPP. intro zenon_G. % 33.97/34.15 apply (zenon_and_s _ _ ax1). zenon_intro zenon_H1e2. zenon_intro zenon_H1e1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1e1). zenon_intro zenon_H1e4. zenon_intro zenon_H1e3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1e3). zenon_intro zenon_H1e6. zenon_intro zenon_H1e5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1e5). zenon_intro zenon_H1e8. zenon_intro zenon_H1e7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1e7). zenon_intro zenon_H1ea. zenon_intro zenon_H1e9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1e9). zenon_intro zenon_H1ec. zenon_intro zenon_H1eb. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1eb). zenon_intro zenon_H1ee. zenon_intro zenon_H1ed. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1ed). zenon_intro zenon_H1f0. zenon_intro zenon_H1ef. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1ef). zenon_intro zenon_H1f2. zenon_intro zenon_H1f1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1f1). zenon_intro zenon_H1f4. zenon_intro zenon_H1f3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1f3). zenon_intro zenon_H1f6. zenon_intro zenon_H1f5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1f5). zenon_intro zenon_H1f8. zenon_intro zenon_H1f7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1f7). zenon_intro zenon_H1a3. zenon_intro zenon_H1f9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1f9). zenon_intro zenon_H1fb. zenon_intro zenon_H1fa. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1fa). zenon_intro zenon_H1fd. zenon_intro zenon_H1fc. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1fc). zenon_intro zenon_H1ff. zenon_intro zenon_H1fe. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H1fe). zenon_intro zenon_H201. zenon_intro zenon_H200. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H200). zenon_intro zenon_H203. zenon_intro zenon_H202. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H202). zenon_intro zenon_H1b9. zenon_intro zenon_H204. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H204). zenon_intro zenon_H206. zenon_intro zenon_H205. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H205). zenon_intro zenon_H208. zenon_intro zenon_H207. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H207). zenon_intro zenon_H20a. zenon_intro zenon_H209. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H209). zenon_intro zenon_H20c. zenon_intro zenon_H20b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H20b). zenon_intro zenon_H20d. zenon_intro zenon_H13e. % 33.97/34.15 apply (zenon_and_s _ _ ax2). zenon_intro zenon_H42. zenon_intro zenon_H20e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H20e). zenon_intro zenon_H50. zenon_intro zenon_H20f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H20f). zenon_intro zenon_H16. zenon_intro zenon_H210. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H210). zenon_intro zenon_H2c. zenon_intro zenon_H211. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H211). zenon_intro zenon_Hc. zenon_intro zenon_H212. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H212). zenon_intro zenon_H58. zenon_intro zenon_H213. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H213). zenon_intro zenon_H20. zenon_intro zenon_H214. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H214). zenon_intro zenon_H5f. zenon_intro zenon_H215. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H215). zenon_intro zenon_Hd3. zenon_intro zenon_H216. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H216). zenon_intro zenon_H99. zenon_intro zenon_H3b. % 33.97/34.15 apply (zenon_and_s _ _ ax3). zenon_intro zenon_H218. zenon_intro zenon_H217. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H217). zenon_intro zenon_H21a. zenon_intro zenon_H219. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H219). zenon_intro zenon_H21c. zenon_intro zenon_H21b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H21b). zenon_intro zenon_H21e. zenon_intro zenon_H21d. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H21d). zenon_intro zenon_H220. zenon_intro zenon_H21f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H21f). zenon_intro zenon_H222. zenon_intro zenon_H221. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H221). zenon_intro zenon_H224. zenon_intro zenon_H223. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H223). zenon_intro zenon_H226. zenon_intro zenon_H225. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H225). zenon_intro zenon_H228. zenon_intro zenon_H227. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H227). zenon_intro zenon_H22a. zenon_intro zenon_H229. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H229). zenon_intro zenon_H22c. zenon_intro zenon_H22b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H22b). zenon_intro zenon_H159. zenon_intro zenon_H22d. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H22d). zenon_intro zenon_H117. zenon_intro zenon_H22e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H22e). zenon_intro zenon_H230. zenon_intro zenon_H22f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H22f). zenon_intro zenon_H232. zenon_intro zenon_H231. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H231). zenon_intro zenon_H234. zenon_intro zenon_H233. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H233). zenon_intro zenon_H236. zenon_intro zenon_H235. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H235). zenon_intro zenon_H1d5. zenon_intro zenon_H237. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H237). zenon_intro zenon_H239. zenon_intro zenon_H238. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H238). zenon_intro zenon_H23b. zenon_intro zenon_H23a. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H23a). zenon_intro zenon_H23d. zenon_intro zenon_H23c. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H23c). zenon_intro zenon_H12d. zenon_intro zenon_H23e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H23e). zenon_intro zenon_H240. zenon_intro zenon_H23f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H23f). zenon_intro zenon_H242. zenon_intro zenon_H241. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H241). zenon_intro zenon_Hf6. zenon_intro zenon_H243. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H243). zenon_intro zenon_H245. zenon_intro zenon_H244. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H244). zenon_intro zenon_H247. zenon_intro zenon_H246. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H246). zenon_intro zenon_H249. zenon_intro zenon_H248. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H248). zenon_intro zenon_H24b. zenon_intro zenon_H24a. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H24a). zenon_intro zenon_H24d. zenon_intro zenon_H24c. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H24c). zenon_intro zenon_H24f. zenon_intro zenon_H24e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H24e). zenon_intro zenon_H251. zenon_intro zenon_H250. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H250). zenon_intro zenon_H253. zenon_intro zenon_H252. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H252). zenon_intro zenon_H255. zenon_intro zenon_H254. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H254). zenon_intro zenon_H257. zenon_intro zenon_H256. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H256). zenon_intro zenon_He0. zenon_intro zenon_H258. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H258). zenon_intro zenon_H88. zenon_intro zenon_H259. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H259). zenon_intro zenon_H25b. zenon_intro zenon_H25a. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H25a). zenon_intro zenon_H25d. zenon_intro zenon_H25c. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H25c). zenon_intro zenon_H25f. zenon_intro zenon_H25e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H25e). zenon_intro zenon_H261. zenon_intro zenon_H260. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H260). zenon_intro zenon_H18f. zenon_intro zenon_H262. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H262). zenon_intro zenon_H264. zenon_intro zenon_H263. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H263). zenon_intro zenon_H175. zenon_intro zenon_H265. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H265). zenon_intro zenon_H267. zenon_intro zenon_H266. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H266). zenon_intro zenon_Hc2. zenon_intro zenon_H268. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H268). zenon_intro zenon_H26a. zenon_intro zenon_H269. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H269). zenon_intro zenon_H26c. zenon_intro zenon_H26b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H26b). zenon_intro zenon_Hd9. zenon_intro zenon_H26d. % 33.97/34.15 apply (zenon_and_s _ _ ax4). zenon_intro zenon_H26f. zenon_intro zenon_H26e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H26e). zenon_intro zenon_H271. zenon_intro zenon_H270. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H270). zenon_intro zenon_H273. zenon_intro zenon_H272. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H272). zenon_intro zenon_H275. zenon_intro zenon_H274. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H274). zenon_intro zenon_H277. zenon_intro zenon_H276. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H276). zenon_intro zenon_H279. zenon_intro zenon_H278. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H278). zenon_intro zenon_H27b. zenon_intro zenon_H27a. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H27a). zenon_intro zenon_H27d. zenon_intro zenon_H27c. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H27c). zenon_intro zenon_H27f. zenon_intro zenon_H27e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H27e). zenon_intro zenon_H281. zenon_intro zenon_H280. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H280). zenon_intro zenon_H283. zenon_intro zenon_H282. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H282). zenon_intro zenon_H285. zenon_intro zenon_H284. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H284). zenon_intro zenon_H287. zenon_intro zenon_H286. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H286). zenon_intro zenon_H289. zenon_intro zenon_H288. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H288). zenon_intro zenon_H14b. zenon_intro zenon_H28a. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H28a). zenon_intro zenon_H150. zenon_intro zenon_H28b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H28b). zenon_intro zenon_H155. zenon_intro zenon_H28c. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H28c). zenon_intro zenon_H28e. zenon_intro zenon_H28d. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H28d). zenon_intro zenon_H290. zenon_intro zenon_H28f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H28f). zenon_intro zenon_H292. zenon_intro zenon_H291. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H291). zenon_intro zenon_H294. zenon_intro zenon_H293. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H293). zenon_intro zenon_H296. zenon_intro zenon_H295. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H295). zenon_intro zenon_H298. zenon_intro zenon_H297. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H297). zenon_intro zenon_H29a. zenon_intro zenon_H299. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H299). zenon_intro zenon_H29c. zenon_intro zenon_H29b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H29b). zenon_intro zenon_H29e. zenon_intro zenon_H29d. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H29d). zenon_intro zenon_H2a0. zenon_intro zenon_H29f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H29f). zenon_intro zenon_H2a2. zenon_intro zenon_H2a1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2a1). zenon_intro zenon_H2a4. zenon_intro zenon_H2a3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2a3). zenon_intro zenon_H2a6. zenon_intro zenon_H2a5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2a5). zenon_intro zenon_H2a8. zenon_intro zenon_H2a7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2a7). zenon_intro zenon_H2aa. zenon_intro zenon_H2a9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2a9). zenon_intro zenon_H2ac. zenon_intro zenon_H2ab. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2ab). zenon_intro zenon_H2ae. zenon_intro zenon_H2ad. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2ad). zenon_intro zenon_H2b0. zenon_intro zenon_H2af. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2af). zenon_intro zenon_H2b2. zenon_intro zenon_H2b1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2b1). zenon_intro zenon_H2b4. zenon_intro zenon_H2b3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2b3). zenon_intro zenon_H2b6. zenon_intro zenon_H2b5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2b5). zenon_intro zenon_H2b8. zenon_intro zenon_H2b7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2b7). zenon_intro zenon_H2ba. zenon_intro zenon_H2b9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2b9). zenon_intro zenon_H2bc. zenon_intro zenon_H2bb. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2bb). zenon_intro zenon_H2be. zenon_intro zenon_H2bd. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2bd). zenon_intro zenon_H2c0. zenon_intro zenon_H2bf. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2bf). zenon_intro zenon_H2c2. zenon_intro zenon_H2c1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2c1). zenon_intro zenon_H2c4. zenon_intro zenon_H2c3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2c3). zenon_intro zenon_H2c6. zenon_intro zenon_H2c5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2c5). zenon_intro zenon_H2c8. zenon_intro zenon_H2c7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2c7). zenon_intro zenon_H2ca. zenon_intro zenon_H2c9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2c9). zenon_intro zenon_H2cc. zenon_intro zenon_H2cb. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2cb). zenon_intro zenon_H2ce. zenon_intro zenon_H2cd. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2cd). zenon_intro zenon_H41. zenon_intro zenon_H2cf. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2cf). zenon_intro zenon_H10b. zenon_intro zenon_H2d0. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d0). zenon_intro zenon_H15f. zenon_intro zenon_H2d1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d1). zenon_intro zenon_H163. zenon_intro zenon_H2d2. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d2). zenon_intro zenon_H137. zenon_intro zenon_H2d3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d3). zenon_intro zenon_H51. zenon_intro zenon_H2d4. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d4). zenon_intro zenon_H166. zenon_intro zenon_H2d5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d5). zenon_intro zenon_Hb. zenon_intro zenon_H2d6. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d6). zenon_intro zenon_Ha1. zenon_intro zenon_H2d7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d7). zenon_intro zenon_H167. zenon_intro zenon_H2d8. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d8). zenon_intro zenon_H18. zenon_intro zenon_H2d9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2d9). zenon_intro zenon_H103. zenon_intro zenon_H2da. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2da). zenon_intro zenon_H2d. zenon_intro zenon_H2db. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2db). zenon_intro zenon_H112. zenon_intro zenon_H2dc. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2dc). zenon_intro zenon_H109. zenon_intro zenon_H2dd. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2dd). zenon_intro zenon_H111. zenon_intro zenon_H2de. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2de). zenon_intro zenon_H115. zenon_intro zenon_H2df. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2df). zenon_intro zenon_H49. zenon_intro zenon_H2e0. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e0). zenon_intro zenon_Haa. zenon_intro zenon_H2e1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e1). zenon_intro zenon_H116. zenon_intro zenon_H2e2. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e2). zenon_intro zenon_Hbb. zenon_intro zenon_H2e3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e3). zenon_intro zenon_Hfc. zenon_intro zenon_H2e4. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e4). zenon_intro zenon_H57. zenon_intro zenon_H2e5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e5). zenon_intro zenon_Hb6. zenon_intro zenon_H2e6. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e6). zenon_intro zenon_Hfe. zenon_intro zenon_H2e7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e7). zenon_intro zenon_H6e. zenon_intro zenon_H2e8. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e8). zenon_intro zenon_Hb9. zenon_intro zenon_H2e9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2e9). zenon_intro zenon_Hff. zenon_intro zenon_H2ea. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2ea). zenon_intro zenon_H2ec. zenon_intro zenon_H2eb. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2eb). zenon_intro zenon_H1f. zenon_intro zenon_H2ed. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2ed). zenon_intro zenon_H61. zenon_intro zenon_H2ee. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2ee). zenon_intro zenon_H8e. zenon_intro zenon_H2ef. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2ef). zenon_intro zenon_H68. zenon_intro zenon_H2f0. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f0). zenon_intro zenon_H7b. zenon_intro zenon_H2f1. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f1). zenon_intro zenon_H9f. zenon_intro zenon_H2f2. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f2). zenon_intro zenon_H73. zenon_intro zenon_H2f3. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f3). zenon_intro zenon_H81. zenon_intro zenon_H2f4. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f4). zenon_intro zenon_H77. zenon_intro zenon_H2f5. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f5). zenon_intro zenon_H83. zenon_intro zenon_H2f6. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f6). zenon_intro zenon_H87. zenon_intro zenon_H2f7. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f7). zenon_intro zenon_H9b. zenon_intro zenon_H2f8. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f8). zenon_intro zenon_Hc8. zenon_intro zenon_H2f9. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2f9). zenon_intro zenon_Hcc. zenon_intro zenon_H2fa. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2fa). zenon_intro zenon_He6. zenon_intro zenon_H2fb. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2fb). zenon_intro zenon_H32. zenon_intro zenon_H2fc. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2fc). zenon_intro zenon_Hb1. zenon_intro zenon_H2fd. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2fd). zenon_intro zenon_He8. zenon_intro zenon_H2fe. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2fe). zenon_intro zenon_H91. zenon_intro zenon_H2ff. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H2ff). zenon_intro zenon_He9. zenon_intro zenon_Hd4. % 33.97/34.15 apply (zenon_and_s _ _ ax5). zenon_intro zenon_H129. zenon_intro zenon_H300. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H300). zenon_intro zenon_H302. zenon_intro zenon_H301. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H301). zenon_intro zenon_H18a. zenon_intro zenon_H303. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H303). zenon_intro zenon_H305. zenon_intro zenon_H304. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H304). zenon_intro zenon_H307. zenon_intro zenon_H306. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H306). zenon_intro zenon_H16d. zenon_intro zenon_H308. % 33.97/34.15 apply (zenon_and_s _ _ ax6). zenon_intro zenon_H11f. zenon_intro zenon_H309. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H309). zenon_intro zenon_H34. zenon_intro zenon_H22. % 33.97/34.15 apply zenon_G. zenon_intro zenon_H30a. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H30a). zenon_intro zenon_H30c. zenon_intro zenon_H30b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H30b). zenon_intro zenon_H30e. zenon_intro zenon_H30d. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H30d). zenon_intro zenon_H310. zenon_intro zenon_H30f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H30f). zenon_intro zenon_H312. zenon_intro zenon_H311. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H311). zenon_intro zenon_H314. zenon_intro zenon_H313. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H313). zenon_intro zenon_H162. zenon_intro zenon_H315. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H315). zenon_intro zenon_H149. zenon_intro zenon_H316. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H316). zenon_intro zenon_H318. zenon_intro zenon_H317. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H317). zenon_intro zenon_H31a. zenon_intro zenon_H319. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H319). zenon_intro zenon_H31c. zenon_intro zenon_H31b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H31b). zenon_intro zenon_H133. zenon_intro zenon_H31d. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H31d). zenon_intro zenon_H1de. zenon_intro zenon_H31e. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H31e). zenon_intro zenon_H101. zenon_intro zenon_H31f. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H31f). zenon_intro zenon_H1df. zenon_intro zenon_H320. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H320). zenon_intro zenon_H1e0. zenon_intro zenon_H321. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H321). zenon_intro zenon_H323. zenon_intro zenon_H322. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H322). zenon_intro zenon_H1db. zenon_intro zenon_H324. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H324). zenon_intro zenon_Hf1. zenon_intro zenon_H325. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H325). zenon_intro zenon_Hee. zenon_intro zenon_H326. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H326). zenon_intro zenon_H1dd. zenon_intro zenon_H327. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H327). zenon_intro zenon_H148. zenon_intro zenon_H328. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H328). zenon_intro zenon_H1dc. zenon_intro zenon_H329. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H329). zenon_intro zenon_Hef. zenon_intro zenon_H32a. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H32a). zenon_intro zenon_H147. zenon_intro zenon_H32b. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H32b). zenon_intro zenon_Hea. zenon_intro zenon_H32c. % 33.97/34.15 apply (zenon_and_s _ _ zenon_H32c). zenon_intro zenon_H1c8. zenon_intro zenon_H32d. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H30c); [ zenon_intro zenon_H32e | zenon_intro zenon_H179 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H162); [ zenon_intro zenon_H15a | zenon_intro zenon_H17 ]. % 33.97/34.15 apply (zenon_L220_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H149); [ zenon_intro zenon_H118 | zenon_intro zenon_H11b ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H133); [ zenon_intro zenon_H12e | zenon_intro zenon_Hba ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H218); [ zenon_intro zenon_H179 | zenon_intro zenon_H32f ]. % 33.97/34.15 exact (zenon_H32e zenon_H179). % 33.97/34.15 apply (zenon_or_s _ _ zenon_H32f); [ zenon_intro zenon_H43 | zenon_intro zenon_H330 ]. % 33.97/34.15 apply (zenon_L181_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H330); [ zenon_intro zenon_H10c | zenon_intro zenon_H331 ]. % 33.97/34.15 apply (zenon_L221_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H331); [ zenon_intro zenon_H160 | zenon_intro zenon_H164 ]. % 33.97/34.15 apply (zenon_L232_); trivial. % 33.97/34.15 apply (zenon_L236_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf1); [ zenon_intro zenon_He1 | zenon_intro zenon_H76 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hee); [ zenon_intro zenon_H89 | zenon_intro zenon_H8d ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H148); [ zenon_intro zenon_H13c | zenon_intro zenon_H9a ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.15 apply (zenon_L237_); trivial. % 33.97/34.15 apply (zenon_L246_); trivial. % 33.97/34.15 apply (zenon_L249_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H1dc); [ zenon_intro zenon_H144 | zenon_intro zenon_Ha5 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hef); [ zenon_intro zenon_Hc3 | zenon_intro zenon_Hc9 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hea); [ zenon_intro zenon_Hda | zenon_intro zenon_Hde ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H218); [ zenon_intro zenon_H179 | zenon_intro zenon_H32f ]. % 33.97/34.15 exact (zenon_H32e zenon_H179). % 33.97/34.15 apply (zenon_or_s _ _ zenon_H32f); [ zenon_intro zenon_H43 | zenon_intro zenon_H330 ]. % 33.97/34.15 apply (zenon_L253_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H330); [ zenon_intro zenon_H10c | zenon_intro zenon_H331 ]. % 33.97/34.15 apply (zenon_L154_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H331); [ zenon_intro zenon_H160 | zenon_intro zenon_H164 ]. % 33.97/34.15 apply (zenon_L254_); trivial. % 33.97/34.15 apply (zenon_L257_); trivial. % 33.97/34.15 apply (zenon_L99_); trivial. % 33.97/34.15 apply (zenon_L246_); trivial. % 33.97/34.15 apply (zenon_L258_); trivial. % 33.97/34.15 apply (zenon_L111_); trivial. % 33.97/34.15 apply (zenon_L259_); trivial. % 33.97/34.15 apply (zenon_L260_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H162); [ zenon_intro zenon_H15a | zenon_intro zenon_H17 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H159); [ zenon_intro zenon_H43 | zenon_intro zenon_H15b ]. % 33.97/34.15 apply (zenon_L262_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15b); [ zenon_intro zenon_H15d | zenon_intro zenon_H15c ]. % 33.97/34.15 exact (zenon_H15a zenon_H15d). % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15c); [ zenon_intro zenon_H14a | zenon_intro zenon_H15e ]. % 33.97/34.15 apply (zenon_L217_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H15e); [ zenon_intro zenon_H14f | zenon_intro zenon_H154 ]. % 33.97/34.15 apply (zenon_L218_); trivial. % 33.97/34.15 apply (zenon_L219_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H31a); [ zenon_intro zenon_H1d6 | zenon_intro zenon_H10f ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H133); [ zenon_intro zenon_H12e | zenon_intro zenon_Hba ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H101); [ zenon_intro zenon_Hf7 | zenon_intro zenon_Hfb ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H12d); [ zenon_intro zenon_H10c | zenon_intro zenon_H12f ]. % 33.97/34.15 apply (zenon_L221_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H12f); [ zenon_intro zenon_H120 | zenon_intro zenon_H130 ]. % 33.97/34.15 apply (zenon_L175_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_H130); [ zenon_intro zenon_H132 | zenon_intro zenon_H131 ]. % 33.97/34.15 exact (zenon_H12e zenon_H132). % 33.97/34.15 apply (zenon_or_s _ _ zenon_H131); [ zenon_intro zenon_H125 | zenon_intro zenon_H128 ]. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf6); [ zenon_intro zenon_Hba | zenon_intro zenon_Hf8 ]. % 33.97/34.15 apply (zenon_L333_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf8); [ zenon_intro zenon_Hf2 | zenon_intro zenon_Hf9 ]. % 33.97/34.15 apply (zenon_L345_); trivial. % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hf9); [ zenon_intro zenon_Hfb | zenon_intro zenon_Hfa ]. % 33.97/34.15 exact (zenon_Hf7 zenon_Hfb). % 33.97/34.15 apply (zenon_or_s _ _ zenon_Hfa); [ zenon_intro zenon_H59 | zenon_intro zenon_Hb7 ]. % 33.97/34.15 apply (zenon_L135_); trivial. % 33.97/34.15 apply (zenon_L215_); trivial. % 33.97/34.15 apply (zenon_L179_); trivial. % 33.97/34.15 apply (zenon_L142_); trivial. % 33.97/34.15 apply (zenon_L333_); trivial. % 33.97/34.15 apply (zenon_L346_); trivial. % 33.97/34.15 Qed. % 33.97/34.15 % SZS output end Proof % 33.97/34.15 (* END-PROOF *) % 33.97/34.15 nodes searched: 247582 % 33.97/34.15 max branch formulas: 956 % 33.97/34.15 proof nodes created: 25012 % 33.97/34.15 formulas created: 169848 % 33.97/34.15 %------------------------------------------------------------------------------