%------------------------------------------------------------------------------
% File : DT2H2X---1.9.5
% Problem : DAT129^1 : TPTP v9.2.1. Released v7.0.0.
% Transfm : none
% Format : tptp:raw
% Command : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% Computer : n004.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 : 300s
% DateTime : Wed Feb 25 08:44:52 AM UTC 2026
% Result : Theorem 2.76s 1.54s
% Output : Refutation 2.76s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12 % Problem : DAT129^1 : TPTP v9.2.1. Released v7.0.0.
% 0.12/0.13 % Command : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.17/0.33 % Computer : n004.cluster.edu
% 0.17/0.33 % Model : x86_64 x86_64
% 0.17/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.17/0.33 % Memory : 8042.1875MB
% 0.17/0.33 % OS : Linux 3.10.0-693.el7.x86_64
% 0.17/0.34 % CPULimit : 300
% 0.17/0.34 % WCLimit : 300
% 0.17/0.34 % DateTime : Tue Feb 24 06:08:11 EST 2026
% 0.17/0.34 % CPUTime :
% 0.17/0.34 Running /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.30/0.45 ---- Original DTF file ---
% 0.30/0.46 thf(spec,logic,$$dhol).
% 0.30/0.46 %------------------------------------------------------------------------------
% 0.30/0.46 % File : DAT129^1 : TPTP v9.2.1. Released v7.0.0.
% 0.30/0.46 % Domain : Data Structures
% 0.30/0.46 % Problem : Coinductive list 3306
% 0.30/0.46 % Version : [Bla16] axioms : Especial.
% 0.30/0.46 % English :
% 0.30/0.46
% 0.30/0.46 % Refs : [Loc10] Lochbihler (2010), Coinductive
% 0.30/0.46 % : [RB15] Reynolds & Blanchette (2015), A Decision Procedure for
% 0.30/0.46 % : [Bla16] Blanchette (2016), Email to Geoff Sutcliffe
% 0.30/0.46 % Source : [Bla16]
% 0.30/0.46 % Names : coinductive_list__3306.p [Bla16]
% 0.30/0.46
% 0.30/0.46 % Status : Theorem
% 0.30/0.46 % Rating : 0.00 v7.2.0, 0.25 v7.1.0
% 0.30/0.46 % Syntax : Number of formulae : 337 ( 140 unt; 54 typ; 0 def)
% 0.30/0.46 % Number of atoms : 617 ( 313 equ; 0 cnn)
% 0.30/0.46 % Maximal formula atoms : 24 ( 2 avg)
% 0.30/0.46 % Number of connectives : 2740 ( 91 ~; 5 |; 19 &;2364 @)
% 0.30/0.46 % ( 0 <=>; 261 =>; 0 <=; 0 <~>)
% 0.30/0.46 % Maximal formula depth : 16 ( 6 avg)
% 0.30/0.46 % Number of types : 4 ( 3 usr)
% 0.30/0.46 % Number of type conns : 104 ( 104 >; 0 *; 0 +; 0 <<)
% 0.30/0.46 % Number of symbols : 52 ( 51 usr; 5 con; 0-4 aty)
% 0.30/0.46 % Number of variables : 736 ( 14 ^; 655 !; 27 ?; 736 :)
% 0.30/0.46 % ( 40 !>; 0 ?*; 0 @-; 0 @+)
% 0.30/0.46 % SPC : TH1_THM_EQU_NAR
% 0.30/0.46
% 0.30/0.46 % Comments : This file was generated by Isabelle (most likely Sledgehammer)
% 0.30/0.46 % 2016-07-13 15:01:01.078
% 0.30/0.46 %------------------------------------------------------------------------------
% 0.30/0.46 %----Could-be-implicit typings (5)
% 0.30/0.46 thf(ty_t_Coinductive__List__Mirabelle__kmikjhschf_Ollist,type,
% 0.30/0.46 coindu1593790203_llist: $tType > $tType ).
% 0.30/0.46
% 0.30/0.46 thf(ty_t_Extended__Nat_Oenat,type,
% 0.30/0.46 extended_enat: $tType ).
% 0.30/0.46
% 0.30/0.46 thf(ty_t_Nat_Onat,type,
% 0.30/0.46 nat: $tType ).
% 0.30/0.46
% 0.30/0.46 thf(ty_t_itself,type,
% 0.30/0.46 itself: $tType > $tType ).
% 0.30/0.46
% 0.30/0.46 thf(ty_tf_a,type,
% 0.30/0.46 a: $tType ).
% 0.30/0.46
% 0.30/0.46 %----Explicit typings (49)
% 0.30/0.46 thf(sy_cl_HOL_Otype,type,
% 0.30/0.46 type:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ozero,type,
% 0.30/0.46 zero:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ominus,type,
% 0.30/0.46 minus:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Num_Oneg__numeral,type,
% 0.30/0.46 neg_numeral:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Orderings_Oorder,type,
% 0.30/0.46 order:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ogroup__add,type,
% 0.30/0.46 group_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Omonoid__add,type,
% 0.30/0.46 monoid_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Oab__group__add,type,
% 0.30/0.46 ab_group_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ocomm__monoid__add,type,
% 0.30/0.46 comm_monoid_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Oab__semigroup__add,type,
% 0.30/0.46 ab_semigroup_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ocomm__monoid__diff,type,
% 0.30/0.46 comm_monoid_diff:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Rings_Olinordered__semidom,type,
% 0.30/0.46 linordered_semidom:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ocancel__semigroup__add,type,
% 0.30/0.46 cancel_semigroup_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Oordered__ab__group__add,type,
% 0.30/0.46 ordered_ab_group_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ocancel__comm__monoid__add,type,
% 0.30/0.46 cancel1352612707id_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ocancel__ab__semigroup__add,type,
% 0.30/0.46 cancel146912293up_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Olinordered__ab__group__add,type,
% 0.30/0.46 linord219039673up_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Oordered__ab__semigroup__add,type,
% 0.30/0.46 ordere779506340up_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ocanonically__ordered__monoid__add,type,
% 0.30/0.46 canoni770627133id_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Oordered__ab__semigroup__add__imp__le,type,
% 0.30/0.46 ordere236663937imp_le:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Oordered__cancel__ab__semigroup__add,type,
% 0.30/0.46 ordere223160158up_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Ostrict__ordered__ab__semigroup__add,type,
% 0.30/0.46 strict2144017051up_add:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_cl_Groups_Oordered__ab__semigroup__monoid__add__imp__le,type,
% 0.30/0.46 ordere516151231imp_le:
% 0.30/0.46 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olappend,type,
% 0.30/0.46 coindu268472904append:
% 0.30/0.46 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oldrop,type,
% 0.30/0.46 coindu191418589_ldrop:
% 0.30/0.46 !>[A: $tType] : ( extended_enat > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oldropn,type,
% 0.30/0.46 coindu531130065ldropn:
% 0.30/0.46 !>[A: $tType] : ( nat > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollast,type,
% 0.30/0.46 coindu2000965700_llast:
% 0.30/0.46 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > A ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollength,type,
% 0.30/0.46 coindu1018505716length:
% 0.30/0.46 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLCons,type,
% 0.30/0.46 coindu1121789889_LCons:
% 0.30/0.46 !>[A: $tType] : ( A > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olnth,type,
% 0.30/0.46 coindu749330388e_lnth:
% 0.30/0.46 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > nat > A ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olstrict__prefix,type,
% 0.30/0.46 coindu574146665prefix:
% 0.30/0.46 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Extended__Nat_Oenat,type,
% 0.30/0.46 extended_enat2: nat > extended_enat ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Extended__Nat_Oenat_Ocase__enat,type,
% 0.30/0.46 extended_case_enat:
% 0.30/0.46 !>[T: $tType] : ( ( nat > T ) > T > extended_enat > T ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Extended__Nat_Oenat_Orec__enat,type,
% 0.30/0.46 extended_rec_enat:
% 0.30/0.46 !>[T: $tType] : ( ( nat > T ) > T > extended_enat > T ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Extended__Nat_Oenat_Osize__enat,type,
% 0.30/0.46 extended_size_enat: extended_enat > nat ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Extended__Nat_Oinfinity__class_Oinfinity,type,
% 0.30/0.46 extend1396239628finity:
% 0.30/0.46 !>[A: $tType] : A ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Extended__Nat_Othe__enat,type,
% 0.30/0.46 extended_the_enat: extended_enat > nat ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Groups_Ominus__class_Ominus,type,
% 0.30/0.46 minus_minus:
% 0.30/0.46 !>[A: $tType] : ( A > A > A ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Groups_Oplus__class_Oplus,type,
% 0.30/0.46 plus_plus:
% 0.30/0.46 !>[A: $tType] : ( A > A > A ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Groups_Ozero__class_Ozero,type,
% 0.30/0.46 zero_zero:
% 0.30/0.46 !>[A: $tType] : A ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Nat_OSuc,type,
% 0.30/0.46 suc: nat > nat ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Nat_Osize__class_Osize,type,
% 0.30/0.46 size_size:
% 0.30/0.46 !>[A: $tType] : ( A > nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Orderings_Oord__class_Oless,type,
% 0.30/0.46 ord_less:
% 0.30/0.46 !>[A: $tType] : ( A > A > $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_c_Pure_Otype,type,
% 0.30/0.46 type2:
% 0.30/0.46 !>[A: $tType] : ( itself @ A ) ).
% 0.30/0.46
% 0.30/0.46 thf(sy_v_n,type,
% 0.30/0.46 n: extended_enat ).
% 0.30/0.46
% 0.30/0.46 thf(sy_v_n_H____,type,
% 0.30/0.46 n2: nat ).
% 0.30/0.46
% 0.30/0.46 thf(sy_v_n_Ha______,type,
% 0.30/0.46 n_a: nat ).
% 0.30/0.46
% 0.30/0.46 thf(sy_v_xs,type,
% 0.30/0.46 xs: coindu1593790203_llist @ a ).
% 0.30/0.46
% 0.30/0.46 thf(sy_v_xsa____,type,
% 0.30/0.46 xsa: coindu1593790203_llist @ a ).
% 0.30/0.46
% 0.30/0.46 %----Relevant facts (252)
% 0.30/0.46 thf(fact_0_n,axiom,
% 0.30/0.46 ( n
% 0.30/0.46 = ( extended_enat2 @ n2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % n
% 0.30/0.46 thf(fact_1_Suc_Ohyps,axiom,
% 0.30/0.46 ! [Xs: coindu1593790203_llist @ a] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ ( extended_enat2 @ n_a ) @ ( coindu1018505716length @ a @ Xs ) )
% 0.30/0.46 => ( ( coindu2000965700_llast @ a @ ( coindu191418589_ldrop @ a @ ( extended_enat2 @ n_a ) @ Xs ) )
% 0.30/0.46 = ( coindu2000965700_llast @ a @ Xs ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc.hyps
% 0.30/0.46 thf(fact_2_Suc_Oprems,axiom,
% 0.30/0.46 ord_less @ extended_enat @ ( extended_enat2 @ ( suc @ n_a ) ) @ ( coindu1018505716length @ a @ xsa ) ).
% 0.30/0.46
% 0.30/0.46 % Suc.prems
% 0.30/0.46 thf(fact_3__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062n_H_O_An_A_061_Aenat_An_H_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
% 0.30/0.46 ~ ! [N: nat] :
% 0.30/0.46 ( n
% 0.30/0.46 != ( extended_enat2 @ N ) ) ).
% 0.30/0.46
% 0.30/0.46 % \<open>\<And>thesis. (\<And>n'. n = enat n' \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
% 0.30/0.46 thf(fact_4_enat_Oinject,axiom,
% 0.30/0.46 ! [Nat: nat,Nat2: nat] :
% 0.30/0.46 ( ( ( extended_enat2 @ Nat )
% 0.30/0.46 = ( extended_enat2 @ Nat2 ) )
% 0.30/0.46 = ( Nat = Nat2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.inject
% 0.30/0.46 thf(fact_5_nat_Oinject,axiom,
% 0.30/0.46 ! [X2: nat,Y2: nat] :
% 0.30/0.46 ( ( ( suc @ X2 )
% 0.30/0.46 = ( suc @ Y2 ) )
% 0.30/0.46 = ( X2 = Y2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat.inject
% 0.30/0.46 thf(fact_6_old_Onat_Oinject,axiom,
% 0.30/0.46 ! [Nat: nat,Nat2: nat] :
% 0.30/0.46 ( ( ( suc @ Nat )
% 0.30/0.46 = ( suc @ Nat2 ) )
% 0.30/0.46 = ( Nat = Nat2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % old.nat.inject
% 0.30/0.46 thf(fact_7_assms,axiom,
% 0.30/0.46 ord_less @ extended_enat @ n @ ( coindu1018505716length @ a @ xs ) ).
% 0.30/0.46
% 0.30/0.46 % assms
% 0.30/0.46 thf(fact_8_Suc__inject,axiom,
% 0.30/0.46 ! [X: nat,Y: nat] :
% 0.30/0.46 ( ( ( suc @ X )
% 0.30/0.46 = ( suc @ Y ) )
% 0.30/0.46 => ( X = Y ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_inject
% 0.30/0.46 thf(fact_9_n__not__Suc__n,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( N2
% 0.30/0.46 != ( suc @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % n_not_Suc_n
% 0.30/0.46 thf(fact_10_ldrop__enat,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu191418589_ldrop @ A @ ( extended_enat2 @ N2 ) @ Xs )
% 0.30/0.46 = ( coindu531130065ldropn @ A @ N2 @ Xs ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldrop_enat
% 0.30/0.46 thf(fact_11_enat_Osimps_I6_J,axiom,
% 0.30/0.46 ! [T: $tType,F1: nat > T,F2: T,Nat: nat] :
% 0.30/0.46 ( ( extended_rec_enat @ T @ F1 @ F2 @ ( extended_enat2 @ Nat ) )
% 0.30/0.46 = ( F1 @ Nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.simps(6)
% 0.30/0.46 thf(fact_12_chain__incr,axiom,
% 0.30/0.46 ! [A: $tType,Y3: A > extended_enat,K: nat] :
% 0.30/0.46 ( ! [I: A] :
% 0.30/0.46 ? [J: A] : ( ord_less @ extended_enat @ ( Y3 @ I ) @ ( Y3 @ J ) )
% 0.30/0.46 => ? [J2: A] : ( ord_less @ extended_enat @ ( extended_enat2 @ K ) @ ( Y3 @ J2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % chain_incr
% 0.30/0.46 thf(fact_13_enat__iless,axiom,
% 0.30/0.46 ! [N2: extended_enat,M: nat] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ N2 @ ( extended_enat2 @ M ) )
% 0.30/0.46 => ? [K2: nat] :
% 0.30/0.46 ( N2
% 0.30/0.46 = ( extended_enat2 @ K2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_iless
% 0.30/0.46 thf(fact_14_ldrop__0,axiom,
% 0.30/0.46 ! [B: $tType,Xs: coindu1593790203_llist @ B] :
% 0.30/0.46 ( ( coindu191418589_ldrop @ B @ ( zero_zero @ extended_enat ) @ Xs )
% 0.30/0.46 = Xs ) ).
% 0.30/0.46
% 0.30/0.46 % ldrop_0
% 0.30/0.46 thf(fact_15_i0__less,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ ( zero_zero @ extended_enat ) @ N2 )
% 0.30/0.46 = ( N2
% 0.30/0.46 != ( zero_zero @ extended_enat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % i0_less
% 0.30/0.46 thf(fact_16_not__iless0,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ~ ( ord_less @ extended_enat @ N2 @ ( zero_zero @ extended_enat ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_iless0
% 0.30/0.46 thf(fact_17_enat__less__induct,axiom,
% 0.30/0.46 ! [P: extended_enat > $o,N2: extended_enat] :
% 0.30/0.46 ( ! [N3: extended_enat] :
% 0.30/0.46 ( ! [M2: extended_enat] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ M2 @ N3 )
% 0.30/0.46 => ( P @ M2 ) )
% 0.30/0.46 => ( P @ N3 ) )
% 0.30/0.46 => ( P @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_less_induct
% 0.30/0.46 thf(fact_18_lift__Suc__mono__less__iff,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( order @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [F: nat > A,N2: nat,M: nat] :
% 0.30/0.46 ( ! [N3: nat] : ( ord_less @ A @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
% 0.30/0.46 => ( ( ord_less @ A @ ( F @ N2 ) @ ( F @ M ) )
% 0.30/0.46 = ( ord_less @ nat @ N2 @ M ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lift_Suc_mono_less_iff
% 0.30/0.46 thf(fact_19_lift__Suc__mono__less,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( order @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [F: nat > A,N2: nat,N4: nat] :
% 0.30/0.46 ( ! [N3: nat] : ( ord_less @ A @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
% 0.30/0.46 => ( ( ord_less @ nat @ N2 @ N4 )
% 0.30/0.46 => ( ord_less @ A @ ( F @ N2 ) @ ( F @ N4 ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lift_Suc_mono_less
% 0.30/0.46 thf(fact_20_llast__ldropn,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu2000965700_llast @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) )
% 0.30/0.46 = ( coindu2000965700_llast @ A @ Xs ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % llast_ldropn
% 0.30/0.46 thf(fact_21_not__gr__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [N2: A] :
% 0.30/0.46 ( ( ~ ( ord_less @ A @ ( zero_zero @ A ) @ N2 ) )
% 0.30/0.46 = ( N2
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_gr_zero
% 0.30/0.46 thf(fact_22_less__numeral__extra_I3_J,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( linordered_semidom @ A @ ( type2 @ A ) )
% 0.30/0.46 => ~ ( ord_less @ A @ ( zero_zero @ A ) @ ( zero_zero @ A ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_numeral_extra(3)
% 0.30/0.46 thf(fact_23_gr__zeroI,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [N2: A] :
% 0.30/0.46 ( ( N2
% 0.30/0.46 != ( zero_zero @ A ) )
% 0.30/0.46 => ( ord_less @ A @ ( zero_zero @ A ) @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % gr_zeroI
% 0.30/0.46 thf(fact_24_not__less__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [N2: A] :
% 0.30/0.46 ~ ( ord_less @ A @ N2 @ ( zero_zero @ A ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_less_zero
% 0.30/0.46 thf(fact_25_gr__implies__not__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [M: A,N2: A] :
% 0.30/0.46 ( ( ord_less @ A @ M @ N2 )
% 0.30/0.46 => ( N2
% 0.30/0.46 != ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % gr_implies_not_zero
% 0.30/0.46 thf(fact_26_zero__less__iff__neq__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [N2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( zero_zero @ A ) @ N2 )
% 0.30/0.46 = ( N2
% 0.30/0.46 != ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_less_iff_neq_zero
% 0.30/0.46 thf(fact_27_ldropn__eq__LConsD,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ( coindu531130065ldropn @ A @ N2 @ Xs )
% 0.30/0.46 = ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.30/0.46 => ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldropn_eq_LConsD
% 0.30/0.46 thf(fact_28_enat_Osimps_I4_J,axiom,
% 0.30/0.46 ! [T: $tType,F1: nat > T,F2: T,Nat: nat] :
% 0.30/0.46 ( ( extended_case_enat @ T @ F1 @ F2 @ ( extended_enat2 @ Nat ) )
% 0.30/0.46 = ( F1 @ Nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.simps(4)
% 0.30/0.46 thf(fact_29_llength__ldropn,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu1018505716length @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) )
% 0.30/0.46 = ( minus_minus @ extended_enat @ ( coindu1018505716length @ A @ Xs ) @ ( extended_enat2 @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % llength_ldropn
% 0.30/0.46 thf(fact_30_neq0__conv,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( N2
% 0.30/0.46 != ( zero_zero @ nat ) )
% 0.30/0.46 = ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % neq0_conv
% 0.30/0.46 thf(fact_31_llist_Oinject,axiom,
% 0.30/0.46 ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A,Y21: A,Y22: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ( coindu1121789889_LCons @ A @ X21 @ X22 )
% 0.30/0.46 = ( coindu1121789889_LCons @ A @ Y21 @ Y22 ) )
% 0.30/0.46 = ( ( X21 = Y21 )
% 0.30/0.46 & ( X22 = Y22 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % llist.inject
% 0.30/0.46 thf(fact_32_ldropn__0,axiom,
% 0.30/0.46 ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu531130065ldropn @ A @ ( zero_zero @ nat ) @ Xs )
% 0.30/0.46 = Xs ) ).
% 0.30/0.46
% 0.30/0.46 % ldropn_0
% 0.30/0.46 thf(fact_33_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A2 @ A2 )
% 0.30/0.46 = ( zero_zero @ A ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % cancel_comm_monoid_add_class.diff_cancel
% 0.30/0.46 thf(fact_34_diff__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A2 @ ( zero_zero @ A ) )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_zero
% 0.30/0.46 thf(fact_35_zero__diff,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( comm_monoid_diff @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( zero_zero @ A ) @ A2 )
% 0.30/0.46 = ( zero_zero @ A ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_diff
% 0.30/0.46 thf(fact_36_diff__0__right,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A2 @ ( zero_zero @ A ) )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_0_right
% 0.30/0.46 thf(fact_37_diff__self,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A2 @ A2 )
% 0.30/0.46 = ( zero_zero @ A ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_self
% 0.30/0.46 thf(fact_38_zero__less__Suc,axiom,
% 0.30/0.46 ! [N2: nat] : ( ord_less @ nat @ ( zero_zero @ nat ) @ ( suc @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_less_Suc
% 0.30/0.46 thf(fact_39_less__Suc0,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ N2 @ ( suc @ ( zero_zero @ nat ) ) )
% 0.30/0.46 = ( N2
% 0.30/0.46 = ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_Suc0
% 0.30/0.46 thf(fact_40_lessI,axiom,
% 0.30/0.46 ! [N2: nat] : ( ord_less @ nat @ N2 @ ( suc @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % lessI
% 0.30/0.46 thf(fact_41_Suc__mono,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 => ( ord_less @ nat @ ( suc @ M ) @ ( suc @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_mono
% 0.30/0.46 thf(fact_42_Suc__less__eq,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( suc @ M ) @ ( suc @ N2 ) )
% 0.30/0.46 = ( ord_less @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_less_eq
% 0.30/0.46 thf(fact_43_ext,axiom,
% 0.30/0.46 ! [B: $tType,A: $tType,F: A > B,G: A > B] :
% 0.30/0.46 ( ! [X3: A] :
% 0.30/0.46 ( ( F @ X3 )
% 0.30/0.46 = ( G @ X3 ) )
% 0.30/0.46 => ( F = G ) ) ).
% 0.30/0.46
% 0.30/0.46 % ext
% 0.30/0.46 thf(fact_44_idiff__enat__0__right,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( minus_minus @ extended_enat @ N2 @ ( extended_enat2 @ ( zero_zero @ nat ) ) )
% 0.30/0.46 = N2 ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_enat_0_right
% 0.30/0.46 thf(fact_45_idiff__enat__0,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( minus_minus @ extended_enat @ ( extended_enat2 @ ( zero_zero @ nat ) ) @ N2 )
% 0.30/0.46 = ( extended_enat2 @ ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_enat_0
% 0.30/0.46 thf(fact_46_idiff__0__right,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( minus_minus @ extended_enat @ N2 @ ( zero_zero @ extended_enat ) )
% 0.30/0.46 = N2 ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_0_right
% 0.30/0.46 thf(fact_47_idiff__0,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( minus_minus @ extended_enat @ ( zero_zero @ extended_enat ) @ N2 )
% 0.30/0.46 = ( zero_zero @ extended_enat ) ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_0
% 0.30/0.46 thf(fact_48_llast__LCons2,axiom,
% 0.30/0.46 ! [A: $tType,X: A,Y: A,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) )
% 0.30/0.46 = ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % llast_LCons2
% 0.30/0.46 thf(fact_49_diff__gt__0__iff__gt,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( zero_zero @ A ) @ ( minus_minus @ A @ A2 @ B2 ) )
% 0.30/0.46 = ( ord_less @ A @ B2 @ A2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_gt_0_iff_gt
% 0.30/0.46 thf(fact_50_enat__ord__simps_I2_J,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ ( extended_enat2 @ M ) @ ( extended_enat2 @ N2 ) )
% 0.30/0.46 = ( ord_less @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_ord_simps(2)
% 0.30/0.46 thf(fact_51_ldropn__Suc__LCons,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,X: A,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu531130065ldropn @ A @ ( suc @ N2 ) @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 0.30/0.46 = ( coindu531130065ldropn @ A @ N2 @ Xs ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldropn_Suc_LCons
% 0.30/0.46 thf(fact_52_gr0I,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( N2
% 0.30/0.46 != ( zero_zero @ nat ) )
% 0.30/0.46 => ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % gr0I
% 0.30/0.46 thf(fact_53_not__gr0,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( ~ ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) )
% 0.30/0.46 = ( N2
% 0.30/0.46 = ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_gr0
% 0.30/0.46 thf(fact_54_not__less0,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ~ ( ord_less @ nat @ N2 @ ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_less0
% 0.30/0.46 thf(fact_55_less__zeroE,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ~ ( ord_less @ nat @ N2 @ ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_zeroE
% 0.30/0.46 thf(fact_56_nat__neq__iff,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( M != N2 )
% 0.30/0.46 = ( ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 | ( ord_less @ nat @ N2 @ M ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat_neq_iff
% 0.30/0.46 thf(fact_57_less__not__refl,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ~ ( ord_less @ nat @ N2 @ N2 ) ).
% 0.30/0.46
% 0.30/0.46 % less_not_refl
% 0.30/0.46 thf(fact_58_less__not__refl2,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ N2 @ M )
% 0.30/0.46 => ( M != N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_not_refl2
% 0.30/0.46 thf(fact_59_less__not__refl3,axiom,
% 0.30/0.46 ! [S: nat,T2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ S @ T2 )
% 0.30/0.46 => ( S != T2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_not_refl3
% 0.30/0.46 thf(fact_60_measure__induct,axiom,
% 0.30/0.46 ! [A: $tType,F: A > nat,P: A > $o,A2: A] :
% 0.30/0.46 ( ! [X3: A] :
% 0.30/0.46 ( ! [Y4: A] :
% 0.30/0.46 ( ( ord_less @ nat @ ( F @ Y4 ) @ ( F @ X3 ) )
% 0.30/0.46 => ( P @ Y4 ) )
% 0.30/0.46 => ( P @ X3 ) )
% 0.30/0.46 => ( P @ A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % measure_induct
% 0.30/0.46 thf(fact_61_gr__implies__not0,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 => ( N2
% 0.30/0.46 != ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % gr_implies_not0
% 0.30/0.46 thf(fact_62_less__irrefl__nat,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ~ ( ord_less @ nat @ N2 @ N2 ) ).
% 0.30/0.46
% 0.30/0.46 % less_irrefl_nat
% 0.30/0.46 thf(fact_63_nat__less__induct,axiom,
% 0.30/0.46 ! [P: nat > $o,N2: nat] :
% 0.30/0.46 ( ! [N3: nat] :
% 0.30/0.46 ( ! [M2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M2 @ N3 )
% 0.30/0.46 => ( P @ M2 ) )
% 0.30/0.46 => ( P @ N3 ) )
% 0.30/0.46 => ( P @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat_less_induct
% 0.30/0.46 thf(fact_64_infinite__descent,axiom,
% 0.30/0.46 ! [P: nat > $o,N2: nat] :
% 0.30/0.46 ( ! [N3: nat] :
% 0.30/0.46 ( ~ ( P @ N3 )
% 0.30/0.46 => ? [M2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M2 @ N3 )
% 0.30/0.46 & ~ ( P @ M2 ) ) )
% 0.30/0.46 => ( P @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % infinite_descent
% 0.30/0.46 thf(fact_65_infinite__descent0,axiom,
% 0.30/0.46 ! [P: nat > $o,N2: nat] :
% 0.30/0.46 ( ( P @ ( zero_zero @ nat ) )
% 0.30/0.46 => ( ! [N3: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N3 )
% 0.30/0.46 => ( ~ ( P @ N3 )
% 0.30/0.46 => ? [M2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M2 @ N3 )
% 0.30/0.46 & ~ ( P @ M2 ) ) ) )
% 0.30/0.46 => ( P @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % infinite_descent0
% 0.30/0.46 thf(fact_66_linorder__neqE__nat,axiom,
% 0.30/0.46 ! [X: nat,Y: nat] :
% 0.30/0.46 ( ( X != Y )
% 0.30/0.46 => ( ~ ( ord_less @ nat @ X @ Y )
% 0.30/0.46 => ( ord_less @ nat @ Y @ X ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % linorder_neqE_nat
% 0.30/0.46 thf(fact_67_less__nat__zero__code,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ~ ( ord_less @ nat @ N2 @ ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_nat_zero_code
% 0.30/0.46 thf(fact_68_measure__induct__rule,axiom,
% 0.30/0.46 ! [A: $tType,F: A > nat,P: A > $o,A2: A] :
% 0.30/0.46 ( ! [X3: A] :
% 0.30/0.46 ( ! [Y4: A] :
% 0.30/0.46 ( ( ord_less @ nat @ ( F @ Y4 ) @ ( F @ X3 ) )
% 0.30/0.46 => ( P @ Y4 ) )
% 0.30/0.46 => ( P @ X3 ) )
% 0.30/0.46 => ( P @ A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % measure_induct_rule
% 0.30/0.46 thf(fact_69_infinite__descent__measure,axiom,
% 0.30/0.46 ! [A: $tType,P: A > $o,V: A > nat,X: A] :
% 0.30/0.46 ( ! [X3: A] :
% 0.30/0.46 ( ~ ( P @ X3 )
% 0.30/0.46 => ? [Y4: A] :
% 0.30/0.46 ( ( ord_less @ nat @ ( V @ Y4 ) @ ( V @ X3 ) )
% 0.30/0.46 & ~ ( P @ Y4 ) ) )
% 0.30/0.46 => ( P @ X ) ) ).
% 0.30/0.46
% 0.30/0.46 % infinite_descent_measure
% 0.30/0.46 thf(fact_70_infinite__descent0__measure,axiom,
% 0.30/0.46 ! [A: $tType,V: A > nat,P: A > $o,X: A] :
% 0.30/0.46 ( ! [X3: A] :
% 0.30/0.46 ( ( ( V @ X3 )
% 0.30/0.46 = ( zero_zero @ nat ) )
% 0.30/0.46 => ( P @ X3 ) )
% 0.30/0.46 => ( ! [X3: A] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ ( V @ X3 ) )
% 0.30/0.46 => ( ~ ( P @ X3 )
% 0.30/0.46 => ? [Y4: A] :
% 0.30/0.46 ( ( ord_less @ nat @ ( V @ Y4 ) @ ( V @ X3 ) )
% 0.30/0.46 & ~ ( P @ Y4 ) ) ) )
% 0.30/0.46 => ( P @ X ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % infinite_descent0_measure
% 0.30/0.46 thf(fact_71_diff__right__commute,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,C: A,B2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( minus_minus @ A @ A2 @ C ) @ B2 )
% 0.30/0.46 = ( minus_minus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ C ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_right_commute
% 0.30/0.46 thf(fact_72_diff__eq__diff__eq,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A,D: A] :
% 0.30/0.46 ( ( ( minus_minus @ A @ A2 @ B2 )
% 0.30/0.46 = ( minus_minus @ A @ C @ D ) )
% 0.30/0.46 => ( ( A2 = B2 )
% 0.30/0.46 = ( C = D ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_eq_diff_eq
% 0.30/0.46 thf(fact_73_less__Suc__eq__0__disj,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ ( suc @ N2 ) )
% 0.30/0.46 = ( ( M
% 0.30/0.46 = ( zero_zero @ nat ) )
% 0.30/0.46 | ? [J3: nat] :
% 0.30/0.46 ( ( M
% 0.30/0.46 = ( suc @ J3 ) )
% 0.30/0.46 & ( ord_less @ nat @ J3 @ N2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_Suc_eq_0_disj
% 0.30/0.46 thf(fact_74_gr0__implies__Suc,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 0.30/0.46 => ? [M3: nat] :
% 0.30/0.46 ( N2
% 0.30/0.46 = ( suc @ M3 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % gr0_implies_Suc
% 0.30/0.46 thf(fact_75_gr0__conv__Suc,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 0.30/0.46 = ( ? [M4: nat] :
% 0.30/0.46 ( N2
% 0.30/0.46 = ( suc @ M4 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % gr0_conv_Suc
% 0.30/0.46 thf(fact_76_eq__iff__diff__eq__0,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ( ( ^ [Y5: A,Z: A] : ( Y5 = Z ) )
% 0.30/0.46 = ( ^ [A3: A,B3: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A3 @ B3 )
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % eq_iff_diff_eq_0
% 0.30/0.46 thf(fact_77_diff__strict__right__mono,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( ord_less @ A @ A2 @ B2 )
% 0.30/0.46 => ( ord_less @ A @ ( minus_minus @ A @ A2 @ C ) @ ( minus_minus @ A @ B2 @ C ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_strict_right_mono
% 0.30/0.46 thf(fact_78_diff__strict__left__mono,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [B2: A,A2: A,C: A] :
% 0.30/0.46 ( ( ord_less @ A @ B2 @ A2 )
% 0.30/0.46 => ( ord_less @ A @ ( minus_minus @ A @ C @ A2 ) @ ( minus_minus @ A @ C @ B2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_strict_left_mono
% 0.30/0.46 thf(fact_79_diff__eq__diff__less,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A,D: A] :
% 0.30/0.46 ( ( ( minus_minus @ A @ A2 @ B2 )
% 0.30/0.46 = ( minus_minus @ A @ C @ D ) )
% 0.30/0.46 => ( ( ord_less @ A @ A2 @ B2 )
% 0.30/0.46 = ( ord_less @ A @ C @ D ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_eq_diff_less
% 0.30/0.46 thf(fact_80_diff__strict__mono,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,D: A,C: A] :
% 0.30/0.46 ( ( ord_less @ A @ A2 @ B2 )
% 0.30/0.46 => ( ( ord_less @ A @ D @ C )
% 0.30/0.46 => ( ord_less @ A @ ( minus_minus @ A @ A2 @ C ) @ ( minus_minus @ A @ B2 @ D ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_strict_mono
% 0.30/0.46 thf(fact_81_lessE,axiom,
% 0.30/0.46 ! [I2: nat,K: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ K )
% 0.30/0.46 => ( ( K
% 0.30/0.46 != ( suc @ I2 ) )
% 0.30/0.46 => ~ ! [J2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J2 )
% 0.30/0.46 => ( K
% 0.30/0.46 != ( suc @ J2 ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lessE
% 0.30/0.46 thf(fact_82_Suc__lessD,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( suc @ M ) @ N2 )
% 0.30/0.46 => ( ord_less @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_lessD
% 0.30/0.46 thf(fact_83_Suc__lessE,axiom,
% 0.30/0.46 ! [I2: nat,K: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( suc @ I2 ) @ K )
% 0.30/0.46 => ~ ! [J2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J2 )
% 0.30/0.46 => ( K
% 0.30/0.46 != ( suc @ J2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_lessE
% 0.30/0.46 thf(fact_84_Suc__lessI,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 => ( ( ( suc @ M )
% 0.30/0.46 != N2 )
% 0.30/0.46 => ( ord_less @ nat @ ( suc @ M ) @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_lessI
% 0.30/0.46 thf(fact_85_less__SucE,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ ( suc @ N2 ) )
% 0.30/0.46 => ( ~ ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 => ( M = N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_SucE
% 0.30/0.46 thf(fact_86_less__SucI,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 => ( ord_less @ nat @ M @ ( suc @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_SucI
% 0.30/0.46 thf(fact_87_less__Suc__eq,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ ( suc @ N2 ) )
% 0.30/0.46 = ( ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 | ( M = N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_Suc_eq
% 0.30/0.46 thf(fact_88_not__less__eq,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ~ ( ord_less @ nat @ M @ N2 ) )
% 0.30/0.46 = ( ord_less @ nat @ N2 @ ( suc @ M ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_less_eq
% 0.30/0.46 thf(fact_89_Suc__less__eq2,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( suc @ N2 ) @ M )
% 0.30/0.46 = ( ? [M5: nat] :
% 0.30/0.46 ( ( M
% 0.30/0.46 = ( suc @ M5 ) )
% 0.30/0.46 & ( ord_less @ nat @ N2 @ M5 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_less_eq2
% 0.30/0.46 thf(fact_90_less__antisym,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ~ ( ord_less @ nat @ N2 @ M )
% 0.30/0.46 => ( ( ord_less @ nat @ N2 @ ( suc @ M ) )
% 0.30/0.46 => ( M = N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_antisym
% 0.30/0.46 thf(fact_91_Suc__less__SucD,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( suc @ M ) @ ( suc @ N2 ) )
% 0.30/0.46 => ( ord_less @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_less_SucD
% 0.30/0.46 thf(fact_92_less__trans__Suc,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,K: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J4 )
% 0.30/0.46 => ( ( ord_less @ nat @ J4 @ K )
% 0.30/0.46 => ( ord_less @ nat @ ( suc @ I2 ) @ K ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_trans_Suc
% 0.30/0.46 thf(fact_93_less__Suc__induct,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,P: nat > nat > $o] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J4 )
% 0.30/0.46 => ( ! [I: nat] : ( P @ I @ ( suc @ I ) )
% 0.30/0.46 => ( ! [I: nat,J2: nat,K2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I @ J2 )
% 0.30/0.46 => ( ( ord_less @ nat @ J2 @ K2 )
% 0.30/0.46 => ( ( P @ I @ J2 )
% 0.30/0.46 => ( ( P @ J2 @ K2 )
% 0.30/0.46 => ( P @ I @ K2 ) ) ) ) )
% 0.30/0.46 => ( P @ I2 @ J4 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_Suc_induct
% 0.30/0.46 thf(fact_94_strict__inc__induct,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,P: nat > $o] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J4 )
% 0.30/0.46 => ( ! [I: nat] :
% 0.30/0.46 ( ( J4
% 0.30/0.46 = ( suc @ I ) )
% 0.30/0.46 => ( P @ I ) )
% 0.30/0.46 => ( ! [I: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I @ J4 )
% 0.30/0.46 => ( ( P @ ( suc @ I ) )
% 0.30/0.46 => ( P @ I ) ) )
% 0.30/0.46 => ( P @ I2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % strict_inc_induct
% 0.30/0.46 thf(fact_95_not__less__less__Suc__eq,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ~ ( ord_less @ nat @ N2 @ M )
% 0.30/0.46 => ( ( ord_less @ nat @ N2 @ ( suc @ M ) )
% 0.30/0.46 = ( N2 = M ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_less_less_Suc_eq
% 0.30/0.46 thf(fact_96_less__iff__diff__less__0,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ( ( ord_less @ A )
% 0.30/0.46 = ( ^ [A3: A,B3: A] : ( ord_less @ A @ ( minus_minus @ A @ A3 @ B3 ) @ ( zero_zero @ A ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_iff_diff_less_0
% 0.30/0.46 thf(fact_97_nat_Odistinct_I1_J,axiom,
% 0.30/0.46 ! [X2: nat] :
% 0.30/0.46 ( ( zero_zero @ nat )
% 0.30/0.46 != ( suc @ X2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat.distinct(1)
% 0.30/0.46 thf(fact_98_old_Onat_Odistinct_I2_J,axiom,
% 0.30/0.46 ! [Nat3: nat] :
% 0.30/0.46 ( ( suc @ Nat3 )
% 0.30/0.46 != ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % old.nat.distinct(2)
% 0.30/0.46 thf(fact_99_old_Onat_Odistinct_I1_J,axiom,
% 0.30/0.46 ! [Nat2: nat] :
% 0.30/0.46 ( ( zero_zero @ nat )
% 0.30/0.46 != ( suc @ Nat2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % old.nat.distinct(1)
% 0.30/0.46 thf(fact_100_nat_OdiscI,axiom,
% 0.30/0.46 ! [Nat: nat,X2: nat] :
% 0.30/0.46 ( ( Nat
% 0.30/0.46 = ( suc @ X2 ) )
% 0.30/0.46 => ( Nat
% 0.30/0.46 != ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat.discI
% 0.30/0.46 thf(fact_101_nat__induct,axiom,
% 0.30/0.46 ! [P: nat > $o,N2: nat] :
% 0.30/0.46 ( ( P @ ( zero_zero @ nat ) )
% 0.30/0.46 => ( ! [N3: nat] :
% 0.30/0.46 ( ( P @ N3 )
% 0.30/0.46 => ( P @ ( suc @ N3 ) ) )
% 0.30/0.46 => ( P @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat_induct
% 0.30/0.46 thf(fact_102_diff__induct,axiom,
% 0.30/0.46 ! [P: nat > nat > $o,M: nat,N2: nat] :
% 0.30/0.46 ( ! [X3: nat] : ( P @ X3 @ ( zero_zero @ nat ) )
% 0.30/0.46 => ( ! [Y6: nat] : ( P @ ( zero_zero @ nat ) @ ( suc @ Y6 ) )
% 0.30/0.46 => ( ! [X3: nat,Y6: nat] :
% 0.30/0.46 ( ( P @ X3 @ Y6 )
% 0.30/0.46 => ( P @ ( suc @ X3 ) @ ( suc @ Y6 ) ) )
% 0.30/0.46 => ( P @ M @ N2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_induct
% 0.30/0.46 thf(fact_103_zero__induct,axiom,
% 0.30/0.46 ! [P: nat > $o,K: nat] :
% 0.30/0.46 ( ( P @ K )
% 0.30/0.46 => ( ! [N3: nat] :
% 0.30/0.46 ( ( P @ ( suc @ N3 ) )
% 0.30/0.46 => ( P @ N3 ) )
% 0.30/0.46 => ( P @ ( zero_zero @ nat ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_induct
% 0.30/0.46 thf(fact_104_Suc__neq__Zero,axiom,
% 0.30/0.46 ! [M: nat] :
% 0.30/0.46 ( ( suc @ M )
% 0.30/0.46 != ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_neq_Zero
% 0.30/0.46 thf(fact_105_Zero__neq__Suc,axiom,
% 0.30/0.46 ! [M: nat] :
% 0.30/0.46 ( ( zero_zero @ nat )
% 0.30/0.46 != ( suc @ M ) ) ).
% 0.30/0.46
% 0.30/0.46 % Zero_neq_Suc
% 0.30/0.46 thf(fact_106_Zero__not__Suc,axiom,
% 0.30/0.46 ! [M: nat] :
% 0.30/0.46 ( ( zero_zero @ nat )
% 0.30/0.46 != ( suc @ M ) ) ).
% 0.30/0.46
% 0.30/0.46 % Zero_not_Suc
% 0.30/0.46 thf(fact_107_old_Onat_Oexhaust,axiom,
% 0.30/0.46 ! [Y: nat] :
% 0.30/0.46 ( ( Y
% 0.30/0.46 != ( zero_zero @ nat ) )
% 0.30/0.46 => ~ ! [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 != ( suc @ Nat4 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % old.nat.exhaust
% 0.30/0.46 thf(fact_108_old_Onat_Oinducts,axiom,
% 0.30/0.46 ! [P: nat > $o,Nat: nat] :
% 0.30/0.46 ( ( P @ ( zero_zero @ nat ) )
% 0.30/0.46 => ( ! [Nat4: nat] :
% 0.30/0.46 ( ( P @ Nat4 )
% 0.30/0.46 => ( P @ ( suc @ Nat4 ) ) )
% 0.30/0.46 => ( P @ Nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % old.nat.inducts
% 0.30/0.46 thf(fact_109_not0__implies__Suc,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( N2
% 0.30/0.46 != ( zero_zero @ nat ) )
% 0.30/0.46 => ? [M3: nat] :
% 0.30/0.46 ( N2
% 0.30/0.46 = ( suc @ M3 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not0_implies_Suc
% 0.30/0.46 thf(fact_110_less__enatE,axiom,
% 0.30/0.46 ! [N2: extended_enat,M: nat] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ N2 @ ( extended_enat2 @ M ) )
% 0.30/0.46 => ~ ! [K2: nat] :
% 0.30/0.46 ( ( N2
% 0.30/0.46 = ( extended_enat2 @ K2 ) )
% 0.30/0.46 => ~ ( ord_less @ nat @ K2 @ M ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_enatE
% 0.30/0.46 thf(fact_111_zero__enat__def,axiom,
% 0.30/0.46 ( ( zero_zero @ extended_enat )
% 0.30/0.46 = ( extended_enat2 @ ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_enat_def
% 0.30/0.46 thf(fact_112_enat__0__iff_I1_J,axiom,
% 0.30/0.46 ! [X: nat] :
% 0.30/0.46 ( ( ( extended_enat2 @ X )
% 0.30/0.46 = ( zero_zero @ extended_enat ) )
% 0.30/0.46 = ( X
% 0.30/0.46 = ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_0_iff(1)
% 0.30/0.46 thf(fact_113_enat__0__iff_I2_J,axiom,
% 0.30/0.46 ! [X: nat] :
% 0.30/0.46 ( ( ( zero_zero @ extended_enat )
% 0.30/0.46 = ( extended_enat2 @ X ) )
% 0.30/0.46 = ( X
% 0.30/0.46 = ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_0_iff(2)
% 0.30/0.46 thf(fact_114_zero__reorient,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( zero @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [X: A] :
% 0.30/0.46 ( ( ( zero_zero @ A )
% 0.30/0.46 = X )
% 0.30/0.46 = ( X
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_reorient
% 0.30/0.46 thf(fact_115_ldrop__eq__LConsD,axiom,
% 0.30/0.46 ! [A: $tType,N2: extended_enat,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ( coindu191418589_ldrop @ A @ N2 @ Xs )
% 0.30/0.46 = ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 0.30/0.46 => ( ord_less @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldrop_eq_LConsD
% 0.30/0.46 thf(fact_116_case__enat__0,axiom,
% 0.30/0.46 ! [A: $tType,F: nat > A,I2: A] :
% 0.30/0.46 ( ( extended_case_enat @ A @ F @ I2 @ ( zero_zero @ extended_enat ) )
% 0.30/0.46 = ( F @ ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % case_enat_0
% 0.30/0.46 thf(fact_117_minus__apply,axiom,
% 0.30/0.46 ! [B: $tType,A: $tType] :
% 0.30/0.46 ( ( minus @ B @ ( type2 @ B ) )
% 0.30/0.46 => ( ( minus_minus @ ( A > B ) )
% 0.30/0.46 = ( ^ [A4: A > B,B4: A > B,X4: A] : ( minus_minus @ B @ ( A4 @ X4 ) @ ( B4 @ X4 ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % minus_apply
% 0.30/0.46 thf(fact_118_enat_Osize_I1_J,axiom,
% 0.30/0.46 ! [Nat: nat] :
% 0.30/0.46 ( ( extended_size_enat @ ( extended_enat2 @ Nat ) )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.size(1)
% 0.30/0.46 thf(fact_119_ldropn__Suc__conv__ldropn,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu1121789889_LCons @ A @ ( coindu749330388e_lnth @ A @ Xs @ N2 ) @ ( coindu531130065ldropn @ A @ ( suc @ N2 ) @ Xs ) )
% 0.30/0.46 = ( coindu531130065ldropn @ A @ N2 @ Xs ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldropn_Suc_conv_ldropn
% 0.30/0.46 thf(fact_120_enat_Osize_I3_J,axiom,
% 0.30/0.46 ! [Nat: nat] :
% 0.30/0.46 ( ( size_size @ extended_enat @ ( extended_enat2 @ Nat ) )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.size(3)
% 0.30/0.46 thf(fact_121_llength__ldrop,axiom,
% 0.30/0.46 ! [A: $tType,N2: extended_enat,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ( N2
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( ( coindu1018505716length @ A @ ( coindu191418589_ldrop @ A @ N2 @ Xs ) )
% 0.30/0.46 = ( zero_zero @ extended_enat ) ) )
% 0.30/0.46 & ( ( N2
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( ( coindu1018505716length @ A @ ( coindu191418589_ldrop @ A @ N2 @ Xs ) )
% 0.30/0.46 = ( minus_minus @ extended_enat @ ( coindu1018505716length @ A @ Xs ) @ N2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % llength_ldrop
% 0.30/0.46 thf(fact_122_ldrop__lappend,axiom,
% 0.30/0.46 ! [A: $tType,N2: extended_enat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ( ord_less @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu191418589_ldrop @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.30/0.46 = ( coindu268472904append @ A @ ( coindu191418589_ldrop @ A @ N2 @ Xs ) @ Ys ) ) )
% 0.30/0.46 & ( ~ ( ord_less @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu191418589_ldrop @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.30/0.46 = ( coindu191418589_ldrop @ A @ ( minus_minus @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) ) @ Ys ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldrop_lappend
% 0.30/0.46 thf(fact_123_idiff__infinity__right,axiom,
% 0.30/0.46 ! [A2: nat] :
% 0.30/0.46 ( ( minus_minus @ extended_enat @ ( extended_enat2 @ A2 ) @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 = ( zero_zero @ extended_enat ) ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_infinity_right
% 0.30/0.46 thf(fact_124_lstrict__prefix__llength__less,axiom,
% 0.30/0.46 ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu574146665prefix @ A @ Xs @ Ys )
% 0.30/0.46 => ( ord_less @ extended_enat @ ( coindu1018505716length @ A @ Xs ) @ ( coindu1018505716length @ A @ Ys ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lstrict_prefix_llength_less
% 0.30/0.46 thf(fact_125_diff__0__eq__0,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( zero_zero @ nat ) @ N2 )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_0_eq_0
% 0.30/0.46 thf(fact_126_diff__self__eq__0,axiom,
% 0.30/0.46 ! [M: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ M @ M )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_self_eq_0
% 0.30/0.46 thf(fact_127_Suc__diff__diff,axiom,
% 0.30/0.46 ! [M: nat,N2: nat,K: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( minus_minus @ nat @ ( suc @ M ) @ N2 ) @ ( suc @ K ) )
% 0.30/0.46 = ( minus_minus @ nat @ ( minus_minus @ nat @ M @ N2 ) @ K ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_diff_diff
% 0.30/0.46 thf(fact_128_diff__Suc__Suc,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( suc @ M ) @ ( suc @ N2 ) )
% 0.30/0.46 = ( minus_minus @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_Suc_Suc
% 0.30/0.46 thf(fact_129_zero__less__diff,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ ( minus_minus @ nat @ N2 @ M ) )
% 0.30/0.46 = ( ord_less @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_less_diff
% 0.30/0.46 thf(fact_130_lappend__code_I2_J,axiom,
% 0.30/0.46 ! [A: $tType,Xa: A,X: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu268472904append @ A @ ( coindu1121789889_LCons @ A @ Xa @ X ) @ Ys )
% 0.30/0.46 = ( coindu1121789889_LCons @ A @ Xa @ ( coindu268472904append @ A @ X @ Ys ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lappend_code(2)
% 0.30/0.46 thf(fact_131_not__infinity__eq,axiom,
% 0.30/0.46 ! [X: extended_enat] :
% 0.30/0.46 ( ( X
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 = ( ? [I3: nat] :
% 0.30/0.46 ( X
% 0.30/0.46 = ( extended_enat2 @ I3 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_infinity_eq
% 0.30/0.46 thf(fact_132_not__enat__eq,axiom,
% 0.30/0.46 ! [X: extended_enat] :
% 0.30/0.46 ( ( ! [Y7: nat] :
% 0.30/0.46 ( X
% 0.30/0.46 != ( extended_enat2 @ Y7 ) ) )
% 0.30/0.46 = ( X
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % not_enat_eq
% 0.30/0.46 thf(fact_133_enat__ord__simps_I6_J,axiom,
% 0.30/0.46 ! [Q: extended_enat] :
% 0.30/0.46 ~ ( ord_less @ extended_enat @ ( extend1396239628finity @ extended_enat ) @ Q ) ).
% 0.30/0.46
% 0.30/0.46 % enat_ord_simps(6)
% 0.30/0.46 thf(fact_134_enat__ord__simps_I4_J,axiom,
% 0.30/0.46 ! [Q: extended_enat] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ Q @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 = ( Q
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_ord_simps(4)
% 0.30/0.46 thf(fact_135_idiff__enat__enat,axiom,
% 0.30/0.46 ! [A2: nat,B2: nat] :
% 0.30/0.46 ( ( minus_minus @ extended_enat @ ( extended_enat2 @ A2 ) @ ( extended_enat2 @ B2 ) )
% 0.30/0.46 = ( extended_enat2 @ ( minus_minus @ nat @ A2 @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_enat_enat
% 0.30/0.46 thf(fact_136_idiff__infinity,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( minus_minus @ extended_enat @ ( extend1396239628finity @ extended_enat ) @ N2 )
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_infinity
% 0.30/0.46 thf(fact_137_enat_Osimps_I5_J,axiom,
% 0.30/0.46 ! [T: $tType,F1: nat > T,F2: T] :
% 0.30/0.46 ( ( extended_case_enat @ T @ F1 @ F2 @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 = F2 ) ).
% 0.30/0.46
% 0.30/0.46 % enat.simps(5)
% 0.30/0.46 thf(fact_138_lstrict__prefix__code_I4_J,axiom,
% 0.30/0.46 ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B,Y: B,Ys: coindu1593790203_llist @ B] :
% 0.30/0.46 ( ( coindu574146665prefix @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) @ ( coindu1121789889_LCons @ B @ Y @ Ys ) )
% 0.30/0.46 = ( ( X = Y )
% 0.30/0.46 & ( coindu574146665prefix @ B @ Xs @ Ys ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lstrict_prefix_code(4)
% 0.30/0.46 thf(fact_139_enat_Osimps_I7_J,axiom,
% 0.30/0.46 ! [T: $tType,F1: nat > T,F2: T] :
% 0.30/0.46 ( ( extended_rec_enat @ T @ F1 @ F2 @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 = F2 ) ).
% 0.30/0.46
% 0.30/0.46 % enat.simps(7)
% 0.30/0.46 thf(fact_140_Suc__pred,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 0.30/0.46 => ( ( suc @ ( minus_minus @ nat @ N2 @ ( suc @ ( zero_zero @ nat ) ) ) )
% 0.30/0.46 = N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_pred
% 0.30/0.46 thf(fact_141_lnth__0,axiom,
% 0.30/0.46 ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu749330388e_lnth @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( zero_zero @ nat ) )
% 0.30/0.46 = X ) ).
% 0.30/0.46
% 0.30/0.46 % lnth_0
% 0.30/0.46 thf(fact_142_lnth__Suc__LCons,axiom,
% 0.30/0.46 ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A,N2: nat] :
% 0.30/0.46 ( ( coindu749330388e_lnth @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( suc @ N2 ) )
% 0.30/0.46 = ( coindu749330388e_lnth @ A @ Xs @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % lnth_Suc_LCons
% 0.30/0.46 thf(fact_143_idiff__self,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( N2
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( ( minus_minus @ extended_enat @ N2 @ N2 )
% 0.30/0.46 = ( zero_zero @ extended_enat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % idiff_self
% 0.30/0.46 thf(fact_144_enat_Osize_I4_J,axiom,
% 0.30/0.46 ( ( size_size @ extended_enat @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.size(4)
% 0.30/0.46 thf(fact_145_enat_Osize_I2_J,axiom,
% 0.30/0.46 ( ( extended_size_enat @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.size(2)
% 0.30/0.46 thf(fact_146_diffs0__imp__equal,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ( minus_minus @ nat @ M @ N2 )
% 0.30/0.46 = ( zero_zero @ nat ) )
% 0.30/0.46 => ( ( ( minus_minus @ nat @ N2 @ M )
% 0.30/0.46 = ( zero_zero @ nat ) )
% 0.30/0.46 => ( M = N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diffs0_imp_equal
% 0.30/0.46 thf(fact_147_minus__nat_Odiff__0,axiom,
% 0.30/0.46 ! [M: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ M @ ( zero_zero @ nat ) )
% 0.30/0.46 = M ) ).
% 0.30/0.46
% 0.30/0.46 % minus_nat.diff_0
% 0.30/0.46 thf(fact_148_lappend__assoc,axiom,
% 0.30/0.46 ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu268472904append @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ Zs )
% 0.30/0.46 = ( coindu268472904append @ A @ Xs @ ( coindu268472904append @ A @ Ys @ Zs ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lappend_assoc
% 0.30/0.46 thf(fact_149_llist__less__induct,axiom,
% 0.30/0.46 ! [A: $tType,P: ( coindu1593790203_llist @ A ) > $o,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ! [Xs2: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ! [Ys2: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu574146665prefix @ A @ Ys2 @ Xs2 )
% 0.30/0.46 => ( P @ Ys2 ) )
% 0.30/0.46 => ( P @ Xs2 ) )
% 0.30/0.46 => ( P @ Xs ) ) ).
% 0.30/0.46
% 0.30/0.46 % llist_less_induct
% 0.30/0.46 thf(fact_150_zero__induct__lemma,axiom,
% 0.30/0.46 ! [P: nat > $o,K: nat,I2: nat] :
% 0.30/0.46 ( ( P @ K )
% 0.30/0.46 => ( ! [N3: nat] :
% 0.30/0.46 ( ( P @ ( suc @ N3 ) )
% 0.30/0.46 => ( P @ N3 ) )
% 0.30/0.46 => ( P @ ( minus_minus @ nat @ K @ I2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_induct_lemma
% 0.30/0.46 thf(fact_151_enat__ex__split,axiom,
% 0.30/0.46 ( ( ^ [P2: extended_enat > $o] :
% 0.30/0.46 ? [X5: extended_enat] : ( P2 @ X5 ) )
% 0.30/0.46 = ( ^ [P3: extended_enat > $o] :
% 0.30/0.46 ( ( P3 @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 | ? [X4: nat] : ( P3 @ ( extended_enat2 @ X4 ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_ex_split
% 0.30/0.46 thf(fact_152_enat_Oinducts,axiom,
% 0.30/0.46 ! [P: extended_enat > $o,Enat: extended_enat] :
% 0.30/0.46 ( ! [Nat4: nat] : ( P @ ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( ( P @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( P @ Enat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.inducts
% 0.30/0.46 thf(fact_153_enat_Oexhaust,axiom,
% 0.30/0.46 ! [Y: extended_enat] :
% 0.30/0.46 ( ! [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 != ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( Y
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.exhaust
% 0.30/0.46 thf(fact_154_enat3__cases,axiom,
% 0.30/0.46 ! [Y: extended_enat,Ya: extended_enat,Yb: extended_enat] :
% 0.30/0.46 ( ( ? [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( ? [Nata: nat] :
% 0.30/0.46 ( Ya
% 0.30/0.46 = ( extended_enat2 @ Nata ) )
% 0.30/0.46 => ! [Natb: nat] :
% 0.30/0.46 ( Yb
% 0.30/0.46 != ( extended_enat2 @ Natb ) ) ) )
% 0.30/0.46 => ( ( ? [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( ? [Nata: nat] :
% 0.30/0.46 ( Ya
% 0.30/0.46 = ( extended_enat2 @ Nata ) )
% 0.30/0.46 => ( Yb
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) ) )
% 0.30/0.46 => ( ( ? [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( ( Ya
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ! [Nata: nat] :
% 0.30/0.46 ( Yb
% 0.30/0.46 != ( extended_enat2 @ Nata ) ) ) )
% 0.30/0.46 => ( ( ? [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( ( Ya
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( Yb
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) ) )
% 0.30/0.46 => ( ( ( Y
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( ? [Nat4: nat] :
% 0.30/0.46 ( Ya
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ! [Nata: nat] :
% 0.30/0.46 ( Yb
% 0.30/0.46 != ( extended_enat2 @ Nata ) ) ) )
% 0.30/0.46 => ( ( ( Y
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( ? [Nat4: nat] :
% 0.30/0.46 ( Ya
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( Yb
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) ) )
% 0.30/0.46 => ( ( ( Y
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( ( Ya
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ! [Nat4: nat] :
% 0.30/0.46 ( Yb
% 0.30/0.46 != ( extended_enat2 @ Nat4 ) ) ) )
% 0.30/0.46 => ~ ( ( Y
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( ( Ya
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( Yb
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) ) ) ) ) ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat3_cases
% 0.30/0.46 thf(fact_155_enat2__cases,axiom,
% 0.30/0.46 ! [Y: extended_enat,Ya: extended_enat] :
% 0.30/0.46 ( ( ? [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ! [Nata: nat] :
% 0.30/0.46 ( Ya
% 0.30/0.46 != ( extended_enat2 @ Nata ) ) )
% 0.30/0.46 => ( ( ? [Nat4: nat] :
% 0.30/0.46 ( Y
% 0.30/0.46 = ( extended_enat2 @ Nat4 ) )
% 0.30/0.46 => ( Ya
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) )
% 0.30/0.46 => ( ( ( Y
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ! [Nat4: nat] :
% 0.30/0.46 ( Ya
% 0.30/0.46 != ( extended_enat2 @ Nat4 ) ) )
% 0.30/0.46 => ~ ( ( Y
% 0.30/0.46 = ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ( Ya
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat2_cases
% 0.30/0.46 thf(fact_156_enat_Odistinct_I1_J,axiom,
% 0.30/0.46 ! [Nat: nat] :
% 0.30/0.46 ( ( extended_enat2 @ Nat )
% 0.30/0.46 != ( extend1396239628finity @ extended_enat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.distinct(1)
% 0.30/0.46 thf(fact_157_enat_Odistinct_I2_J,axiom,
% 0.30/0.46 ! [Nat5: nat] :
% 0.30/0.46 ( ( extend1396239628finity @ extended_enat )
% 0.30/0.46 != ( extended_enat2 @ Nat5 ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat.distinct(2)
% 0.30/0.46 thf(fact_158_infinity__ne__i0,axiom,
% 0.30/0.46 ( ( extend1396239628finity @ extended_enat )
% 0.30/0.46 != ( zero_zero @ extended_enat ) ) ).
% 0.30/0.46
% 0.30/0.46 % infinity_ne_i0
% 0.30/0.46 thf(fact_159_less__imp__diff__less,axiom,
% 0.30/0.46 ! [J4: nat,K: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ J4 @ K )
% 0.30/0.46 => ( ord_less @ nat @ ( minus_minus @ nat @ J4 @ N2 ) @ K ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_imp_diff_less
% 0.30/0.46 thf(fact_160_diff__less__mono2,axiom,
% 0.30/0.46 ! [M: nat,N2: nat,L: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 => ( ( ord_less @ nat @ M @ L )
% 0.30/0.46 => ( ord_less @ nat @ ( minus_minus @ nat @ L @ N2 ) @ ( minus_minus @ nat @ L @ M ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_less_mono2
% 0.30/0.46 thf(fact_161_diff__less,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 0.30/0.46 => ( ( ord_less @ nat @ ( zero_zero @ nat ) @ M )
% 0.30/0.46 => ( ord_less @ nat @ ( minus_minus @ nat @ M @ N2 ) @ M ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_less
% 0.30/0.46 thf(fact_162_lnth__lappend1,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu749330388e_lnth @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ N2 )
% 0.30/0.46 = ( coindu749330388e_lnth @ A @ Xs @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lnth_lappend1
% 0.30/0.46 thf(fact_163_Suc__diff__Suc,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ N2 @ M )
% 0.30/0.46 => ( ( suc @ ( minus_minus @ nat @ M @ ( suc @ N2 ) ) )
% 0.30/0.46 = ( minus_minus @ nat @ M @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % Suc_diff_Suc
% 0.30/0.46 thf(fact_164_diff__less__Suc,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] : ( ord_less @ nat @ ( minus_minus @ nat @ M @ N2 ) @ ( suc @ M ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_less_Suc
% 0.30/0.46 thf(fact_165_diff__Suc__less,axiom,
% 0.30/0.46 ! [N2: nat,I2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 0.30/0.46 => ( ord_less @ nat @ ( minus_minus @ nat @ N2 @ ( suc @ I2 ) ) @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_Suc_less
% 0.30/0.46 thf(fact_166_infinity__ilessE,axiom,
% 0.30/0.46 ! [M: nat] :
% 0.30/0.46 ~ ( ord_less @ extended_enat @ ( extend1396239628finity @ extended_enat ) @ ( extended_enat2 @ M ) ) ).
% 0.30/0.46
% 0.30/0.46 % infinity_ilessE
% 0.30/0.46 thf(fact_167_less__infinityE,axiom,
% 0.30/0.46 ! [N2: extended_enat] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ N2 @ ( extend1396239628finity @ extended_enat ) )
% 0.30/0.46 => ~ ! [K2: nat] :
% 0.30/0.46 ( N2
% 0.30/0.46 != ( extended_enat2 @ K2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_infinityE
% 0.30/0.46 thf(fact_168_enat__ord__code_I4_J,axiom,
% 0.30/0.46 ! [M: nat] : ( ord_less @ extended_enat @ ( extended_enat2 @ M ) @ ( extend1396239628finity @ extended_enat ) ) ).
% 0.30/0.46
% 0.30/0.46 % enat_ord_code(4)
% 0.30/0.46 thf(fact_169_fun__diff__def,axiom,
% 0.30/0.46 ! [B: $tType,A: $tType] :
% 0.30/0.46 ( ( minus @ B @ ( type2 @ B ) )
% 0.30/0.46 => ( ( minus_minus @ ( A > B ) )
% 0.30/0.46 = ( ^ [A4: A > B,B4: A > B,X4: A] : ( minus_minus @ B @ ( A4 @ X4 ) @ ( B4 @ X4 ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % fun_diff_def
% 0.30/0.46 thf(fact_170_ldropn__lappend,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu531130065ldropn @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.30/0.46 = ( coindu268472904append @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) @ Ys ) ) )
% 0.30/0.46 & ( ~ ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu531130065ldropn @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 0.30/0.46 = ( coindu531130065ldropn @ A @ ( minus_minus @ nat @ N2 @ ( extended_the_enat @ ( coindu1018505716length @ A @ Xs ) ) ) @ Ys ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldropn_lappend
% 0.30/0.46 thf(fact_171_lnth__lappend,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu749330388e_lnth @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ N2 )
% 0.30/0.46 = ( coindu749330388e_lnth @ A @ Xs @ N2 ) ) )
% 0.30/0.46 & ( ~ ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu749330388e_lnth @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ N2 )
% 0.30/0.46 = ( coindu749330388e_lnth @ A @ Ys @ ( minus_minus @ nat @ N2 @ ( extended_the_enat @ ( coindu1018505716length @ A @ Xs ) ) ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lnth_lappend
% 0.30/0.46 thf(fact_172_lnth__ldropn,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,M: nat,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( ord_less @ extended_enat @ ( extended_enat2 @ ( plus_plus @ nat @ N2 @ M ) ) @ ( coindu1018505716length @ A @ Xs ) )
% 0.30/0.46 => ( ( coindu749330388e_lnth @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) @ M )
% 0.30/0.46 = ( coindu749330388e_lnth @ A @ Xs @ ( plus_plus @ nat @ M @ N2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % lnth_ldropn
% 0.30/0.46 thf(fact_173_exists__least__lemma,axiom,
% 0.30/0.46 ! [P: nat > $o] :
% 0.30/0.46 ( ~ ( P @ ( zero_zero @ nat ) )
% 0.30/0.46 => ( ? [X1: nat] : ( P @ X1 )
% 0.30/0.46 => ? [N3: nat] :
% 0.30/0.46 ( ~ ( P @ N3 )
% 0.30/0.46 & ( P @ ( suc @ N3 ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % exists_least_lemma
% 0.30/0.46 thf(fact_174_add__left__cancel,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel_semigroup_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( ( plus_plus @ A @ A2 @ B2 )
% 0.30/0.46 = ( plus_plus @ A @ A2 @ C ) )
% 0.30/0.46 = ( B2 = C ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_left_cancel
% 0.30/0.46 thf(fact_175_add__right__cancel,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel_semigroup_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [B2: A,A2: A,C: A] :
% 0.30/0.46 ( ( ( plus_plus @ A @ B2 @ A2 )
% 0.30/0.46 = ( plus_plus @ A @ C @ A2 ) )
% 0.30/0.46 = ( B2 = C ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_right_cancel
% 0.30/0.46 thf(fact_176_add_Oleft__neutral,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( monoid_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % add.left_neutral
% 0.30/0.46 thf(fact_177_add_Oright__neutral,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( monoid_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( plus_plus @ A @ A2 @ ( zero_zero @ A ) )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % add.right_neutral
% 0.30/0.46 thf(fact_178_double__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( ( plus_plus @ A @ A2 @ A2 )
% 0.30/0.46 = ( zero_zero @ A ) )
% 0.30/0.46 = ( A2
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % double_zero
% 0.30/0.46 thf(fact_179_double__zero__sym,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( ( zero_zero @ A )
% 0.30/0.46 = ( plus_plus @ A @ A2 @ A2 ) )
% 0.30/0.46 = ( A2
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % double_zero_sym
% 0.30/0.46 thf(fact_180_add__cancel__left__left,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [B2: A,A2: A] :
% 0.30/0.46 ( ( ( plus_plus @ A @ B2 @ A2 )
% 0.30/0.46 = A2 )
% 0.30/0.46 = ( B2
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_cancel_left_left
% 0.30/0.46 thf(fact_181_add__cancel__left__right,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( ( plus_plus @ A @ A2 @ B2 )
% 0.30/0.46 = A2 )
% 0.30/0.46 = ( B2
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_cancel_left_right
% 0.30/0.46 thf(fact_182_add__cancel__right__left,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( A2
% 0.30/0.46 = ( plus_plus @ A @ B2 @ A2 ) )
% 0.30/0.46 = ( B2
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_cancel_right_left
% 0.30/0.46 thf(fact_183_add__cancel__right__right,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( A2
% 0.30/0.46 = ( plus_plus @ A @ A2 @ B2 ) )
% 0.30/0.46 = ( B2
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_cancel_right_right
% 0.30/0.46 thf(fact_184_add__less__cancel__left,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [C: A,A2: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) )
% 0.30/0.46 = ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_cancel_left
% 0.30/0.46 thf(fact_185_add__less__cancel__right,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,C: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) )
% 0.30/0.46 = ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_cancel_right
% 0.30/0.46 thf(fact_186_add__diff__cancel,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ B2 )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_diff_cancel
% 0.30/0.46 thf(fact_187_diff__add__cancel,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( plus_plus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ B2 )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_add_cancel
% 0.30/0.46 thf(fact_188_add__diff__cancel__left,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [C: A,A2: A,B2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) )
% 0.30/0.46 = ( minus_minus @ A @ A2 @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_diff_cancel_left
% 0.30/0.46 thf(fact_189_add__diff__cancel__left_H,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ A2 )
% 0.30/0.46 = B2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_diff_cancel_left'
% 0.30/0.46 thf(fact_190_add__diff__cancel__right,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,C: A,B2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) )
% 0.30/0.46 = ( minus_minus @ A @ A2 @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_diff_cancel_right
% 0.30/0.46 thf(fact_191_add__diff__cancel__right_H,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ B2 )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_diff_cancel_right'
% 0.30/0.46 thf(fact_192_add__is__0,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ( plus_plus @ nat @ M @ N2 )
% 0.30/0.46 = ( zero_zero @ nat ) )
% 0.30/0.46 = ( ( M
% 0.30/0.46 = ( zero_zero @ nat ) )
% 0.30/0.46 & ( N2
% 0.30/0.46 = ( zero_zero @ nat ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_is_0
% 0.30/0.46 thf(fact_193_Nat_Oadd__0__right,axiom,
% 0.30/0.46 ! [M: nat] :
% 0.30/0.46 ( ( plus_plus @ nat @ M @ ( zero_zero @ nat ) )
% 0.30/0.46 = M ) ).
% 0.30/0.46
% 0.30/0.46 % Nat.add_0_right
% 0.30/0.46 thf(fact_194_add__Suc__right,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( plus_plus @ nat @ M @ ( suc @ N2 ) )
% 0.30/0.46 = ( suc @ ( plus_plus @ nat @ M @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_Suc_right
% 0.30/0.46 thf(fact_195_nat__add__left__cancel__less,axiom,
% 0.30/0.46 ! [K: nat,M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( plus_plus @ nat @ K @ M ) @ ( plus_plus @ nat @ K @ N2 ) )
% 0.30/0.46 = ( ord_less @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat_add_left_cancel_less
% 0.30/0.46 thf(fact_196_diff__diff__left,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,K: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( minus_minus @ nat @ I2 @ J4 ) @ K )
% 0.30/0.46 = ( minus_minus @ nat @ I2 @ ( plus_plus @ nat @ J4 @ K ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_diff_left
% 0.30/0.46 thf(fact_197_ldropn__ldropn,axiom,
% 0.30/0.46 ! [A: $tType,N2: nat,M: nat,Xs: coindu1593790203_llist @ A] :
% 0.30/0.46 ( ( coindu531130065ldropn @ A @ N2 @ ( coindu531130065ldropn @ A @ M @ Xs ) )
% 0.30/0.46 = ( coindu531130065ldropn @ A @ ( plus_plus @ nat @ N2 @ M ) @ Xs ) ) ).
% 0.30/0.46
% 0.30/0.46 % ldropn_ldropn
% 0.30/0.46 thf(fact_198_zero__less__double__add__iff__zero__less__single__add,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( zero_zero @ A ) @ ( plus_plus @ A @ A2 @ A2 ) )
% 0.30/0.46 = ( ord_less @ A @ ( zero_zero @ A ) @ A2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % zero_less_double_add_iff_zero_less_single_add
% 0.30/0.46 thf(fact_199_double__add__less__zero__iff__single__add__less__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ A2 ) @ ( zero_zero @ A ) )
% 0.30/0.46 = ( ord_less @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % double_add_less_zero_iff_single_add_less_zero
% 0.30/0.46 thf(fact_200_less__add__same__cancel2,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ A2 @ ( plus_plus @ A @ B2 @ A2 ) )
% 0.30/0.46 = ( ord_less @ A @ ( zero_zero @ A ) @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_add_same_cancel2
% 0.30/0.46 thf(fact_201_less__add__same__cancel1,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ A2 @ ( plus_plus @ A @ A2 @ B2 ) )
% 0.30/0.46 = ( ord_less @ A @ ( zero_zero @ A ) @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_add_same_cancel1
% 0.30/0.46 thf(fact_202_add__less__same__cancel2,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ B2 ) @ B2 )
% 0.30/0.46 = ( ord_less @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_same_cancel2
% 0.30/0.46 thf(fact_203_add__less__same__cancel1,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [B2: A,A2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( plus_plus @ A @ B2 @ A2 ) @ B2 )
% 0.30/0.46 = ( ord_less @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_same_cancel1
% 0.30/0.46 thf(fact_204_diff__add__zero,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( comm_monoid_diff @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A2 @ ( plus_plus @ A @ A2 @ B2 ) )
% 0.30/0.46 = ( zero_zero @ A ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_add_zero
% 0.30/0.46 thf(fact_205_add__gr__0,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ ( plus_plus @ nat @ M @ N2 ) )
% 0.30/0.46 = ( ( ord_less @ nat @ ( zero_zero @ nat ) @ M )
% 0.30/0.46 | ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_gr_0
% 0.30/0.46 thf(fact_206_the__enat__0,axiom,
% 0.30/0.46 ( ( extended_the_enat @ ( zero_zero @ extended_enat ) )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % the_enat_0
% 0.30/0.46 thf(fact_207_diff__add__0,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ N2 @ ( plus_plus @ nat @ N2 @ M ) )
% 0.30/0.46 = ( zero_zero @ nat ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_add_0
% 0.30/0.46 thf(fact_208_Nat_Odiff__cancel,axiom,
% 0.30/0.46 ! [K: nat,M: nat,N2: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( plus_plus @ nat @ K @ M ) @ ( plus_plus @ nat @ K @ N2 ) )
% 0.30/0.46 = ( minus_minus @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % Nat.diff_cancel
% 0.30/0.46 thf(fact_209_diff__cancel2,axiom,
% 0.30/0.46 ! [M: nat,K: nat,N2: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( plus_plus @ nat @ M @ K ) @ ( plus_plus @ nat @ N2 @ K ) )
% 0.30/0.46 = ( minus_minus @ nat @ M @ N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_cancel2
% 0.30/0.46 thf(fact_210_diff__commute,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,K: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( minus_minus @ nat @ I2 @ J4 ) @ K )
% 0.30/0.46 = ( minus_minus @ nat @ ( minus_minus @ nat @ I2 @ K ) @ J4 ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_commute
% 0.30/0.46 thf(fact_211_less__diff__conv,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,K: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ ( minus_minus @ nat @ J4 @ K ) )
% 0.30/0.46 = ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ K ) @ J4 ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_diff_conv
% 0.30/0.46 thf(fact_212_plus__nat_Oadd__0,axiom,
% 0.30/0.46 ! [N2: nat] :
% 0.30/0.46 ( ( plus_plus @ nat @ ( zero_zero @ nat ) @ N2 )
% 0.30/0.46 = N2 ) ).
% 0.30/0.46
% 0.30/0.46 % plus_nat.add_0
% 0.30/0.46 thf(fact_213_add__eq__self__zero,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( ( plus_plus @ nat @ M @ N2 )
% 0.30/0.46 = M )
% 0.30/0.46 => ( N2
% 0.30/0.46 = ( zero_zero @ nat ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_eq_self_zero
% 0.30/0.46 thf(fact_214_diff__add__inverse,axiom,
% 0.30/0.46 ! [N2: nat,M: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( plus_plus @ nat @ N2 @ M ) @ N2 )
% 0.30/0.46 = M ) ).
% 0.30/0.46
% 0.30/0.46 % diff_add_inverse
% 0.30/0.46 thf(fact_215_diff__add__inverse2,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( minus_minus @ nat @ ( plus_plus @ nat @ M @ N2 ) @ N2 )
% 0.30/0.46 = M ) ).
% 0.30/0.46
% 0.30/0.46 % diff_add_inverse2
% 0.30/0.46 thf(fact_216_add__diff__inverse__nat,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ~ ( ord_less @ nat @ M @ N2 )
% 0.30/0.46 => ( ( plus_plus @ nat @ N2 @ ( minus_minus @ nat @ M @ N2 ) )
% 0.30/0.46 = M ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_diff_inverse_nat
% 0.30/0.46 thf(fact_217_comm__monoid__add__class_Oadd__0,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( comm_monoid_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % comm_monoid_add_class.add_0
% 0.30/0.46 thf(fact_218_add_Ocomm__neutral,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( comm_monoid_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( plus_plus @ A @ A2 @ ( zero_zero @ A ) )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % add.comm_neutral
% 0.30/0.46 thf(fact_219_add_Ogroup__left__neutral,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A] :
% 0.30/0.46 ( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
% 0.30/0.46 = A2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % add.group_left_neutral
% 0.30/0.46 thf(fact_220_add__eq__0__iff__both__eq__0,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [X: A,Y: A] :
% 0.30/0.46 ( ( ( plus_plus @ A @ X @ Y )
% 0.30/0.46 = ( zero_zero @ A ) )
% 0.30/0.46 = ( ( X
% 0.30/0.46 = ( zero_zero @ A ) )
% 0.30/0.46 & ( Y
% 0.30/0.46 = ( zero_zero @ A ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_eq_0_iff_both_eq_0
% 0.30/0.46 thf(fact_221_add__mono__thms__linordered__field_I5_J,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [I2: A,J4: A,K: A,L: A] :
% 0.30/0.46 ( ( ( ord_less @ A @ I2 @ J4 )
% 0.30/0.46 & ( ord_less @ A @ K @ L ) )
% 0.30/0.46 => ( ord_less @ A @ ( plus_plus @ A @ I2 @ K ) @ ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_mono_thms_linordered_field(5)
% 0.30/0.46 thf(fact_222_add__mono__thms__linordered__field_I2_J,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [I2: A,J4: A,K: A,L: A] :
% 0.30/0.46 ( ( ( I2 = J4 )
% 0.30/0.46 & ( ord_less @ A @ K @ L ) )
% 0.30/0.46 => ( ord_less @ A @ ( plus_plus @ A @ I2 @ K ) @ ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_mono_thms_linordered_field(2)
% 0.30/0.46 thf(fact_223_add__mono__thms__linordered__field_I1_J,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [I2: A,J4: A,K: A,L: A] :
% 0.30/0.46 ( ( ( ord_less @ A @ I2 @ J4 )
% 0.30/0.46 & ( K = L ) )
% 0.30/0.46 => ( ord_less @ A @ ( plus_plus @ A @ I2 @ K ) @ ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_mono_thms_linordered_field(1)
% 0.30/0.46 thf(fact_224_add__strict__mono,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( strict2144017051up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A,D: A] :
% 0.30/0.46 ( ( ord_less @ A @ A2 @ B2 )
% 0.30/0.46 => ( ( ord_less @ A @ C @ D )
% 0.30/0.46 => ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ D ) ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_strict_mono
% 0.30/0.46 thf(fact_225_add__strict__left__mono,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( ord_less @ A @ A2 @ B2 )
% 0.30/0.46 => ( ord_less @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_strict_left_mono
% 0.30/0.46 thf(fact_226_add__strict__right__mono,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( ord_less @ A @ A2 @ B2 )
% 0.30/0.46 => ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_strict_right_mono
% 0.30/0.46 thf(fact_227_add__less__imp__less__left,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [C: A,A2: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) )
% 0.30/0.46 => ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_imp_less_left
% 0.30/0.46 thf(fact_228_add__less__imp__less__right,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,C: A,B2: A] :
% 0.30/0.46 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) )
% 0.30/0.46 => ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_imp_less_right
% 0.30/0.46 thf(fact_229_diff__eq__eq,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( ( minus_minus @ A @ A2 @ B2 )
% 0.30/0.46 = C )
% 0.30/0.46 = ( A2
% 0.30/0.46 = ( plus_plus @ A @ C @ B2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_eq_eq
% 0.30/0.46 thf(fact_230_eq__diff__eq,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,C: A,B2: A] :
% 0.30/0.46 ( ( A2
% 0.30/0.46 = ( minus_minus @ A @ C @ B2 ) )
% 0.30/0.46 = ( ( plus_plus @ A @ A2 @ B2 )
% 0.30/0.46 = C ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % eq_diff_eq
% 0.30/0.46 thf(fact_231_add__diff__eq,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( plus_plus @ A @ A2 @ ( minus_minus @ A @ B2 @ C ) )
% 0.30/0.46 = ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ C ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_diff_eq
% 0.30/0.46 thf(fact_232_diff__diff__eq2,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A2 @ ( minus_minus @ A @ B2 @ C ) )
% 0.30/0.46 = ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_diff_eq2
% 0.30/0.46 thf(fact_233_diff__add__eq,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ab_group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( plus_plus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ C )
% 0.30/0.46 = ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_add_eq
% 0.30/0.46 thf(fact_234_diff__add__eq__diff__diff__swap,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( group_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( minus_minus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) )
% 0.30/0.46 = ( minus_minus @ A @ ( minus_minus @ A @ A2 @ C ) @ B2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_add_eq_diff_diff_swap
% 0.30/0.46 thf(fact_235_diff__diff__add,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( minus_minus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ C )
% 0.30/0.46 = ( minus_minus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % diff_diff_add
% 0.30/0.46 thf(fact_236_add__implies__diff,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [C: A,B2: A,A2: A] :
% 0.30/0.46 ( ( ( plus_plus @ A @ C @ B2 )
% 0.30/0.46 = A2 )
% 0.30/0.46 => ( C
% 0.30/0.46 = ( minus_minus @ A @ A2 @ B2 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_implies_diff
% 0.30/0.46 thf(fact_237_add__Suc,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( plus_plus @ nat @ ( suc @ M ) @ N2 )
% 0.30/0.46 = ( suc @ ( plus_plus @ nat @ M @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_Suc
% 0.30/0.46 thf(fact_238_add__Suc__shift,axiom,
% 0.30/0.46 ! [M: nat,N2: nat] :
% 0.30/0.46 ( ( plus_plus @ nat @ ( suc @ M ) @ N2 )
% 0.30/0.46 = ( plus_plus @ nat @ M @ ( suc @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_Suc_shift
% 0.30/0.46 thf(fact_239_less__add__eq__less,axiom,
% 0.30/0.46 ! [K: nat,L: nat,M: nat,N2: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ K @ L )
% 0.30/0.46 => ( ( ( plus_plus @ nat @ M @ L )
% 0.30/0.46 = ( plus_plus @ nat @ K @ N2 ) )
% 0.30/0.46 => ( ord_less @ nat @ M @ N2 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % less_add_eq_less
% 0.30/0.46 thf(fact_240_trans__less__add2,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,M: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J4 )
% 0.30/0.46 => ( ord_less @ nat @ I2 @ ( plus_plus @ nat @ M @ J4 ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % trans_less_add2
% 0.30/0.46 thf(fact_241_trans__less__add1,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,M: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J4 )
% 0.30/0.46 => ( ord_less @ nat @ I2 @ ( plus_plus @ nat @ J4 @ M ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % trans_less_add1
% 0.30/0.46 thf(fact_242_add__less__mono1,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,K: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J4 )
% 0.30/0.46 => ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ K ) @ ( plus_plus @ nat @ J4 @ K ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_mono1
% 0.30/0.46 thf(fact_243_not__add__less2,axiom,
% 0.30/0.46 ! [J4: nat,I2: nat] :
% 0.30/0.46 ~ ( ord_less @ nat @ ( plus_plus @ nat @ J4 @ I2 ) @ I2 ) ).
% 0.30/0.46
% 0.30/0.46 % not_add_less2
% 0.30/0.46 thf(fact_244_not__add__less1,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat] :
% 0.30/0.46 ~ ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ J4 ) @ I2 ) ).
% 0.30/0.46
% 0.30/0.46 % not_add_less1
% 0.30/0.46 thf(fact_245_add__less__mono,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,K: nat,L: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ I2 @ J4 )
% 0.30/0.46 => ( ( ord_less @ nat @ K @ L )
% 0.30/0.46 => ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ K ) @ ( plus_plus @ nat @ J4 @ L ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_less_mono
% 0.30/0.46 thf(fact_246_add__lessD1,axiom,
% 0.30/0.46 ! [I2: nat,J4: nat,K: nat] :
% 0.30/0.46 ( ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ J4 ) @ K )
% 0.30/0.46 => ( ord_less @ nat @ I2 @ K ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_lessD1
% 0.30/0.46 thf(fact_247_nat__add__left__cancel,axiom,
% 0.30/0.46 ! [K: nat,M: nat,N2: nat] :
% 0.30/0.46 ( ( ( plus_plus @ nat @ K @ M )
% 0.30/0.46 = ( plus_plus @ nat @ K @ N2 ) )
% 0.30/0.46 = ( M = N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat_add_left_cancel
% 0.30/0.46 thf(fact_248_nat__add__right__cancel,axiom,
% 0.30/0.46 ! [M: nat,K: nat,N2: nat] :
% 0.30/0.46 ( ( ( plus_plus @ nat @ M @ K )
% 0.30/0.46 = ( plus_plus @ nat @ N2 @ K ) )
% 0.30/0.46 = ( M = N2 ) ) ).
% 0.30/0.46
% 0.30/0.46 % nat_add_right_cancel
% 0.30/0.46 thf(fact_249_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ab_semigroup_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( plus_plus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ C )
% 0.30/0.46 = ( plus_plus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % ab_semigroup_add_class.add_ac(1)
% 0.30/0.46 thf(fact_250_is__num__normalize_I1_J,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( neg_numeral @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [A2: A,B2: A,C: A] :
% 0.30/0.46 ( ( plus_plus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ C )
% 0.30/0.46 = ( plus_plus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % is_num_normalize(1)
% 0.30/0.46 thf(fact_251_add__mono__thms__linordered__semiring_I4_J,axiom,
% 0.30/0.46 ! [A: $tType] :
% 0.30/0.46 ( ( ordere779506340up_add @ A @ ( type2 @ A ) )
% 0.30/0.46 => ! [I2: A,J4: A,K: A,L: A] :
% 0.30/0.46 ( ( ( I2 = J4 )
% 0.30/0.46 & ( K = L ) )
% 0.30/0.46 => ( ( plus_plus @ A @ I2 @ K )
% 0.30/0.46 = ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 % add_mono_thms_linordered_semiring(4)
% 0.30/0.46
% 0.30/0.46 %----Type constructors (30)
% 0.30/0.46 thf(tcon_fun___Orderings_Oorder,axiom,
% 0.30/0.46 ! [A5: $tType,A6: $tType] :
% 0.30/0.46 ( ( order @ A6 @ ( type2 @ A6 ) )
% 0.30/0.46 => ( order @ ( A5 > A6 ) @ ( type2 @ ( A5 > A6 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_fun___Groups_Ominus,axiom,
% 0.30/0.46 ! [A5: $tType,A6: $tType] :
% 0.30/0.46 ( ( minus @ A6 @ ( type2 @ A6 ) )
% 0.30/0.46 => ( minus @ ( A5 > A6 ) @ ( type2 @ ( A5 > A6 ) ) ) ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__monoid__add__imp__le,axiom,
% 0.30/0.46 ordere516151231imp_le @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ostrict__ordered__ab__semigroup__add,axiom,
% 0.30/0.46 strict2144017051up_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Oordered__cancel__ab__semigroup__add,axiom,
% 0.30/0.46 ordere223160158up_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add__imp__le,axiom,
% 0.30/0.46 ordere236663937imp_le @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ocanonically__ordered__monoid__add,axiom,
% 0.30/0.46 canoni770627133id_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add,axiom,
% 0.30/0.46 ordere779506340up_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ocancel__ab__semigroup__add,axiom,
% 0.30/0.46 cancel146912293up_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ocancel__comm__monoid__add,axiom,
% 0.30/0.46 cancel1352612707id_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ocancel__semigroup__add,axiom,
% 0.30/0.46 cancel_semigroup_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Rings_Olinordered__semidom,axiom,
% 0.30/0.46 linordered_semidom @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ocomm__monoid__diff,axiom,
% 0.30/0.46 comm_monoid_diff @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Oab__semigroup__add,axiom,
% 0.30/0.46 ab_semigroup_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ocomm__monoid__add,axiom,
% 0.30/0.46 comm_monoid_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Omonoid__add,axiom,
% 0.30/0.46 monoid_add @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Orderings_Oorder_1,axiom,
% 0.30/0.46 order @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ominus_2,axiom,
% 0.30/0.46 minus @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Nat_Onat___Groups_Ozero,axiom,
% 0.30/0.46 zero @ nat @ ( type2 @ nat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_HOL_Obool___Orderings_Oorder_3,axiom,
% 0.30/0.46 order @ $o @ ( type2 @ $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_HOL_Obool___Groups_Ominus_4,axiom,
% 0.30/0.46 minus @ $o @ ( type2 @ $o ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Ostrict__ordered__ab__semigroup__add_5,axiom,
% 0.30/0.46 strict2144017051up_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Ocanonically__ordered__monoid__add_6,axiom,
% 0.30/0.46 canoni770627133id_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Oordered__ab__semigroup__add_7,axiom,
% 0.30/0.46 ordere779506340up_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Oab__semigroup__add_8,axiom,
% 0.30/0.46 ab_semigroup_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Ocomm__monoid__add_9,axiom,
% 0.30/0.46 comm_monoid_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Omonoid__add_10,axiom,
% 0.30/0.46 monoid_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Orderings_Oorder_11,axiom,
% 0.30/0.46 order @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Ominus_12,axiom,
% 0.30/0.46 minus @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 thf(tcon_Extended__Nat_Oenat___Groups_Ozero_13,axiom,
% 0.30/0.46 zero @ extended_enat @ ( type2 @ extended_enat ) ).
% 0.30/0.46
% 0.30/0.46 %----Conjectures (1)
% 0.30/0.46 thf(conj_0,conjecture,
% 0.30/0.46 ( ( coindu2000965700_llast @ a @ ( coindu191418589_ldrop @ a @ ( extended_enat2 @ ( suc @ n_a ) ) @ xsa ) )
% 0.30/0.46 = ( coindu2000965700_llast @ a @ xsa ) ) ).
% 0.30/0.46
% 0.30/0.46 %------------------------------------------------------------------------------
% 0.30/0.46 ------------------------
% 2.58/1.45 ---- Embedded in THF ---
% 2.58/1.45 %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.58/1.45 %%% Generated on Tue Feb 24 06:08:12 EST 2026
% 2.58/1.45 %%% using '$$dhol' embedding, version 1.3.0.
% 2.58/1.45 %%% Logic specification used:
% 2.58/1.45 %%% thf(spec, logic, $$dhol).
% 2.58/1.45
% 2.58/1.45 % SZS output start ListOfTHF for /export/starexec/sandbox/tmp/tmp.9DJ3y5GnQc/DTF2DTF27976.p
% 2.58/1.45 thf(ty_t_Coinductive__List__Mirabelle__kmikjhschf_Ollist, type, coindu1593790203_llist: ($tType > $tType)).
% 2.58/1.45 thf(ty_t_Extended__Nat_Oenat, type, extended_enat: $tType).
% 2.58/1.45 thf(ty_t_Nat_Onat, type, nat: $tType).
% 2.58/1.45 thf(ty_t_itself, type, itself: ($tType > $tType)).
% 2.58/1.45 thf(ty_tf_a, type, a: $tType).
% 2.58/1.45 thf(sy_cl_HOL_Otype, type, type: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ozero, type, zero: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ominus, type, minus: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Num_Oneg__numeral, type, neg_numeral: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Orderings_Oorder, type, order: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ogroup__add, type, group_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Omonoid__add, type, monoid_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Oab__group__add, type, ab_group_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ocomm__monoid__add, type, comm_monoid_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Oab__semigroup__add, type, ab_semigroup_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ocomm__monoid__diff, type, comm_monoid_diff: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Rings_Olinordered__semidom, type, linordered_semidom: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ocancel__semigroup__add, type, cancel_semigroup_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Oordered__ab__group__add, type, ordered_ab_group_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ocancel__comm__monoid__add, type, cancel1352612707id_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ocancel__ab__semigroup__add, type, cancel146912293up_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Olinordered__ab__group__add, type, linord219039673up_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Oordered__ab__semigroup__add, type, ordere779506340up_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ocanonically__ordered__monoid__add, type, canoni770627133id_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Oordered__ab__semigroup__add__imp__le, type, ordere236663937imp_le: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Oordered__cancel__ab__semigroup__add, type, ordere223160158up_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Ostrict__ordered__ab__semigroup__add, type, strict2144017051up_add: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_cl_Groups_Oordered__ab__semigroup__monoid__add__imp__le, type, ordere516151231imp_le: (!> [A:$tType]: (((itself @ A) > $o)))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olappend, type, coindu268472904append: (!> [A:$tType]: (((coindu1593790203_llist @ A) > ((coindu1593790203_llist @ A) > (coindu1593790203_llist @ A)))))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oldrop, type, coindu191418589_ldrop: (!> [A:$tType]: ((extended_enat > ((coindu1593790203_llist @ A) > (coindu1593790203_llist @ A)))))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oldropn, type, coindu531130065ldropn: (!> [A:$tType]: ((nat > ((coindu1593790203_llist @ A) > (coindu1593790203_llist @ A)))))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollast, type, coindu2000965700_llast: (!> [A:$tType]: (((coindu1593790203_llist @ A) > A)))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollength, type, coindu1018505716length: (!> [A:$tType]: (((coindu1593790203_llist @ A) > extended_enat)))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLCons, type, coindu1121789889_LCons: (!> [A:$tType]: ((A > ((coindu1593790203_llist @ A) > (coindu1593790203_llist @ A)))))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olnth, type, coindu749330388e_lnth: (!> [A:$tType]: (((coindu1593790203_llist @ A) > (nat > A))))).
% 2.58/1.45 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olstrict__prefix, type, coindu574146665prefix: (!> [A:$tType]: (((coindu1593790203_llist @ A) > ((coindu1593790203_llist @ A) > $o))))).
% 2.58/1.45 thf(sy_c_Extended__Nat_Oenat, type, extended_enat2: (nat > extended_enat)).
% 2.58/1.45 thf(sy_c_Extended__Nat_Oenat_Ocase__enat, type, extended_case_enat: (!> [T:$tType]: (((nat > T) > (T > (extended_enat > T)))))).
% 2.58/1.45 thf(sy_c_Extended__Nat_Oenat_Orec__enat, type, extended_rec_enat: (!> [T:$tType]: (((nat > T) > (T > (extended_enat > T)))))).
% 2.58/1.45 thf(sy_c_Extended__Nat_Oenat_Osize__enat, type, extended_size_enat: (extended_enat > nat)).
% 2.58/1.45 thf(sy_c_Extended__Nat_Oinfinity__class_Oinfinity, type, extend1396239628finity: (!> [A:$tType]: (A))).
% 2.58/1.45 thf(sy_c_Extended__Nat_Othe__enat, type, extended_the_enat: (extended_enat > nat)).
% 2.58/1.45 thf(sy_c_Groups_Ominus__class_Ominus, type, minus_minus: (!> [A:$tType]: ((A > (A > A))))).
% 2.58/1.45 thf(sy_c_Groups_Oplus__class_Oplus, type, plus_plus: (!> [A:$tType]: ((A > (A > A))))).
% 2.58/1.45 thf(sy_c_Groups_Ozero__class_Ozero, type, zero_zero: (!> [A:$tType]: (A))).
% 2.58/1.45 thf(sy_c_Nat_OSuc, type, suc: (nat > nat)).
% 2.58/1.45 thf(sy_c_Nat_Osize__class_Osize, type, size_size: (!> [A:$tType]: ((A > nat)))).
% 2.58/1.45 thf(sy_c_Orderings_Oord__class_Oless, type, ord_less: (!> [A:$tType]: ((A > (A > $o))))).
% 2.58/1.45 thf(sy_c_Pure_Otype, type, type2: (!> [A:$tType]: ((itself @ A)))).
% 2.58/1.45 thf(sy_v_n, type, n: extended_enat).
% 2.58/1.45 thf(sy_v_n_H____, type, n2: nat).
% 2.58/1.45 thf(sy_v_n_Ha______, type, n_a: nat).
% 2.58/1.45 thf(sy_v_xs, type, xs: (coindu1593790203_llist @ a)).
% 2.58/1.45 thf(sy_v_xsa____, type, xsa: (coindu1593790203_llist @ a)).
% 2.58/1.45 thf(fact_0_n, axiom, (n = (extended_enat2 @ n2))).
% 2.58/1.45 thf(fact_1_Suc_Ohyps, axiom, (! [Xs:(coindu1593790203_llist @ a)]: (((((ord_less @ extended_enat) @ (extended_enat2 @ n_a)) @ ((coindu1018505716length @ a) @ Xs)) => (((coindu2000965700_llast @ a) @ (((coindu191418589_ldrop @ a) @ (extended_enat2 @ n_a)) @ Xs)) = ((coindu2000965700_llast @ a) @ Xs)))))).
% 2.58/1.45 thf(fact_2_Suc_Oprems, axiom, (((ord_less @ extended_enat) @ (extended_enat2 @ (suc @ n_a))) @ ((coindu1018505716length @ a) @ xsa))).
% 2.58/1.45 thf(fact_3__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062n_H_O_An_A_061_Aenat_An_H_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom, (~ ((! [N:nat]: ((n != (extended_enat2 @ N))))))).
% 2.58/1.45 thf(fact_4_enat_Oinject, axiom, (! [Nat:nat,Nat2:nat]: ((((extended_enat2 @ Nat) = (extended_enat2 @ Nat2)) = (Nat = Nat2))))).
% 2.58/1.45 thf(fact_5_nat_Oinject, axiom, (! [X2:nat,Y2:nat]: ((((suc @ X2) = (suc @ Y2)) = (X2 = Y2))))).
% 2.58/1.45 thf(fact_6_old_Onat_Oinject, axiom, (! [Nat:nat,Nat2:nat]: ((((suc @ Nat) = (suc @ Nat2)) = (Nat = Nat2))))).
% 2.58/1.45 thf(fact_7_assms, axiom, (((ord_less @ extended_enat) @ n) @ ((coindu1018505716length @ a) @ xs))).
% 2.58/1.45 thf(fact_8_Suc__inject, axiom, (! [X:nat,Y:nat]: ((((suc @ X) = (suc @ Y)) => (X = Y))))).
% 2.58/1.45 thf(fact_9_n__not__Suc__n, axiom, (! [N2:nat]: ((N2 != (suc @ N2))))).
% 2.58/1.45 thf(fact_10_ldrop__enat, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A)]: (((((coindu191418589_ldrop @ A) @ (extended_enat2 @ N2)) @ Xs) = (((coindu531130065ldropn @ A) @ N2) @ Xs))))).
% 2.58/1.45 thf(fact_11_enat_Osimps_I6_J, axiom, (! [T:$tType,F1:(nat > T),F2:T,Nat:nat]: ((((((extended_rec_enat @ T) @ F1) @ F2) @ (extended_enat2 @ Nat)) = (F1 @ Nat))))).
% 2.58/1.45 thf(fact_12_chain__incr, axiom, (! [A:$tType,Y3:(A > extended_enat),K:nat]: (((! [I:A]: ((? [J:A]: ((((ord_less @ extended_enat) @ (Y3 @ I)) @ (Y3 @ J)))))) => (? [J2:A]: ((((ord_less @ extended_enat) @ (extended_enat2 @ K)) @ (Y3 @ J2)))))))).
% 2.58/1.45 thf(fact_13_enat__iless, axiom, (! [N2:extended_enat,M:nat]: (((((ord_less @ extended_enat) @ N2) @ (extended_enat2 @ M)) => (? [K2:nat]: ((N2 = (extended_enat2 @ K2)))))))).
% 2.58/1.45 thf(fact_14_ldrop__0, axiom, (! [B:$tType,Xs:(coindu1593790203_llist @ B)]: (((((coindu191418589_ldrop @ B) @ (zero_zero @ extended_enat)) @ Xs) = Xs)))).
% 2.58/1.45 thf(fact_15_i0__less, axiom, (! [N2:extended_enat]: (((((ord_less @ extended_enat) @ (zero_zero @ extended_enat)) @ N2) = (N2 != (zero_zero @ extended_enat)))))).
% 2.58/1.45 thf(fact_16_not__iless0, axiom, (! [N2:extended_enat]: ((~ ((((ord_less @ extended_enat) @ N2) @ (zero_zero @ extended_enat))))))).
% 2.58/1.45 thf(fact_17_enat__less__induct, axiom, (! [P:(extended_enat > $o),N2:extended_enat]: (((! [N3:extended_enat]: (((! [M2:extended_enat]: (((((ord_less @ extended_enat) @ M2) @ N3) => (P @ M2)))) => (P @ N3)))) => (P @ N2))))).
% 2.58/1.45 thf(fact_18_lift__Suc__mono__less__iff, axiom, (! [A:$tType]: ((((order @ A) @ (type2 @ A)) => (! [F:(nat > A),N2:nat,M:nat]: (((! [N3:nat]: ((((ord_less @ A) @ (F @ N3)) @ (F @ (suc @ N3))))) => ((((ord_less @ A) @ (F @ N2)) @ (F @ M)) = (((ord_less @ nat) @ N2) @ M))))))))).
% 2.58/1.45 thf(fact_19_lift__Suc__mono__less, axiom, (! [A:$tType]: ((((order @ A) @ (type2 @ A)) => (! [F:(nat > A),N2:nat,N4:nat]: (((! [N3:nat]: ((((ord_less @ A) @ (F @ N3)) @ (F @ (suc @ N3))))) => ((((ord_less @ nat) @ N2) @ N4) => (((ord_less @ A) @ (F @ N2)) @ (F @ N4)))))))))).
% 2.58/1.45 thf(fact_20_llast__ldropn, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A)]: (((((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)) => (((coindu2000965700_llast @ A) @ (((coindu531130065ldropn @ A) @ N2) @ Xs)) = ((coindu2000965700_llast @ A) @ Xs)))))).
% 2.58/1.45 thf(fact_21_not__gr__zero, axiom, (! [A:$tType]: ((((canoni770627133id_add @ A) @ (type2 @ A)) => (! [N2:A]: (((~ ((((ord_less @ A) @ (zero_zero @ A)) @ N2))) = (N2 = (zero_zero @ A))))))))).
% 2.58/1.45 thf(fact_22_less__numeral__extra_I3_J, axiom, (! [A:$tType]: ((((linordered_semidom @ A) @ (type2 @ A)) => (~ ((((ord_less @ A) @ (zero_zero @ A)) @ (zero_zero @ A)))))))).
% 2.58/1.45 thf(fact_23_gr__zeroI, axiom, (! [A:$tType]: ((((canoni770627133id_add @ A) @ (type2 @ A)) => (! [N2:A]: (((N2 != (zero_zero @ A)) => (((ord_less @ A) @ (zero_zero @ A)) @ N2)))))))).
% 2.58/1.45 thf(fact_24_not__less__zero, axiom, (! [A:$tType]: ((((canoni770627133id_add @ A) @ (type2 @ A)) => (! [N2:A]: ((~ ((((ord_less @ A) @ N2) @ (zero_zero @ A)))))))))).
% 2.58/1.45 thf(fact_25_gr__implies__not__zero, axiom, (! [A:$tType]: ((((canoni770627133id_add @ A) @ (type2 @ A)) => (! [M:A,N2:A]: (((((ord_less @ A) @ M) @ N2) => (N2 != (zero_zero @ A))))))))).
% 2.58/1.45 thf(fact_26_zero__less__iff__neq__zero, axiom, (! [A:$tType]: ((((canoni770627133id_add @ A) @ (type2 @ A)) => (! [N2:A]: (((((ord_less @ A) @ (zero_zero @ A)) @ N2) = (N2 != (zero_zero @ A))))))))).
% 2.58/1.45 thf(fact_27_ldropn__eq__LConsD, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: ((((((coindu531130065ldropn @ A) @ N2) @ Xs) = (((coindu1121789889_LCons @ A) @ Y) @ Ys)) => (((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)))))).
% 2.58/1.45 thf(fact_28_enat_Osimps_I4_J, axiom, (! [T:$tType,F1:(nat > T),F2:T,Nat:nat]: ((((((extended_case_enat @ T) @ F1) @ F2) @ (extended_enat2 @ Nat)) = (F1 @ Nat))))).
% 2.58/1.45 thf(fact_29_llength__ldropn, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A)]: ((((coindu1018505716length @ A) @ (((coindu531130065ldropn @ A) @ N2) @ Xs)) = (((minus_minus @ extended_enat) @ ((coindu1018505716length @ A) @ Xs)) @ (extended_enat2 @ N2)))))).
% 2.58/1.45 thf(fact_30_neq0__conv, axiom, (! [N2:nat]: (((N2 != (zero_zero @ nat)) = (((ord_less @ nat) @ (zero_zero @ nat)) @ N2))))).
% 2.58/1.45 thf(fact_31_llist_Oinject, axiom, (! [A:$tType,X21:A,X22:(coindu1593790203_llist @ A),Y21:A,Y22:(coindu1593790203_llist @ A)]: ((((((coindu1121789889_LCons @ A) @ X21) @ X22) = (((coindu1121789889_LCons @ A) @ Y21) @ Y22)) = ((X21 = Y21) & (X22 = Y22)))))).
% 2.58/1.45 thf(fact_32_ldropn__0, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A)]: (((((coindu531130065ldropn @ A) @ (zero_zero @ nat)) @ Xs) = Xs)))).
% 2.58/1.45 thf(fact_33_cancel__comm__monoid__add__class_Odiff__cancel, axiom, (! [A:$tType]: ((((cancel1352612707id_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((minus_minus @ A) @ A2) @ A2) = (zero_zero @ A)))))))).
% 2.58/1.45 thf(fact_34_diff__zero, axiom, (! [A:$tType]: ((((cancel1352612707id_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((minus_minus @ A) @ A2) @ (zero_zero @ A)) = A2))))))).
% 2.58/1.45 thf(fact_35_zero__diff, axiom, (! [A:$tType]: ((((comm_monoid_diff @ A) @ (type2 @ A)) => (! [A2:A]: (((((minus_minus @ A) @ (zero_zero @ A)) @ A2) = (zero_zero @ A)))))))).
% 2.58/1.45 thf(fact_36_diff__0__right, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((minus_minus @ A) @ A2) @ (zero_zero @ A)) = A2))))))).
% 2.58/1.45 thf(fact_37_diff__self, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((minus_minus @ A) @ A2) @ A2) = (zero_zero @ A)))))))).
% 2.58/1.45 thf(fact_38_zero__less__Suc, axiom, (! [N2:nat]: ((((ord_less @ nat) @ (zero_zero @ nat)) @ (suc @ N2))))).
% 2.58/1.45 thf(fact_39_less__Suc0, axiom, (! [N2:nat]: (((((ord_less @ nat) @ N2) @ (suc @ (zero_zero @ nat))) = (N2 = (zero_zero @ nat)))))).
% 2.58/1.45 thf(fact_40_lessI, axiom, (! [N2:nat]: ((((ord_less @ nat) @ N2) @ (suc @ N2))))).
% 2.58/1.45 thf(fact_41_Suc__mono, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ M) @ N2) => (((ord_less @ nat) @ (suc @ M)) @ (suc @ N2)))))).
% 2.58/1.45 thf(fact_42_Suc__less__eq, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ (suc @ M)) @ (suc @ N2)) = (((ord_less @ nat) @ M) @ N2))))).
% 2.58/1.45 thf(fact_43_ext, axiom, (! [B:$tType,A:$tType,F:(A > B),G:(A > B)]: (((! [X3:A]: (((F @ X3) = (G @ X3)))) => (F = G))))).
% 2.58/1.45 thf(fact_44_idiff__enat__0__right, axiom, (! [N2:extended_enat]: (((((minus_minus @ extended_enat) @ N2) @ (extended_enat2 @ (zero_zero @ nat))) = N2)))).
% 2.58/1.45 thf(fact_45_idiff__enat__0, axiom, (! [N2:extended_enat]: (((((minus_minus @ extended_enat) @ (extended_enat2 @ (zero_zero @ nat))) @ N2) = (extended_enat2 @ (zero_zero @ nat)))))).
% 2.58/1.45 thf(fact_46_idiff__0__right, axiom, (! [N2:extended_enat]: (((((minus_minus @ extended_enat) @ N2) @ (zero_zero @ extended_enat)) = N2)))).
% 2.58/1.45 thf(fact_47_idiff__0, axiom, (! [N2:extended_enat]: (((((minus_minus @ extended_enat) @ (zero_zero @ extended_enat)) @ N2) = (zero_zero @ extended_enat))))).
% 2.58/1.45 thf(fact_48_llast__LCons2, axiom, (! [A:$tType,X:A,Y:A,Xs:(coindu1593790203_llist @ A)]: ((((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ X) @ (((coindu1121789889_LCons @ A) @ Y) @ Xs))) = ((coindu2000965700_llast @ A) @ (((coindu1121789889_LCons @ A) @ Y) @ Xs)))))).
% 2.58/1.45 thf(fact_49_diff__gt__0__iff__gt, axiom, (! [A:$tType]: ((((ordered_ab_group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((ord_less @ A) @ (zero_zero @ A)) @ (((minus_minus @ A) @ A2) @ B2)) = (((ord_less @ A) @ B2) @ A2)))))))).
% 2.58/1.46 thf(fact_50_enat__ord__simps_I2_J, axiom, (! [M:nat,N2:nat]: (((((ord_less @ extended_enat) @ (extended_enat2 @ M)) @ (extended_enat2 @ N2)) = (((ord_less @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_51_ldropn__Suc__LCons, axiom, (! [A:$tType,N2:nat,X:A,Xs:(coindu1593790203_llist @ A)]: (((((coindu531130065ldropn @ A) @ (suc @ N2)) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) = (((coindu531130065ldropn @ A) @ N2) @ Xs))))).
% 2.58/1.46 thf(fact_52_gr0I, axiom, (! [N2:nat]: (((N2 != (zero_zero @ nat)) => (((ord_less @ nat) @ (zero_zero @ nat)) @ N2))))).
% 2.58/1.46 thf(fact_53_not__gr0, axiom, (! [N2:nat]: (((~ ((((ord_less @ nat) @ (zero_zero @ nat)) @ N2))) = (N2 = (zero_zero @ nat)))))).
% 2.58/1.46 thf(fact_54_not__less0, axiom, (! [N2:nat]: ((~ ((((ord_less @ nat) @ N2) @ (zero_zero @ nat))))))).
% 2.58/1.46 thf(fact_55_less__zeroE, axiom, (! [N2:nat]: ((~ ((((ord_less @ nat) @ N2) @ (zero_zero @ nat))))))).
% 2.58/1.46 thf(fact_56_nat__neq__iff, axiom, (! [M:nat,N2:nat]: (((M != N2) = ((((ord_less @ nat) @ M) @ N2) | (((ord_less @ nat) @ N2) @ M)))))).
% 2.58/1.46 thf(fact_57_less__not__refl, axiom, (! [N2:nat]: ((~ ((((ord_less @ nat) @ N2) @ N2)))))).
% 2.58/1.46 thf(fact_58_less__not__refl2, axiom, (! [N2:nat,M:nat]: (((((ord_less @ nat) @ N2) @ M) => (M != N2))))).
% 2.58/1.46 thf(fact_59_less__not__refl3, axiom, (! [S:nat,T2:nat]: (((((ord_less @ nat) @ S) @ T2) => (S != T2))))).
% 2.58/1.46 thf(fact_60_measure__induct, axiom, (! [A:$tType,F:(A > nat),P:(A > $o),A2:A]: (((! [X3:A]: (((! [Y4:A]: (((((ord_less @ nat) @ (F @ Y4)) @ (F @ X3)) => (P @ Y4)))) => (P @ X3)))) => (P @ A2))))).
% 2.58/1.46 thf(fact_61_gr__implies__not0, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ M) @ N2) => (N2 != (zero_zero @ nat)))))).
% 2.58/1.46 thf(fact_62_less__irrefl__nat, axiom, (! [N2:nat]: ((~ ((((ord_less @ nat) @ N2) @ N2)))))).
% 2.58/1.46 thf(fact_63_nat__less__induct, axiom, (! [P:(nat > $o),N2:nat]: (((! [N3:nat]: (((! [M2:nat]: (((((ord_less @ nat) @ M2) @ N3) => (P @ M2)))) => (P @ N3)))) => (P @ N2))))).
% 2.58/1.46 thf(fact_64_infinite__descent, axiom, (! [P:(nat > $o),N2:nat]: (((! [N3:nat]: (((~ ((P @ N3))) => (? [M2:nat]: (((((ord_less @ nat) @ M2) @ N3) & (~ ((P @ M2))))))))) => (P @ N2))))).
% 2.58/1.46 thf(fact_65_infinite__descent0, axiom, (! [P:(nat > $o),N2:nat]: (((P @ (zero_zero @ nat)) => ((! [N3:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ N3) => ((~ ((P @ N3))) => (? [M2:nat]: (((((ord_less @ nat) @ M2) @ N3) & (~ ((P @ M2)))))))))) => (P @ N2)))))).
% 2.58/1.46 thf(fact_66_linorder__neqE__nat, axiom, (! [X:nat,Y:nat]: (((X != Y) => ((~ ((((ord_less @ nat) @ X) @ Y))) => (((ord_less @ nat) @ Y) @ X)))))).
% 2.58/1.46 thf(fact_67_less__nat__zero__code, axiom, (! [N2:nat]: ((~ ((((ord_less @ nat) @ N2) @ (zero_zero @ nat))))))).
% 2.58/1.46 thf(fact_68_measure__induct__rule, axiom, (! [A:$tType,F:(A > nat),P:(A > $o),A2:A]: (((! [X3:A]: (((! [Y4:A]: (((((ord_less @ nat) @ (F @ Y4)) @ (F @ X3)) => (P @ Y4)))) => (P @ X3)))) => (P @ A2))))).
% 2.58/1.46 thf(fact_69_infinite__descent__measure, axiom, (! [A:$tType,P:(A > $o),V:(A > nat),X:A]: (((! [X3:A]: (((~ ((P @ X3))) => (? [Y4:A]: (((((ord_less @ nat) @ (V @ Y4)) @ (V @ X3)) & (~ ((P @ Y4))))))))) => (P @ X))))).
% 2.58/1.46 thf(fact_70_infinite__descent0__measure, axiom, (! [A:$tType,V:(A > nat),P:(A > $o),X:A]: (((! [X3:A]: ((((V @ X3) = (zero_zero @ nat)) => (P @ X3)))) => ((! [X3:A]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ (V @ X3)) => ((~ ((P @ X3))) => (? [Y4:A]: (((((ord_less @ nat) @ (V @ Y4)) @ (V @ X3)) & (~ ((P @ Y4)))))))))) => (P @ X)))))).
% 2.58/1.46 thf(fact_71_diff__right__commute, axiom, (! [A:$tType]: ((((cancel146912293up_add @ A) @ (type2 @ A)) => (! [A2:A,C:A,B2:A]: (((((minus_minus @ A) @ (((minus_minus @ A) @ A2) @ C)) @ B2) = (((minus_minus @ A) @ (((minus_minus @ A) @ A2) @ B2)) @ C)))))))).
% 2.58/1.46 thf(fact_72_diff__eq__diff__eq, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A,D:A]: ((((((minus_minus @ A) @ A2) @ B2) = (((minus_minus @ A) @ C) @ D)) => ((A2 = B2) = (C = D))))))))).
% 2.58/1.46 thf(fact_73_less__Suc__eq__0__disj, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ M) @ (suc @ N2)) = ((M = (zero_zero @ nat)) | (? [J3:nat]: (((M = (suc @ J3)) & (((ord_less @ nat) @ J3) @ N2))))))))).
% 2.58/1.46 thf(fact_74_gr0__implies__Suc, axiom, (! [N2:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ N2) => (? [M3:nat]: ((N2 = (suc @ M3)))))))).
% 2.58/1.46 thf(fact_75_gr0__conv__Suc, axiom, (! [N2:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ N2) = (? [M4:nat]: ((N2 = (suc @ M4)))))))).
% 2.58/1.46 thf(fact_76_eq__iff__diff__eq__0, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => ((^ [Y5:A,Z:A]: ((Y5 = Z))) = (^ [A3:A,B3:A]: (((((minus_minus @ A) @ A3) @ B3) = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_77_diff__strict__right__mono, axiom, (! [A:$tType]: ((((ordered_ab_group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((ord_less @ A) @ A2) @ B2) => (((ord_less @ A) @ (((minus_minus @ A) @ A2) @ C)) @ (((minus_minus @ A) @ B2) @ C))))))))).
% 2.58/1.46 thf(fact_78_diff__strict__left__mono, axiom, (! [A:$tType]: ((((ordered_ab_group_add @ A) @ (type2 @ A)) => (! [B2:A,A2:A,C:A]: (((((ord_less @ A) @ B2) @ A2) => (((ord_less @ A) @ (((minus_minus @ A) @ C) @ A2)) @ (((minus_minus @ A) @ C) @ B2))))))))).
% 2.58/1.46 thf(fact_79_diff__eq__diff__less, axiom, (! [A:$tType]: ((((ordered_ab_group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A,D:A]: ((((((minus_minus @ A) @ A2) @ B2) = (((minus_minus @ A) @ C) @ D)) => ((((ord_less @ A) @ A2) @ B2) = (((ord_less @ A) @ C) @ D))))))))).
% 2.58/1.46 thf(fact_80_diff__strict__mono, axiom, (! [A:$tType]: ((((ordered_ab_group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,D:A,C:A]: (((((ord_less @ A) @ A2) @ B2) => ((((ord_less @ A) @ D) @ C) => (((ord_less @ A) @ (((minus_minus @ A) @ A2) @ C)) @ (((minus_minus @ A) @ B2) @ D)))))))))).
% 2.58/1.46 thf(fact_81_lessE, axiom, (! [I2:nat,K:nat]: (((((ord_less @ nat) @ I2) @ K) => ((K != (suc @ I2)) => (~ ((! [J2:nat]: (((((ord_less @ nat) @ I2) @ J2) => (K != (suc @ J2)))))))))))).
% 2.58/1.46 thf(fact_82_Suc__lessD, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ (suc @ M)) @ N2) => (((ord_less @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_83_Suc__lessE, axiom, (! [I2:nat,K:nat]: (((((ord_less @ nat) @ (suc @ I2)) @ K) => (~ ((! [J2:nat]: (((((ord_less @ nat) @ I2) @ J2) => (K != (suc @ J2))))))))))).
% 2.58/1.46 thf(fact_84_Suc__lessI, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ M) @ N2) => (((suc @ M) != N2) => (((ord_less @ nat) @ (suc @ M)) @ N2)))))).
% 2.58/1.46 thf(fact_85_less__SucE, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ M) @ (suc @ N2)) => ((~ ((((ord_less @ nat) @ M) @ N2))) => (M = N2)))))).
% 2.58/1.46 thf(fact_86_less__SucI, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ M) @ N2) => (((ord_less @ nat) @ M) @ (suc @ N2)))))).
% 2.58/1.46 thf(fact_87_less__Suc__eq, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ M) @ (suc @ N2)) = ((((ord_less @ nat) @ M) @ N2) | (M = N2)))))).
% 2.58/1.46 thf(fact_88_not__less__eq, axiom, (! [M:nat,N2:nat]: (((~ ((((ord_less @ nat) @ M) @ N2))) = (((ord_less @ nat) @ N2) @ (suc @ M)))))).
% 2.58/1.46 thf(fact_89_Suc__less__eq2, axiom, (! [N2:nat,M:nat]: (((((ord_less @ nat) @ (suc @ N2)) @ M) = (? [M5:nat]: (((M = (suc @ M5)) & (((ord_less @ nat) @ N2) @ M5)))))))).
% 2.58/1.46 thf(fact_90_less__antisym, axiom, (! [N2:nat,M:nat]: (((~ ((((ord_less @ nat) @ N2) @ M))) => ((((ord_less @ nat) @ N2) @ (suc @ M)) => (M = N2)))))).
% 2.58/1.46 thf(fact_91_Suc__less__SucD, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ (suc @ M)) @ (suc @ N2)) => (((ord_less @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_92_less__trans__Suc, axiom, (! [I2:nat,J4:nat,K:nat]: (((((ord_less @ nat) @ I2) @ J4) => ((((ord_less @ nat) @ J4) @ K) => (((ord_less @ nat) @ (suc @ I2)) @ K)))))).
% 2.58/1.46 thf(fact_93_less__Suc__induct, axiom, (! [I2:nat,J4:nat,P:(nat > (nat > $o))]: (((((ord_less @ nat) @ I2) @ J4) => ((! [I:nat]: (((P @ I) @ (suc @ I)))) => ((! [I:nat,J2:nat,K2:nat]: (((((ord_less @ nat) @ I) @ J2) => ((((ord_less @ nat) @ J2) @ K2) => (((P @ I) @ J2) => (((P @ J2) @ K2) => ((P @ I) @ K2))))))) => ((P @ I2) @ J4))))))).
% 2.58/1.46 thf(fact_94_strict__inc__induct, axiom, (! [I2:nat,J4:nat,P:(nat > $o)]: (((((ord_less @ nat) @ I2) @ J4) => ((! [I:nat]: (((J4 = (suc @ I)) => (P @ I)))) => ((! [I:nat]: (((((ord_less @ nat) @ I) @ J4) => ((P @ (suc @ I)) => (P @ I))))) => (P @ I2))))))).
% 2.58/1.46 thf(fact_95_not__less__less__Suc__eq, axiom, (! [N2:nat,M:nat]: (((~ ((((ord_less @ nat) @ N2) @ M))) => ((((ord_less @ nat) @ N2) @ (suc @ M)) = (N2 = M)))))).
% 2.58/1.46 thf(fact_96_less__iff__diff__less__0, axiom, (! [A:$tType]: ((((ordered_ab_group_add @ A) @ (type2 @ A)) => ((ord_less @ A) = (^ [A3:A,B3:A]: ((((ord_less @ A) @ (((minus_minus @ A) @ A3) @ B3)) @ (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_97_nat_Odistinct_I1_J, axiom, (! [X2:nat]: (((zero_zero @ nat) != (suc @ X2))))).
% 2.58/1.46 thf(fact_98_old_Onat_Odistinct_I2_J, axiom, (! [Nat3:nat]: (((suc @ Nat3) != (zero_zero @ nat))))).
% 2.58/1.46 thf(fact_99_old_Onat_Odistinct_I1_J, axiom, (! [Nat2:nat]: (((zero_zero @ nat) != (suc @ Nat2))))).
% 2.58/1.46 thf(fact_100_nat_OdiscI, axiom, (! [Nat:nat,X2:nat]: (((Nat = (suc @ X2)) => (Nat != (zero_zero @ nat)))))).
% 2.58/1.46 thf(fact_101_nat__induct, axiom, (! [P:(nat > $o),N2:nat]: (((P @ (zero_zero @ nat)) => ((! [N3:nat]: (((P @ N3) => (P @ (suc @ N3))))) => (P @ N2)))))).
% 2.58/1.46 thf(fact_102_diff__induct, axiom, (! [P:(nat > (nat > $o)),M:nat,N2:nat]: (((! [X3:nat]: (((P @ X3) @ (zero_zero @ nat)))) => ((! [Y6:nat]: (((P @ (zero_zero @ nat)) @ (suc @ Y6)))) => ((! [X3:nat,Y6:nat]: ((((P @ X3) @ Y6) => ((P @ (suc @ X3)) @ (suc @ Y6))))) => ((P @ M) @ N2))))))).
% 2.58/1.46 thf(fact_103_zero__induct, axiom, (! [P:(nat > $o),K:nat]: (((P @ K) => ((! [N3:nat]: (((P @ (suc @ N3)) => (P @ N3)))) => (P @ (zero_zero @ nat))))))).
% 2.58/1.46 thf(fact_104_Suc__neq__Zero, axiom, (! [M:nat]: (((suc @ M) != (zero_zero @ nat))))).
% 2.58/1.46 thf(fact_105_Zero__neq__Suc, axiom, (! [M:nat]: (((zero_zero @ nat) != (suc @ M))))).
% 2.58/1.46 thf(fact_106_Zero__not__Suc, axiom, (! [M:nat]: (((zero_zero @ nat) != (suc @ M))))).
% 2.58/1.46 thf(fact_107_old_Onat_Oexhaust, axiom, (! [Y:nat]: (((Y != (zero_zero @ nat)) => (~ ((! [Nat4:nat]: ((Y != (suc @ Nat4)))))))))).
% 2.58/1.46 thf(fact_108_old_Onat_Oinducts, axiom, (! [P:(nat > $o),Nat:nat]: (((P @ (zero_zero @ nat)) => ((! [Nat4:nat]: (((P @ Nat4) => (P @ (suc @ Nat4))))) => (P @ Nat)))))).
% 2.58/1.46 thf(fact_109_not0__implies__Suc, axiom, (! [N2:nat]: (((N2 != (zero_zero @ nat)) => (? [M3:nat]: ((N2 = (suc @ M3)))))))).
% 2.58/1.46 thf(fact_110_less__enatE, axiom, (! [N2:extended_enat,M:nat]: (((((ord_less @ extended_enat) @ N2) @ (extended_enat2 @ M)) => (~ ((! [K2:nat]: (((N2 = (extended_enat2 @ K2)) => (~ ((((ord_less @ nat) @ K2) @ M)))))))))))).
% 2.58/1.46 thf(fact_111_zero__enat__def, axiom, ((zero_zero @ extended_enat) = (extended_enat2 @ (zero_zero @ nat)))).
% 2.58/1.46 thf(fact_112_enat__0__iff_I1_J, axiom, (! [X:nat]: ((((extended_enat2 @ X) = (zero_zero @ extended_enat)) = (X = (zero_zero @ nat)))))).
% 2.58/1.46 thf(fact_113_enat__0__iff_I2_J, axiom, (! [X:nat]: ((((zero_zero @ extended_enat) = (extended_enat2 @ X)) = (X = (zero_zero @ nat)))))).
% 2.58/1.46 thf(fact_114_zero__reorient, axiom, (! [A:$tType]: ((((zero @ A) @ (type2 @ A)) => (! [X:A]: ((((zero_zero @ A) = X) = (X = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_115_ldrop__eq__LConsD, axiom, (! [A:$tType,N2:extended_enat,Xs:(coindu1593790203_llist @ A),Y:A,Ys:(coindu1593790203_llist @ A)]: ((((((coindu191418589_ldrop @ A) @ N2) @ Xs) = (((coindu1121789889_LCons @ A) @ Y) @ Ys)) => (((ord_less @ extended_enat) @ N2) @ ((coindu1018505716length @ A) @ Xs)))))).
% 2.58/1.46 thf(fact_116_case__enat__0, axiom, (! [A:$tType,F:(nat > A),I2:A]: ((((((extended_case_enat @ A) @ F) @ I2) @ (zero_zero @ extended_enat)) = (F @ (zero_zero @ nat)))))).
% 2.58/1.46 thf(fact_117_minus__apply, axiom, (! [B:$tType,A:$tType]: ((((minus @ B) @ (type2 @ B)) => ((minus_minus @ (A > B)) = (^ [A4:(A > B),B4:(A > B),X4:A]: ((((minus_minus @ B) @ (A4 @ X4)) @ (B4 @ X4))))))))).
% 2.58/1.46 thf(fact_118_enat_Osize_I1_J, axiom, (! [Nat:nat]: (((extended_size_enat @ (extended_enat2 @ Nat)) = (zero_zero @ nat))))).
% 2.58/1.46 thf(fact_119_ldropn__Suc__conv__ldropn, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A)]: (((((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)) => ((((coindu1121789889_LCons @ A) @ (((coindu749330388e_lnth @ A) @ Xs) @ N2)) @ (((coindu531130065ldropn @ A) @ (suc @ N2)) @ Xs)) = (((coindu531130065ldropn @ A) @ N2) @ Xs)))))).
% 2.58/1.46 thf(fact_120_enat_Osize_I3_J, axiom, (! [Nat:nat]: ((((size_size @ extended_enat) @ (extended_enat2 @ Nat)) = (zero_zero @ nat))))).
% 2.58/1.46 thf(fact_121_llength__ldrop, axiom, (! [A:$tType,N2:extended_enat,Xs:(coindu1593790203_llist @ A)]: ((((N2 = (extend1396239628finity @ extended_enat)) => (((coindu1018505716length @ A) @ (((coindu191418589_ldrop @ A) @ N2) @ Xs)) = (zero_zero @ extended_enat))) & ((N2 != (extend1396239628finity @ extended_enat)) => (((coindu1018505716length @ A) @ (((coindu191418589_ldrop @ A) @ N2) @ Xs)) = (((minus_minus @ extended_enat) @ ((coindu1018505716length @ A) @ Xs)) @ N2))))))).
% 2.58/1.46 thf(fact_122_ldrop__lappend, axiom, (! [A:$tType,N2:extended_enat,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((((ord_less @ extended_enat) @ N2) @ ((coindu1018505716length @ A) @ Xs)) => ((((coindu191418589_ldrop @ A) @ N2) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((coindu268472904append @ A) @ (((coindu191418589_ldrop @ A) @ N2) @ Xs)) @ Ys))) & ((~ ((((ord_less @ extended_enat) @ N2) @ ((coindu1018505716length @ A) @ Xs)))) => ((((coindu191418589_ldrop @ A) @ N2) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((coindu191418589_ldrop @ A) @ (((minus_minus @ extended_enat) @ N2) @ ((coindu1018505716length @ A) @ Xs))) @ Ys))))))).
% 2.58/1.46 thf(fact_123_idiff__infinity__right, axiom, (! [A2:nat]: (((((minus_minus @ extended_enat) @ (extended_enat2 @ A2)) @ (extend1396239628finity @ extended_enat)) = (zero_zero @ extended_enat))))).
% 2.58/1.46 thf(fact_124_lstrict__prefix__llength__less, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu574146665prefix @ A) @ Xs) @ Ys) => (((ord_less @ extended_enat) @ ((coindu1018505716length @ A) @ Xs)) @ ((coindu1018505716length @ A) @ Ys)))))).
% 2.58/1.46 thf(fact_125_diff__0__eq__0, axiom, (! [N2:nat]: (((((minus_minus @ nat) @ (zero_zero @ nat)) @ N2) = (zero_zero @ nat))))).
% 2.58/1.46 thf(fact_126_diff__self__eq__0, axiom, (! [M:nat]: (((((minus_minus @ nat) @ M) @ M) = (zero_zero @ nat))))).
% 2.58/1.46 thf(fact_127_Suc__diff__diff, axiom, (! [M:nat,N2:nat,K:nat]: (((((minus_minus @ nat) @ (((minus_minus @ nat) @ (suc @ M)) @ N2)) @ (suc @ K)) = (((minus_minus @ nat) @ (((minus_minus @ nat) @ M) @ N2)) @ K))))).
% 2.58/1.46 thf(fact_128_diff__Suc__Suc, axiom, (! [M:nat,N2:nat]: (((((minus_minus @ nat) @ (suc @ M)) @ (suc @ N2)) = (((minus_minus @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_129_zero__less__diff, axiom, (! [N2:nat,M:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ (((minus_minus @ nat) @ N2) @ M)) = (((ord_less @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_130_lappend__code_I2_J, axiom, (! [A:$tType,Xa:A,X:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ (((coindu1121789889_LCons @ A) @ Xa) @ X)) @ Ys) = (((coindu1121789889_LCons @ A) @ Xa) @ (((coindu268472904append @ A) @ X) @ Ys)))))).
% 2.58/1.46 thf(fact_131_not__infinity__eq, axiom, (! [X:extended_enat]: (((X != (extend1396239628finity @ extended_enat)) = (? [I3:nat]: ((X = (extended_enat2 @ I3)))))))).
% 2.58/1.46 thf(fact_132_not__enat__eq, axiom, (! [X:extended_enat]: (((! [Y7:nat]: ((X != (extended_enat2 @ Y7)))) = (X = (extend1396239628finity @ extended_enat)))))).
% 2.58/1.46 thf(fact_133_enat__ord__simps_I6_J, axiom, (! [Q:extended_enat]: ((~ ((((ord_less @ extended_enat) @ (extend1396239628finity @ extended_enat)) @ Q)))))).
% 2.58/1.46 thf(fact_134_enat__ord__simps_I4_J, axiom, (! [Q:extended_enat]: (((((ord_less @ extended_enat) @ Q) @ (extend1396239628finity @ extended_enat)) = (Q != (extend1396239628finity @ extended_enat)))))).
% 2.58/1.46 thf(fact_135_idiff__enat__enat, axiom, (! [A2:nat,B2:nat]: (((((minus_minus @ extended_enat) @ (extended_enat2 @ A2)) @ (extended_enat2 @ B2)) = (extended_enat2 @ (((minus_minus @ nat) @ A2) @ B2)))))).
% 2.58/1.46 thf(fact_136_idiff__infinity, axiom, (! [N2:extended_enat]: (((((minus_minus @ extended_enat) @ (extend1396239628finity @ extended_enat)) @ N2) = (extend1396239628finity @ extended_enat))))).
% 2.58/1.46 thf(fact_137_enat_Osimps_I5_J, axiom, (! [T:$tType,F1:(nat > T),F2:T]: ((((((extended_case_enat @ T) @ F1) @ F2) @ (extend1396239628finity @ extended_enat)) = F2)))).
% 2.58/1.46 thf(fact_138_lstrict__prefix__code_I4_J, axiom, (! [B:$tType,X:B,Xs:(coindu1593790203_llist @ B),Y:B,Ys:(coindu1593790203_llist @ B)]: (((((coindu574146665prefix @ B) @ (((coindu1121789889_LCons @ B) @ X) @ Xs)) @ (((coindu1121789889_LCons @ B) @ Y) @ Ys)) = ((X = Y) & (((coindu574146665prefix @ B) @ Xs) @ Ys)))))).
% 2.58/1.46 thf(fact_139_enat_Osimps_I7_J, axiom, (! [T:$tType,F1:(nat > T),F2:T]: ((((((extended_rec_enat @ T) @ F1) @ F2) @ (extend1396239628finity @ extended_enat)) = F2)))).
% 2.58/1.46 thf(fact_140_Suc__pred, axiom, (! [N2:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ N2) => ((suc @ (((minus_minus @ nat) @ N2) @ (suc @ (zero_zero @ nat)))) = N2))))).
% 2.58/1.46 thf(fact_141_lnth__0, axiom, (! [A:$tType,X:A,Xs:(coindu1593790203_llist @ A)]: (((((coindu749330388e_lnth @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) @ (zero_zero @ nat)) = X)))).
% 2.58/1.46 thf(fact_142_lnth__Suc__LCons, axiom, (! [A:$tType,X:A,Xs:(coindu1593790203_llist @ A),N2:nat]: (((((coindu749330388e_lnth @ A) @ (((coindu1121789889_LCons @ A) @ X) @ Xs)) @ (suc @ N2)) = (((coindu749330388e_lnth @ A) @ Xs) @ N2))))).
% 2.58/1.46 thf(fact_143_idiff__self, axiom, (! [N2:extended_enat]: (((N2 != (extend1396239628finity @ extended_enat)) => ((((minus_minus @ extended_enat) @ N2) @ N2) = (zero_zero @ extended_enat)))))).
% 2.58/1.46 thf(fact_144_enat_Osize_I4_J, axiom, (((size_size @ extended_enat) @ (extend1396239628finity @ extended_enat)) = (zero_zero @ nat))).
% 2.58/1.46 thf(fact_145_enat_Osize_I2_J, axiom, ((extended_size_enat @ (extend1396239628finity @ extended_enat)) = (zero_zero @ nat))).
% 2.58/1.46 thf(fact_146_diffs0__imp__equal, axiom, (! [M:nat,N2:nat]: ((((((minus_minus @ nat) @ M) @ N2) = (zero_zero @ nat)) => (((((minus_minus @ nat) @ N2) @ M) = (zero_zero @ nat)) => (M = N2)))))).
% 2.58/1.46 thf(fact_147_minus__nat_Odiff__0, axiom, (! [M:nat]: (((((minus_minus @ nat) @ M) @ (zero_zero @ nat)) = M)))).
% 2.58/1.46 thf(fact_148_lappend__assoc, axiom, (! [A:$tType,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A),Zs:(coindu1593790203_llist @ A)]: (((((coindu268472904append @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) @ Zs) = (((coindu268472904append @ A) @ Xs) @ (((coindu268472904append @ A) @ Ys) @ Zs)))))).
% 2.58/1.46 thf(fact_149_llist__less__induct, axiom, (! [A:$tType,P:((coindu1593790203_llist @ A) > $o),Xs:(coindu1593790203_llist @ A)]: (((! [Xs2:(coindu1593790203_llist @ A)]: (((! [Ys2:(coindu1593790203_llist @ A)]: (((((coindu574146665prefix @ A) @ Ys2) @ Xs2) => (P @ Ys2)))) => (P @ Xs2)))) => (P @ Xs))))).
% 2.58/1.46 thf(fact_150_zero__induct__lemma, axiom, (! [P:(nat > $o),K:nat,I2:nat]: (((P @ K) => ((! [N3:nat]: (((P @ (suc @ N3)) => (P @ N3)))) => (P @ (((minus_minus @ nat) @ K) @ I2))))))).
% 2.58/1.46 thf(fact_151_enat__ex__split, axiom, ((^ [P2:(extended_enat > $o)]: ((? [X5:extended_enat]: ((P2 @ X5))))) = (^ [P3:(extended_enat > $o)]: (((P3 @ (extend1396239628finity @ extended_enat)) | (? [X4:nat]: ((P3 @ (extended_enat2 @ X4))))))))).
% 2.58/1.46 thf(fact_152_enat_Oinducts, axiom, (! [P:(extended_enat > $o),Enat:extended_enat]: (((! [Nat4:nat]: ((P @ (extended_enat2 @ Nat4)))) => ((P @ (extend1396239628finity @ extended_enat)) => (P @ Enat)))))).
% 2.58/1.46 thf(fact_153_enat_Oexhaust, axiom, (! [Y:extended_enat]: (((! [Nat4:nat]: ((Y != (extended_enat2 @ Nat4)))) => (Y = (extend1396239628finity @ extended_enat)))))).
% 2.58/1.46 thf(fact_154_enat3__cases, axiom, (! [Y:extended_enat,Ya:extended_enat,Yb:extended_enat]: ((((? [Nat4:nat]: ((Y = (extended_enat2 @ Nat4)))) => ((? [Nata:nat]: ((Ya = (extended_enat2 @ Nata)))) => (! [Natb:nat]: ((Yb != (extended_enat2 @ Natb)))))) => (((? [Nat4:nat]: ((Y = (extended_enat2 @ Nat4)))) => ((? [Nata:nat]: ((Ya = (extended_enat2 @ Nata)))) => (Yb != (extend1396239628finity @ extended_enat)))) => (((? [Nat4:nat]: ((Y = (extended_enat2 @ Nat4)))) => ((Ya = (extend1396239628finity @ extended_enat)) => (! [Nata:nat]: ((Yb != (extended_enat2 @ Nata)))))) => (((? [Nat4:nat]: ((Y = (extended_enat2 @ Nat4)))) => ((Ya = (extend1396239628finity @ extended_enat)) => (Yb != (extend1396239628finity @ extended_enat)))) => (((Y = (extend1396239628finity @ extended_enat)) => ((? [Nat4:nat]: ((Ya = (extended_enat2 @ Nat4)))) => (! [Nata:nat]: ((Yb != (extended_enat2 @ Nata)))))) => (((Y = (extend1396239628finity @ extended_enat)) => ((? [Nat4:nat]: ((Ya = (extended_enat2 @ Nat4)))) => (Yb != (extend1396239628finity @ extended_enat)))) => (((Y = (extend1396239628finity @ extended_enat)) => ((Ya = (extend1396239628finity @ extended_enat)) => (! [Nat4:nat]: ((Yb != (extended_enat2 @ Nat4)))))) => (~ (((Y = (extend1396239628finity @ extended_enat)) => ((Ya = (extend1396239628finity @ extended_enat)) => (Yb != (extend1396239628finity @ extended_enat)))))))))))))))).
% 2.58/1.46 thf(fact_155_enat2__cases, axiom, (! [Y:extended_enat,Ya:extended_enat]: ((((? [Nat4:nat]: ((Y = (extended_enat2 @ Nat4)))) => (! [Nata:nat]: ((Ya != (extended_enat2 @ Nata))))) => (((? [Nat4:nat]: ((Y = (extended_enat2 @ Nat4)))) => (Ya != (extend1396239628finity @ extended_enat))) => (((Y = (extend1396239628finity @ extended_enat)) => (! [Nat4:nat]: ((Ya != (extended_enat2 @ Nat4))))) => (~ (((Y = (extend1396239628finity @ extended_enat)) => (Ya != (extend1396239628finity @ extended_enat))))))))))).
% 2.58/1.46 thf(fact_156_enat_Odistinct_I1_J, axiom, (! [Nat:nat]: (((extended_enat2 @ Nat) != (extend1396239628finity @ extended_enat))))).
% 2.58/1.46 thf(fact_157_enat_Odistinct_I2_J, axiom, (! [Nat5:nat]: (((extend1396239628finity @ extended_enat) != (extended_enat2 @ Nat5))))).
% 2.58/1.46 thf(fact_158_infinity__ne__i0, axiom, ((extend1396239628finity @ extended_enat) != (zero_zero @ extended_enat))).
% 2.58/1.46 thf(fact_159_less__imp__diff__less, axiom, (! [J4:nat,K:nat,N2:nat]: (((((ord_less @ nat) @ J4) @ K) => (((ord_less @ nat) @ (((minus_minus @ nat) @ J4) @ N2)) @ K))))).
% 2.58/1.46 thf(fact_160_diff__less__mono2, axiom, (! [M:nat,N2:nat,L:nat]: (((((ord_less @ nat) @ M) @ N2) => ((((ord_less @ nat) @ M) @ L) => (((ord_less @ nat) @ (((minus_minus @ nat) @ L) @ N2)) @ (((minus_minus @ nat) @ L) @ M))))))).
% 2.58/1.46 thf(fact_161_diff__less, axiom, (! [N2:nat,M:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ N2) => ((((ord_less @ nat) @ (zero_zero @ nat)) @ M) => (((ord_less @ nat) @ (((minus_minus @ nat) @ M) @ N2)) @ M)))))).
% 2.58/1.46 thf(fact_162_lnth__lappend1, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: (((((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)) => ((((coindu749330388e_lnth @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) @ N2) = (((coindu749330388e_lnth @ A) @ Xs) @ N2)))))).
% 2.58/1.46 thf(fact_163_Suc__diff__Suc, axiom, (! [N2:nat,M:nat]: (((((ord_less @ nat) @ N2) @ M) => ((suc @ (((minus_minus @ nat) @ M) @ (suc @ N2))) = (((minus_minus @ nat) @ M) @ N2)))))).
% 2.58/1.46 thf(fact_164_diff__less__Suc, axiom, (! [M:nat,N2:nat]: ((((ord_less @ nat) @ (((minus_minus @ nat) @ M) @ N2)) @ (suc @ M))))).
% 2.58/1.46 thf(fact_165_diff__Suc__less, axiom, (! [N2:nat,I2:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ N2) => (((ord_less @ nat) @ (((minus_minus @ nat) @ N2) @ (suc @ I2))) @ N2))))).
% 2.58/1.46 thf(fact_166_infinity__ilessE, axiom, (! [M:nat]: ((~ ((((ord_less @ extended_enat) @ (extend1396239628finity @ extended_enat)) @ (extended_enat2 @ M))))))).
% 2.58/1.46 thf(fact_167_less__infinityE, axiom, (! [N2:extended_enat]: (((((ord_less @ extended_enat) @ N2) @ (extend1396239628finity @ extended_enat)) => (~ ((! [K2:nat]: ((N2 != (extended_enat2 @ K2)))))))))).
% 2.58/1.46 thf(fact_168_enat__ord__code_I4_J, axiom, (! [M:nat]: ((((ord_less @ extended_enat) @ (extended_enat2 @ M)) @ (extend1396239628finity @ extended_enat))))).
% 2.58/1.46 thf(fact_169_fun__diff__def, axiom, (! [B:$tType,A:$tType]: ((((minus @ B) @ (type2 @ B)) => ((minus_minus @ (A > B)) = (^ [A4:(A > B),B4:(A > B),X4:A]: ((((minus_minus @ B) @ (A4 @ X4)) @ (B4 @ X4))))))))).
% 2.58/1.46 thf(fact_170_ldropn__lappend, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)) => ((((coindu531130065ldropn @ A) @ N2) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((coindu268472904append @ A) @ (((coindu531130065ldropn @ A) @ N2) @ Xs)) @ Ys))) & ((~ ((((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)))) => ((((coindu531130065ldropn @ A) @ N2) @ (((coindu268472904append @ A) @ Xs) @ Ys)) = (((coindu531130065ldropn @ A) @ (((minus_minus @ nat) @ N2) @ (extended_the_enat @ ((coindu1018505716length @ A) @ Xs)))) @ Ys))))))).
% 2.58/1.46 thf(fact_171_lnth__lappend, axiom, (! [A:$tType,N2:nat,Xs:(coindu1593790203_llist @ A),Ys:(coindu1593790203_llist @ A)]: ((((((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)) => ((((coindu749330388e_lnth @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) @ N2) = (((coindu749330388e_lnth @ A) @ Xs) @ N2))) & ((~ ((((ord_less @ extended_enat) @ (extended_enat2 @ N2)) @ ((coindu1018505716length @ A) @ Xs)))) => ((((coindu749330388e_lnth @ A) @ (((coindu268472904append @ A) @ Xs) @ Ys)) @ N2) = (((coindu749330388e_lnth @ A) @ Ys) @ (((minus_minus @ nat) @ N2) @ (extended_the_enat @ ((coindu1018505716length @ A) @ Xs)))))))))).
% 2.58/1.46 thf(fact_172_lnth__ldropn, axiom, (! [A:$tType,N2:nat,M:nat,Xs:(coindu1593790203_llist @ A)]: (((((ord_less @ extended_enat) @ (extended_enat2 @ (((plus_plus @ nat) @ N2) @ M))) @ ((coindu1018505716length @ A) @ Xs)) => ((((coindu749330388e_lnth @ A) @ (((coindu531130065ldropn @ A) @ N2) @ Xs)) @ M) = (((coindu749330388e_lnth @ A) @ Xs) @ (((plus_plus @ nat) @ M) @ N2))))))).
% 2.58/1.46 thf(fact_173_exists__least__lemma, axiom, (! [P:(nat > $o)]: (((~ ((P @ (zero_zero @ nat)))) => ((? [X1:nat]: ((P @ X1))) => (? [N3:nat]: (((~ ((P @ N3))) & (P @ (suc @ N3)))))))))).
% 2.58/1.46 thf(fact_174_add__left__cancel, axiom, (! [A:$tType]: ((((cancel_semigroup_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: ((((((plus_plus @ A) @ A2) @ B2) = (((plus_plus @ A) @ A2) @ C)) = (B2 = C)))))))).
% 2.58/1.46 thf(fact_175_add__right__cancel, axiom, (! [A:$tType]: ((((cancel_semigroup_add @ A) @ (type2 @ A)) => (! [B2:A,A2:A,C:A]: ((((((plus_plus @ A) @ B2) @ A2) = (((plus_plus @ A) @ C) @ A2)) = (B2 = C)))))))).
% 2.58/1.46 thf(fact_176_add_Oleft__neutral, axiom, (! [A:$tType]: ((((monoid_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((plus_plus @ A) @ (zero_zero @ A)) @ A2) = A2))))))).
% 2.58/1.46 thf(fact_177_add_Oright__neutral, axiom, (! [A:$tType]: ((((monoid_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((plus_plus @ A) @ A2) @ (zero_zero @ A)) = A2))))))).
% 2.58/1.46 thf(fact_178_double__zero, axiom, (! [A:$tType]: ((((linord219039673up_add @ A) @ (type2 @ A)) => (! [A2:A]: ((((((plus_plus @ A) @ A2) @ A2) = (zero_zero @ A)) = (A2 = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_179_double__zero__sym, axiom, (! [A:$tType]: ((((linord219039673up_add @ A) @ (type2 @ A)) => (! [A2:A]: ((((zero_zero @ A) = (((plus_plus @ A) @ A2) @ A2)) = (A2 = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_180_add__cancel__left__left, axiom, (! [A:$tType]: ((((cancel1352612707id_add @ A) @ (type2 @ A)) => (! [B2:A,A2:A]: ((((((plus_plus @ A) @ B2) @ A2) = A2) = (B2 = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_181_add__cancel__left__right, axiom, (! [A:$tType]: ((((cancel1352612707id_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: ((((((plus_plus @ A) @ A2) @ B2) = A2) = (B2 = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_182_add__cancel__right__left, axiom, (! [A:$tType]: ((((cancel1352612707id_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((A2 = (((plus_plus @ A) @ B2) @ A2)) = (B2 = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_183_add__cancel__right__right, axiom, (! [A:$tType]: ((((cancel1352612707id_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((A2 = (((plus_plus @ A) @ A2) @ B2)) = (B2 = (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_184_add__less__cancel__left, axiom, (! [A:$tType]: ((((ordere236663937imp_le @ A) @ (type2 @ A)) => (! [C:A,A2:A,B2:A]: (((((ord_less @ A) @ (((plus_plus @ A) @ C) @ A2)) @ (((plus_plus @ A) @ C) @ B2)) = (((ord_less @ A) @ A2) @ B2)))))))).
% 2.58/1.46 thf(fact_185_add__less__cancel__right, axiom, (! [A:$tType]: ((((ordere236663937imp_le @ A) @ (type2 @ A)) => (! [A2:A,C:A,B2:A]: (((((ord_less @ A) @ (((plus_plus @ A) @ A2) @ C)) @ (((plus_plus @ A) @ B2) @ C)) = (((ord_less @ A) @ A2) @ B2)))))))).
% 2.58/1.46 thf(fact_186_add__diff__cancel, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((minus_minus @ A) @ (((plus_plus @ A) @ A2) @ B2)) @ B2) = A2))))))).
% 2.58/1.46 thf(fact_187_diff__add__cancel, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((plus_plus @ A) @ (((minus_minus @ A) @ A2) @ B2)) @ B2) = A2))))))).
% 2.58/1.46 thf(fact_188_add__diff__cancel__left, axiom, (! [A:$tType]: ((((cancel146912293up_add @ A) @ (type2 @ A)) => (! [C:A,A2:A,B2:A]: (((((minus_minus @ A) @ (((plus_plus @ A) @ C) @ A2)) @ (((plus_plus @ A) @ C) @ B2)) = (((minus_minus @ A) @ A2) @ B2)))))))).
% 2.58/1.46 thf(fact_189_add__diff__cancel__left_H, axiom, (! [A:$tType]: ((((cancel146912293up_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((minus_minus @ A) @ (((plus_plus @ A) @ A2) @ B2)) @ A2) = B2))))))).
% 2.58/1.46 thf(fact_190_add__diff__cancel__right, axiom, (! [A:$tType]: ((((cancel146912293up_add @ A) @ (type2 @ A)) => (! [A2:A,C:A,B2:A]: (((((minus_minus @ A) @ (((plus_plus @ A) @ A2) @ C)) @ (((plus_plus @ A) @ B2) @ C)) = (((minus_minus @ A) @ A2) @ B2)))))))).
% 2.58/1.46 thf(fact_191_add__diff__cancel__right_H, axiom, (! [A:$tType]: ((((cancel146912293up_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((minus_minus @ A) @ (((plus_plus @ A) @ A2) @ B2)) @ B2) = A2))))))).
% 2.58/1.46 thf(fact_192_add__is__0, axiom, (! [M:nat,N2:nat]: ((((((plus_plus @ nat) @ M) @ N2) = (zero_zero @ nat)) = ((M = (zero_zero @ nat)) & (N2 = (zero_zero @ nat))))))).
% 2.58/1.46 thf(fact_193_Nat_Oadd__0__right, axiom, (! [M:nat]: (((((plus_plus @ nat) @ M) @ (zero_zero @ nat)) = M)))).
% 2.58/1.46 thf(fact_194_add__Suc__right, axiom, (! [M:nat,N2:nat]: (((((plus_plus @ nat) @ M) @ (suc @ N2)) = (suc @ (((plus_plus @ nat) @ M) @ N2)))))).
% 2.58/1.46 thf(fact_195_nat__add__left__cancel__less, axiom, (! [K:nat,M:nat,N2:nat]: (((((ord_less @ nat) @ (((plus_plus @ nat) @ K) @ M)) @ (((plus_plus @ nat) @ K) @ N2)) = (((ord_less @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_196_diff__diff__left, axiom, (! [I2:nat,J4:nat,K:nat]: (((((minus_minus @ nat) @ (((minus_minus @ nat) @ I2) @ J4)) @ K) = (((minus_minus @ nat) @ I2) @ (((plus_plus @ nat) @ J4) @ K)))))).
% 2.58/1.46 thf(fact_197_ldropn__ldropn, axiom, (! [A:$tType,N2:nat,M:nat,Xs:(coindu1593790203_llist @ A)]: (((((coindu531130065ldropn @ A) @ N2) @ (((coindu531130065ldropn @ A) @ M) @ Xs)) = (((coindu531130065ldropn @ A) @ (((plus_plus @ nat) @ N2) @ M)) @ Xs))))).
% 2.58/1.46 thf(fact_198_zero__less__double__add__iff__zero__less__single__add, axiom, (! [A:$tType]: ((((linord219039673up_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((ord_less @ A) @ (zero_zero @ A)) @ (((plus_plus @ A) @ A2) @ A2)) = (((ord_less @ A) @ (zero_zero @ A)) @ A2)))))))).
% 2.58/1.46 thf(fact_199_double__add__less__zero__iff__single__add__less__zero, axiom, (! [A:$tType]: ((((linord219039673up_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((ord_less @ A) @ (((plus_plus @ A) @ A2) @ A2)) @ (zero_zero @ A)) = (((ord_less @ A) @ A2) @ (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_200_less__add__same__cancel2, axiom, (! [A:$tType]: ((((ordere516151231imp_le @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((ord_less @ A) @ A2) @ (((plus_plus @ A) @ B2) @ A2)) = (((ord_less @ A) @ (zero_zero @ A)) @ B2)))))))).
% 2.58/1.46 thf(fact_201_less__add__same__cancel1, axiom, (! [A:$tType]: ((((ordere516151231imp_le @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((ord_less @ A) @ A2) @ (((plus_plus @ A) @ A2) @ B2)) = (((ord_less @ A) @ (zero_zero @ A)) @ B2)))))))).
% 2.58/1.46 thf(fact_202_add__less__same__cancel2, axiom, (! [A:$tType]: ((((ordere516151231imp_le @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((ord_less @ A) @ (((plus_plus @ A) @ A2) @ B2)) @ B2) = (((ord_less @ A) @ A2) @ (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_203_add__less__same__cancel1, axiom, (! [A:$tType]: ((((ordere516151231imp_le @ A) @ (type2 @ A)) => (! [B2:A,A2:A]: (((((ord_less @ A) @ (((plus_plus @ A) @ B2) @ A2)) @ B2) = (((ord_less @ A) @ A2) @ (zero_zero @ A))))))))).
% 2.58/1.46 thf(fact_204_diff__add__zero, axiom, (! [A:$tType]: ((((comm_monoid_diff @ A) @ (type2 @ A)) => (! [A2:A,B2:A]: (((((minus_minus @ A) @ A2) @ (((plus_plus @ A) @ A2) @ B2)) = (zero_zero @ A)))))))).
% 2.58/1.46 thf(fact_205_add__gr__0, axiom, (! [M:nat,N2:nat]: (((((ord_less @ nat) @ (zero_zero @ nat)) @ (((plus_plus @ nat) @ M) @ N2)) = ((((ord_less @ nat) @ (zero_zero @ nat)) @ M) | (((ord_less @ nat) @ (zero_zero @ nat)) @ N2)))))).
% 2.58/1.46 thf(fact_206_the__enat__0, axiom, ((extended_the_enat @ (zero_zero @ extended_enat)) = (zero_zero @ nat))).
% 2.58/1.46 thf(fact_207_diff__add__0, axiom, (! [N2:nat,M:nat]: (((((minus_minus @ nat) @ N2) @ (((plus_plus @ nat) @ N2) @ M)) = (zero_zero @ nat))))).
% 2.58/1.46 thf(fact_208_Nat_Odiff__cancel, axiom, (! [K:nat,M:nat,N2:nat]: (((((minus_minus @ nat) @ (((plus_plus @ nat) @ K) @ M)) @ (((plus_plus @ nat) @ K) @ N2)) = (((minus_minus @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_209_diff__cancel2, axiom, (! [M:nat,K:nat,N2:nat]: (((((minus_minus @ nat) @ (((plus_plus @ nat) @ M) @ K)) @ (((plus_plus @ nat) @ N2) @ K)) = (((minus_minus @ nat) @ M) @ N2))))).
% 2.58/1.46 thf(fact_210_diff__commute, axiom, (! [I2:nat,J4:nat,K:nat]: (((((minus_minus @ nat) @ (((minus_minus @ nat) @ I2) @ J4)) @ K) = (((minus_minus @ nat) @ (((minus_minus @ nat) @ I2) @ K)) @ J4))))).
% 2.58/1.46 thf(fact_211_less__diff__conv, axiom, (! [I2:nat,J4:nat,K:nat]: (((((ord_less @ nat) @ I2) @ (((minus_minus @ nat) @ J4) @ K)) = (((ord_less @ nat) @ (((plus_plus @ nat) @ I2) @ K)) @ J4))))).
% 2.58/1.46 thf(fact_212_plus__nat_Oadd__0, axiom, (! [N2:nat]: (((((plus_plus @ nat) @ (zero_zero @ nat)) @ N2) = N2)))).
% 2.58/1.46 thf(fact_213_add__eq__self__zero, axiom, (! [M:nat,N2:nat]: ((((((plus_plus @ nat) @ M) @ N2) = M) => (N2 = (zero_zero @ nat)))))).
% 2.58/1.46 thf(fact_214_diff__add__inverse, axiom, (! [N2:nat,M:nat]: (((((minus_minus @ nat) @ (((plus_plus @ nat) @ N2) @ M)) @ N2) = M)))).
% 2.58/1.46 thf(fact_215_diff__add__inverse2, axiom, (! [M:nat,N2:nat]: (((((minus_minus @ nat) @ (((plus_plus @ nat) @ M) @ N2)) @ N2) = M)))).
% 2.58/1.46 thf(fact_216_add__diff__inverse__nat, axiom, (! [M:nat,N2:nat]: (((~ ((((ord_less @ nat) @ M) @ N2))) => ((((plus_plus @ nat) @ N2) @ (((minus_minus @ nat) @ M) @ N2)) = M))))).
% 2.58/1.46 thf(fact_217_comm__monoid__add__class_Oadd__0, axiom, (! [A:$tType]: ((((comm_monoid_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((plus_plus @ A) @ (zero_zero @ A)) @ A2) = A2))))))).
% 2.58/1.46 thf(fact_218_add_Ocomm__neutral, axiom, (! [A:$tType]: ((((comm_monoid_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((plus_plus @ A) @ A2) @ (zero_zero @ A)) = A2))))))).
% 2.58/1.46 thf(fact_219_add_Ogroup__left__neutral, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A]: (((((plus_plus @ A) @ (zero_zero @ A)) @ A2) = A2))))))).
% 2.58/1.46 thf(fact_220_add__eq__0__iff__both__eq__0, axiom, (! [A:$tType]: ((((canoni770627133id_add @ A) @ (type2 @ A)) => (! [X:A,Y:A]: ((((((plus_plus @ A) @ X) @ Y) = (zero_zero @ A)) = ((X = (zero_zero @ A)) & (Y = (zero_zero @ A)))))))))).
% 2.58/1.46 thf(fact_221_add__mono__thms__linordered__field_I5_J, axiom, (! [A:$tType]: ((((ordere223160158up_add @ A) @ (type2 @ A)) => (! [I2:A,J4:A,K:A,L:A]: ((((((ord_less @ A) @ I2) @ J4) & (((ord_less @ A) @ K) @ L)) => (((ord_less @ A) @ (((plus_plus @ A) @ I2) @ K)) @ (((plus_plus @ A) @ J4) @ L))))))))).
% 2.58/1.46 thf(fact_222_add__mono__thms__linordered__field_I2_J, axiom, (! [A:$tType]: ((((ordere223160158up_add @ A) @ (type2 @ A)) => (! [I2:A,J4:A,K:A,L:A]: ((((I2 = J4) & (((ord_less @ A) @ K) @ L)) => (((ord_less @ A) @ (((plus_plus @ A) @ I2) @ K)) @ (((plus_plus @ A) @ J4) @ L))))))))).
% 2.58/1.46 thf(fact_223_add__mono__thms__linordered__field_I1_J, axiom, (! [A:$tType]: ((((ordere223160158up_add @ A) @ (type2 @ A)) => (! [I2:A,J4:A,K:A,L:A]: ((((((ord_less @ A) @ I2) @ J4) & (K = L)) => (((ord_less @ A) @ (((plus_plus @ A) @ I2) @ K)) @ (((plus_plus @ A) @ J4) @ L))))))))).
% 2.58/1.46 thf(fact_224_add__strict__mono, axiom, (! [A:$tType]: ((((strict2144017051up_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A,D:A]: (((((ord_less @ A) @ A2) @ B2) => ((((ord_less @ A) @ C) @ D) => (((ord_less @ A) @ (((plus_plus @ A) @ A2) @ C)) @ (((plus_plus @ A) @ B2) @ D)))))))))).
% 2.58/1.46 thf(fact_225_add__strict__left__mono, axiom, (! [A:$tType]: ((((ordere223160158up_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((ord_less @ A) @ A2) @ B2) => (((ord_less @ A) @ (((plus_plus @ A) @ C) @ A2)) @ (((plus_plus @ A) @ C) @ B2))))))))).
% 2.58/1.46 thf(fact_226_add__strict__right__mono, axiom, (! [A:$tType]: ((((ordere223160158up_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((ord_less @ A) @ A2) @ B2) => (((ord_less @ A) @ (((plus_plus @ A) @ A2) @ C)) @ (((plus_plus @ A) @ B2) @ C))))))))).
% 2.58/1.46 thf(fact_227_add__less__imp__less__left, axiom, (! [A:$tType]: ((((ordere236663937imp_le @ A) @ (type2 @ A)) => (! [C:A,A2:A,B2:A]: (((((ord_less @ A) @ (((plus_plus @ A) @ C) @ A2)) @ (((plus_plus @ A) @ C) @ B2)) => (((ord_less @ A) @ A2) @ B2)))))))).
% 2.58/1.46 thf(fact_228_add__less__imp__less__right, axiom, (! [A:$tType]: ((((ordere236663937imp_le @ A) @ (type2 @ A)) => (! [A2:A,C:A,B2:A]: (((((ord_less @ A) @ (((plus_plus @ A) @ A2) @ C)) @ (((plus_plus @ A) @ B2) @ C)) => (((ord_less @ A) @ A2) @ B2)))))))).
% 2.58/1.46 thf(fact_229_diff__eq__eq, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: ((((((minus_minus @ A) @ A2) @ B2) = C) = (A2 = (((plus_plus @ A) @ C) @ B2))))))))).
% 2.58/1.46 thf(fact_230_eq__diff__eq, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,C:A,B2:A]: (((A2 = (((minus_minus @ A) @ C) @ B2)) = ((((plus_plus @ A) @ A2) @ B2) = C)))))))).
% 2.58/1.46 thf(fact_231_add__diff__eq, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((plus_plus @ A) @ A2) @ (((minus_minus @ A) @ B2) @ C)) = (((minus_minus @ A) @ (((plus_plus @ A) @ A2) @ B2)) @ C)))))))).
% 2.58/1.46 thf(fact_232_diff__diff__eq2, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((minus_minus @ A) @ A2) @ (((minus_minus @ A) @ B2) @ C)) = (((minus_minus @ A) @ (((plus_plus @ A) @ A2) @ C)) @ B2)))))))).
% 2.58/1.46 thf(fact_233_diff__add__eq, axiom, (! [A:$tType]: ((((ab_group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((plus_plus @ A) @ (((minus_minus @ A) @ A2) @ B2)) @ C) = (((minus_minus @ A) @ (((plus_plus @ A) @ A2) @ C)) @ B2)))))))).
% 2.58/1.46 thf(fact_234_diff__add__eq__diff__diff__swap, axiom, (! [A:$tType]: ((((group_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((minus_minus @ A) @ A2) @ (((plus_plus @ A) @ B2) @ C)) = (((minus_minus @ A) @ (((minus_minus @ A) @ A2) @ C)) @ B2)))))))).
% 2.58/1.46 thf(fact_235_diff__diff__add, axiom, (! [A:$tType]: ((((cancel146912293up_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((minus_minus @ A) @ (((minus_minus @ A) @ A2) @ B2)) @ C) = (((minus_minus @ A) @ A2) @ (((plus_plus @ A) @ B2) @ C))))))))).
% 2.58/1.46 thf(fact_236_add__implies__diff, axiom, (! [A:$tType]: ((((cancel1352612707id_add @ A) @ (type2 @ A)) => (! [C:A,B2:A,A2:A]: ((((((plus_plus @ A) @ C) @ B2) = A2) => (C = (((minus_minus @ A) @ A2) @ B2))))))))).
% 2.58/1.46 thf(fact_237_add__Suc, axiom, (! [M:nat,N2:nat]: (((((plus_plus @ nat) @ (suc @ M)) @ N2) = (suc @ (((plus_plus @ nat) @ M) @ N2)))))).
% 2.58/1.46 thf(fact_238_add__Suc__shift, axiom, (! [M:nat,N2:nat]: (((((plus_plus @ nat) @ (suc @ M)) @ N2) = (((plus_plus @ nat) @ M) @ (suc @ N2)))))).
% 2.58/1.46 thf(fact_239_less__add__eq__less, axiom, (! [K:nat,L:nat,M:nat,N2:nat]: (((((ord_less @ nat) @ K) @ L) => (((((plus_plus @ nat) @ M) @ L) = (((plus_plus @ nat) @ K) @ N2)) => (((ord_less @ nat) @ M) @ N2)))))).
% 2.58/1.46 thf(fact_240_trans__less__add2, axiom, (! [I2:nat,J4:nat,M:nat]: (((((ord_less @ nat) @ I2) @ J4) => (((ord_less @ nat) @ I2) @ (((plus_plus @ nat) @ M) @ J4)))))).
% 2.58/1.46 thf(fact_241_trans__less__add1, axiom, (! [I2:nat,J4:nat,M:nat]: (((((ord_less @ nat) @ I2) @ J4) => (((ord_less @ nat) @ I2) @ (((plus_plus @ nat) @ J4) @ M)))))).
% 2.58/1.46 thf(fact_242_add__less__mono1, axiom, (! [I2:nat,J4:nat,K:nat]: (((((ord_less @ nat) @ I2) @ J4) => (((ord_less @ nat) @ (((plus_plus @ nat) @ I2) @ K)) @ (((plus_plus @ nat) @ J4) @ K)))))).
% 2.58/1.46 thf(fact_243_not__add__less2, axiom, (! [J4:nat,I2:nat]: ((~ ((((ord_less @ nat) @ (((plus_plus @ nat) @ J4) @ I2)) @ I2)))))).
% 2.58/1.46 thf(fact_244_not__add__less1, axiom, (! [I2:nat,J4:nat]: ((~ ((((ord_less @ nat) @ (((plus_plus @ nat) @ I2) @ J4)) @ I2)))))).
% 2.58/1.46 thf(fact_245_add__less__mono, axiom, (! [I2:nat,J4:nat,K:nat,L:nat]: (((((ord_less @ nat) @ I2) @ J4) => ((((ord_less @ nat) @ K) @ L) => (((ord_less @ nat) @ (((plus_plus @ nat) @ I2) @ K)) @ (((plus_plus @ nat) @ J4) @ L))))))).
% 2.58/1.46 thf(fact_246_add__lessD1, axiom, (! [I2:nat,J4:nat,K:nat]: (((((ord_less @ nat) @ (((plus_plus @ nat) @ I2) @ J4)) @ K) => (((ord_less @ nat) @ I2) @ K))))).
% 2.58/1.46 thf(fact_247_nat__add__left__cancel, axiom, (! [K:nat,M:nat,N2:nat]: ((((((plus_plus @ nat) @ K) @ M) = (((plus_plus @ nat) @ K) @ N2)) = (M = N2))))).
% 2.58/1.46 thf(fact_248_nat__add__right__cancel, axiom, (! [M:nat,K:nat,N2:nat]: ((((((plus_plus @ nat) @ M) @ K) = (((plus_plus @ nat) @ N2) @ K)) = (M = N2))))).
% 2.58/1.46 thf(fact_249_ab__semigroup__add__class_Oadd__ac_I1_J, axiom, (! [A:$tType]: ((((ab_semigroup_add @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((plus_plus @ A) @ (((plus_plus @ A) @ A2) @ B2)) @ C) = (((plus_plus @ A) @ A2) @ (((plus_plus @ A) @ B2) @ C))))))))).
% 2.58/1.46 thf(fact_250_is__num__normalize_I1_J, axiom, (! [A:$tType]: ((((neg_numeral @ A) @ (type2 @ A)) => (! [A2:A,B2:A,C:A]: (((((plus_plus @ A) @ (((plus_plus @ A) @ A2) @ B2)) @ C) = (((plus_plus @ A) @ A2) @ (((plus_plus @ A) @ B2) @ C))))))))).
% 2.58/1.46 thf(fact_251_add__mono__thms__linordered__semiring_I4_J, axiom, (! [A:$tType]: ((((ordere779506340up_add @ A) @ (type2 @ A)) => (! [I2:A,J4:A,K:A,L:A]: ((((I2 = J4) & (K = L)) => ((((plus_plus @ A) @ I2) @ K) = (((plus_plus @ A) @ J4) @ L))))))))).
% 2.58/1.46 thf(tcon_fun___Orderings_Oorder, axiom, (! [A5:$tType,A6:$tType]: ((((order @ A6) @ (type2 @ A6)) => ((order @ (A5 > A6)) @ (type2 @ (A5 > A6))))))).
% 2.58/1.46 thf(tcon_fun___Groups_Ominus, axiom, (! [A5:$tType,A6:$tType]: ((((minus @ A6) @ (type2 @ A6)) => ((minus @ (A5 > A6)) @ (type2 @ (A5 > A6))))))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__monoid__add__imp__le, axiom, ((ordere516151231imp_le @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ostrict__ordered__ab__semigroup__add, axiom, ((strict2144017051up_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Oordered__cancel__ab__semigroup__add, axiom, ((ordere223160158up_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add__imp__le, axiom, ((ordere236663937imp_le @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ocanonically__ordered__monoid__add, axiom, ((canoni770627133id_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add, axiom, ((ordere779506340up_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ocancel__ab__semigroup__add, axiom, ((cancel146912293up_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ocancel__comm__monoid__add, axiom, ((cancel1352612707id_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ocancel__semigroup__add, axiom, ((cancel_semigroup_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Rings_Olinordered__semidom, axiom, ((linordered_semidom @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ocomm__monoid__diff, axiom, ((comm_monoid_diff @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Oab__semigroup__add, axiom, ((ab_semigroup_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ocomm__monoid__add, axiom, ((comm_monoid_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Omonoid__add, axiom, ((monoid_add @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Orderings_Oorder_1, axiom, ((order @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ominus_2, axiom, ((minus @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_Nat_Onat___Groups_Ozero, axiom, ((zero @ nat) @ (type2 @ nat))).
% 2.58/1.46 thf(tcon_HOL_Obool___Orderings_Oorder_3, axiom, ((order @ $o) @ (type2 @ $o))).
% 2.58/1.46 thf(tcon_HOL_Obool___Groups_Ominus_4, axiom, ((minus @ $o) @ (type2 @ $o))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Ostrict__ordered__ab__semigroup__add_5, axiom, ((strict2144017051up_add @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Ocanonically__ordered__monoid__add_6, axiom, ((canoni770627133id_add @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Oordered__ab__semigroup__add_7, axiom, ((ordere779506340up_add @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Oab__semigroup__add_8, axiom, ((ab_semigroup_add @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Ocomm__monoid__add_9, axiom, ((comm_monoid_add @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Omonoid__add_10, axiom, ((monoid_add @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Orderings_Oorder_11, axiom, ((order @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Ominus_12, axiom, ((minus @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(tcon_Extended__Nat_Oenat___Groups_Ozero_13, axiom, ((zero @ extended_enat) @ (type2 @ extended_enat))).
% 2.58/1.46 thf(conj_0, conjecture, (((coindu2000965700_llast @ a) @ (((coindu191418589_ldrop @ a) @ (extended_enat2 @ (suc @ n_a))) @ xsa)) = ((coindu2000965700_llast @ a) @ xsa))).
% 2.58/1.46 % SZS output end ListOfTHF for /export/starexec/sandbox/tmp/tmp.9DJ3y5GnQc/DTF2DTF27976.p
% 2.58/1.46 ------------------------
% 2.58/1.49 ---- Cleaned THF ---
% 2.58/1.49 thf(ty_t_Coinductive__List__Mirabelle__kmikjhschf_Ollist,type,
% 2.58/1.49 coindu1593790203_llist: $tType > $tType ).
% 2.58/1.49
% 2.58/1.49 thf(ty_t_Extended__Nat_Oenat,type,
% 2.58/1.49 extended_enat: $tType ).
% 2.58/1.49
% 2.58/1.49 thf(ty_t_Nat_Onat,type,
% 2.58/1.49 nat: $tType ).
% 2.58/1.49
% 2.58/1.49 thf(ty_t_itself,type,
% 2.58/1.49 itself: $tType > $tType ).
% 2.58/1.49
% 2.58/1.49 thf(ty_tf_a,type,
% 2.58/1.49 a: $tType ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_HOL_Otype,type,
% 2.58/1.49 type:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ozero,type,
% 2.58/1.49 zero:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ominus,type,
% 2.58/1.49 minus:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Num_Oneg__numeral,type,
% 2.58/1.49 neg_numeral:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Orderings_Oorder,type,
% 2.58/1.49 order:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ogroup__add,type,
% 2.58/1.49 group_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Omonoid__add,type,
% 2.58/1.49 monoid_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Oab__group__add,type,
% 2.58/1.49 ab_group_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ocomm__monoid__add,type,
% 2.58/1.49 comm_monoid_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Oab__semigroup__add,type,
% 2.58/1.49 ab_semigroup_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ocomm__monoid__diff,type,
% 2.58/1.49 comm_monoid_diff:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Rings_Olinordered__semidom,type,
% 2.58/1.49 linordered_semidom:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ocancel__semigroup__add,type,
% 2.58/1.49 cancel_semigroup_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Oordered__ab__group__add,type,
% 2.58/1.49 ordered_ab_group_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ocancel__comm__monoid__add,type,
% 2.58/1.49 cancel1352612707id_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ocancel__ab__semigroup__add,type,
% 2.58/1.49 cancel146912293up_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Olinordered__ab__group__add,type,
% 2.58/1.49 linord219039673up_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Oordered__ab__semigroup__add,type,
% 2.58/1.49 ordere779506340up_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ocanonically__ordered__monoid__add,type,
% 2.58/1.49 canoni770627133id_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Oordered__ab__semigroup__add__imp__le,type,
% 2.58/1.49 ordere236663937imp_le:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Oordered__cancel__ab__semigroup__add,type,
% 2.58/1.49 ordere223160158up_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Ostrict__ordered__ab__semigroup__add,type,
% 2.58/1.49 strict2144017051up_add:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_cl_Groups_Oordered__ab__semigroup__monoid__add__imp__le,type,
% 2.58/1.49 ordere516151231imp_le:
% 2.58/1.49 !>[A: $tType] : ( ( itself @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olappend,type,
% 2.58/1.49 coindu268472904append:
% 2.58/1.49 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oldrop,type,
% 2.58/1.49 coindu191418589_ldrop:
% 2.58/1.49 !>[A: $tType] : ( extended_enat > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Oldropn,type,
% 2.58/1.49 coindu531130065ldropn:
% 2.58/1.49 !>[A: $tType] : ( nat > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollast,type,
% 2.58/1.49 coindu2000965700_llast:
% 2.58/1.49 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > A ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollength,type,
% 2.58/1.49 coindu1018505716length:
% 2.58/1.49 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > extended_enat ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Ollist_OLCons,type,
% 2.58/1.49 coindu1121789889_LCons:
% 2.58/1.49 !>[A: $tType] : ( A > ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olnth,type,
% 2.58/1.49 coindu749330388e_lnth:
% 2.58/1.49 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > nat > A ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Coinductive__List__Mirabelle__kmikjhschf_Olstrict__prefix,type,
% 2.58/1.49 coindu574146665prefix:
% 2.58/1.49 !>[A: $tType] : ( ( coindu1593790203_llist @ A ) > ( coindu1593790203_llist @ A ) > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Extended__Nat_Oenat,type,
% 2.58/1.49 extended_enat2: nat > extended_enat ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Extended__Nat_Oenat_Ocase__enat,type,
% 2.58/1.49 extended_case_enat:
% 2.58/1.49 !>[T: $tType] : ( ( nat > T ) > T > extended_enat > T ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Extended__Nat_Oenat_Orec__enat,type,
% 2.58/1.49 extended_rec_enat:
% 2.58/1.49 !>[T: $tType] : ( ( nat > T ) > T > extended_enat > T ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Extended__Nat_Oenat_Osize__enat,type,
% 2.58/1.49 extended_size_enat: extended_enat > nat ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Extended__Nat_Oinfinity__class_Oinfinity,type,
% 2.58/1.49 extend1396239628finity:
% 2.58/1.49 !>[A: $tType] : A ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Extended__Nat_Othe__enat,type,
% 2.58/1.49 extended_the_enat: extended_enat > nat ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Groups_Ominus__class_Ominus,type,
% 2.58/1.49 minus_minus:
% 2.58/1.49 !>[A: $tType] : ( A > A > A ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Groups_Oplus__class_Oplus,type,
% 2.58/1.49 plus_plus:
% 2.58/1.49 !>[A: $tType] : ( A > A > A ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Groups_Ozero__class_Ozero,type,
% 2.58/1.49 zero_zero:
% 2.58/1.49 !>[A: $tType] : A ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Nat_OSuc,type,
% 2.58/1.49 suc: nat > nat ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Nat_Osize__class_Osize,type,
% 2.58/1.49 size_size:
% 2.58/1.49 !>[A: $tType] : ( A > nat ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Orderings_Oord__class_Oless,type,
% 2.58/1.49 ord_less:
% 2.58/1.49 !>[A: $tType] : ( A > A > $o ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_c_Pure_Otype,type,
% 2.58/1.49 type2:
% 2.58/1.49 !>[A: $tType] : ( itself @ A ) ).
% 2.58/1.49
% 2.58/1.49 thf(sy_v_n,type,
% 2.58/1.49 n: extended_enat ).
% 2.58/1.49
% 2.58/1.49 thf(sy_v_n_H____,type,
% 2.58/1.49 n2: nat ).
% 2.58/1.49
% 2.58/1.49 thf(sy_v_n_Ha______,type,
% 2.58/1.49 n_a: nat ).
% 2.58/1.49
% 2.58/1.49 thf(sy_v_xs,type,
% 2.58/1.49 xs: coindu1593790203_llist @ a ).
% 2.58/1.49
% 2.58/1.49 thf(sy_v_xsa____,type,
% 2.58/1.49 xsa: coindu1593790203_llist @ a ).
% 2.58/1.49
% 2.58/1.49 thf(fact_0_n,axiom,
% 2.58/1.49 ( n
% 2.58/1.49 = ( extended_enat2 @ n2 ) ) ).
% 2.58/1.49
% 2.58/1.49 thf(fact_1_Suc_Ohyps,axiom,
% 2.58/1.49 ! [Xs: coindu1593790203_llist @ a] :
% 2.58/1.49 ( ( ord_less @ extended_enat @ ( extended_enat2 @ n_a ) @ ( coindu1018505716length @ a @ Xs ) )
% 2.58/1.50 => ( ( coindu2000965700_llast @ a @ ( coindu191418589_ldrop @ a @ ( extended_enat2 @ n_a ) @ Xs ) )
% 2.58/1.50 = ( coindu2000965700_llast @ a @ Xs ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_2_Suc_Oprems,axiom,
% 2.58/1.50 ord_less @ extended_enat @ ( extended_enat2 @ ( suc @ n_a ) ) @ ( coindu1018505716length @ a @ xsa ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_3__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062n_H_O_An_A_061_Aenat_An_H_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
% 2.58/1.50 ~ ! [N: nat] :
% 2.58/1.50 ( n
% 2.58/1.50 != ( extended_enat2 @ N ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_4_enat_Oinject,axiom,
% 2.58/1.50 ! [Nat: nat,Nat2: nat] :
% 2.58/1.50 ( ( ( extended_enat2 @ Nat )
% 2.58/1.50 = ( extended_enat2 @ Nat2 ) )
% 2.58/1.50 = ( Nat = Nat2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_5_nat_Oinject,axiom,
% 2.58/1.50 ! [X2: nat,Y2: nat] :
% 2.58/1.50 ( ( ( suc @ X2 )
% 2.58/1.50 = ( suc @ Y2 ) )
% 2.58/1.50 = ( X2 = Y2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_6_old_Onat_Oinject,axiom,
% 2.58/1.50 ! [Nat: nat,Nat2: nat] :
% 2.58/1.50 ( ( ( suc @ Nat )
% 2.58/1.50 = ( suc @ Nat2 ) )
% 2.58/1.50 = ( Nat = Nat2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_7_assms,axiom,
% 2.58/1.50 ord_less @ extended_enat @ n @ ( coindu1018505716length @ a @ xs ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_8_Suc__inject,axiom,
% 2.58/1.50 ! [X: nat,Y: nat] :
% 2.58/1.50 ( ( ( suc @ X )
% 2.58/1.50 = ( suc @ Y ) )
% 2.58/1.50 => ( X = Y ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_9_n__not__Suc__n,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ( N2
% 2.58/1.50 != ( suc @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_10_ldrop__enat,axiom,
% 2.58/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( coindu191418589_ldrop @ A @ ( extended_enat2 @ N2 ) @ Xs )
% 2.58/1.50 = ( coindu531130065ldropn @ A @ N2 @ Xs ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_11_enat_Osimps_I6_J,axiom,
% 2.58/1.50 ! [T: $tType,F1: nat > T,F2: T,Nat: nat] :
% 2.58/1.50 ( ( extended_rec_enat @ T @ F1 @ F2 @ ( extended_enat2 @ Nat ) )
% 2.58/1.50 = ( F1 @ Nat ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_12_chain__incr,axiom,
% 2.58/1.50 ! [A: $tType,Y3: A > extended_enat,K: nat] :
% 2.58/1.50 ( ! [I: A] :
% 2.58/1.50 ? [J: A] : ( ord_less @ extended_enat @ ( Y3 @ I ) @ ( Y3 @ J ) )
% 2.58/1.50 => ? [J2: A] : ( ord_less @ extended_enat @ ( extended_enat2 @ K ) @ ( Y3 @ J2 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_13_enat__iless,axiom,
% 2.58/1.50 ! [N2: extended_enat,M: nat] :
% 2.58/1.50 ( ( ord_less @ extended_enat @ N2 @ ( extended_enat2 @ M ) )
% 2.58/1.50 => ? [K2: nat] :
% 2.58/1.50 ( N2
% 2.58/1.50 = ( extended_enat2 @ K2 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_14_ldrop__0,axiom,
% 2.58/1.50 ! [B: $tType,Xs: coindu1593790203_llist @ B] :
% 2.58/1.50 ( ( coindu191418589_ldrop @ B @ ( zero_zero @ extended_enat ) @ Xs )
% 2.58/1.50 = Xs ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_15_i0__less,axiom,
% 2.58/1.50 ! [N2: extended_enat] :
% 2.58/1.50 ( ( ord_less @ extended_enat @ ( zero_zero @ extended_enat ) @ N2 )
% 2.58/1.50 = ( N2
% 2.58/1.50 != ( zero_zero @ extended_enat ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_16_not__iless0,axiom,
% 2.58/1.50 ! [N2: extended_enat] :
% 2.58/1.50 ~ ( ord_less @ extended_enat @ N2 @ ( zero_zero @ extended_enat ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_17_enat__less__induct,axiom,
% 2.58/1.50 ! [P: extended_enat > $o,N2: extended_enat] :
% 2.58/1.50 ( ! [N3: extended_enat] :
% 2.58/1.50 ( ! [M2: extended_enat] :
% 2.58/1.50 ( ( ord_less @ extended_enat @ M2 @ N3 )
% 2.58/1.50 => ( P @ M2 ) )
% 2.58/1.50 => ( P @ N3 ) )
% 2.58/1.50 => ( P @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_18_lift__Suc__mono__less__iff,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( order @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [F: nat > A,N2: nat,M: nat] :
% 2.58/1.50 ( ! [N3: nat] : ( ord_less @ A @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
% 2.58/1.50 => ( ( ord_less @ A @ ( F @ N2 ) @ ( F @ M ) )
% 2.58/1.50 = ( ord_less @ nat @ N2 @ M ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_19_lift__Suc__mono__less,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( order @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [F: nat > A,N2: nat,N4: nat] :
% 2.58/1.50 ( ! [N3: nat] : ( ord_less @ A @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
% 2.58/1.50 => ( ( ord_less @ nat @ N2 @ N4 )
% 2.58/1.50 => ( ord_less @ A @ ( F @ N2 ) @ ( F @ N4 ) ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_20_llast__ldropn,axiom,
% 2.58/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.58/1.50 => ( ( coindu2000965700_llast @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) )
% 2.58/1.50 = ( coindu2000965700_llast @ A @ Xs ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_21_not__gr__zero,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [N2: A] :
% 2.58/1.50 ( ( ~ ( ord_less @ A @ ( zero_zero @ A ) @ N2 ) )
% 2.58/1.50 = ( N2
% 2.58/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_22_less__numeral__extra_I3_J,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( linordered_semidom @ A @ ( type2 @ A ) )
% 2.58/1.50 => ~ ( ord_less @ A @ ( zero_zero @ A ) @ ( zero_zero @ A ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_23_gr__zeroI,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [N2: A] :
% 2.58/1.50 ( ( N2
% 2.58/1.50 != ( zero_zero @ A ) )
% 2.58/1.50 => ( ord_less @ A @ ( zero_zero @ A ) @ N2 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_24_not__less__zero,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [N2: A] :
% 2.58/1.50 ~ ( ord_less @ A @ N2 @ ( zero_zero @ A ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_25_gr__implies__not__zero,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [M: A,N2: A] :
% 2.58/1.50 ( ( ord_less @ A @ M @ N2 )
% 2.58/1.50 => ( N2
% 2.58/1.50 != ( zero_zero @ A ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_26_zero__less__iff__neq__zero,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [N2: A] :
% 2.58/1.50 ( ( ord_less @ A @ ( zero_zero @ A ) @ N2 )
% 2.58/1.50 = ( N2
% 2.58/1.50 != ( zero_zero @ A ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_27_ldropn__eq__LConsD,axiom,
% 2.58/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( ( coindu531130065ldropn @ A @ N2 @ Xs )
% 2.58/1.50 = ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 2.58/1.50 => ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_28_enat_Osimps_I4_J,axiom,
% 2.58/1.50 ! [T: $tType,F1: nat > T,F2: T,Nat: nat] :
% 2.58/1.50 ( ( extended_case_enat @ T @ F1 @ F2 @ ( extended_enat2 @ Nat ) )
% 2.58/1.50 = ( F1 @ Nat ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_29_llength__ldropn,axiom,
% 2.58/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( coindu1018505716length @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) )
% 2.58/1.50 = ( minus_minus @ extended_enat @ ( coindu1018505716length @ A @ Xs ) @ ( extended_enat2 @ N2 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_30_neq0__conv,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ( ( N2
% 2.58/1.50 != ( zero_zero @ nat ) )
% 2.58/1.50 = ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_31_llist_Oinject,axiom,
% 2.58/1.50 ! [A: $tType,X21: A,X22: coindu1593790203_llist @ A,Y21: A,Y22: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( ( coindu1121789889_LCons @ A @ X21 @ X22 )
% 2.58/1.50 = ( coindu1121789889_LCons @ A @ Y21 @ Y22 ) )
% 2.58/1.50 = ( ( X21 = Y21 )
% 2.58/1.50 & ( X22 = Y22 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_32_ldropn__0,axiom,
% 2.58/1.50 ! [A: $tType,Xs: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( coindu531130065ldropn @ A @ ( zero_zero @ nat ) @ Xs )
% 2.58/1.50 = Xs ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_33_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A] :
% 2.58/1.50 ( ( minus_minus @ A @ A2 @ A2 )
% 2.58/1.50 = ( zero_zero @ A ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_34_diff__zero,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A] :
% 2.58/1.50 ( ( minus_minus @ A @ A2 @ ( zero_zero @ A ) )
% 2.58/1.50 = A2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_35_zero__diff,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( comm_monoid_diff @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A] :
% 2.58/1.50 ( ( minus_minus @ A @ ( zero_zero @ A ) @ A2 )
% 2.58/1.50 = ( zero_zero @ A ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_36_diff__0__right,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A] :
% 2.58/1.50 ( ( minus_minus @ A @ A2 @ ( zero_zero @ A ) )
% 2.58/1.50 = A2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_37_diff__self,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A] :
% 2.58/1.50 ( ( minus_minus @ A @ A2 @ A2 )
% 2.58/1.50 = ( zero_zero @ A ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_38_zero__less__Suc,axiom,
% 2.58/1.50 ! [N2: nat] : ( ord_less @ nat @ ( zero_zero @ nat ) @ ( suc @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_39_less__Suc0,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ N2 @ ( suc @ ( zero_zero @ nat ) ) )
% 2.58/1.50 = ( N2
% 2.58/1.50 = ( zero_zero @ nat ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_40_lessI,axiom,
% 2.58/1.50 ! [N2: nat] : ( ord_less @ nat @ N2 @ ( suc @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_41_Suc__mono,axiom,
% 2.58/1.50 ! [M: nat,N2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ M @ N2 )
% 2.58/1.50 => ( ord_less @ nat @ ( suc @ M ) @ ( suc @ N2 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_42_Suc__less__eq,axiom,
% 2.58/1.50 ! [M: nat,N2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ ( suc @ M ) @ ( suc @ N2 ) )
% 2.58/1.50 = ( ord_less @ nat @ M @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_43_ext,axiom,
% 2.58/1.50 ! [B: $tType,A: $tType,F: A > B,G: A > B] :
% 2.58/1.50 ( ! [X3: A] :
% 2.58/1.50 ( ( F @ X3 )
% 2.58/1.50 = ( G @ X3 ) )
% 2.58/1.50 => ( F = G ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_44_idiff__enat__0__right,axiom,
% 2.58/1.50 ! [N2: extended_enat] :
% 2.58/1.50 ( ( minus_minus @ extended_enat @ N2 @ ( extended_enat2 @ ( zero_zero @ nat ) ) )
% 2.58/1.50 = N2 ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_45_idiff__enat__0,axiom,
% 2.58/1.50 ! [N2: extended_enat] :
% 2.58/1.50 ( ( minus_minus @ extended_enat @ ( extended_enat2 @ ( zero_zero @ nat ) ) @ N2 )
% 2.58/1.50 = ( extended_enat2 @ ( zero_zero @ nat ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_46_idiff__0__right,axiom,
% 2.58/1.50 ! [N2: extended_enat] :
% 2.58/1.50 ( ( minus_minus @ extended_enat @ N2 @ ( zero_zero @ extended_enat ) )
% 2.58/1.50 = N2 ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_47_idiff__0,axiom,
% 2.58/1.50 ! [N2: extended_enat] :
% 2.58/1.50 ( ( minus_minus @ extended_enat @ ( zero_zero @ extended_enat ) @ N2 )
% 2.58/1.50 = ( zero_zero @ extended_enat ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_48_llast__LCons2,axiom,
% 2.58/1.50 ! [A: $tType,X: A,Y: A,Xs: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ X @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) )
% 2.58/1.50 = ( coindu2000965700_llast @ A @ ( coindu1121789889_LCons @ A @ Y @ Xs ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_49_diff__gt__0__iff__gt,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A,B2: A] :
% 2.58/1.50 ( ( ord_less @ A @ ( zero_zero @ A ) @ ( minus_minus @ A @ A2 @ B2 ) )
% 2.58/1.50 = ( ord_less @ A @ B2 @ A2 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_50_enat__ord__simps_I2_J,axiom,
% 2.58/1.50 ! [M: nat,N2: nat] :
% 2.58/1.50 ( ( ord_less @ extended_enat @ ( extended_enat2 @ M ) @ ( extended_enat2 @ N2 ) )
% 2.58/1.50 = ( ord_less @ nat @ M @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_51_ldropn__Suc__LCons,axiom,
% 2.58/1.50 ! [A: $tType,N2: nat,X: A,Xs: coindu1593790203_llist @ A] :
% 2.58/1.50 ( ( coindu531130065ldropn @ A @ ( suc @ N2 ) @ ( coindu1121789889_LCons @ A @ X @ Xs ) )
% 2.58/1.50 = ( coindu531130065ldropn @ A @ N2 @ Xs ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_52_gr0I,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ( ( N2
% 2.58/1.50 != ( zero_zero @ nat ) )
% 2.58/1.50 => ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_53_not__gr0,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ( ( ~ ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) )
% 2.58/1.50 = ( N2
% 2.58/1.50 = ( zero_zero @ nat ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_54_not__less0,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ~ ( ord_less @ nat @ N2 @ ( zero_zero @ nat ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_55_less__zeroE,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ~ ( ord_less @ nat @ N2 @ ( zero_zero @ nat ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_56_nat__neq__iff,axiom,
% 2.58/1.50 ! [M: nat,N2: nat] :
% 2.58/1.50 ( ( M != N2 )
% 2.58/1.50 = ( ( ord_less @ nat @ M @ N2 )
% 2.58/1.50 | ( ord_less @ nat @ N2 @ M ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_57_less__not__refl,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ~ ( ord_less @ nat @ N2 @ N2 ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_58_less__not__refl2,axiom,
% 2.58/1.50 ! [N2: nat,M: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ N2 @ M )
% 2.58/1.50 => ( M != N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_59_less__not__refl3,axiom,
% 2.58/1.50 ! [S: nat,T2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ S @ T2 )
% 2.58/1.50 => ( S != T2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_60_measure__induct,axiom,
% 2.58/1.50 ! [A: $tType,F: A > nat,P: A > $o,A2: A] :
% 2.58/1.50 ( ! [X3: A] :
% 2.58/1.50 ( ! [Y4: A] :
% 2.58/1.50 ( ( ord_less @ nat @ ( F @ Y4 ) @ ( F @ X3 ) )
% 2.58/1.50 => ( P @ Y4 ) )
% 2.58/1.50 => ( P @ X3 ) )
% 2.58/1.50 => ( P @ A2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_61_gr__implies__not0,axiom,
% 2.58/1.50 ! [M: nat,N2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ M @ N2 )
% 2.58/1.50 => ( N2
% 2.58/1.50 != ( zero_zero @ nat ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_62_less__irrefl__nat,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ~ ( ord_less @ nat @ N2 @ N2 ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_63_nat__less__induct,axiom,
% 2.58/1.50 ! [P: nat > $o,N2: nat] :
% 2.58/1.50 ( ! [N3: nat] :
% 2.58/1.50 ( ! [M2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ M2 @ N3 )
% 2.58/1.50 => ( P @ M2 ) )
% 2.58/1.50 => ( P @ N3 ) )
% 2.58/1.50 => ( P @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_64_infinite__descent,axiom,
% 2.58/1.50 ! [P: nat > $o,N2: nat] :
% 2.58/1.50 ( ! [N3: nat] :
% 2.58/1.50 ( ~ ( P @ N3 )
% 2.58/1.50 => ? [M2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ M2 @ N3 )
% 2.58/1.50 & ~ ( P @ M2 ) ) )
% 2.58/1.50 => ( P @ N2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_65_infinite__descent0,axiom,
% 2.58/1.50 ! [P: nat > $o,N2: nat] :
% 2.58/1.50 ( ( P @ ( zero_zero @ nat ) )
% 2.58/1.50 => ( ! [N3: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N3 )
% 2.58/1.50 => ( ~ ( P @ N3 )
% 2.58/1.50 => ? [M2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ M2 @ N3 )
% 2.58/1.50 & ~ ( P @ M2 ) ) ) )
% 2.58/1.50 => ( P @ N2 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_66_linorder__neqE__nat,axiom,
% 2.58/1.50 ! [X: nat,Y: nat] :
% 2.58/1.50 ( ( X != Y )
% 2.58/1.50 => ( ~ ( ord_less @ nat @ X @ Y )
% 2.58/1.50 => ( ord_less @ nat @ Y @ X ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_67_less__nat__zero__code,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ~ ( ord_less @ nat @ N2 @ ( zero_zero @ nat ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_68_measure__induct__rule,axiom,
% 2.58/1.50 ! [A: $tType,F: A > nat,P: A > $o,A2: A] :
% 2.58/1.50 ( ! [X3: A] :
% 2.58/1.50 ( ! [Y4: A] :
% 2.58/1.50 ( ( ord_less @ nat @ ( F @ Y4 ) @ ( F @ X3 ) )
% 2.58/1.50 => ( P @ Y4 ) )
% 2.58/1.50 => ( P @ X3 ) )
% 2.58/1.50 => ( P @ A2 ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_69_infinite__descent__measure,axiom,
% 2.58/1.50 ! [A: $tType,P: A > $o,V: A > nat,X: A] :
% 2.58/1.50 ( ! [X3: A] :
% 2.58/1.50 ( ~ ( P @ X3 )
% 2.58/1.50 => ? [Y4: A] :
% 2.58/1.50 ( ( ord_less @ nat @ ( V @ Y4 ) @ ( V @ X3 ) )
% 2.58/1.50 & ~ ( P @ Y4 ) ) )
% 2.58/1.50 => ( P @ X ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_70_infinite__descent0__measure,axiom,
% 2.58/1.50 ! [A: $tType,V: A > nat,P: A > $o,X: A] :
% 2.58/1.50 ( ! [X3: A] :
% 2.58/1.50 ( ( ( V @ X3 )
% 2.58/1.50 = ( zero_zero @ nat ) )
% 2.58/1.50 => ( P @ X3 ) )
% 2.58/1.50 => ( ! [X3: A] :
% 2.58/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ ( V @ X3 ) )
% 2.58/1.50 => ( ~ ( P @ X3 )
% 2.58/1.50 => ? [Y4: A] :
% 2.58/1.50 ( ( ord_less @ nat @ ( V @ Y4 ) @ ( V @ X3 ) )
% 2.58/1.50 & ~ ( P @ Y4 ) ) ) )
% 2.58/1.50 => ( P @ X ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_71_diff__right__commute,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A,C: A,B2: A] :
% 2.58/1.50 ( ( minus_minus @ A @ ( minus_minus @ A @ A2 @ C ) @ B2 )
% 2.58/1.50 = ( minus_minus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ C ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_72_diff__eq__diff__eq,axiom,
% 2.58/1.50 ! [A: $tType] :
% 2.58/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.58/1.50 => ! [A2: A,B2: A,C: A,D: A] :
% 2.58/1.50 ( ( ( minus_minus @ A @ A2 @ B2 )
% 2.58/1.50 = ( minus_minus @ A @ C @ D ) )
% 2.58/1.50 => ( ( A2 = B2 )
% 2.58/1.50 = ( C = D ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_73_less__Suc__eq__0__disj,axiom,
% 2.58/1.50 ! [M: nat,N2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ M @ ( suc @ N2 ) )
% 2.58/1.50 = ( ( M
% 2.58/1.50 = ( zero_zero @ nat ) )
% 2.58/1.50 | ? [J3: nat] :
% 2.58/1.50 ( ( M
% 2.58/1.50 = ( suc @ J3 ) )
% 2.58/1.50 & ( ord_less @ nat @ J3 @ N2 ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_74_gr0__implies__Suc,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 2.58/1.50 => ? [M3: nat] :
% 2.58/1.50 ( N2
% 2.58/1.50 = ( suc @ M3 ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_75_gr0__conv__Suc,axiom,
% 2.58/1.50 ! [N2: nat] :
% 2.58/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 2.58/1.50 = ( ? [M4: nat] :
% 2.58/1.50 ( N2
% 2.58/1.50 = ( suc @ M4 ) ) ) ) ).
% 2.58/1.50
% 2.58/1.50 thf(fact_76_eq__iff__diff__eq__0,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ( ( ^ [Y5: A,Z: A] : ( Y5 = Z ) )
% 2.76/1.50 = ( ^ [A3: A,B3: A] :
% 2.76/1.50 ( ( minus_minus @ A @ A3 @ B3 )
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_77_diff__strict__right__mono,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( ord_less @ A @ A2 @ B2 )
% 2.76/1.50 => ( ord_less @ A @ ( minus_minus @ A @ A2 @ C ) @ ( minus_minus @ A @ B2 @ C ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_78_diff__strict__left__mono,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [B2: A,A2: A,C: A] :
% 2.76/1.50 ( ( ord_less @ A @ B2 @ A2 )
% 2.76/1.50 => ( ord_less @ A @ ( minus_minus @ A @ C @ A2 ) @ ( minus_minus @ A @ C @ B2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_79_diff__eq__diff__less,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A,D: A] :
% 2.76/1.50 ( ( ( minus_minus @ A @ A2 @ B2 )
% 2.76/1.50 = ( minus_minus @ A @ C @ D ) )
% 2.76/1.50 => ( ( ord_less @ A @ A2 @ B2 )
% 2.76/1.50 = ( ord_less @ A @ C @ D ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_80_diff__strict__mono,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,D: A,C: A] :
% 2.76/1.50 ( ( ord_less @ A @ A2 @ B2 )
% 2.76/1.50 => ( ( ord_less @ A @ D @ C )
% 2.76/1.50 => ( ord_less @ A @ ( minus_minus @ A @ A2 @ C ) @ ( minus_minus @ A @ B2 @ D ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_81_lessE,axiom,
% 2.76/1.50 ! [I2: nat,K: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ K )
% 2.76/1.50 => ( ( K
% 2.76/1.50 != ( suc @ I2 ) )
% 2.76/1.50 => ~ ! [J2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J2 )
% 2.76/1.50 => ( K
% 2.76/1.50 != ( suc @ J2 ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_82_Suc__lessD,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( suc @ M ) @ N2 )
% 2.76/1.50 => ( ord_less @ nat @ M @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_83_Suc__lessE,axiom,
% 2.76/1.50 ! [I2: nat,K: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( suc @ I2 ) @ K )
% 2.76/1.50 => ~ ! [J2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J2 )
% 2.76/1.50 => ( K
% 2.76/1.50 != ( suc @ J2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_84_Suc__lessI,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ M @ N2 )
% 2.76/1.50 => ( ( ( suc @ M )
% 2.76/1.50 != N2 )
% 2.76/1.50 => ( ord_less @ nat @ ( suc @ M ) @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_85_less__SucE,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ M @ ( suc @ N2 ) )
% 2.76/1.50 => ( ~ ( ord_less @ nat @ M @ N2 )
% 2.76/1.50 => ( M = N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_86_less__SucI,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ M @ N2 )
% 2.76/1.50 => ( ord_less @ nat @ M @ ( suc @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_87_less__Suc__eq,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ M @ ( suc @ N2 ) )
% 2.76/1.50 = ( ( ord_less @ nat @ M @ N2 )
% 2.76/1.50 | ( M = N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_88_not__less__eq,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ~ ( ord_less @ nat @ M @ N2 ) )
% 2.76/1.50 = ( ord_less @ nat @ N2 @ ( suc @ M ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_89_Suc__less__eq2,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( suc @ N2 ) @ M )
% 2.76/1.50 = ( ? [M5: nat] :
% 2.76/1.50 ( ( M
% 2.76/1.50 = ( suc @ M5 ) )
% 2.76/1.50 & ( ord_less @ nat @ N2 @ M5 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_90_less__antisym,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ~ ( ord_less @ nat @ N2 @ M )
% 2.76/1.50 => ( ( ord_less @ nat @ N2 @ ( suc @ M ) )
% 2.76/1.50 => ( M = N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_91_Suc__less__SucD,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( suc @ M ) @ ( suc @ N2 ) )
% 2.76/1.50 => ( ord_less @ nat @ M @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_92_less__trans__Suc,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,K: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J4 )
% 2.76/1.50 => ( ( ord_less @ nat @ J4 @ K )
% 2.76/1.50 => ( ord_less @ nat @ ( suc @ I2 ) @ K ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_93_less__Suc__induct,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,P: nat > nat > $o] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J4 )
% 2.76/1.50 => ( ! [I: nat] : ( P @ I @ ( suc @ I ) )
% 2.76/1.50 => ( ! [I: nat,J2: nat,K2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I @ J2 )
% 2.76/1.50 => ( ( ord_less @ nat @ J2 @ K2 )
% 2.76/1.50 => ( ( P @ I @ J2 )
% 2.76/1.50 => ( ( P @ J2 @ K2 )
% 2.76/1.50 => ( P @ I @ K2 ) ) ) ) )
% 2.76/1.50 => ( P @ I2 @ J4 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_94_strict__inc__induct,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,P: nat > $o] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J4 )
% 2.76/1.50 => ( ! [I: nat] :
% 2.76/1.50 ( ( J4
% 2.76/1.50 = ( suc @ I ) )
% 2.76/1.50 => ( P @ I ) )
% 2.76/1.50 => ( ! [I: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I @ J4 )
% 2.76/1.50 => ( ( P @ ( suc @ I ) )
% 2.76/1.50 => ( P @ I ) ) )
% 2.76/1.50 => ( P @ I2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_95_not__less__less__Suc__eq,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ~ ( ord_less @ nat @ N2 @ M )
% 2.76/1.50 => ( ( ord_less @ nat @ N2 @ ( suc @ M ) )
% 2.76/1.50 = ( N2 = M ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_96_less__iff__diff__less__0,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordered_ab_group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ( ( ord_less @ A )
% 2.76/1.50 = ( ^ [A3: A,B3: A] : ( ord_less @ A @ ( minus_minus @ A @ A3 @ B3 ) @ ( zero_zero @ A ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_97_nat_Odistinct_I1_J,axiom,
% 2.76/1.50 ! [X2: nat] :
% 2.76/1.50 ( ( zero_zero @ nat )
% 2.76/1.50 != ( suc @ X2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_98_old_Onat_Odistinct_I2_J,axiom,
% 2.76/1.50 ! [Nat3: nat] :
% 2.76/1.50 ( ( suc @ Nat3 )
% 2.76/1.50 != ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_99_old_Onat_Odistinct_I1_J,axiom,
% 2.76/1.50 ! [Nat2: nat] :
% 2.76/1.50 ( ( zero_zero @ nat )
% 2.76/1.50 != ( suc @ Nat2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_100_nat_OdiscI,axiom,
% 2.76/1.50 ! [Nat: nat,X2: nat] :
% 2.76/1.50 ( ( Nat
% 2.76/1.50 = ( suc @ X2 ) )
% 2.76/1.50 => ( Nat
% 2.76/1.50 != ( zero_zero @ nat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_101_nat__induct,axiom,
% 2.76/1.50 ! [P: nat > $o,N2: nat] :
% 2.76/1.50 ( ( P @ ( zero_zero @ nat ) )
% 2.76/1.50 => ( ! [N3: nat] :
% 2.76/1.50 ( ( P @ N3 )
% 2.76/1.50 => ( P @ ( suc @ N3 ) ) )
% 2.76/1.50 => ( P @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_102_diff__induct,axiom,
% 2.76/1.50 ! [P: nat > nat > $o,M: nat,N2: nat] :
% 2.76/1.50 ( ! [X3: nat] : ( P @ X3 @ ( zero_zero @ nat ) )
% 2.76/1.50 => ( ! [Y6: nat] : ( P @ ( zero_zero @ nat ) @ ( suc @ Y6 ) )
% 2.76/1.50 => ( ! [X3: nat,Y6: nat] :
% 2.76/1.50 ( ( P @ X3 @ Y6 )
% 2.76/1.50 => ( P @ ( suc @ X3 ) @ ( suc @ Y6 ) ) )
% 2.76/1.50 => ( P @ M @ N2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_103_zero__induct,axiom,
% 2.76/1.50 ! [P: nat > $o,K: nat] :
% 2.76/1.50 ( ( P @ K )
% 2.76/1.50 => ( ! [N3: nat] :
% 2.76/1.50 ( ( P @ ( suc @ N3 ) )
% 2.76/1.50 => ( P @ N3 ) )
% 2.76/1.50 => ( P @ ( zero_zero @ nat ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_104_Suc__neq__Zero,axiom,
% 2.76/1.50 ! [M: nat] :
% 2.76/1.50 ( ( suc @ M )
% 2.76/1.50 != ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_105_Zero__neq__Suc,axiom,
% 2.76/1.50 ! [M: nat] :
% 2.76/1.50 ( ( zero_zero @ nat )
% 2.76/1.50 != ( suc @ M ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_106_Zero__not__Suc,axiom,
% 2.76/1.50 ! [M: nat] :
% 2.76/1.50 ( ( zero_zero @ nat )
% 2.76/1.50 != ( suc @ M ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_107_old_Onat_Oexhaust,axiom,
% 2.76/1.50 ! [Y: nat] :
% 2.76/1.50 ( ( Y
% 2.76/1.50 != ( zero_zero @ nat ) )
% 2.76/1.50 => ~ ! [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 != ( suc @ Nat4 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_108_old_Onat_Oinducts,axiom,
% 2.76/1.50 ! [P: nat > $o,Nat: nat] :
% 2.76/1.50 ( ( P @ ( zero_zero @ nat ) )
% 2.76/1.50 => ( ! [Nat4: nat] :
% 2.76/1.50 ( ( P @ Nat4 )
% 2.76/1.50 => ( P @ ( suc @ Nat4 ) ) )
% 2.76/1.50 => ( P @ Nat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_109_not0__implies__Suc,axiom,
% 2.76/1.50 ! [N2: nat] :
% 2.76/1.50 ( ( N2
% 2.76/1.50 != ( zero_zero @ nat ) )
% 2.76/1.50 => ? [M3: nat] :
% 2.76/1.50 ( N2
% 2.76/1.50 = ( suc @ M3 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_110_less__enatE,axiom,
% 2.76/1.50 ! [N2: extended_enat,M: nat] :
% 2.76/1.50 ( ( ord_less @ extended_enat @ N2 @ ( extended_enat2 @ M ) )
% 2.76/1.50 => ~ ! [K2: nat] :
% 2.76/1.50 ( ( N2
% 2.76/1.50 = ( extended_enat2 @ K2 ) )
% 2.76/1.50 => ~ ( ord_less @ nat @ K2 @ M ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_111_zero__enat__def,axiom,
% 2.76/1.50 ( ( zero_zero @ extended_enat )
% 2.76/1.50 = ( extended_enat2 @ ( zero_zero @ nat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_112_enat__0__iff_I1_J,axiom,
% 2.76/1.50 ! [X: nat] :
% 2.76/1.50 ( ( ( extended_enat2 @ X )
% 2.76/1.50 = ( zero_zero @ extended_enat ) )
% 2.76/1.50 = ( X
% 2.76/1.50 = ( zero_zero @ nat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_113_enat__0__iff_I2_J,axiom,
% 2.76/1.50 ! [X: nat] :
% 2.76/1.50 ( ( ( zero_zero @ extended_enat )
% 2.76/1.50 = ( extended_enat2 @ X ) )
% 2.76/1.50 = ( X
% 2.76/1.50 = ( zero_zero @ nat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_114_zero__reorient,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( zero @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [X: A] :
% 2.76/1.50 ( ( ( zero_zero @ A )
% 2.76/1.50 = X )
% 2.76/1.50 = ( X
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_115_ldrop__eq__LConsD,axiom,
% 2.76/1.50 ! [A: $tType,N2: extended_enat,Xs: coindu1593790203_llist @ A,Y: A,Ys: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ( coindu191418589_ldrop @ A @ N2 @ Xs )
% 2.76/1.50 = ( coindu1121789889_LCons @ A @ Y @ Ys ) )
% 2.76/1.50 => ( ord_less @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_116_case__enat__0,axiom,
% 2.76/1.50 ! [A: $tType,F: nat > A,I2: A] :
% 2.76/1.50 ( ( extended_case_enat @ A @ F @ I2 @ ( zero_zero @ extended_enat ) )
% 2.76/1.50 = ( F @ ( zero_zero @ nat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_117_minus__apply,axiom,
% 2.76/1.50 ! [B: $tType,A: $tType] :
% 2.76/1.50 ( ( minus @ B @ ( type2 @ B ) )
% 2.76/1.50 => ( ( minus_minus @ ( A > B ) )
% 2.76/1.50 = ( ^ [A4: A > B,B4: A > B,X4: A] : ( minus_minus @ B @ ( A4 @ X4 ) @ ( B4 @ X4 ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_118_enat_Osize_I1_J,axiom,
% 2.76/1.50 ! [Nat: nat] :
% 2.76/1.50 ( ( extended_size_enat @ ( extended_enat2 @ Nat ) )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_119_ldropn__Suc__conv__ldropn,axiom,
% 2.76/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu1121789889_LCons @ A @ ( coindu749330388e_lnth @ A @ Xs @ N2 ) @ ( coindu531130065ldropn @ A @ ( suc @ N2 ) @ Xs ) )
% 2.76/1.50 = ( coindu531130065ldropn @ A @ N2 @ Xs ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_120_enat_Osize_I3_J,axiom,
% 2.76/1.50 ! [Nat: nat] :
% 2.76/1.50 ( ( size_size @ extended_enat @ ( extended_enat2 @ Nat ) )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_121_llength__ldrop,axiom,
% 2.76/1.50 ! [A: $tType,N2: extended_enat,Xs: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ( N2
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( ( coindu1018505716length @ A @ ( coindu191418589_ldrop @ A @ N2 @ Xs ) )
% 2.76/1.50 = ( zero_zero @ extended_enat ) ) )
% 2.76/1.50 & ( ( N2
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( ( coindu1018505716length @ A @ ( coindu191418589_ldrop @ A @ N2 @ Xs ) )
% 2.76/1.50 = ( minus_minus @ extended_enat @ ( coindu1018505716length @ A @ Xs ) @ N2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_122_ldrop__lappend,axiom,
% 2.76/1.50 ! [A: $tType,N2: extended_enat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ( ord_less @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu191418589_ldrop @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 2.76/1.50 = ( coindu268472904append @ A @ ( coindu191418589_ldrop @ A @ N2 @ Xs ) @ Ys ) ) )
% 2.76/1.50 & ( ~ ( ord_less @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu191418589_ldrop @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 2.76/1.50 = ( coindu191418589_ldrop @ A @ ( minus_minus @ extended_enat @ N2 @ ( coindu1018505716length @ A @ Xs ) ) @ Ys ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_123_idiff__infinity__right,axiom,
% 2.76/1.50 ! [A2: nat] :
% 2.76/1.50 ( ( minus_minus @ extended_enat @ ( extended_enat2 @ A2 ) @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 = ( zero_zero @ extended_enat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_124_lstrict__prefix__llength__less,axiom,
% 2.76/1.50 ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( coindu574146665prefix @ A @ Xs @ Ys )
% 2.76/1.50 => ( ord_less @ extended_enat @ ( coindu1018505716length @ A @ Xs ) @ ( coindu1018505716length @ A @ Ys ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_125_diff__0__eq__0,axiom,
% 2.76/1.50 ! [N2: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( zero_zero @ nat ) @ N2 )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_126_diff__self__eq__0,axiom,
% 2.76/1.50 ! [M: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ M @ M )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_127_Suc__diff__diff,axiom,
% 2.76/1.50 ! [M: nat,N2: nat,K: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( minus_minus @ nat @ ( suc @ M ) @ N2 ) @ ( suc @ K ) )
% 2.76/1.50 = ( minus_minus @ nat @ ( minus_minus @ nat @ M @ N2 ) @ K ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_128_diff__Suc__Suc,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( suc @ M ) @ ( suc @ N2 ) )
% 2.76/1.50 = ( minus_minus @ nat @ M @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_129_zero__less__diff,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ ( minus_minus @ nat @ N2 @ M ) )
% 2.76/1.50 = ( ord_less @ nat @ M @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_130_lappend__code_I2_J,axiom,
% 2.76/1.50 ! [A: $tType,Xa: A,X: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( coindu268472904append @ A @ ( coindu1121789889_LCons @ A @ Xa @ X ) @ Ys )
% 2.76/1.50 = ( coindu1121789889_LCons @ A @ Xa @ ( coindu268472904append @ A @ X @ Ys ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_131_not__infinity__eq,axiom,
% 2.76/1.50 ! [X: extended_enat] :
% 2.76/1.50 ( ( X
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 = ( ? [I3: nat] :
% 2.76/1.50 ( X
% 2.76/1.50 = ( extended_enat2 @ I3 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_132_not__enat__eq,axiom,
% 2.76/1.50 ! [X: extended_enat] :
% 2.76/1.50 ( ( ! [Y7: nat] :
% 2.76/1.50 ( X
% 2.76/1.50 != ( extended_enat2 @ Y7 ) ) )
% 2.76/1.50 = ( X
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_133_enat__ord__simps_I6_J,axiom,
% 2.76/1.50 ! [Q: extended_enat] :
% 2.76/1.50 ~ ( ord_less @ extended_enat @ ( extend1396239628finity @ extended_enat ) @ Q ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_134_enat__ord__simps_I4_J,axiom,
% 2.76/1.50 ! [Q: extended_enat] :
% 2.76/1.50 ( ( ord_less @ extended_enat @ Q @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 = ( Q
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_135_idiff__enat__enat,axiom,
% 2.76/1.50 ! [A2: nat,B2: nat] :
% 2.76/1.50 ( ( minus_minus @ extended_enat @ ( extended_enat2 @ A2 ) @ ( extended_enat2 @ B2 ) )
% 2.76/1.50 = ( extended_enat2 @ ( minus_minus @ nat @ A2 @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_136_idiff__infinity,axiom,
% 2.76/1.50 ! [N2: extended_enat] :
% 2.76/1.50 ( ( minus_minus @ extended_enat @ ( extend1396239628finity @ extended_enat ) @ N2 )
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_137_enat_Osimps_I5_J,axiom,
% 2.76/1.50 ! [T: $tType,F1: nat > T,F2: T] :
% 2.76/1.50 ( ( extended_case_enat @ T @ F1 @ F2 @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 = F2 ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_138_lstrict__prefix__code_I4_J,axiom,
% 2.76/1.50 ! [B: $tType,X: B,Xs: coindu1593790203_llist @ B,Y: B,Ys: coindu1593790203_llist @ B] :
% 2.76/1.50 ( ( coindu574146665prefix @ B @ ( coindu1121789889_LCons @ B @ X @ Xs ) @ ( coindu1121789889_LCons @ B @ Y @ Ys ) )
% 2.76/1.50 = ( ( X = Y )
% 2.76/1.50 & ( coindu574146665prefix @ B @ Xs @ Ys ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_139_enat_Osimps_I7_J,axiom,
% 2.76/1.50 ! [T: $tType,F1: nat > T,F2: T] :
% 2.76/1.50 ( ( extended_rec_enat @ T @ F1 @ F2 @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 = F2 ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_140_Suc__pred,axiom,
% 2.76/1.50 ! [N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 2.76/1.50 => ( ( suc @ ( minus_minus @ nat @ N2 @ ( suc @ ( zero_zero @ nat ) ) ) )
% 2.76/1.50 = N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_141_lnth__0,axiom,
% 2.76/1.50 ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( coindu749330388e_lnth @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( zero_zero @ nat ) )
% 2.76/1.50 = X ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_142_lnth__Suc__LCons,axiom,
% 2.76/1.50 ! [A: $tType,X: A,Xs: coindu1593790203_llist @ A,N2: nat] :
% 2.76/1.50 ( ( coindu749330388e_lnth @ A @ ( coindu1121789889_LCons @ A @ X @ Xs ) @ ( suc @ N2 ) )
% 2.76/1.50 = ( coindu749330388e_lnth @ A @ Xs @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_143_idiff__self,axiom,
% 2.76/1.50 ! [N2: extended_enat] :
% 2.76/1.50 ( ( N2
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( ( minus_minus @ extended_enat @ N2 @ N2 )
% 2.76/1.50 = ( zero_zero @ extended_enat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_144_enat_Osize_I4_J,axiom,
% 2.76/1.50 ( ( size_size @ extended_enat @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_145_enat_Osize_I2_J,axiom,
% 2.76/1.50 ( ( extended_size_enat @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_146_diffs0__imp__equal,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ( minus_minus @ nat @ M @ N2 )
% 2.76/1.50 = ( zero_zero @ nat ) )
% 2.76/1.50 => ( ( ( minus_minus @ nat @ N2 @ M )
% 2.76/1.50 = ( zero_zero @ nat ) )
% 2.76/1.50 => ( M = N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_147_minus__nat_Odiff__0,axiom,
% 2.76/1.50 ! [M: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ M @ ( zero_zero @ nat ) )
% 2.76/1.50 = M ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_148_lappend__assoc,axiom,
% 2.76/1.50 ! [A: $tType,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A,Zs: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( coindu268472904append @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ Zs )
% 2.76/1.50 = ( coindu268472904append @ A @ Xs @ ( coindu268472904append @ A @ Ys @ Zs ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_149_llist__less__induct,axiom,
% 2.76/1.50 ! [A: $tType,P: ( coindu1593790203_llist @ A ) > $o,Xs: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ! [Xs2: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ! [Ys2: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( coindu574146665prefix @ A @ Ys2 @ Xs2 )
% 2.76/1.50 => ( P @ Ys2 ) )
% 2.76/1.50 => ( P @ Xs2 ) )
% 2.76/1.50 => ( P @ Xs ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_150_zero__induct__lemma,axiom,
% 2.76/1.50 ! [P: nat > $o,K: nat,I2: nat] :
% 2.76/1.50 ( ( P @ K )
% 2.76/1.50 => ( ! [N3: nat] :
% 2.76/1.50 ( ( P @ ( suc @ N3 ) )
% 2.76/1.50 => ( P @ N3 ) )
% 2.76/1.50 => ( P @ ( minus_minus @ nat @ K @ I2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_151_enat__ex__split,axiom,
% 2.76/1.50 ( ( ^ [P2: extended_enat > $o] :
% 2.76/1.50 ? [X5: extended_enat] : ( P2 @ X5 ) )
% 2.76/1.50 = ( ^ [P3: extended_enat > $o] :
% 2.76/1.50 ( ( P3 @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 | ? [X4: nat] : ( P3 @ ( extended_enat2 @ X4 ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_152_enat_Oinducts,axiom,
% 2.76/1.50 ! [P: extended_enat > $o,Enat: extended_enat] :
% 2.76/1.50 ( ! [Nat4: nat] : ( P @ ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( ( P @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( P @ Enat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_153_enat_Oexhaust,axiom,
% 2.76/1.50 ! [Y: extended_enat] :
% 2.76/1.50 ( ! [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 != ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( Y
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_154_enat3__cases,axiom,
% 2.76/1.50 ! [Y: extended_enat,Ya: extended_enat,Yb: extended_enat] :
% 2.76/1.50 ( ( ? [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( ? [Nata: nat] :
% 2.76/1.50 ( Ya
% 2.76/1.50 = ( extended_enat2 @ Nata ) )
% 2.76/1.50 => ! [Natb: nat] :
% 2.76/1.50 ( Yb
% 2.76/1.50 != ( extended_enat2 @ Natb ) ) ) )
% 2.76/1.50 => ( ( ? [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( ? [Nata: nat] :
% 2.76/1.50 ( Ya
% 2.76/1.50 = ( extended_enat2 @ Nata ) )
% 2.76/1.50 => ( Yb
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) ) )
% 2.76/1.50 => ( ( ? [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( ( Ya
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ! [Nata: nat] :
% 2.76/1.50 ( Yb
% 2.76/1.50 != ( extended_enat2 @ Nata ) ) ) )
% 2.76/1.50 => ( ( ? [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( ( Ya
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( Yb
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) ) )
% 2.76/1.50 => ( ( ( Y
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( ? [Nat4: nat] :
% 2.76/1.50 ( Ya
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ! [Nata: nat] :
% 2.76/1.50 ( Yb
% 2.76/1.50 != ( extended_enat2 @ Nata ) ) ) )
% 2.76/1.50 => ( ( ( Y
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( ? [Nat4: nat] :
% 2.76/1.50 ( Ya
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( Yb
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) ) )
% 2.76/1.50 => ( ( ( Y
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( ( Ya
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ! [Nat4: nat] :
% 2.76/1.50 ( Yb
% 2.76/1.50 != ( extended_enat2 @ Nat4 ) ) ) )
% 2.76/1.50 => ~ ( ( Y
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( ( Ya
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( Yb
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) ) ) ) ) ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_155_enat2__cases,axiom,
% 2.76/1.50 ! [Y: extended_enat,Ya: extended_enat] :
% 2.76/1.50 ( ( ? [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ! [Nata: nat] :
% 2.76/1.50 ( Ya
% 2.76/1.50 != ( extended_enat2 @ Nata ) ) )
% 2.76/1.50 => ( ( ? [Nat4: nat] :
% 2.76/1.50 ( Y
% 2.76/1.50 = ( extended_enat2 @ Nat4 ) )
% 2.76/1.50 => ( Ya
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) )
% 2.76/1.50 => ( ( ( Y
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ! [Nat4: nat] :
% 2.76/1.50 ( Ya
% 2.76/1.50 != ( extended_enat2 @ Nat4 ) ) )
% 2.76/1.50 => ~ ( ( Y
% 2.76/1.50 = ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ( Ya
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_156_enat_Odistinct_I1_J,axiom,
% 2.76/1.50 ! [Nat: nat] :
% 2.76/1.50 ( ( extended_enat2 @ Nat )
% 2.76/1.50 != ( extend1396239628finity @ extended_enat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_157_enat_Odistinct_I2_J,axiom,
% 2.76/1.50 ! [Nat5: nat] :
% 2.76/1.50 ( ( extend1396239628finity @ extended_enat )
% 2.76/1.50 != ( extended_enat2 @ Nat5 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_158_infinity__ne__i0,axiom,
% 2.76/1.50 ( ( extend1396239628finity @ extended_enat )
% 2.76/1.50 != ( zero_zero @ extended_enat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_159_less__imp__diff__less,axiom,
% 2.76/1.50 ! [J4: nat,K: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ J4 @ K )
% 2.76/1.50 => ( ord_less @ nat @ ( minus_minus @ nat @ J4 @ N2 ) @ K ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_160_diff__less__mono2,axiom,
% 2.76/1.50 ! [M: nat,N2: nat,L: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ M @ N2 )
% 2.76/1.50 => ( ( ord_less @ nat @ M @ L )
% 2.76/1.50 => ( ord_less @ nat @ ( minus_minus @ nat @ L @ N2 ) @ ( minus_minus @ nat @ L @ M ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_161_diff__less,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 2.76/1.50 => ( ( ord_less @ nat @ ( zero_zero @ nat ) @ M )
% 2.76/1.50 => ( ord_less @ nat @ ( minus_minus @ nat @ M @ N2 ) @ M ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_162_lnth__lappend1,axiom,
% 2.76/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu749330388e_lnth @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ N2 )
% 2.76/1.50 = ( coindu749330388e_lnth @ A @ Xs @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_163_Suc__diff__Suc,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ N2 @ M )
% 2.76/1.50 => ( ( suc @ ( minus_minus @ nat @ M @ ( suc @ N2 ) ) )
% 2.76/1.50 = ( minus_minus @ nat @ M @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_164_diff__less__Suc,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] : ( ord_less @ nat @ ( minus_minus @ nat @ M @ N2 ) @ ( suc @ M ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_165_diff__Suc__less,axiom,
% 2.76/1.50 ! [N2: nat,I2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 )
% 2.76/1.50 => ( ord_less @ nat @ ( minus_minus @ nat @ N2 @ ( suc @ I2 ) ) @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_166_infinity__ilessE,axiom,
% 2.76/1.50 ! [M: nat] :
% 2.76/1.50 ~ ( ord_less @ extended_enat @ ( extend1396239628finity @ extended_enat ) @ ( extended_enat2 @ M ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_167_less__infinityE,axiom,
% 2.76/1.50 ! [N2: extended_enat] :
% 2.76/1.50 ( ( ord_less @ extended_enat @ N2 @ ( extend1396239628finity @ extended_enat ) )
% 2.76/1.50 => ~ ! [K2: nat] :
% 2.76/1.50 ( N2
% 2.76/1.50 != ( extended_enat2 @ K2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_168_enat__ord__code_I4_J,axiom,
% 2.76/1.50 ! [M: nat] : ( ord_less @ extended_enat @ ( extended_enat2 @ M ) @ ( extend1396239628finity @ extended_enat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_169_fun__diff__def,axiom,
% 2.76/1.50 ! [B: $tType,A: $tType] :
% 2.76/1.50 ( ( minus @ B @ ( type2 @ B ) )
% 2.76/1.50 => ( ( minus_minus @ ( A > B ) )
% 2.76/1.50 = ( ^ [A4: A > B,B4: A > B,X4: A] : ( minus_minus @ B @ ( A4 @ X4 ) @ ( B4 @ X4 ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_170_ldropn__lappend,axiom,
% 2.76/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu531130065ldropn @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 2.76/1.50 = ( coindu268472904append @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) @ Ys ) ) )
% 2.76/1.50 & ( ~ ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu531130065ldropn @ A @ N2 @ ( coindu268472904append @ A @ Xs @ Ys ) )
% 2.76/1.50 = ( coindu531130065ldropn @ A @ ( minus_minus @ nat @ N2 @ ( extended_the_enat @ ( coindu1018505716length @ A @ Xs ) ) ) @ Ys ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_171_lnth__lappend,axiom,
% 2.76/1.50 ! [A: $tType,N2: nat,Xs: coindu1593790203_llist @ A,Ys: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu749330388e_lnth @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ N2 )
% 2.76/1.50 = ( coindu749330388e_lnth @ A @ Xs @ N2 ) ) )
% 2.76/1.50 & ( ~ ( ord_less @ extended_enat @ ( extended_enat2 @ N2 ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu749330388e_lnth @ A @ ( coindu268472904append @ A @ Xs @ Ys ) @ N2 )
% 2.76/1.50 = ( coindu749330388e_lnth @ A @ Ys @ ( minus_minus @ nat @ N2 @ ( extended_the_enat @ ( coindu1018505716length @ A @ Xs ) ) ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_172_lnth__ldropn,axiom,
% 2.76/1.50 ! [A: $tType,N2: nat,M: nat,Xs: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( ord_less @ extended_enat @ ( extended_enat2 @ ( plus_plus @ nat @ N2 @ M ) ) @ ( coindu1018505716length @ A @ Xs ) )
% 2.76/1.50 => ( ( coindu749330388e_lnth @ A @ ( coindu531130065ldropn @ A @ N2 @ Xs ) @ M )
% 2.76/1.50 = ( coindu749330388e_lnth @ A @ Xs @ ( plus_plus @ nat @ M @ N2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_173_exists__least__lemma,axiom,
% 2.76/1.50 ! [P: nat > $o] :
% 2.76/1.50 ( ~ ( P @ ( zero_zero @ nat ) )
% 2.76/1.50 => ( ? [X1: nat] : ( P @ X1 )
% 2.76/1.50 => ? [N3: nat] :
% 2.76/1.50 ( ~ ( P @ N3 )
% 2.76/1.50 & ( P @ ( suc @ N3 ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_174_add__left__cancel,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel_semigroup_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( ( plus_plus @ A @ A2 @ B2 )
% 2.76/1.50 = ( plus_plus @ A @ A2 @ C ) )
% 2.76/1.50 = ( B2 = C ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_175_add__right__cancel,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel_semigroup_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [B2: A,A2: A,C: A] :
% 2.76/1.50 ( ( ( plus_plus @ A @ B2 @ A2 )
% 2.76/1.50 = ( plus_plus @ A @ C @ A2 ) )
% 2.76/1.50 = ( B2 = C ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_176_add_Oleft__neutral,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( monoid_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_177_add_Oright__neutral,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( monoid_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( plus_plus @ A @ A2 @ ( zero_zero @ A ) )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_178_double__zero,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( ( plus_plus @ A @ A2 @ A2 )
% 2.76/1.50 = ( zero_zero @ A ) )
% 2.76/1.50 = ( A2
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_179_double__zero__sym,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( ( zero_zero @ A )
% 2.76/1.50 = ( plus_plus @ A @ A2 @ A2 ) )
% 2.76/1.50 = ( A2
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_180_add__cancel__left__left,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [B2: A,A2: A] :
% 2.76/1.50 ( ( ( plus_plus @ A @ B2 @ A2 )
% 2.76/1.50 = A2 )
% 2.76/1.50 = ( B2
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_181_add__cancel__left__right,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( ( plus_plus @ A @ A2 @ B2 )
% 2.76/1.50 = A2 )
% 2.76/1.50 = ( B2
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_182_add__cancel__right__left,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( A2
% 2.76/1.50 = ( plus_plus @ A @ B2 @ A2 ) )
% 2.76/1.50 = ( B2
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_183_add__cancel__right__right,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( A2
% 2.76/1.50 = ( plus_plus @ A @ A2 @ B2 ) )
% 2.76/1.50 = ( B2
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_184_add__less__cancel__left,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [C: A,A2: A,B2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) )
% 2.76/1.50 = ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_185_add__less__cancel__right,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,C: A,B2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) )
% 2.76/1.50 = ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_186_add__diff__cancel,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ B2 )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_187_diff__add__cancel,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( plus_plus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ B2 )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_188_add__diff__cancel__left,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [C: A,A2: A,B2: A] :
% 2.76/1.50 ( ( minus_minus @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) )
% 2.76/1.50 = ( minus_minus @ A @ A2 @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_189_add__diff__cancel__left_H,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ A2 )
% 2.76/1.50 = B2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_190_add__diff__cancel__right,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,C: A,B2: A] :
% 2.76/1.50 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) )
% 2.76/1.50 = ( minus_minus @ A @ A2 @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_191_add__diff__cancel__right_H,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ B2 )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_192_add__is__0,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ( plus_plus @ nat @ M @ N2 )
% 2.76/1.50 = ( zero_zero @ nat ) )
% 2.76/1.50 = ( ( M
% 2.76/1.50 = ( zero_zero @ nat ) )
% 2.76/1.50 & ( N2
% 2.76/1.50 = ( zero_zero @ nat ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_193_Nat_Oadd__0__right,axiom,
% 2.76/1.50 ! [M: nat] :
% 2.76/1.50 ( ( plus_plus @ nat @ M @ ( zero_zero @ nat ) )
% 2.76/1.50 = M ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_194_add__Suc__right,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( plus_plus @ nat @ M @ ( suc @ N2 ) )
% 2.76/1.50 = ( suc @ ( plus_plus @ nat @ M @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_195_nat__add__left__cancel__less,axiom,
% 2.76/1.50 ! [K: nat,M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( plus_plus @ nat @ K @ M ) @ ( plus_plus @ nat @ K @ N2 ) )
% 2.76/1.50 = ( ord_less @ nat @ M @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_196_diff__diff__left,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,K: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( minus_minus @ nat @ I2 @ J4 ) @ K )
% 2.76/1.50 = ( minus_minus @ nat @ I2 @ ( plus_plus @ nat @ J4 @ K ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_197_ldropn__ldropn,axiom,
% 2.76/1.50 ! [A: $tType,N2: nat,M: nat,Xs: coindu1593790203_llist @ A] :
% 2.76/1.50 ( ( coindu531130065ldropn @ A @ N2 @ ( coindu531130065ldropn @ A @ M @ Xs ) )
% 2.76/1.50 = ( coindu531130065ldropn @ A @ ( plus_plus @ nat @ N2 @ M ) @ Xs ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_198_zero__less__double__add__iff__zero__less__single__add,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( zero_zero @ A ) @ ( plus_plus @ A @ A2 @ A2 ) )
% 2.76/1.50 = ( ord_less @ A @ ( zero_zero @ A ) @ A2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_199_double__add__less__zero__iff__single__add__less__zero,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( linord219039673up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ A2 ) @ ( zero_zero @ A ) )
% 2.76/1.50 = ( ord_less @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_200_less__add__same__cancel2,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( ord_less @ A @ A2 @ ( plus_plus @ A @ B2 @ A2 ) )
% 2.76/1.50 = ( ord_less @ A @ ( zero_zero @ A ) @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_201_less__add__same__cancel1,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( ord_less @ A @ A2 @ ( plus_plus @ A @ A2 @ B2 ) )
% 2.76/1.50 = ( ord_less @ A @ ( zero_zero @ A ) @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_202_add__less__same__cancel2,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ B2 ) @ B2 )
% 2.76/1.50 = ( ord_less @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_203_add__less__same__cancel1,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere516151231imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [B2: A,A2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( plus_plus @ A @ B2 @ A2 ) @ B2 )
% 2.76/1.50 = ( ord_less @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_204_diff__add__zero,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( comm_monoid_diff @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A] :
% 2.76/1.50 ( ( minus_minus @ A @ A2 @ ( plus_plus @ A @ A2 @ B2 ) )
% 2.76/1.50 = ( zero_zero @ A ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_205_add__gr__0,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( zero_zero @ nat ) @ ( plus_plus @ nat @ M @ N2 ) )
% 2.76/1.50 = ( ( ord_less @ nat @ ( zero_zero @ nat ) @ M )
% 2.76/1.50 | ( ord_less @ nat @ ( zero_zero @ nat ) @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_206_the__enat__0,axiom,
% 2.76/1.50 ( ( extended_the_enat @ ( zero_zero @ extended_enat ) )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_207_diff__add__0,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ N2 @ ( plus_plus @ nat @ N2 @ M ) )
% 2.76/1.50 = ( zero_zero @ nat ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_208_Nat_Odiff__cancel,axiom,
% 2.76/1.50 ! [K: nat,M: nat,N2: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( plus_plus @ nat @ K @ M ) @ ( plus_plus @ nat @ K @ N2 ) )
% 2.76/1.50 = ( minus_minus @ nat @ M @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_209_diff__cancel2,axiom,
% 2.76/1.50 ! [M: nat,K: nat,N2: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( plus_plus @ nat @ M @ K ) @ ( plus_plus @ nat @ N2 @ K ) )
% 2.76/1.50 = ( minus_minus @ nat @ M @ N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_210_diff__commute,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,K: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( minus_minus @ nat @ I2 @ J4 ) @ K )
% 2.76/1.50 = ( minus_minus @ nat @ ( minus_minus @ nat @ I2 @ K ) @ J4 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_211_less__diff__conv,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,K: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ ( minus_minus @ nat @ J4 @ K ) )
% 2.76/1.50 = ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ K ) @ J4 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_212_plus__nat_Oadd__0,axiom,
% 2.76/1.50 ! [N2: nat] :
% 2.76/1.50 ( ( plus_plus @ nat @ ( zero_zero @ nat ) @ N2 )
% 2.76/1.50 = N2 ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_213_add__eq__self__zero,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( ( plus_plus @ nat @ M @ N2 )
% 2.76/1.50 = M )
% 2.76/1.50 => ( N2
% 2.76/1.50 = ( zero_zero @ nat ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_214_diff__add__inverse,axiom,
% 2.76/1.50 ! [N2: nat,M: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( plus_plus @ nat @ N2 @ M ) @ N2 )
% 2.76/1.50 = M ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_215_diff__add__inverse2,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( minus_minus @ nat @ ( plus_plus @ nat @ M @ N2 ) @ N2 )
% 2.76/1.50 = M ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_216_add__diff__inverse__nat,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ~ ( ord_less @ nat @ M @ N2 )
% 2.76/1.50 => ( ( plus_plus @ nat @ N2 @ ( minus_minus @ nat @ M @ N2 ) )
% 2.76/1.50 = M ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_217_comm__monoid__add__class_Oadd__0,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( comm_monoid_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_218_add_Ocomm__neutral,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( comm_monoid_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( plus_plus @ A @ A2 @ ( zero_zero @ A ) )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_219_add_Ogroup__left__neutral,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A] :
% 2.76/1.50 ( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
% 2.76/1.50 = A2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_220_add__eq__0__iff__both__eq__0,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( canoni770627133id_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [X: A,Y: A] :
% 2.76/1.50 ( ( ( plus_plus @ A @ X @ Y )
% 2.76/1.50 = ( zero_zero @ A ) )
% 2.76/1.50 = ( ( X
% 2.76/1.50 = ( zero_zero @ A ) )
% 2.76/1.50 & ( Y
% 2.76/1.50 = ( zero_zero @ A ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_221_add__mono__thms__linordered__field_I5_J,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [I2: A,J4: A,K: A,L: A] :
% 2.76/1.50 ( ( ( ord_less @ A @ I2 @ J4 )
% 2.76/1.50 & ( ord_less @ A @ K @ L ) )
% 2.76/1.50 => ( ord_less @ A @ ( plus_plus @ A @ I2 @ K ) @ ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_222_add__mono__thms__linordered__field_I2_J,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [I2: A,J4: A,K: A,L: A] :
% 2.76/1.50 ( ( ( I2 = J4 )
% 2.76/1.50 & ( ord_less @ A @ K @ L ) )
% 2.76/1.50 => ( ord_less @ A @ ( plus_plus @ A @ I2 @ K ) @ ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_223_add__mono__thms__linordered__field_I1_J,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [I2: A,J4: A,K: A,L: A] :
% 2.76/1.50 ( ( ( ord_less @ A @ I2 @ J4 )
% 2.76/1.50 & ( K = L ) )
% 2.76/1.50 => ( ord_less @ A @ ( plus_plus @ A @ I2 @ K ) @ ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_224_add__strict__mono,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( strict2144017051up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A,D: A] :
% 2.76/1.50 ( ( ord_less @ A @ A2 @ B2 )
% 2.76/1.50 => ( ( ord_less @ A @ C @ D )
% 2.76/1.50 => ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ D ) ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_225_add__strict__left__mono,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( ord_less @ A @ A2 @ B2 )
% 2.76/1.50 => ( ord_less @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_226_add__strict__right__mono,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere223160158up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( ord_less @ A @ A2 @ B2 )
% 2.76/1.50 => ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_227_add__less__imp__less__left,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [C: A,A2: A,B2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B2 ) )
% 2.76/1.50 => ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_228_add__less__imp__less__right,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere236663937imp_le @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,C: A,B2: A] :
% 2.76/1.50 ( ( ord_less @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B2 @ C ) )
% 2.76/1.50 => ( ord_less @ A @ A2 @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_229_diff__eq__eq,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( ( minus_minus @ A @ A2 @ B2 )
% 2.76/1.50 = C )
% 2.76/1.50 = ( A2
% 2.76/1.50 = ( plus_plus @ A @ C @ B2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_230_eq__diff__eq,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,C: A,B2: A] :
% 2.76/1.50 ( ( A2
% 2.76/1.50 = ( minus_minus @ A @ C @ B2 ) )
% 2.76/1.50 = ( ( plus_plus @ A @ A2 @ B2 )
% 2.76/1.50 = C ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_231_add__diff__eq,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( plus_plus @ A @ A2 @ ( minus_minus @ A @ B2 @ C ) )
% 2.76/1.50 = ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ C ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_232_diff__diff__eq2,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( minus_minus @ A @ A2 @ ( minus_minus @ A @ B2 @ C ) )
% 2.76/1.50 = ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_233_diff__add__eq,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ab_group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( plus_plus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ C )
% 2.76/1.50 = ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_234_diff__add__eq__diff__diff__swap,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( group_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( minus_minus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) )
% 2.76/1.50 = ( minus_minus @ A @ ( minus_minus @ A @ A2 @ C ) @ B2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_235_diff__diff__add,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( minus_minus @ A @ ( minus_minus @ A @ A2 @ B2 ) @ C )
% 2.76/1.50 = ( minus_minus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_236_add__implies__diff,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( cancel1352612707id_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [C: A,B2: A,A2: A] :
% 2.76/1.50 ( ( ( plus_plus @ A @ C @ B2 )
% 2.76/1.50 = A2 )
% 2.76/1.50 => ( C
% 2.76/1.50 = ( minus_minus @ A @ A2 @ B2 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_237_add__Suc,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( plus_plus @ nat @ ( suc @ M ) @ N2 )
% 2.76/1.50 = ( suc @ ( plus_plus @ nat @ M @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_238_add__Suc__shift,axiom,
% 2.76/1.50 ! [M: nat,N2: nat] :
% 2.76/1.50 ( ( plus_plus @ nat @ ( suc @ M ) @ N2 )
% 2.76/1.50 = ( plus_plus @ nat @ M @ ( suc @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_239_less__add__eq__less,axiom,
% 2.76/1.50 ! [K: nat,L: nat,M: nat,N2: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ K @ L )
% 2.76/1.50 => ( ( ( plus_plus @ nat @ M @ L )
% 2.76/1.50 = ( plus_plus @ nat @ K @ N2 ) )
% 2.76/1.50 => ( ord_less @ nat @ M @ N2 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_240_trans__less__add2,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,M: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J4 )
% 2.76/1.50 => ( ord_less @ nat @ I2 @ ( plus_plus @ nat @ M @ J4 ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_241_trans__less__add1,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,M: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J4 )
% 2.76/1.50 => ( ord_less @ nat @ I2 @ ( plus_plus @ nat @ J4 @ M ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_242_add__less__mono1,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,K: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J4 )
% 2.76/1.50 => ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ K ) @ ( plus_plus @ nat @ J4 @ K ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_243_not__add__less2,axiom,
% 2.76/1.50 ! [J4: nat,I2: nat] :
% 2.76/1.50 ~ ( ord_less @ nat @ ( plus_plus @ nat @ J4 @ I2 ) @ I2 ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_244_not__add__less1,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat] :
% 2.76/1.50 ~ ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ J4 ) @ I2 ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_245_add__less__mono,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,K: nat,L: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ I2 @ J4 )
% 2.76/1.50 => ( ( ord_less @ nat @ K @ L )
% 2.76/1.50 => ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ K ) @ ( plus_plus @ nat @ J4 @ L ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_246_add__lessD1,axiom,
% 2.76/1.50 ! [I2: nat,J4: nat,K: nat] :
% 2.76/1.50 ( ( ord_less @ nat @ ( plus_plus @ nat @ I2 @ J4 ) @ K )
% 2.76/1.50 => ( ord_less @ nat @ I2 @ K ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_247_nat__add__left__cancel,axiom,
% 2.76/1.50 ! [K: nat,M: nat,N2: nat] :
% 2.76/1.50 ( ( ( plus_plus @ nat @ K @ M )
% 2.76/1.50 = ( plus_plus @ nat @ K @ N2 ) )
% 2.76/1.50 = ( M = N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_248_nat__add__right__cancel,axiom,
% 2.76/1.50 ! [M: nat,K: nat,N2: nat] :
% 2.76/1.50 ( ( ( plus_plus @ nat @ M @ K )
% 2.76/1.50 = ( plus_plus @ nat @ N2 @ K ) )
% 2.76/1.50 = ( M = N2 ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_249_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ab_semigroup_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( plus_plus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ C )
% 2.76/1.50 = ( plus_plus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_250_is__num__normalize_I1_J,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( neg_numeral @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [A2: A,B2: A,C: A] :
% 2.76/1.50 ( ( plus_plus @ A @ ( plus_plus @ A @ A2 @ B2 ) @ C )
% 2.76/1.50 = ( plus_plus @ A @ A2 @ ( plus_plus @ A @ B2 @ C ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(fact_251_add__mono__thms__linordered__semiring_I4_J,axiom,
% 2.76/1.50 ! [A: $tType] :
% 2.76/1.50 ( ( ordere779506340up_add @ A @ ( type2 @ A ) )
% 2.76/1.50 => ! [I2: A,J4: A,K: A,L: A] :
% 2.76/1.50 ( ( ( I2 = J4 )
% 2.76/1.50 & ( K = L ) )
% 2.76/1.50 => ( ( plus_plus @ A @ I2 @ K )
% 2.76/1.50 = ( plus_plus @ A @ J4 @ L ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_fun___Orderings_Oorder,axiom,
% 2.76/1.50 ! [A5: $tType,A6: $tType] :
% 2.76/1.50 ( ( order @ A6 @ ( type2 @ A6 ) )
% 2.76/1.50 => ( order @ ( A5 > A6 ) @ ( type2 @ ( A5 > A6 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_fun___Groups_Ominus,axiom,
% 2.76/1.50 ! [A5: $tType,A6: $tType] :
% 2.76/1.50 ( ( minus @ A6 @ ( type2 @ A6 ) )
% 2.76/1.50 => ( minus @ ( A5 > A6 ) @ ( type2 @ ( A5 > A6 ) ) ) ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__monoid__add__imp__le,axiom,
% 2.76/1.50 ordere516151231imp_le @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ostrict__ordered__ab__semigroup__add,axiom,
% 2.76/1.50 strict2144017051up_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Oordered__cancel__ab__semigroup__add,axiom,
% 2.76/1.50 ordere223160158up_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add__imp__le,axiom,
% 2.76/1.50 ordere236663937imp_le @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ocanonically__ordered__monoid__add,axiom,
% 2.76/1.50 canoni770627133id_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add,axiom,
% 2.76/1.50 ordere779506340up_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ocancel__ab__semigroup__add,axiom,
% 2.76/1.50 cancel146912293up_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ocancel__comm__monoid__add,axiom,
% 2.76/1.50 cancel1352612707id_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ocancel__semigroup__add,axiom,
% 2.76/1.50 cancel_semigroup_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Rings_Olinordered__semidom,axiom,
% 2.76/1.50 linordered_semidom @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ocomm__monoid__diff,axiom,
% 2.76/1.50 comm_monoid_diff @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Oab__semigroup__add,axiom,
% 2.76/1.50 ab_semigroup_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ocomm__monoid__add,axiom,
% 2.76/1.50 comm_monoid_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Omonoid__add,axiom,
% 2.76/1.50 monoid_add @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Orderings_Oorder_1,axiom,
% 2.76/1.50 order @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ominus_2,axiom,
% 2.76/1.50 minus @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Nat_Onat___Groups_Ozero,axiom,
% 2.76/1.50 zero @ nat @ ( type2 @ nat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_HOL_Obool___Orderings_Oorder_3,axiom,
% 2.76/1.50 order @ $o @ ( type2 @ $o ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_HOL_Obool___Groups_Ominus_4,axiom,
% 2.76/1.50 minus @ $o @ ( type2 @ $o ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Ostrict__ordered__ab__semigroup__add_5,axiom,
% 2.76/1.50 strict2144017051up_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Ocanonically__ordered__monoid__add_6,axiom,
% 2.76/1.50 canoni770627133id_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Oordered__ab__semigroup__add_7,axiom,
% 2.76/1.50 ordere779506340up_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Oab__semigroup__add_8,axiom,
% 2.76/1.50 ab_semigroup_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Ocomm__monoid__add_9,axiom,
% 2.76/1.50 comm_monoid_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Omonoid__add_10,axiom,
% 2.76/1.50 monoid_add @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Orderings_Oorder_11,axiom,
% 2.76/1.50 order @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Ominus_12,axiom,
% 2.76/1.50 minus @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(tcon_Extended__Nat_Oenat___Groups_Ozero_13,axiom,
% 2.76/1.50 zero @ extended_enat @ ( type2 @ extended_enat ) ).
% 2.76/1.50
% 2.76/1.50 thf(conj_0,conjecture,
% 2.76/1.50 ( ( coindu2000965700_llast @ a @ ( coindu191418589_ldrop @ a @ ( extended_enat2 @ ( suc @ n_a ) ) @ xsa ) )
% 2.76/1.50 = ( coindu2000965700_llast @ a @ xsa ) ) ).
% 2.76/1.50 ------------------------
% 2.76/1.52 % (28265)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/2Mi)
% 2.76/1.52 % (28264)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/2Mi)
% 2.76/1.52 % (28266)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/275Mi)
% 2.76/1.52 % (28267)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/18Mi)
% 2.76/1.52 % (28264)Instruction limit reached!
% 2.76/1.52 % (28264)------------------------------
% 2.76/1.52 % (28264)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.52 % (28264)Termination reason: Unknown
% 2.76/1.52 % (28264)Termination phase: shuffling
% 2.76/1.52
% 2.76/1.52 % (28264)Memory used [KB]: 1279
% 2.76/1.52 % (28264)Time elapsed: 0.002 s
% 2.76/1.52 % (28264)Instructions burned: 2 (million)
% 2.76/1.52 % (28264)------------------------------
% 2.76/1.52 % (28264)------------------------------
% 2.76/1.52 % (28265)Instruction limit reached!
% 2.76/1.52 % (28265)------------------------------
% 2.76/1.52 % (28265)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.52 % (28265)Termination reason: Unknown
% 2.76/1.52 % (28265)Termination phase: shuffling
% 2.76/1.52
% 2.76/1.52 % (28265)Memory used [KB]: 1279
% 2.76/1.52 % (28265)Time elapsed: 0.003 s
% 2.76/1.52 % (28265)Instructions burned: 4 (million)
% 2.76/1.52 % (28265)------------------------------
% 2.76/1.52 % (28265)------------------------------
% 2.76/1.52 % (28260)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/183Mi)
% 2.76/1.52 % (28267)Instruction limit reached!
% 2.76/1.52 % (28267)------------------------------
% 2.76/1.52 % (28267)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.52 % (28267)Termination reason: Unknown
% 2.76/1.52 % (28267)Termination phase: Property scanning
% 2.76/1.52
% 2.76/1.52 % (28267)Memory used [KB]: 1535
% 2.76/1.52 % (28267)Time elapsed: 0.008 s
% 2.76/1.52 % (28267)Instructions burned: 20 (million)
% 2.76/1.52 % (28267)------------------------------
% 2.76/1.52 % (28267)------------------------------
% 2.76/1.52 % (28261)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/4Mi)
% 2.76/1.52 % (28262)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/27Mi)
% 2.76/1.53 % (28261)Instruction limit reached!
% 2.76/1.53 % (28261)------------------------------
% 2.76/1.53 % (28261)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.53 % (28261)Termination reason: Unknown
% 2.76/1.53 % (28261)Termination phase: shuffling
% 2.76/1.53
% 2.76/1.53 % (28261)Memory used [KB]: 1407
% 2.76/1.53 % (28261)Time elapsed: 0.005 s
% 2.76/1.53 % (28261)Instructions burned: 5 (million)
% 2.76/1.53 % (28261)------------------------------
% 2.76/1.53 % (28261)------------------------------
% 2.76/1.53 % (28268)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/3Mi)
% 2.76/1.53 % (28269)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/37Mi)
% 2.76/1.53 % (28268)Instruction limit reached!
% 2.76/1.53 % (28268)------------------------------
% 2.76/1.53 % (28268)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.53 % (28268)Termination reason: Unknown
% 2.76/1.53 % (28268)Termination phase: shuffling
% 2.76/1.53
% 2.76/1.53 % (28268)Memory used [KB]: 1279
% 2.76/1.53 % (28268)Time elapsed: 0.002 s
% 2.76/1.53 % (28268)Instructions burned: 3 (million)
% 2.76/1.53 % (28268)------------------------------
% 2.76/1.53 % (28268)------------------------------
% 2.76/1.53 % (28270)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/15Mi)
% 2.76/1.54 % (28272)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on DTF2THF_27976 for (2999ds/1041Mi)
% 2.76/1.54 % (28269)Instruction limit reached!
% 2.76/1.54 % (28269)------------------------------
% 2.76/1.54 % (28269)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.54 % (28269)Termination reason: Unknown
% 2.76/1.54 % (28269)Termination phase: Property scanning
% 2.76/1.54
% 2.76/1.54 % (28269)Memory used [KB]: 2046
% 2.76/1.54 % (28269)Time elapsed: 0.012 s
% 2.76/1.54 % (28269)Instructions burned: 41 (million)
% 2.76/1.54 % (28269)------------------------------
% 2.76/1.54 % (28269)------------------------------
% 2.76/1.54 % (28266)First to succeed.
% 2.76/1.54 % (28262)Instruction limit reached!
% 2.76/1.54 % (28262)------------------------------
% 2.76/1.54 % (28262)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.54 % (28262)Termination reason: Unknown
% 2.76/1.54 % (28262)Termination phase: shuffling
% 2.76/1.54
% 2.76/1.54 % (28262)Memory used [KB]: 1663
% 2.76/1.54 % (28262)Time elapsed: 0.018 s
% 2.76/1.54 % (28262)Instructions burned: 27 (million)
% 2.76/1.54 % (28262)------------------------------
% 2.76/1.54 % (28262)------------------------------
% 2.76/1.54 % (28266)Refutation found. Thanks to Tanya!
% 2.76/1.54 % SZS status Theorem for DTF2THF_27976
% 2.76/1.54 % SZS output start Proof for DTF2THF_27976
% 2.76/1.54 thf(type_def_5, type, itself: ($tType) > $tType).
% 2.76/1.54 thf(type_def_7, type, coindu1593790203_llist: ($tType) > $tType).
% 2.76/1.54 thf(type_def_8, type, extended_enat: $tType).
% 2.76/1.54 thf(type_def_9, type, nat: $tType).
% 2.76/1.54 thf(type_def_10, type, a: $tType).
% 2.76/1.54 thf(func_def_0, type, coindu1593790203_llist: ($tType) > $tType).
% 2.76/1.54 thf(func_def_1, type, extended_enat: $tType).
% 2.76/1.54 thf(func_def_2, type, nat: $tType).
% 2.76/1.54 thf(func_def_3, type, itself: ($tType) > $tType).
% 2.76/1.54 thf(func_def_4, type, a: $tType).
% 2.76/1.54 thf(func_def_5, type, type: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_6, type, zero: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_7, type, minus: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_8, type, neg_numeral: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_9, type, order: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_10, type, group_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_11, type, monoid_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_12, type, ab_group_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_13, type, comm_monoid_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_14, type, ab_semigroup_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_15, type, comm_monoid_diff: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_16, type, linordered_semidom: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_17, type, cancel_semigroup_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_18, type, ordered_ab_group_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_19, type, cancel1352612707id_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_20, type, cancel146912293up_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_21, type, linord219039673up_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_22, type, ordere779506340up_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_23, type, canoni770627133id_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_24, type, ordere236663937imp_le: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_25, type, ordere223160158up_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_26, type, strict2144017051up_add: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_27, type, ordere516151231imp_le: !>[X0: $tType]:(itself @ X0 > $o)).
% 2.76/1.54 thf(func_def_28, type, coindu268472904append: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 2.76/1.54 thf(func_def_29, type, coindu191418589_ldrop: !>[X0: $tType]:(extended_enat > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 2.76/1.54 thf(func_def_30, type, coindu531130065ldropn: !>[X0: $tType]:(nat > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 2.76/1.54 thf(func_def_31, type, coindu2000965700_llast: !>[X0: $tType]:(coindu1593790203_llist @ X0 > X0)).
% 2.76/1.54 thf(func_def_32, type, coindu1018505716length: !>[X0: $tType]:(coindu1593790203_llist @ X0 > extended_enat)).
% 2.76/1.54 thf(func_def_33, type, coindu1121789889_LCons: !>[X0: $tType]:(X0 > coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0)).
% 2.76/1.54 thf(func_def_34, type, coindu749330388e_lnth: !>[X0: $tType]:(coindu1593790203_llist @ X0 > nat > X0)).
% 2.76/1.54 thf(func_def_35, type, coindu574146665prefix: !>[X0: $tType]:(coindu1593790203_llist @ X0 > coindu1593790203_llist @ X0 > $o)).
% 2.76/1.54 thf(func_def_36, type, extended_enat2: nat > extended_enat).
% 2.76/1.54 thf(func_def_37, type, extended_case_enat: !>[X0: $tType]:((nat > X0) > X0 > extended_enat > X0)).
% 2.76/1.54 thf(func_def_38, type, extended_rec_enat: !>[X0: $tType]:((nat > X0) > X0 > extended_enat > X0)).
% 2.76/1.54 thf(func_def_39, type, extended_size_enat: extended_enat > nat).
% 2.76/1.54 thf(func_def_40, type, extend1396239628finity: !>[X0: $tType]:(X0)).
% 2.76/1.54 thf(func_def_41, type, extended_the_enat: extended_enat > nat).
% 2.76/1.54 thf(func_def_42, type, minus_minus: !>[X0: $tType]:(X0 > X0 > X0)).
% 2.76/1.54 thf(func_def_43, type, plus_plus: !>[X0: $tType]:(X0 > X0 > X0)).
% 2.76/1.54 thf(func_def_44, type, zero_zero: !>[X0: $tType]:(X0)).
% 2.76/1.54 thf(func_def_45, type, suc: nat > nat).
% 2.76/1.54 thf(func_def_46, type, size_size: !>[X0: $tType]:(X0 > nat)).
% 2.76/1.54 thf(func_def_47, type, ord_less: !>[X0: $tType]:(X0 > X0 > $o)).
% 2.76/1.54 thf(func_def_48, type, type2: !>[X0: $tType]:(itself @ X0)).
% 2.76/1.54 thf(func_def_49, type, n: extended_enat).
% 2.76/1.54 thf(func_def_50, type, n2: nat).
% 2.76/1.54 thf(func_def_51, type, n_a: nat).
% 2.76/1.54 thf(func_def_52, type, xs: coindu1593790203_llist @ a).
% 2.76/1.54 thf(func_def_53, type, xsa: coindu1593790203_llist @ a).
% 2.76/1.54 thf(func_def_64, type, sP0: extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_65, type, sP1: extended_enat > extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_66, type, sP2: extended_enat > extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_67, type, sP3: extended_enat > extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_68, type, sP4: extended_enat > extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_69, type, sP5: extended_enat > extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_70, type, sP6: extended_enat > extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_71, type, sP7: extended_enat > extended_enat > extended_enat > $o).
% 2.76/1.54 thf(func_def_72, type, sK8: extended_enat > nat).
% 2.76/1.54 thf(func_def_73, type, sK9: extended_enat > nat).
% 2.76/1.54 thf(func_def_74, type, sK10: extended_enat > nat).
% 2.76/1.54 thf(func_def_75, type, sK11: extended_enat > nat).
% 2.76/1.54 thf(func_def_76, type, sK12: extended_enat > nat).
% 2.76/1.54 thf(func_def_77, type, sK13: extended_enat > nat).
% 2.76/1.54 thf(func_def_78, type, sK14: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_79, type, sK15: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_80, type, sK16: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_81, type, sK17: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_82, type, sK18: nat > nat).
% 2.76/1.54 thf(func_def_83, type, sK19: !>[X0: $tType]:((X0 > $o) > (X0 > nat) > X0)).
% 2.76/1.54 thf(func_def_84, type, sK20: !>[X0: $tType]:((X0 > $o) > (X0 > nat) > X0)).
% 2.76/1.54 thf(func_def_85, type, sK21: !>[X0: $tType]:((X0 > $o) > (X0 > nat) > X0)).
% 2.76/1.54 thf(func_def_86, type, sK22: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_87, type, sK23: nat > nat > nat).
% 2.76/1.54 thf(func_def_88, type, sK24: !>[X0: $tType]:((X0 > nat) > (X0 > $o) > X0)).
% 2.76/1.54 thf(func_def_89, type, sK25: !>[X0: $tType, X1: $tType]:((X1 > X0) > (X1 > X0) > X1)).
% 2.76/1.54 thf(func_def_90, type, sK26: nat > nat).
% 2.76/1.54 thf(func_def_91, type, sK27: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_92, type, sK28: !>[X0: $tType]:((X0 > extended_enat) > X0)).
% 2.76/1.54 thf(func_def_93, type, sK29: !>[X0: $tType]:(nat > (X0 > extended_enat) > X0)).
% 2.76/1.54 thf(func_def_94, type, sK30: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_95, type, sK31: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_96, type, sK32: nat > nat).
% 2.76/1.54 thf(func_def_97, type, sK33: nat > nat > nat).
% 2.76/1.54 thf(func_def_98, type, sK34: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_99, type, sK35: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_100, type, sK36: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_101, type, sK37: (nat > nat > $o) > nat).
% 2.76/1.54 thf(func_def_102, type, sK38: nat > nat > nat).
% 2.76/1.54 thf(func_def_103, type, sK39: !>[X0: $tType]:((X0 > $o) > (X0 > nat) > X0)).
% 2.76/1.54 thf(func_def_104, type, sK40: nat > nat > nat).
% 2.76/1.54 thf(func_def_105, type, sK41: nat > nat).
% 2.76/1.54 thf(func_def_106, type, sK42: extended_enat > nat).
% 2.76/1.54 thf(func_def_107, type, sK43: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_108, type, sK44: (extended_enat > $o) > nat).
% 2.76/1.54 thf(func_def_109, type, sK45: (nat > $o) > nat > nat).
% 2.76/1.54 thf(func_def_110, type, sK46: (nat > $o) > nat > nat).
% 2.76/1.54 thf(func_def_111, type, sK47: extended_enat > nat).
% 2.76/1.54 thf(func_def_112, type, sK48: extended_enat > nat).
% 2.76/1.54 thf(func_def_113, type, sK49: extended_enat > nat).
% 2.76/1.54 thf(func_def_114, type, sK50: extended_enat > nat).
% 2.76/1.54 thf(func_def_115, type, sK51: extended_enat > nat).
% 2.76/1.54 thf(func_def_116, type, sK52: extended_enat > nat).
% 2.76/1.54 thf(func_def_117, type, sK53: extended_enat > nat).
% 2.76/1.54 thf(func_def_118, type, sK54: extended_enat > nat).
% 2.76/1.54 thf(func_def_119, type, sK55: extended_enat > nat).
% 2.76/1.54 thf(func_def_120, type, sK56: extended_enat > nat).
% 2.76/1.54 thf(func_def_121, type, sK57: extended_enat > nat).
% 2.76/1.54 thf(func_def_122, type, sK58: extended_enat > nat).
% 2.76/1.54 thf(func_def_123, type, sK59: nat > extended_enat > nat).
% 2.76/1.54 thf(func_def_124, type, sK60: extended_enat > nat).
% 2.76/1.54 thf(func_def_125, type, sK61: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_126, type, sK62: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_127, type, sK63: extended_enat > nat).
% 2.76/1.54 thf(func_def_128, type, sK64: (nat > $o) > nat).
% 2.76/1.54 thf(func_def_129, type, sK65: (extended_enat > $o) > extended_enat).
% 2.76/1.54 thf(func_def_131, type, ph67: !>[X0: $tType]:(X0)).
% 2.76/1.54 thf(f1321,plain,(
% 2.76/1.54 $false),
% 2.76/1.54 inference(subsumption_resolution,[status(thm)],[f1320,f1268])).
% 2.76/1.54 thf(f1268,plain,(
% 2.76/1.54 ((ord_less @ extended_enat @ (extended_enat2 @ (suc @ n_a)) @ (coindu1018505716length @ a @ xsa)) = $true)),
% 2.76/1.54 inference(cnf_transformation,[status(thm)],[f305])).
% 2.76/1.54 thf(f305,plain,(
% 2.76/1.54 ((ord_less @ extended_enat @ (extended_enat2 @ (suc @ n_a)) @ (coindu1018505716length @ a @ xsa)) = $true)),
% 2.76/1.54 inference(fool_elimination,[status(thm)],[f304])).
% 2.76/1.54 thf(f304,plain,(
% 2.76/1.54 (ord_less @ extended_enat @ (extended_enat2 @ (suc @ n_a)) @ (coindu1018505716length @ a @ xsa))),
% 2.76/1.54 inference(rectify,[status(thm)],[f3])).
% 2.76/1.54 thf(f3,axiom,(
% 2.76/1.54 (ord_less @ extended_enat @ (extended_enat2 @ (suc @ n_a)) @ (coindu1018505716length @ a @ xsa))),
% 2.76/1.54 file('/export/starexec/sandbox/tmp/tmp.9DJ3y5GnQc/DTF2THF_27976.p',fact_2_Suc_Oprems)).
% 2.76/1.54 thf(f1320,plain,(
% 2.76/1.54 ((ord_less @ extended_enat @ (extended_enat2 @ (suc @ n_a)) @ (coindu1018505716length @ a @ xsa)) != $true)),
% 2.76/1.54 inference(trivial_inequality_removal,[status(thm)],[f1319])).
% 2.76/1.54 thf(f1319,plain,(
% 2.76/1.54 ((coindu2000965700_llast @ a @ xsa) != (coindu2000965700_llast @ a @ xsa)) | ((ord_less @ extended_enat @ (extended_enat2 @ (suc @ n_a)) @ (coindu1018505716length @ a @ xsa)) != $true)),
% 2.76/1.54 inference(superposition,[status(thm)],[f1318,f1180])).
% 2.76/1.54 thf(f1180,plain,(
% 2.76/1.54 ( ! [X0 : $tType,X2 : coindu1593790203_llist @ X0,X1 : nat] : (((coindu2000965700_llast @ X0 @ X2) = (coindu2000965700_llast @ X0 @ (coindu531130065ldropn @ X0 @ X1 @ X2))) | ($true != (ord_less @ extended_enat @ (extended_enat2 @ X1) @ (coindu1018505716length @ X0 @ X2)))) )),
% 2.76/1.54 inference(cnf_transformation,[status(thm)],[f856])).
% 2.76/1.54 thf(f856,plain,(
% 2.76/1.54 ! [X0 : $tType,X1 : nat,X2 : coindu1593790203_llist @ X0] : (($true != (ord_less @ extended_enat @ (extended_enat2 @ X1) @ (coindu1018505716length @ X0 @ X2))) | ((coindu2000965700_llast @ X0 @ X2) = (coindu2000965700_llast @ X0 @ (coindu531130065ldropn @ X0 @ X1 @ X2))))),
% 2.76/1.54 inference(ennf_transformation,[status(thm)],[f367])).
% 2.76/1.54 thf(f367,plain,(
% 2.76/1.54 ! [X0 : $tType,X1 : nat,X2 : coindu1593790203_llist @ X0] : (($true = (ord_less @ extended_enat @ (extended_enat2 @ X1) @ (coindu1018505716length @ X0 @ X2))) => ((coindu2000965700_llast @ X0 @ X2) = (coindu2000965700_llast @ X0 @ (coindu531130065ldropn @ X0 @ X1 @ X2))))),
% 2.76/1.54 inference(fool_elimination,[status(thm)],[f366])).
% 2.76/1.54 thf(f366,plain,(
% 2.76/1.54 ! [X0 : $tType,X1 : nat,X2 : coindu1593790203_llist @ X0] : ((ord_less @ extended_enat @ (extended_enat2 @ X1) @ (coindu1018505716length @ X0 @ X2)) => ((coindu2000965700_llast @ X0 @ X2) = (coindu2000965700_llast @ X0 @ (coindu531130065ldropn @ X0 @ X1 @ X2))))),
% 2.76/1.54 inference(rectify,[status(thm)],[f21])).
% 2.76/1.54 thf(f21,axiom,(
% 2.76/1.54 ! [X0 : $tType,X10 : nat,X2 : coindu1593790203_llist @ X0] : ((ord_less @ extended_enat @ (extended_enat2 @ X10) @ (coindu1018505716length @ X0 @ X2)) => ((coindu2000965700_llast @ X0 @ (coindu531130065ldropn @ X0 @ X10 @ X2)) = (coindu2000965700_llast @ X0 @ X2)))),
% 2.76/1.54 file('/export/starexec/sandbox/tmp/tmp.9DJ3y5GnQc/DTF2THF_27976.p',fact_20_llast__ldropn)).
% 2.76/1.54 thf(f1318,plain,(
% 2.76/1.54 ((coindu2000965700_llast @ a @ xsa) != (coindu2000965700_llast @ a @ (coindu531130065ldropn @ a @ (suc @ n_a) @ xsa)))),
% 2.76/1.54 inference(forward_demodulation,[status(thm)],[f1137,f1260])).
% 2.76/1.54 thf(f1260,plain,(
% 2.76/1.54 ( ! [X0 : $tType,X2 : coindu1593790203_llist @ X0,X1 : nat] : (((coindu191418589_ldrop @ X0 @ (extended_enat2 @ X1) @ X2) = (coindu531130065ldropn @ X0 @ X1 @ X2))) )),
% 2.76/1.54 inference(cnf_transformation,[status(thm)],[f702])).
% 2.76/1.54 thf(f702,plain,(
% 2.76/1.54 ! [X0 : $tType,X1 : nat,X2 : coindu1593790203_llist @ X0] : ((coindu191418589_ldrop @ X0 @ (extended_enat2 @ X1) @ X2) = (coindu531130065ldropn @ X0 @ X1 @ X2))),
% 2.76/1.54 inference(rectify,[status(thm)],[f11])).
% 2.76/1.54 thf(f11,axiom,(
% 2.76/1.54 ! [X0 : $tType,X10 : nat,X2 : coindu1593790203_llist @ X0] : ((coindu191418589_ldrop @ X0 @ (extended_enat2 @ X10) @ X2) = (coindu531130065ldropn @ X0 @ X10 @ X2))),
% 2.76/1.54 file('/export/starexec/sandbox/tmp/tmp.9DJ3y5GnQc/DTF2THF_27976.p',fact_10_ldrop__enat)).
% 2.76/1.54 thf(f1137,plain,(
% 2.76/1.54 ((coindu2000965700_llast @ a @ (coindu191418589_ldrop @ a @ (extended_enat2 @ (suc @ n_a)) @ xsa)) != (coindu2000965700_llast @ a @ xsa))),
% 2.76/1.54 inference(cnf_transformation,[status(thm)],[f700])).
% 2.76/1.54 thf(f700,plain,(
% 2.76/1.54 ((coindu2000965700_llast @ a @ (coindu191418589_ldrop @ a @ (extended_enat2 @ (suc @ n_a)) @ xsa)) != (coindu2000965700_llast @ a @ xsa))),
% 2.76/1.54 inference(flattening,[status(thm)],[f284])).
% 2.76/1.54 thf(f284,negated_conjecture,(
% 2.76/1.54 ~((coindu2000965700_llast @ a @ (coindu191418589_ldrop @ a @ (extended_enat2 @ (suc @ n_a)) @ xsa)) = (coindu2000965700_llast @ a @ xsa))),
% 2.76/1.54 inference(negated_conjecture,[status(cth)],[f283])).
% 2.76/1.54 thf(f283,conjecture,(
% 2.76/1.54 ((coindu2000965700_llast @ a @ (coindu191418589_ldrop @ a @ (extended_enat2 @ (suc @ n_a)) @ xsa)) = (coindu2000965700_llast @ a @ xsa))),
% 2.76/1.54 file('/export/starexec/sandbox/tmp/tmp.9DJ3y5GnQc/DTF2THF_27976.p',conj_0)).
% 2.76/1.54 % SZS output end Proof for DTF2THF_27976
% 2.76/1.54 % (28266)------------------------------
% 2.76/1.54 % (28266)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 2.76/1.54 % (28266)Termination reason: Refutation
% 2.76/1.54
% 2.76/1.54 % (28266)Memory used [KB]: 6652
% 2.76/1.54 % (28266)Time elapsed: 0.023 s
% 2.76/1.54 % (28266)Instructions burned: 63 (million)
% 2.76/1.54 % (28266)------------------------------
% 2.76/1.54 % (28266)------------------------------
% 2.76/1.54 % (28259)Success in time 0.039 s
%------------------------------------------------------------------------------