TSTP Solution File: MGT034+2 by Zenon---0.7.1

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Zenon---0.7.1
% Problem  : MGT034+2 : TPTP v8.1.0. Released v2.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : run_zenon %s %d

% Computer : n019.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 : Sun Jul 17 22:31:04 EDT 2022

% Result   : Theorem 0.77s 0.96s
% Output   : Proof 0.77s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.12  % Problem  : MGT034+2 : TPTP v8.1.0. Released v2.0.0.
% 0.11/0.12  % Command  : run_zenon %s %d
% 0.12/0.34  % Computer : n019.cluster.edu
% 0.12/0.34  % Model    : x86_64 x86_64
% 0.12/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.34  % Memory   : 8042.1875MB
% 0.12/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.34  % CPULimit : 300
% 0.12/0.34  % WCLimit  : 600
% 0.12/0.34  % DateTime : Thu Jun  9 10:27:40 EDT 2022
% 0.12/0.34  % CPUTime  : 
% 0.77/0.96  (* PROOF-FOUND *)
% 0.77/0.96  % SZS status Theorem
% 0.77/0.96  (* BEGIN-PROOF *)
% 0.77/0.96  % SZS output start Proof
% 0.77/0.96  Theorem prove_t3 : (forall E : zenon_U, (forall T : zenon_U, (((environment E)/\((in_environment E (critical_point E))/\((greater_or_equal T (appear (efficient_producers) E))/\(greater (critical_point E) T))))->(selection_favors (first_movers) (efficient_producers) T)))).
% 0.77/0.96  Proof.
% 0.77/0.96  assert (zenon_L1_ : forall (zenon_TE_w : zenon_U), (~(greater_or_equal (appear (efficient_producers) zenon_TE_w) (appear (efficient_producers) zenon_TE_w))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H15.
% 0.77/0.96  generalize (mp_greater_or_equal (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H17.
% 0.77/0.96  generalize (zenon_H17 (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H18.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H18); [ zenon_intro zenon_H15; zenon_intro zenon_H1b | zenon_intro zenon_H1a; zenon_intro zenon_H19 ].
% 0.77/0.96  apply (zenon_notor_s _ _ zenon_H1b). zenon_intro zenon_H1d. zenon_intro zenon_H1c.
% 0.77/0.96  apply zenon_H1c. apply refl_equal.
% 0.77/0.96  exact (zenon_H15 zenon_H1a).
% 0.77/0.96  (* end of lemma zenon_L1_ *)
% 0.77/0.96  assert (zenon_L2_ : forall (zenon_TE_w : zenon_U), (environment zenon_TE_w) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (~(subpopulations (first_movers) (efficient_producers) zenon_TE_w (critical_point zenon_TE_w))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H1e zenon_H1f zenon_H20.
% 0.77/0.96  generalize (mp_critical_point_means_FM_and_EP zenon_TE_w). zenon_intro zenon_H21.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H21); [ zenon_intro zenon_H23 | zenon_intro zenon_H22 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H23); [ zenon_intro zenon_H25 | zenon_intro zenon_H24 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  exact (zenon_H24 zenon_H1f).
% 0.77/0.96  exact (zenon_H20 zenon_H22).
% 0.77/0.96  (* end of lemma zenon_L2_ *)
% 0.77/0.96  assert (zenon_L3_ : forall (zenon_TE_w : zenon_U), (~(greater_or_equal (critical_point zenon_TE_w) (critical_point zenon_TE_w))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H26.
% 0.77/0.96  generalize (mp_greater_or_equal (critical_point zenon_TE_w)). zenon_intro zenon_H27.
% 0.77/0.96  generalize (zenon_H27 (critical_point zenon_TE_w)). zenon_intro zenon_H28.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H28); [ zenon_intro zenon_H26; zenon_intro zenon_H2b | zenon_intro zenon_H2a; zenon_intro zenon_H29 ].
% 0.77/0.96  apply (zenon_notor_s _ _ zenon_H2b). zenon_intro zenon_H2d. zenon_intro zenon_H2c.
% 0.77/0.96  apply zenon_H2c. apply refl_equal.
% 0.77/0.96  exact (zenon_H26 zenon_H2a).
% 0.77/0.96  (* end of lemma zenon_L3_ *)
% 0.77/0.96  assert (zenon_L4_ : forall (zenon_TE_w : zenon_U), (forall T : zenon_U, (((environment zenon_TE_w)/\(subpopulations (first_movers) (efficient_producers) zenon_TE_w T))->(greater_or_equal T (appear (efficient_producers) zenon_TE_w)))) -> (environment zenon_TE_w) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (~((greater (critical_point zenon_TE_w) (appear (efficient_producers) zenon_TE_w))\/((critical_point zenon_TE_w) = (appear (efficient_producers) zenon_TE_w)))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H2e zenon_H1e zenon_H1f zenon_H2f.
% 0.77/0.96  generalize (zenon_H2e (critical_point zenon_TE_w)). zenon_intro zenon_H30.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H30); [ zenon_intro zenon_H32 | zenon_intro zenon_H31 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H32); [ zenon_intro zenon_H25 | zenon_intro zenon_H20 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  generalize (mp_greater_or_equal (critical_point zenon_TE_w)). zenon_intro zenon_H27.
% 0.77/0.96  generalize (zenon_H27 (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H33.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H33); [ zenon_intro zenon_H35; zenon_intro zenon_H2f | zenon_intro zenon_H31; zenon_intro zenon_H34 ].
% 0.77/0.96  exact (zenon_H35 zenon_H31).
% 0.77/0.96  exact (zenon_H2f zenon_H34).
% 0.77/0.96  (* end of lemma zenon_L4_ *)
% 0.77/0.96  assert (zenon_L5_ : forall (zenon_TE_w : zenon_U), (environment zenon_TE_w) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (~(greater_or_equal (critical_point zenon_TE_w) (appear (efficient_producers) zenon_TE_w))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H1e zenon_H1f zenon_H35.
% 0.77/0.96  generalize (mp_greater_or_equal (critical_point zenon_TE_w)). zenon_intro zenon_H27.
% 0.77/0.96  generalize (zenon_H27 (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H33.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H33); [ zenon_intro zenon_H35; zenon_intro zenon_H2f | zenon_intro zenon_H31; zenon_intro zenon_H34 ].
% 0.77/0.96  generalize (mp_FM_and_EP_members_EP_appeared zenon_TE_w). zenon_intro zenon_H2e.
% 0.77/0.96  apply (zenon_L4_ zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_H35 zenon_H31).
% 0.77/0.96  (* end of lemma zenon_L5_ *)
% 0.77/0.96  assert (zenon_L6_ : forall (zenon_TE_w : zenon_U), (forall T : zenon_U, (((environment zenon_TE_w)/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w (critical_point zenon_TE_w))/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w (critical_point zenon_TE_w))/\((greater_or_equal T (critical_point zenon_TE_w))/\(greater_or_equal (critical_point zenon_TE_w) T)))))->(subpopulations (first_movers) (efficient_producers) zenon_TE_w T))) -> (environment zenon_TE_w) -> (subpopulations (first_movers) (efficient_producers) zenon_TE_w (critical_point zenon_TE_w)) -> ((critical_point zenon_TE_w) = (appear (efficient_producers) zenon_TE_w)) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (~(subpopulations (first_movers) (efficient_producers) zenon_TE_w (appear (efficient_producers) zenon_TE_w))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H36 zenon_H1e zenon_H22 zenon_H37 zenon_H1f zenon_H38.
% 0.77/0.96  generalize (zenon_H36 (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H39.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H39); [ zenon_intro zenon_H3b | zenon_intro zenon_H3a ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H3b); [ zenon_intro zenon_H25 | zenon_intro zenon_H3c ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H3c); [ zenon_intro zenon_H20 | zenon_intro zenon_H3d ].
% 0.77/0.96  exact (zenon_H20 zenon_H22).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H3d); [ zenon_intro zenon_H20 | zenon_intro zenon_H3e ].
% 0.77/0.96  exact (zenon_H20 zenon_H22).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H3e); [ zenon_intro zenon_H3f | zenon_intro zenon_H35 ].
% 0.77/0.96  generalize (mp_greater_or_equal (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H17.
% 0.77/0.96  generalize (zenon_H17 (critical_point zenon_TE_w)). zenon_intro zenon_H40.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H40); [ zenon_intro zenon_H3f; zenon_intro zenon_H43 | zenon_intro zenon_H42; zenon_intro zenon_H41 ].
% 0.77/0.96  apply (zenon_notor_s _ _ zenon_H43). zenon_intro zenon_H45. zenon_intro zenon_H44.
% 0.77/0.96  apply zenon_H44. apply sym_equal. exact zenon_H37.
% 0.77/0.96  exact (zenon_H3f zenon_H42).
% 0.77/0.96  apply (zenon_L5_ zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_H38 zenon_H3a).
% 0.77/0.96  (* end of lemma zenon_L6_ *)
% 0.77/0.96  assert (zenon_L7_ : forall (zenon_TE_w : zenon_U), (forall T2 : zenon_U, (forall T : zenon_U, (((environment zenon_TE_w)/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w (critical_point zenon_TE_w))/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w T2)/\((greater_or_equal T (critical_point zenon_TE_w))/\(greater_or_equal T2 T)))))->(subpopulations (first_movers) (efficient_producers) zenon_TE_w T)))) -> (~(subpopulations (first_movers) (efficient_producers) zenon_TE_w (appear (efficient_producers) zenon_TE_w))) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> ((critical_point zenon_TE_w) = (appear (efficient_producers) zenon_TE_w)) -> (subpopulations (first_movers) (efficient_producers) zenon_TE_w (critical_point zenon_TE_w)) -> (environment zenon_TE_w) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H46 zenon_H38 zenon_H1f zenon_H37 zenon_H22 zenon_H1e.
% 0.77/0.96  generalize (zenon_H46 (critical_point zenon_TE_w)). zenon_intro zenon_H36.
% 0.77/0.96  apply (zenon_L6_ zenon_TE_w); trivial.
% 0.77/0.96  (* end of lemma zenon_L7_ *)
% 0.77/0.96  assert (zenon_L8_ : forall (zenon_TE_w : zenon_U) (zenon_TT_cv : zenon_U), (greater zenon_TT_cv (appear (efficient_producers) zenon_TE_w)) -> (~(greater_or_equal zenon_TT_cv (appear (efficient_producers) zenon_TE_w))) -> False).
% 0.77/0.96  do 2 intro. intros zenon_H47 zenon_H48.
% 0.77/0.96  generalize (mp_greater_or_equal zenon_TT_cv). zenon_intro zenon_H4a.
% 0.77/0.96  generalize (zenon_H4a (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H4b.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H4b); [ zenon_intro zenon_H48; zenon_intro zenon_H4e | zenon_intro zenon_H4d; zenon_intro zenon_H4c ].
% 0.77/0.96  apply (zenon_notor_s _ _ zenon_H4e). zenon_intro zenon_H50. zenon_intro zenon_H4f.
% 0.77/0.96  exact (zenon_H50 zenon_H47).
% 0.77/0.96  exact (zenon_H48 zenon_H4d).
% 0.77/0.96  (* end of lemma zenon_L8_ *)
% 0.77/0.96  assert (zenon_L9_ : forall (zenon_TT_cv : zenon_U) (zenon_TE_w : zenon_U), (greater (critical_point zenon_TE_w) zenon_TT_cv) -> (~(greater_or_equal (critical_point zenon_TE_w) zenon_TT_cv)) -> False).
% 0.77/0.96  do 2 intro. intros zenon_H51 zenon_H52.
% 0.77/0.96  generalize (mp_greater_or_equal (critical_point zenon_TE_w)). zenon_intro zenon_H27.
% 0.77/0.96  generalize (zenon_H27 zenon_TT_cv). zenon_intro zenon_H53.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H53); [ zenon_intro zenon_H52; zenon_intro zenon_H56 | zenon_intro zenon_H55; zenon_intro zenon_H54 ].
% 0.77/0.96  apply (zenon_notor_s _ _ zenon_H56). zenon_intro zenon_H58. zenon_intro zenon_H57.
% 0.77/0.96  exact (zenon_H58 zenon_H51).
% 0.77/0.96  exact (zenon_H52 zenon_H55).
% 0.77/0.96  (* end of lemma zenon_L9_ *)
% 0.77/0.96  assert (zenon_L10_ : forall (zenon_TT_cv : zenon_U) (zenon_TE_w : zenon_U), (~(subpopulations (first_movers) (efficient_producers) zenon_TE_w zenon_TT_cv)) -> (greater (critical_point zenon_TE_w) zenon_TT_cv) -> (greater zenon_TT_cv (appear (efficient_producers) zenon_TE_w)) -> (forall T : zenon_U, (((environment zenon_TE_w)/\((in_environment zenon_TE_w (critical_point zenon_TE_w))/\((greater_or_equal T (appear (efficient_producers) zenon_TE_w))/\(greater (critical_point zenon_TE_w) T))))->(in_environment zenon_TE_w T))) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (environment zenon_TE_w) -> False).
% 0.77/0.96  do 2 intro. intros zenon_H59 zenon_H51 zenon_H47 zenon_H5a zenon_H1f zenon_H1e.
% 0.77/0.96  generalize (a10 zenon_TE_w). zenon_intro zenon_H5b.
% 0.77/0.96  generalize (zenon_H5b (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H5c.
% 0.77/0.96  generalize (zenon_H5c (critical_point zenon_TE_w)). zenon_intro zenon_H5d.
% 0.77/0.96  generalize (zenon_H5d zenon_TT_cv). zenon_intro zenon_H5e.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H5e); [ zenon_intro zenon_H60 | zenon_intro zenon_H5f ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H60); [ zenon_intro zenon_H25 | zenon_intro zenon_H61 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H61); [ zenon_intro zenon_H38 | zenon_intro zenon_H62 ].
% 0.77/0.96  generalize (mp_FM_and_EP_when_EP_appears zenon_TE_w). zenon_intro zenon_H63.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H63); [ zenon_intro zenon_H64 | zenon_intro zenon_H3a ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H64); [ zenon_intro zenon_H25 | zenon_intro zenon_H65 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  generalize (mp_FM_and_EP_members_EP_appeared zenon_TE_w). zenon_intro zenon_H2e.
% 0.77/0.96  generalize (zenon_H5a (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H66.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H66); [ zenon_intro zenon_H68 | zenon_intro zenon_H67 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H68); [ zenon_intro zenon_H25 | zenon_intro zenon_H69 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H69); [ zenon_intro zenon_H24 | zenon_intro zenon_H6a ].
% 0.77/0.96  exact (zenon_H24 zenon_H1f).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H6a); [ zenon_intro zenon_H15 | zenon_intro zenon_H6b ].
% 0.77/0.96  apply (zenon_L1_ zenon_TE_w); trivial.
% 0.77/0.96  generalize (zenon_H2e (critical_point zenon_TE_w)). zenon_intro zenon_H30.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H30); [ zenon_intro zenon_H32 | zenon_intro zenon_H31 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H32); [ zenon_intro zenon_H25 | zenon_intro zenon_H20 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  generalize (mp_greater_or_equal (critical_point zenon_TE_w)). zenon_intro zenon_H27.
% 0.77/0.96  generalize (zenon_H27 (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H33.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H33); [ zenon_intro zenon_H35; zenon_intro zenon_H2f | zenon_intro zenon_H31; zenon_intro zenon_H34 ].
% 0.77/0.96  exact (zenon_H35 zenon_H31).
% 0.77/0.96  apply (zenon_or_s _ _ zenon_H34); [ zenon_intro zenon_H6c | zenon_intro zenon_H37 ].
% 0.77/0.96  exact (zenon_H6b zenon_H6c).
% 0.77/0.96  generalize (zenon_H5b (critical_point zenon_TE_w)). zenon_intro zenon_H46.
% 0.77/0.96  generalize (zenon_H46 (critical_point zenon_TE_w)). zenon_intro zenon_H36.
% 0.77/0.96  generalize (zenon_H36 (critical_point zenon_TE_w)). zenon_intro zenon_H6d.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H6d); [ zenon_intro zenon_H6e | zenon_intro zenon_H22 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H6e); [ zenon_intro zenon_H25 | zenon_intro zenon_H6f ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H6f); [ zenon_intro zenon_H20 | zenon_intro zenon_H70 ].
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H70); [ zenon_intro zenon_H20 | zenon_intro zenon_H71 ].
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H71); [ zenon_intro zenon_H26 | zenon_intro zenon_H26 ].
% 0.77/0.96  apply (zenon_L3_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_L3_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_L7_ zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_H65 zenon_H67).
% 0.77/0.96  exact (zenon_H38 zenon_H3a).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H62); [ zenon_intro zenon_H20 | zenon_intro zenon_H72 ].
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H72); [ zenon_intro zenon_H48 | zenon_intro zenon_H52 ].
% 0.77/0.96  apply (zenon_L8_ zenon_TE_w zenon_TT_cv); trivial.
% 0.77/0.96  apply (zenon_L9_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_H59 zenon_H5f).
% 0.77/0.96  (* end of lemma zenon_L10_ *)
% 0.77/0.96  assert (zenon_L11_ : forall (zenon_TE_w : zenon_U), (greater_or_equal (difference (growth_rate (first_movers) (critical_point zenon_TE_w)) (growth_rate (efficient_producers) (critical_point zenon_TE_w))) (zero)) -> (~((greater (difference (growth_rate (first_movers) (critical_point zenon_TE_w)) (growth_rate (efficient_producers) (critical_point zenon_TE_w))) (zero))\/((difference (growth_rate (first_movers) (critical_point zenon_TE_w)) (growth_rate (efficient_producers) (critical_point zenon_TE_w))) = (zero)))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H73 zenon_H74.
% 0.77/0.96  generalize (mp_greater_or_equal (difference (growth_rate (first_movers) (critical_point zenon_TE_w)) (growth_rate (efficient_producers) (critical_point zenon_TE_w)))). zenon_intro zenon_H75.
% 0.77/0.96  generalize (zenon_H75 (zero)). zenon_intro zenon_H76.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H76); [ zenon_intro zenon_H78; zenon_intro zenon_H74 | zenon_intro zenon_H73; zenon_intro zenon_H77 ].
% 0.77/0.96  exact (zenon_H78 zenon_H73).
% 0.77/0.96  exact (zenon_H74 zenon_H77).
% 0.77/0.96  (* end of lemma zenon_L11_ *)
% 0.77/0.96  assert (zenon_L12_ : forall (zenon_TE_w : zenon_U), (environment zenon_TE_w) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (forall Tc : zenon_U, (((environment zenon_TE_w)/\(Tc = (critical_point zenon_TE_w)))->((~(greater (growth_rate (efficient_producers) Tc) (growth_rate (first_movers) Tc)))/\(forall T : zenon_U, (((subpopulations (first_movers) (efficient_producers) zenon_TE_w T)/\(greater T Tc))->(greater (growth_rate (efficient_producers) T) (growth_rate (first_movers) T))))))) -> (~(greater_or_equal (difference (growth_rate (first_movers) (critical_point zenon_TE_w)) (growth_rate (efficient_producers) (critical_point zenon_TE_w))) (zero))) -> False).
% 0.77/0.96  do 1 intro. intros zenon_H1e zenon_H1f zenon_H79 zenon_H78.
% 0.77/0.96  generalize (mp_greater_or_equal (difference (growth_rate (first_movers) (critical_point zenon_TE_w)) (growth_rate (efficient_producers) (critical_point zenon_TE_w)))). zenon_intro zenon_H75.
% 0.77/0.96  generalize (zenon_H75 (zero)). zenon_intro zenon_H76.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H76); [ zenon_intro zenon_H78; zenon_intro zenon_H74 | zenon_intro zenon_H73; zenon_intro zenon_H77 ].
% 0.77/0.96  generalize (mp_relationship_of_growth_rates zenon_TE_w). zenon_intro zenon_H7a.
% 0.77/0.96  generalize (zenon_H7a (critical_point zenon_TE_w)). zenon_intro zenon_H7b.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H7b); [ zenon_intro zenon_H7c | zenon_intro zenon_H73 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H7c); [ zenon_intro zenon_H25 | zenon_intro zenon_H7d ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H7d); [ zenon_intro zenon_H20 | zenon_intro zenon_H7e ].
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  apply zenon_H7e. zenon_intro zenon_H7f.
% 0.77/0.96  generalize (zenon_H79 (critical_point zenon_TE_w)). zenon_intro zenon_H80.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H80); [ zenon_intro zenon_H82 | zenon_intro zenon_H81 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H82); [ zenon_intro zenon_H25 | zenon_intro zenon_H2c ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply zenon_H2c. apply refl_equal.
% 0.77/0.96  apply (zenon_and_s _ _ zenon_H81). zenon_intro zenon_H84. zenon_intro zenon_H83.
% 0.77/0.96  generalize (mp_negative_growth_rate_difference (critical_point zenon_TE_w)). zenon_intro zenon_H85.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H85); [ zenon_intro zenon_H87; zenon_intro zenon_H84 | zenon_intro zenon_H7f; zenon_intro zenon_H86 ].
% 0.77/0.96  exact (zenon_H87 zenon_H7f).
% 0.77/0.96  exact (zenon_H84 zenon_H86).
% 0.77/0.96  apply (zenon_L11_ zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_H78 zenon_H73).
% 0.77/0.96  (* end of lemma zenon_L12_ *)
% 0.77/0.96  assert (zenon_L13_ : forall (zenon_TE_w : zenon_U) (zenon_TT_cv : zenon_U), (zenon_TT_cv = (appear (efficient_producers) zenon_TE_w)) -> ((critical_point zenon_TE_w) = (appear (efficient_producers) zenon_TE_w)) -> (~(greater_or_equal zenon_TT_cv (critical_point zenon_TE_w))) -> False).
% 0.77/0.96  do 2 intro. intros zenon_H88 zenon_H37 zenon_H89.
% 0.77/0.96  generalize (mp_greater_or_equal zenon_TT_cv). zenon_intro zenon_H4a.
% 0.77/0.96  generalize (zenon_H4a (critical_point zenon_TE_w)). zenon_intro zenon_H8a.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H8a); [ zenon_intro zenon_H89; zenon_intro zenon_H8d | zenon_intro zenon_H8c; zenon_intro zenon_H8b ].
% 0.77/0.96  apply (zenon_notor_s _ _ zenon_H8d). zenon_intro zenon_H8f. zenon_intro zenon_H8e.
% 0.77/0.96  cut ((zenon_TT_cv = (appear (efficient_producers) zenon_TE_w)) = (zenon_TT_cv = (critical_point zenon_TE_w))).
% 0.77/0.96  intro zenon_D_pnotp.
% 0.77/0.96  apply zenon_H8e.
% 0.77/0.96  rewrite <- zenon_D_pnotp.
% 0.77/0.96  exact zenon_H88.
% 0.77/0.96  cut (((appear (efficient_producers) zenon_TE_w) = (critical_point zenon_TE_w))); [idtac | apply NNPP; zenon_intro zenon_H44].
% 0.77/0.96  cut ((zenon_TT_cv = zenon_TT_cv)); [idtac | apply NNPP; zenon_intro zenon_H90].
% 0.77/0.96  congruence.
% 0.77/0.96  apply zenon_H90. apply refl_equal.
% 0.77/0.96  apply zenon_H44. apply sym_equal. exact zenon_H37.
% 0.77/0.96  exact (zenon_H89 zenon_H8c).
% 0.77/0.96  (* end of lemma zenon_L13_ *)
% 0.77/0.96  assert (zenon_L14_ : forall (zenon_TE_w : zenon_U) (zenon_TT_cv : zenon_U), (zenon_TT_cv = (appear (efficient_producers) zenon_TE_w)) -> (~(greater_or_equal zenon_TT_cv (appear (efficient_producers) zenon_TE_w))) -> False).
% 0.77/0.96  do 2 intro. intros zenon_H88 zenon_H48.
% 0.77/0.96  generalize (mp_greater_or_equal zenon_TT_cv). zenon_intro zenon_H4a.
% 0.77/0.96  generalize (zenon_H4a (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H4b.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H4b); [ zenon_intro zenon_H48; zenon_intro zenon_H4e | zenon_intro zenon_H4d; zenon_intro zenon_H4c ].
% 0.77/0.96  apply (zenon_notor_s _ _ zenon_H4e). zenon_intro zenon_H50. zenon_intro zenon_H4f.
% 0.77/0.96  exact (zenon_H4f zenon_H88).
% 0.77/0.96  exact (zenon_H48 zenon_H4d).
% 0.77/0.96  (* end of lemma zenon_L14_ *)
% 0.77/0.96  assert (zenon_L15_ : forall (zenon_TT_cv : zenon_U) (zenon_TE_w : zenon_U), (forall T2 : zenon_U, (forall T : zenon_U, (((environment zenon_TE_w)/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w (appear (efficient_producers) zenon_TE_w))/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w T2)/\((greater_or_equal T (appear (efficient_producers) zenon_TE_w))/\(greater_or_equal T2 T)))))->(subpopulations (first_movers) (efficient_producers) zenon_TE_w T)))) -> (~(subpopulations (first_movers) (efficient_producers) zenon_TE_w zenon_TT_cv)) -> (greater (critical_point zenon_TE_w) zenon_TT_cv) -> (zenon_TT_cv = (appear (efficient_producers) zenon_TE_w)) -> (forall T1 : zenon_U, (forall T2 : zenon_U, (forall T : zenon_U, (((environment zenon_TE_w)/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w T1)/\((subpopulations (first_movers) (efficient_producers) zenon_TE_w T2)/\((greater_or_equal T T1)/\(greater_or_equal T2 T)))))->(subpopulations (first_movers) (efficient_producers) zenon_TE_w T))))) -> (forall T : zenon_U, (((environment zenon_TE_w)/\(subpopulations (first_movers) (efficient_producers) zenon_TE_w T))->(greater_or_equal T (appear (efficient_producers) zenon_TE_w)))) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (forall T : zenon_U, (((environment zenon_TE_w)/\((in_environment zenon_TE_w (critical_point zenon_TE_w))/\((greater_or_equal T (appear (efficient_producers) zenon_TE_w))/\(greater (critical_point zenon_TE_w) T))))->(in_environment zenon_TE_w T))) -> (environment zenon_TE_w) -> False).
% 0.77/0.96  do 2 intro. intros zenon_H5c zenon_H59 zenon_H51 zenon_H88 zenon_H5b zenon_H2e zenon_H1f zenon_H5a zenon_H1e.
% 0.77/0.96  generalize (zenon_H5c (critical_point zenon_TE_w)). zenon_intro zenon_H5d.
% 0.77/0.96  generalize (zenon_H5d zenon_TT_cv). zenon_intro zenon_H5e.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H5e); [ zenon_intro zenon_H60 | zenon_intro zenon_H5f ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H60); [ zenon_intro zenon_H25 | zenon_intro zenon_H61 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H61); [ zenon_intro zenon_H38 | zenon_intro zenon_H62 ].
% 0.77/0.96  generalize (mp_FM_and_EP_when_EP_appears zenon_TE_w). zenon_intro zenon_H63.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H63); [ zenon_intro zenon_H64 | zenon_intro zenon_H3a ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H64); [ zenon_intro zenon_H25 | zenon_intro zenon_H65 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  generalize (zenon_H5a (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H66.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H66); [ zenon_intro zenon_H68 | zenon_intro zenon_H67 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H68); [ zenon_intro zenon_H25 | zenon_intro zenon_H69 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H69); [ zenon_intro zenon_H24 | zenon_intro zenon_H6a ].
% 0.77/0.96  exact (zenon_H24 zenon_H1f).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H6a); [ zenon_intro zenon_H15 | zenon_intro zenon_H6b ].
% 0.77/0.96  apply (zenon_L1_ zenon_TE_w); trivial.
% 0.77/0.96  generalize (zenon_H2e (critical_point zenon_TE_w)). zenon_intro zenon_H30.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H30); [ zenon_intro zenon_H32 | zenon_intro zenon_H31 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H32); [ zenon_intro zenon_H25 | zenon_intro zenon_H20 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  generalize (mp_greater_or_equal (critical_point zenon_TE_w)). zenon_intro zenon_H27.
% 0.77/0.96  generalize (zenon_H27 (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H33.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H33); [ zenon_intro zenon_H35; zenon_intro zenon_H2f | zenon_intro zenon_H31; zenon_intro zenon_H34 ].
% 0.77/0.96  exact (zenon_H35 zenon_H31).
% 0.77/0.96  apply (zenon_or_s _ _ zenon_H34); [ zenon_intro zenon_H6c | zenon_intro zenon_H37 ].
% 0.77/0.96  exact (zenon_H6b zenon_H6c).
% 0.77/0.96  generalize (zenon_H5b (critical_point zenon_TE_w)). zenon_intro zenon_H46.
% 0.77/0.96  generalize (zenon_H46 (critical_point zenon_TE_w)). zenon_intro zenon_H36.
% 0.77/0.96  generalize (zenon_H36 zenon_TT_cv). zenon_intro zenon_H91.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_H91); [ zenon_intro zenon_H92 | zenon_intro zenon_H5f ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H92); [ zenon_intro zenon_H25 | zenon_intro zenon_H93 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H93); [ zenon_intro zenon_H20 | zenon_intro zenon_H94 ].
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H94); [ zenon_intro zenon_H20 | zenon_intro zenon_H95 ].
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H95); [ zenon_intro zenon_H89 | zenon_intro zenon_H52 ].
% 0.77/0.96  apply (zenon_L13_ zenon_TE_w zenon_TT_cv); trivial.
% 0.77/0.96  apply (zenon_L9_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_H59 zenon_H5f).
% 0.77/0.96  exact (zenon_H65 zenon_H67).
% 0.77/0.96  exact (zenon_H38 zenon_H3a).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H62); [ zenon_intro zenon_H20 | zenon_intro zenon_H72 ].
% 0.77/0.96  apply (zenon_L2_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_H72); [ zenon_intro zenon_H48 | zenon_intro zenon_H52 ].
% 0.77/0.96  apply (zenon_L14_ zenon_TE_w zenon_TT_cv); trivial.
% 0.77/0.96  apply (zenon_L9_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_H59 zenon_H5f).
% 0.77/0.96  (* end of lemma zenon_L15_ *)
% 0.77/0.96  assert (zenon_L16_ : forall (zenon_TT_cv : zenon_U) (zenon_TE_w : zenon_U), (environment zenon_TE_w) -> (forall T : zenon_U, (((environment zenon_TE_w)/\((in_environment zenon_TE_w (critical_point zenon_TE_w))/\((greater_or_equal T (appear (efficient_producers) zenon_TE_w))/\(greater (critical_point zenon_TE_w) T))))->(in_environment zenon_TE_w T))) -> (in_environment zenon_TE_w (critical_point zenon_TE_w)) -> (zenon_TT_cv = (appear (efficient_producers) zenon_TE_w)) -> (greater (critical_point zenon_TE_w) zenon_TT_cv) -> (~(subpopulations (first_movers) (efficient_producers) zenon_TE_w zenon_TT_cv)) -> False).
% 0.77/0.96  do 2 intro. intros zenon_H1e zenon_H5a zenon_H1f zenon_H88 zenon_H51 zenon_H59.
% 0.77/0.96  generalize (a10 zenon_TE_w). zenon_intro zenon_H5b.
% 0.77/0.96  generalize (mp_FM_and_EP_members_EP_appeared zenon_TE_w). zenon_intro zenon_H2e.
% 0.77/0.96  generalize (zenon_H5b (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H5c.
% 0.77/0.96  apply (zenon_L15_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  (* end of lemma zenon_L16_ *)
% 0.77/0.96  apply NNPP. intro zenon_G.
% 0.77/0.96  apply (zenon_notallex_s (fun E : zenon_U => (forall T : zenon_U, (((environment E)/\((in_environment E (critical_point E))/\((greater_or_equal T (appear (efficient_producers) E))/\(greater (critical_point E) T))))->(selection_favors (first_movers) (efficient_producers) T)))) zenon_G); [ zenon_intro zenon_H96; idtac ].
% 0.77/0.96  elim zenon_H96. zenon_intro zenon_TE_w. zenon_intro zenon_H97.
% 0.77/0.96  apply (zenon_notallex_s (fun T : zenon_U => (((environment zenon_TE_w)/\((in_environment zenon_TE_w (critical_point zenon_TE_w))/\((greater_or_equal T (appear (efficient_producers) zenon_TE_w))/\(greater (critical_point zenon_TE_w) T))))->(selection_favors (first_movers) (efficient_producers) T))) zenon_H97); [ zenon_intro zenon_H98; idtac ].
% 0.77/0.96  elim zenon_H98. zenon_intro zenon_TT_cv. zenon_intro zenon_H99.
% 0.77/0.96  apply (zenon_notimply_s _ _ zenon_H99). zenon_intro zenon_H9b. zenon_intro zenon_H9a.
% 0.77/0.96  apply (zenon_and_s _ _ zenon_H9b). zenon_intro zenon_H1e. zenon_intro zenon_H9c.
% 0.77/0.96  apply (zenon_and_s _ _ zenon_H9c). zenon_intro zenon_H1f. zenon_intro zenon_H9d.
% 0.77/0.96  apply (zenon_and_s _ _ zenon_H9d). zenon_intro zenon_H4d. zenon_intro zenon_H51.
% 0.77/0.96  generalize (mp_greater_or_equal zenon_TT_cv). zenon_intro zenon_H4a.
% 0.77/0.96  generalize (zenon_H4a (appear (efficient_producers) zenon_TE_w)). zenon_intro zenon_H4b.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_H4b); [ zenon_intro zenon_H48; zenon_intro zenon_H4e | zenon_intro zenon_H4d; zenon_intro zenon_H4c ].
% 0.77/0.96  exact (zenon_H48 zenon_H4d).
% 0.77/0.96  apply (zenon_or_s _ _ zenon_H4c); [ zenon_intro zenon_H47 | zenon_intro zenon_H88 ].
% 0.77/0.96  generalize (mp_critical_time_points zenon_TE_w). zenon_intro zenon_H5a.
% 0.77/0.96  generalize (mp1_high_growth_rates zenon_TE_w). zenon_intro zenon_H9e.
% 0.77/0.96  generalize (zenon_H9e (efficient_producers)). zenon_intro zenon_H9f.
% 0.77/0.96  generalize (zenon_H9f (first_movers)). zenon_intro zenon_Ha0.
% 0.77/0.96  generalize (zenon_Ha0 zenon_TT_cv). zenon_intro zenon_Ha1.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Ha1); [ zenon_intro zenon_Ha3 | zenon_intro zenon_Ha2 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Ha3); [ zenon_intro zenon_H25 | zenon_intro zenon_Ha4 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Ha4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_Ha5 ].
% 0.77/0.96  generalize (mp_symmetry_of_subpopulations zenon_TE_w). zenon_intro zenon_Ha7.
% 0.77/0.96  generalize (zenon_Ha7 zenon_TT_cv). zenon_intro zenon_Ha8.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Ha8); [ zenon_intro zenon_Haa | zenon_intro zenon_Ha9 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Haa); [ zenon_intro zenon_H25 | zenon_intro zenon_H59 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L10_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_Ha6 zenon_Ha9).
% 0.77/0.96  generalize (mp_positive_growth_rate_difference zenon_TT_cv). zenon_intro zenon_Hab.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_Hab); [ zenon_intro zenon_Hae; zenon_intro zenon_Ha5 | zenon_intro zenon_Had; zenon_intro zenon_Hac ].
% 0.77/0.96  generalize (d1 zenon_TE_w). zenon_intro zenon_H79.
% 0.77/0.96  generalize (mp_decreasing_function zenon_TE_w). zenon_intro zenon_Haf.
% 0.77/0.96  generalize (zenon_Haf zenon_TT_cv). zenon_intro zenon_Hb0.
% 0.77/0.96  generalize (zenon_Hb0 (critical_point zenon_TE_w)). zenon_intro zenon_Hb1.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hb1); [ zenon_intro zenon_Hb3 | zenon_intro zenon_Hb2 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb3); [ zenon_intro zenon_H25 | zenon_intro zenon_Hb4 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb4); [ zenon_intro zenon_H24 | zenon_intro zenon_Hb5 ].
% 0.77/0.96  exact (zenon_H24 zenon_H1f).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb5); [ zenon_intro zenon_H78 | zenon_intro zenon_Hb6 ].
% 0.77/0.96  apply (zenon_L12_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb6); [ zenon_intro zenon_H48 | zenon_intro zenon_H58 ].
% 0.77/0.96  apply (zenon_L8_ zenon_TE_w zenon_TT_cv); trivial.
% 0.77/0.96  exact (zenon_H58 zenon_H51).
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hb2); [ zenon_intro zenon_Hb7 | zenon_intro zenon_Had ].
% 0.77/0.96  generalize (mp_difference_between_founding_rates zenon_TT_cv). zenon_intro zenon_Hb8.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hb8); [ zenon_intro zenon_Hba | zenon_intro zenon_Hb9 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hba); [ zenon_intro zenon_Hbc | zenon_intro zenon_Hbb ].
% 0.77/0.96  generalize (a12 zenon_TE_w). zenon_intro zenon_Hbd.
% 0.77/0.96  generalize (zenon_Hbd zenon_TT_cv). zenon_intro zenon_Hbe.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hbe); [ zenon_intro zenon_Haa | zenon_intro zenon_Hbf ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Haa); [ zenon_intro zenon_H25 | zenon_intro zenon_H59 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L10_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_Hbc zenon_Hbf).
% 0.77/0.96  apply zenon_Hbb. zenon_intro zenon_Hc0.
% 0.77/0.96  generalize (l3 zenon_TE_w). zenon_intro zenon_Hc1.
% 0.77/0.96  generalize (zenon_Hc1 zenon_TT_cv). zenon_intro zenon_Hc2.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hc2); [ zenon_intro zenon_Haa | zenon_intro zenon_Hc3 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Haa); [ zenon_intro zenon_H25 | zenon_intro zenon_H59 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L10_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_Hc3 zenon_Hc0).
% 0.77/0.96  exact (zenon_Hb7 zenon_Hb9).
% 0.77/0.96  exact (zenon_Hae zenon_Had).
% 0.77/0.96  exact (zenon_Ha5 zenon_Hac).
% 0.77/0.96  exact (zenon_H9a zenon_Ha2).
% 0.77/0.96  generalize (mp_critical_time_points zenon_TE_w). zenon_intro zenon_H5a.
% 0.77/0.96  generalize (mp1_high_growth_rates zenon_TE_w). zenon_intro zenon_H9e.
% 0.77/0.96  generalize (zenon_H9e (efficient_producers)). zenon_intro zenon_H9f.
% 0.77/0.96  generalize (zenon_H9f (first_movers)). zenon_intro zenon_Ha0.
% 0.77/0.96  generalize (zenon_Ha0 zenon_TT_cv). zenon_intro zenon_Ha1.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Ha1); [ zenon_intro zenon_Ha3 | zenon_intro zenon_Ha2 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Ha3); [ zenon_intro zenon_H25 | zenon_intro zenon_Ha4 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Ha4); [ zenon_intro zenon_Ha6 | zenon_intro zenon_Ha5 ].
% 0.77/0.96  generalize (mp_symmetry_of_subpopulations zenon_TE_w). zenon_intro zenon_Ha7.
% 0.77/0.96  generalize (zenon_Ha7 zenon_TT_cv). zenon_intro zenon_Ha8.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Ha8); [ zenon_intro zenon_Haa | zenon_intro zenon_Ha9 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Haa); [ zenon_intro zenon_H25 | zenon_intro zenon_H59 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L16_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_Ha6 zenon_Ha9).
% 0.77/0.96  generalize (mp_positive_growth_rate_difference zenon_TT_cv). zenon_intro zenon_Hab.
% 0.77/0.96  apply (zenon_equiv_s _ _ zenon_Hab); [ zenon_intro zenon_Hae; zenon_intro zenon_Ha5 | zenon_intro zenon_Had; zenon_intro zenon_Hac ].
% 0.77/0.96  generalize (mp_decreasing_function zenon_TE_w). zenon_intro zenon_Haf.
% 0.77/0.96  generalize (d1 zenon_TE_w). zenon_intro zenon_H79.
% 0.77/0.96  generalize (zenon_Haf zenon_TT_cv). zenon_intro zenon_Hb0.
% 0.77/0.96  generalize (zenon_Hb0 (critical_point zenon_TE_w)). zenon_intro zenon_Hb1.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hb1); [ zenon_intro zenon_Hb3 | zenon_intro zenon_Hb2 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb3); [ zenon_intro zenon_H25 | zenon_intro zenon_Hb4 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb4); [ zenon_intro zenon_H24 | zenon_intro zenon_Hb5 ].
% 0.77/0.96  exact (zenon_H24 zenon_H1f).
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb5); [ zenon_intro zenon_H78 | zenon_intro zenon_Hb6 ].
% 0.77/0.96  apply (zenon_L12_ zenon_TE_w); trivial.
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hb6); [ zenon_intro zenon_H48 | zenon_intro zenon_H58 ].
% 0.77/0.96  apply (zenon_L14_ zenon_TE_w zenon_TT_cv); trivial.
% 0.77/0.96  exact (zenon_H58 zenon_H51).
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hb2); [ zenon_intro zenon_Hb7 | zenon_intro zenon_Had ].
% 0.77/0.96  generalize (mp_difference_between_founding_rates zenon_TT_cv). zenon_intro zenon_Hb8.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hb8); [ zenon_intro zenon_Hba | zenon_intro zenon_Hb9 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Hba); [ zenon_intro zenon_Hbc | zenon_intro zenon_Hbb ].
% 0.77/0.96  generalize (a12 zenon_TE_w). zenon_intro zenon_Hbd.
% 0.77/0.96  generalize (zenon_Hbd zenon_TT_cv). zenon_intro zenon_Hbe.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hbe); [ zenon_intro zenon_Haa | zenon_intro zenon_Hbf ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Haa); [ zenon_intro zenon_H25 | zenon_intro zenon_H59 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L16_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_Hbc zenon_Hbf).
% 0.77/0.96  apply zenon_Hbb. zenon_intro zenon_Hc0.
% 0.77/0.96  generalize (l3 zenon_TE_w). zenon_intro zenon_Hc1.
% 0.77/0.96  generalize (zenon_Hc1 zenon_TT_cv). zenon_intro zenon_Hc2.
% 0.77/0.96  apply (zenon_imply_s _ _ zenon_Hc2); [ zenon_intro zenon_Haa | zenon_intro zenon_Hc3 ].
% 0.77/0.96  apply (zenon_notand_s _ _ zenon_Haa); [ zenon_intro zenon_H25 | zenon_intro zenon_H59 ].
% 0.77/0.96  exact (zenon_H25 zenon_H1e).
% 0.77/0.96  apply (zenon_L16_ zenon_TT_cv zenon_TE_w); trivial.
% 0.77/0.96  exact (zenon_Hc3 zenon_Hc0).
% 0.77/0.96  exact (zenon_Hb7 zenon_Hb9).
% 0.77/0.96  exact (zenon_Hae zenon_Had).
% 0.77/0.96  exact (zenon_Ha5 zenon_Hac).
% 0.77/0.96  exact (zenon_H9a zenon_Ha2).
% 0.77/0.96  Qed.
% 0.77/0.96  % SZS output end Proof
% 0.77/0.96  (* END-PROOF *)
% 0.77/0.96  nodes searched: 23163
% 0.77/0.96  max branch formulas: 2763
% 0.77/0.96  proof nodes created: 2157
% 0.77/0.96  formulas created: 62789
% 0.77/0.96  
%------------------------------------------------------------------------------