% TIMEFORMAT='%3R'; { time (exec 2>&1; /home/martin/bin/satallax -E /home/martin/.isabelle/contrib/e-2.5-1/x86_64-linux/eprover -p tstp -t 5 /home/martin/judgement-day/tptp-thf/tptp/FFT/prob_61__3222956_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:08:59.127

% Could-be-implicit typings (3)
thf(ty_n_t__Set__Oset_It__Nat__Onat_J, type,
    set_nat : $tType).
thf(ty_n_t__Nat__Onat, type,
    nat : $tType).
thf(ty_n_tf__a, type,
    a : $tType).

% Explicit typings (16)
thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat, type,
    plus_plus_nat : nat > nat > nat).
thf(sy_c_Groups_Oplus__class_Oplus_001tf__a, type,
    plus_plus_a : a > a > a).
thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Nat__Onat, type,
    groups1842438620at_nat : (nat > nat) > set_nat > nat).
thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001tf__a, type,
    groups1145913330_nat_a : (nat > a) > set_nat > a).
thf(sy_c_Nat_OSuc, type,
    suc : nat > nat).
thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat, type,
    ord_less_nat : nat > nat > $o).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat, type,
    ord_less_eq_nat : nat > nat > $o).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Nat__Onat_J, type,
    ord_less_eq_set_nat : set_nat > set_nat > $o).
thf(sy_c_Set_OCollect_001t__Nat__Onat, type,
    collect_nat : (nat > $o) > set_nat).
thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Nat__Onat, type,
    set_or562006527an_nat : nat > nat > set_nat).
thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Nat__Onat, type,
    set_or1544565540an_nat : nat > nat > set_nat).
thf(sy_c_member_001t__Nat__Onat, type,
    member_nat : nat > set_nat > $o).
thf(sy_v_f, type,
    f : nat > a).
thf(sy_v_g, type,
    g : nat > a).
thf(sy_v_m, type,
    m : nat).
thf(sy_v_n, type,
    n : nat).

% Relevant facts (146)
thf(fact_0_less, axiom,
    ((ord_less_nat @ m @ n))). % less
thf(fact_1_g, axiom,
    ((![I : nat]: ((ord_less_nat @ m @ I) => ((ord_less_nat @ I @ n) => ((g @ I) = (f @ I))))))). % g
thf(fact_2_sum__add__nat__ivl__singleton, axiom,
    ((![M : nat, N : nat, F : nat > nat]: ((ord_less_nat @ M @ N) => ((plus_plus_nat @ (F @ M) @ (groups1842438620at_nat @ F @ (set_or1544565540an_nat @ M @ N))) = (groups1842438620at_nat @ F @ (set_or562006527an_nat @ M @ N))))))). % sum_add_nat_ivl_singleton
thf(fact_3_sum__add__nat__ivl__singleton, axiom,
    ((![M : nat, N : nat, F : nat > a]: ((ord_less_nat @ M @ N) => ((plus_plus_a @ (F @ M) @ (groups1145913330_nat_a @ F @ (set_or1544565540an_nat @ M @ N))) = (groups1145913330_nat_a @ F @ (set_or562006527an_nat @ M @ N))))))). % sum_add_nat_ivl_singleton
thf(fact_4_add__left__cancel, axiom,
    ((![A : nat, B : nat, C : nat]: (((plus_plus_nat @ A @ B) = (plus_plus_nat @ A @ C)) = (B = C))))). % add_left_cancel
thf(fact_5_add__right__cancel, axiom,
    ((![B : nat, A : nat, C : nat]: (((plus_plus_nat @ B @ A) = (plus_plus_nat @ C @ A)) = (B = C))))). % add_right_cancel
thf(fact_6_sum_Ocong, axiom,
    ((![A2 : set_nat, B2 : set_nat, G : nat > nat, H : nat > nat]: ((A2 = B2) => ((![X : nat]: ((member_nat @ X @ B2) => ((G @ X) = (H @ X)))) => ((groups1842438620at_nat @ G @ A2) = (groups1842438620at_nat @ H @ B2))))))). % sum.cong
thf(fact_7_sum_Ocong, axiom,
    ((![A2 : set_nat, B2 : set_nat, G : nat > a, H : nat > a]: ((A2 = B2) => ((![X : nat]: ((member_nat @ X @ B2) => ((G @ X) = (H @ X)))) => ((groups1145913330_nat_a @ G @ A2) = (groups1145913330_nat_a @ H @ B2))))))). % sum.cong
thf(fact_8_sum_Oeq__general, axiom,
    ((![B2 : set_nat, A2 : set_nat, H : nat > nat, Gamma : nat > nat, Phi : nat > nat]: ((![Y : nat]: ((member_nat @ Y @ B2) => (?[X2 : nat]: (((member_nat @ X2 @ A2) & ((H @ X2) = Y)) & (![Ya : nat]: (((member_nat @ Ya @ A2) & ((H @ Ya) = Y)) => (Ya = X2))))))) => ((![X : nat]: ((member_nat @ X @ A2) => ((member_nat @ (H @ X) @ B2) & ((Gamma @ (H @ X)) = (Phi @ X))))) => ((groups1842438620at_nat @ Phi @ A2) = (groups1842438620at_nat @ Gamma @ B2))))))). % sum.eq_general
thf(fact_9_sum_Oeq__general, axiom,
    ((![B2 : set_nat, A2 : set_nat, H : nat > nat, Gamma : nat > a, Phi : nat > a]: ((![Y : nat]: ((member_nat @ Y @ B2) => (?[X2 : nat]: (((member_nat @ X2 @ A2) & ((H @ X2) = Y)) & (![Ya : nat]: (((member_nat @ Ya @ A2) & ((H @ Ya) = Y)) => (Ya = X2))))))) => ((![X : nat]: ((member_nat @ X @ A2) => ((member_nat @ (H @ X) @ B2) & ((Gamma @ (H @ X)) = (Phi @ X))))) => ((groups1145913330_nat_a @ Phi @ A2) = (groups1145913330_nat_a @ Gamma @ B2))))))). % sum.eq_general
thf(fact_10_sum_Oeq__general__inverses, axiom,
    ((![B2 : set_nat, K : nat > nat, A2 : set_nat, H : nat > nat, Gamma : nat > nat, Phi : nat > nat]: ((![Y : nat]: ((member_nat @ Y @ B2) => ((member_nat @ (K @ Y) @ A2) & ((H @ (K @ Y)) = Y)))) => ((![X : nat]: ((member_nat @ X @ A2) => ((member_nat @ (H @ X) @ B2) & (((K @ (H @ X)) = X) & ((Gamma @ (H @ X)) = (Phi @ X)))))) => ((groups1842438620at_nat @ Phi @ A2) = (groups1842438620at_nat @ Gamma @ B2))))))). % sum.eq_general_inverses
thf(fact_11_sum_Oeq__general__inverses, axiom,
    ((![B2 : set_nat, K : nat > nat, A2 : set_nat, H : nat > nat, Gamma : nat > a, Phi : nat > a]: ((![Y : nat]: ((member_nat @ Y @ B2) => ((member_nat @ (K @ Y) @ A2) & ((H @ (K @ Y)) = Y)))) => ((![X : nat]: ((member_nat @ X @ A2) => ((member_nat @ (H @ X) @ B2) & (((K @ (H @ X)) = X) & ((Gamma @ (H @ X)) = (Phi @ X)))))) => ((groups1145913330_nat_a @ Phi @ A2) = (groups1145913330_nat_a @ Gamma @ B2))))))). % sum.eq_general_inverses
thf(fact_12_sum_Oreindex__bij__witness, axiom,
    ((![S : set_nat, I : nat > nat, J : nat > nat, T : set_nat, H : nat > nat, G : nat > nat]: ((![A3 : nat]: ((member_nat @ A3 @ S) => ((I @ (J @ A3)) = A3))) => ((![A3 : nat]: ((member_nat @ A3 @ S) => (member_nat @ (J @ A3) @ T))) => ((![B3 : nat]: ((member_nat @ B3 @ T) => ((J @ (I @ B3)) = B3))) => ((![B3 : nat]: ((member_nat @ B3 @ T) => (member_nat @ (I @ B3) @ S))) => ((![A3 : nat]: ((member_nat @ A3 @ S) => ((H @ (J @ A3)) = (G @ A3)))) => ((groups1842438620at_nat @ G @ S) = (groups1842438620at_nat @ H @ T)))))))))). % sum.reindex_bij_witness
thf(fact_13_sum_Oreindex__bij__witness, axiom,
    ((![S : set_nat, I : nat > nat, J : nat > nat, T : set_nat, H : nat > a, G : nat > a]: ((![A3 : nat]: ((member_nat @ A3 @ S) => ((I @ (J @ A3)) = A3))) => ((![A3 : nat]: ((member_nat @ A3 @ S) => (member_nat @ (J @ A3) @ T))) => ((![B3 : nat]: ((member_nat @ B3 @ T) => ((J @ (I @ B3)) = B3))) => ((![B3 : nat]: ((member_nat @ B3 @ T) => (member_nat @ (I @ B3) @ S))) => ((![A3 : nat]: ((member_nat @ A3 @ S) => ((H @ (J @ A3)) = (G @ A3)))) => ((groups1145913330_nat_a @ G @ S) = (groups1145913330_nat_a @ H @ T)))))))))). % sum.reindex_bij_witness
thf(fact_14_ab__semigroup__add__class_Oadd__ac_I1_J, axiom,
    ((![A : a, B : a, C : a]: ((plus_plus_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ A @ (plus_plus_a @ B @ C)))))). % ab_semigroup_add_class.add_ac(1)
thf(fact_15_ab__semigroup__add__class_Oadd__ac_I1_J, axiom,
    ((![A : nat, B : nat, C : nat]: ((plus_plus_nat @ (plus_plus_nat @ A @ B) @ C) = (plus_plus_nat @ A @ (plus_plus_nat @ B @ C)))))). % ab_semigroup_add_class.add_ac(1)
thf(fact_16_add__mono__thms__linordered__semiring_I4_J, axiom,
    ((![I : nat, J : nat, K : nat, L : nat]: (((I = J) & (K = L)) => ((plus_plus_nat @ I @ K) = (plus_plus_nat @ J @ L)))))). % add_mono_thms_linordered_semiring(4)
thf(fact_17_group__cancel_Oadd1, axiom,
    ((![A2 : a, K : a, A : a, B : a]: ((A2 = (plus_plus_a @ K @ A)) => ((plus_plus_a @ A2 @ B) = (plus_plus_a @ K @ (plus_plus_a @ A @ B))))))). % group_cancel.add1
thf(fact_18_group__cancel_Oadd1, axiom,
    ((![A2 : nat, K : nat, A : nat, B : nat]: ((A2 = (plus_plus_nat @ K @ A)) => ((plus_plus_nat @ A2 @ B) = (plus_plus_nat @ K @ (plus_plus_nat @ A @ B))))))). % group_cancel.add1
thf(fact_19_group__cancel_Oadd2, axiom,
    ((![B2 : a, K : a, B : a, A : a]: ((B2 = (plus_plus_a @ K @ B)) => ((plus_plus_a @ A @ B2) = (plus_plus_a @ K @ (plus_plus_a @ A @ B))))))). % group_cancel.add2
thf(fact_20_group__cancel_Oadd2, axiom,
    ((![B2 : nat, K : nat, B : nat, A : nat]: ((B2 = (plus_plus_nat @ K @ B)) => ((plus_plus_nat @ A @ B2) = (plus_plus_nat @ K @ (plus_plus_nat @ A @ B))))))). % group_cancel.add2
thf(fact_21_add__less__cancel__right, axiom,
    ((![A : nat, C : nat, B : nat]: ((ord_less_nat @ (plus_plus_nat @ A @ C) @ (plus_plus_nat @ B @ C)) = (ord_less_nat @ A @ B))))). % add_less_cancel_right
thf(fact_22_add__less__cancel__left, axiom,
    ((![C : nat, A : nat, B : nat]: ((ord_less_nat @ (plus_plus_nat @ C @ A) @ (plus_plus_nat @ C @ B)) = (ord_less_nat @ A @ B))))). % add_less_cancel_left
thf(fact_23_add__less__imp__less__right, axiom,
    ((![A : nat, C : nat, B : nat]: ((ord_less_nat @ (plus_plus_nat @ A @ C) @ (plus_plus_nat @ B @ C)) => (ord_less_nat @ A @ B))))). % add_less_imp_less_right
thf(fact_24_add__less__imp__less__left, axiom,
    ((![C : nat, A : nat, B : nat]: ((ord_less_nat @ (plus_plus_nat @ C @ A) @ (plus_plus_nat @ C @ B)) => (ord_less_nat @ A @ B))))). % add_less_imp_less_left
thf(fact_25_add__strict__right__mono, axiom,
    ((![A : nat, B : nat, C : nat]: ((ord_less_nat @ A @ B) => (ord_less_nat @ (plus_plus_nat @ A @ C) @ (plus_plus_nat @ B @ C)))))). % add_strict_right_mono
thf(fact_26_add__strict__left__mono, axiom,
    ((![A : nat, B : nat, C : nat]: ((ord_less_nat @ A @ B) => (ord_less_nat @ (plus_plus_nat @ C @ A) @ (plus_plus_nat @ C @ B)))))). % add_strict_left_mono
thf(fact_27_add__strict__mono, axiom,
    ((![A : nat, B : nat, C : nat, D : nat]: ((ord_less_nat @ A @ B) => ((ord_less_nat @ C @ D) => (ord_less_nat @ (plus_plus_nat @ A @ C) @ (plus_plus_nat @ B @ D))))))). % add_strict_mono
thf(fact_28_add__mono__thms__linordered__field_I1_J, axiom,
    ((![I : nat, J : nat, K : nat, L : nat]: (((ord_less_nat @ I @ J) & (K = L)) => (ord_less_nat @ (plus_plus_nat @ I @ K) @ (plus_plus_nat @ J @ L)))))). % add_mono_thms_linordered_field(1)
thf(fact_29_add__mono__thms__linordered__field_I2_J, axiom,
    ((![I : nat, J : nat, K : nat, L : nat]: (((I = J) & (ord_less_nat @ K @ L)) => (ord_less_nat @ (plus_plus_nat @ I @ K) @ (plus_plus_nat @ J @ L)))))). % add_mono_thms_linordered_field(2)
thf(fact_30_add__mono__thms__linordered__field_I5_J, axiom,
    ((![I : nat, J : nat, K : nat, L : nat]: (((ord_less_nat @ I @ J) & (ord_less_nat @ K @ L)) => (ord_less_nat @ (plus_plus_nat @ I @ K) @ (plus_plus_nat @ J @ L)))))). % add_mono_thms_linordered_field(5)
thf(fact_31_add__right__imp__eq, axiom,
    ((![B : nat, A : nat, C : nat]: (((plus_plus_nat @ B @ A) = (plus_plus_nat @ C @ A)) => (B = C))))). % add_right_imp_eq
thf(fact_32_add__left__imp__eq, axiom,
    ((![A : nat, B : nat, C : nat]: (((plus_plus_nat @ A @ B) = (plus_plus_nat @ A @ C)) => (B = C))))). % add_left_imp_eq
thf(fact_33_add_Oleft__commute, axiom,
    ((![B : a, A : a, C : a]: ((plus_plus_a @ B @ (plus_plus_a @ A @ C)) = (plus_plus_a @ A @ (plus_plus_a @ B @ C)))))). % add.left_commute
thf(fact_34_add_Oleft__commute, axiom,
    ((![B : nat, A : nat, C : nat]: ((plus_plus_nat @ B @ (plus_plus_nat @ A @ C)) = (plus_plus_nat @ A @ (plus_plus_nat @ B @ C)))))). % add.left_commute
thf(fact_35_add_Ocommute, axiom,
    ((plus_plus_a = (^[A4 : a]: (^[B4 : a]: (plus_plus_a @ B4 @ A4)))))). % add.commute
thf(fact_36_add_Ocommute, axiom,
    ((plus_plus_nat = (^[A4 : nat]: (^[B4 : nat]: (plus_plus_nat @ B4 @ A4)))))). % add.commute
thf(fact_37_add_Oassoc, axiom,
    ((![A : a, B : a, C : a]: ((plus_plus_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ A @ (plus_plus_a @ B @ C)))))). % add.assoc
thf(fact_38_add_Oassoc, axiom,
    ((![A : nat, B : nat, C : nat]: ((plus_plus_nat @ (plus_plus_nat @ A @ B) @ C) = (plus_plus_nat @ A @ (plus_plus_nat @ B @ C)))))). % add.assoc
thf(fact_39_greaterThanLessThan__iff, axiom,
    ((![I : nat, L : nat, U : nat]: ((member_nat @ I @ (set_or1544565540an_nat @ L @ U)) = (((ord_less_nat @ L @ I)) & ((ord_less_nat @ I @ U))))))). % greaterThanLessThan_iff
thf(fact_40_nat__add__left__cancel__less, axiom,
    ((![K : nat, M : nat, N : nat]: ((ord_less_nat @ (plus_plus_nat @ K @ M) @ (plus_plus_nat @ K @ N)) = (ord_less_nat @ M @ N))))). % nat_add_left_cancel_less
thf(fact_41_atLeastLessThan__eq__iff, axiom,
    ((![A : nat, B : nat, C : nat, D : nat]: ((ord_less_nat @ A @ B) => ((ord_less_nat @ C @ D) => (((set_or562006527an_nat @ A @ B) = (set_or562006527an_nat @ C @ D)) = (((A = C)) & ((B = D))))))))). % atLeastLessThan_eq_iff
thf(fact_42_atLeastLessThan__inj_I1_J, axiom,
    ((![A : nat, B : nat, C : nat, D : nat]: (((set_or562006527an_nat @ A @ B) = (set_or562006527an_nat @ C @ D)) => ((ord_less_nat @ A @ B) => ((ord_less_nat @ C @ D) => (A = C))))))). % atLeastLessThan_inj(1)
thf(fact_43_atLeastLessThan__inj_I2_J, axiom,
    ((![A : nat, B : nat, C : nat, D : nat]: (((set_or562006527an_nat @ A @ B) = (set_or562006527an_nat @ C @ D)) => ((ord_less_nat @ A @ B) => ((ord_less_nat @ C @ D) => (B = D))))))). % atLeastLessThan_inj(2)
thf(fact_44_add__lessD1, axiom,
    ((![I : nat, J : nat, K : nat]: ((ord_less_nat @ (plus_plus_nat @ I @ J) @ K) => (ord_less_nat @ I @ K))))). % add_lessD1
thf(fact_45_nat__neq__iff, axiom,
    ((![M : nat, N : nat]: ((~ ((M = N))) = (((ord_less_nat @ M @ N)) | ((ord_less_nat @ N @ M))))))). % nat_neq_iff
thf(fact_46_add__less__mono, axiom,
    ((![I : nat, J : nat, K : nat, L : nat]: ((ord_less_nat @ I @ J) => ((ord_less_nat @ K @ L) => (ord_less_nat @ (plus_plus_nat @ I @ K) @ (plus_plus_nat @ J @ L))))))). % add_less_mono
thf(fact_47_less__not__refl, axiom,
    ((![N : nat]: (~ ((ord_less_nat @ N @ N)))))). % less_not_refl
thf(fact_48_not__add__less1, axiom,
    ((![I : nat, J : nat]: (~ ((ord_less_nat @ (plus_plus_nat @ I @ J) @ I)))))). % not_add_less1
thf(fact_49_linorder__neqE__nat, axiom,
    ((![X3 : nat, Y2 : nat]: ((~ ((X3 = Y2))) => ((~ ((ord_less_nat @ X3 @ Y2))) => (ord_less_nat @ Y2 @ X3)))))). % linorder_neqE_nat
thf(fact_50_mem__Collect__eq, axiom,
    ((![A : nat, P : nat > $o]: ((member_nat @ A @ (collect_nat @ P)) = (P @ A))))). % mem_Collect_eq
thf(fact_51_Collect__mem__eq, axiom,
    ((![A2 : set_nat]: ((collect_nat @ (^[X4 : nat]: (member_nat @ X4 @ A2))) = A2)))). % Collect_mem_eq
thf(fact_52_less__add__eq__less, axiom,
    ((![K : nat, L : nat, M : nat, N : nat]: ((ord_less_nat @ K @ L) => (((plus_plus_nat @ M @ L) = (plus_plus_nat @ K @ N)) => (ord_less_nat @ M @ N)))))). % less_add_eq_less
thf(fact_53_infinite__descent, axiom,
    ((![P : nat > $o, N : nat]: ((![N2 : nat]: ((~ ((P @ N2))) => (?[M2 : nat]: ((ord_less_nat @ M2 @ N2) & (~ ((P @ M2))))))) => (P @ N))))). % infinite_descent
thf(fact_54_trans__less__add2, axiom,
    ((![I : nat, J : nat, M : nat]: ((ord_less_nat @ I @ J) => (ord_less_nat @ I @ (plus_plus_nat @ M @ J)))))). % trans_less_add2
thf(fact_55_trans__less__add1, axiom,
    ((![I : nat, J : nat, M : nat]: ((ord_less_nat @ I @ J) => (ord_less_nat @ I @ (plus_plus_nat @ J @ M)))))). % trans_less_add1
thf(fact_56_nat__less__induct, axiom,
    ((![P : nat > $o, N : nat]: ((![N2 : nat]: ((![M2 : nat]: ((ord_less_nat @ M2 @ N2) => (P @ M2))) => (P @ N2))) => (P @ N))))). % nat_less_induct
thf(fact_57_less__irrefl__nat, axiom,
    ((![N : nat]: (~ ((ord_less_nat @ N @ N)))))). % less_irrefl_nat
thf(fact_58_less__not__refl3, axiom,
    ((![S2 : nat, T2 : nat]: ((ord_less_nat @ S2 @ T2) => (~ ((S2 = T2))))))). % less_not_refl3
thf(fact_59_less__not__refl2, axiom,
    ((![N : nat, M : nat]: ((ord_less_nat @ N @ M) => (~ ((M = N))))))). % less_not_refl2
thf(fact_60_add__less__mono1, axiom,
    ((![I : nat, J : nat, K : nat]: ((ord_less_nat @ I @ J) => (ord_less_nat @ (plus_plus_nat @ I @ K) @ (plus_plus_nat @ J @ K)))))). % add_less_mono1
thf(fact_61_not__add__less2, axiom,
    ((![J : nat, I : nat]: (~ ((ord_less_nat @ (plus_plus_nat @ J @ I) @ I)))))). % not_add_less2
thf(fact_62_sum_OatLeast__Suc__lessThan, axiom,
    ((![M : nat, N : nat, G : nat > a]: ((ord_less_nat @ M @ N) => ((groups1145913330_nat_a @ G @ (set_or562006527an_nat @ M @ N)) = (plus_plus_a @ (G @ M) @ (groups1145913330_nat_a @ G @ (set_or562006527an_nat @ (suc @ M) @ N)))))))). % sum.atLeast_Suc_lessThan
thf(fact_63_sum_OatLeast__Suc__lessThan, axiom,
    ((![M : nat, N : nat, G : nat > nat]: ((ord_less_nat @ M @ N) => ((groups1842438620at_nat @ G @ (set_or562006527an_nat @ M @ N)) = (plus_plus_nat @ (G @ M) @ (groups1842438620at_nat @ G @ (set_or562006527an_nat @ (suc @ M) @ N)))))))). % sum.atLeast_Suc_lessThan
thf(fact_64_sum_OatLeastLessThan__concat, axiom,
    ((![M : nat, N : nat, P2 : nat, G : nat > a]: ((ord_less_eq_nat @ M @ N) => ((ord_less_eq_nat @ N @ P2) => ((plus_plus_a @ (groups1145913330_nat_a @ G @ (set_or562006527an_nat @ M @ N)) @ (groups1145913330_nat_a @ G @ (set_or562006527an_nat @ N @ P2))) = (groups1145913330_nat_a @ G @ (set_or562006527an_nat @ M @ P2)))))))). % sum.atLeastLessThan_concat
thf(fact_65_sum_OatLeastLessThan__concat, axiom,
    ((![M : nat, N : nat, P2 : nat, G : nat > nat]: ((ord_less_eq_nat @ M @ N) => ((ord_less_eq_nat @ N @ P2) => ((plus_plus_nat @ (groups1842438620at_nat @ G @ (set_or562006527an_nat @ M @ N)) @ (groups1842438620at_nat @ G @ (set_or562006527an_nat @ N @ P2))) = (groups1842438620at_nat @ G @ (set_or562006527an_nat @ M @ P2)))))))). % sum.atLeastLessThan_concat
thf(fact_66_sum_Oivl__cong, axiom,
    ((![A : nat, C : nat, B : nat, D : nat, G : nat > a, H : nat > a]: ((A = C) => ((B = D) => ((![X : nat]: ((ord_less_eq_nat @ C @ X) => ((ord_less_nat @ X @ D) => ((G @ X) = (H @ X))))) => ((groups1145913330_nat_a @ G @ (set_or562006527an_nat @ A @ B)) = (groups1145913330_nat_a @ H @ (set_or562006527an_nat @ C @ D))))))))). % sum.ivl_cong
thf(fact_67_sum_Oivl__cong, axiom,
    ((![A : nat, C : nat, B : nat, D : nat, G : nat > nat, H : nat > nat]: ((A = C) => ((B = D) => ((![X : nat]: ((ord_less_eq_nat @ C @ X) => ((ord_less_nat @ X @ D) => ((G @ X) = (H @ X))))) => ((groups1842438620at_nat @ G @ (set_or562006527an_nat @ A @ B)) = (groups1842438620at_nat @ H @ (set_or562006527an_nat @ C @ D))))))))). % sum.ivl_cong
thf(fact_68_dual__order_Ostrict__implies__not__eq, axiom,
    ((![B : nat, A : nat]: ((ord_less_nat @ B @ A) => (~ ((A = B))))))). % dual_order.strict_implies_not_eq
thf(fact_69_order__refl, axiom,
    ((![X3 : nat]: (ord_less_eq_nat @ X3 @ X3)))). % order_refl
thf(fact_70_old_Onat_Oinject, axiom,
    ((![Nat : nat, Nat2 : nat]: (((suc @ Nat) = (suc @ Nat2)) = (Nat = Nat2))))). % old.nat.inject
thf(fact_71_nat_Oinject, axiom,
    ((![X22 : nat, Y22 : nat]: (((suc @ X22) = (suc @ Y22)) = (X22 = Y22))))). % nat.inject
thf(fact_72_add__le__cancel__right, axiom,
    ((![A : nat, C : nat, B : nat]: ((ord_less_eq_nat @ (plus_plus_nat @ A @ C) @ (plus_plus_nat @ B @ C)) = (ord_less_eq_nat @ A @ B))))). % add_le_cancel_right
thf(fact_73_add__le__cancel__left, axiom,
    ((![C : nat, A : nat, B : nat]: ((ord_less_eq_nat @ (plus_plus_nat @ C @ A) @ (plus_plus_nat @ C @ B)) = (ord_less_eq_nat @ A @ B))))). % add_le_cancel_left
thf(fact_74_lessI, axiom,
    ((![N : nat]: (ord_less_nat @ N @ (suc @ N))))). % lessI
thf(fact_75_Suc__mono, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ M @ N) => (ord_less_nat @ (suc @ M) @ (suc @ N)))))). % Suc_mono
thf(fact_76_Suc__less__eq, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ (suc @ M) @ (suc @ N)) = (ord_less_nat @ M @ N))))). % Suc_less_eq
thf(fact_77_ivl__subset, axiom,
    ((![I : nat, J : nat, M : nat, N : nat]: ((ord_less_eq_set_nat @ (set_or562006527an_nat @ I @ J) @ (set_or562006527an_nat @ M @ N)) = (((ord_less_eq_nat @ J @ I)) | ((((ord_less_eq_nat @ M @ I)) & ((ord_less_eq_nat @ J @ N))))))))). % ivl_subset
thf(fact_78_Suc__le__mono, axiom,
    ((![N : nat, M : nat]: ((ord_less_eq_nat @ (suc @ N) @ (suc @ M)) = (ord_less_eq_nat @ N @ M))))). % Suc_le_mono
thf(fact_79_add__Suc__right, axiom,
    ((![M : nat, N : nat]: ((plus_plus_nat @ M @ (suc @ N)) = (suc @ (plus_plus_nat @ M @ N)))))). % add_Suc_right
thf(fact_80_nat__add__left__cancel__le, axiom,
    ((![K : nat, M : nat, N : nat]: ((ord_less_eq_nat @ (plus_plus_nat @ K @ M) @ (plus_plus_nat @ K @ N)) = (ord_less_eq_nat @ M @ N))))). % nat_add_left_cancel_le
thf(fact_81_atLeastLessThan__iff, axiom,
    ((![I : nat, L : nat, U : nat]: ((member_nat @ I @ (set_or562006527an_nat @ L @ U)) = (((ord_less_eq_nat @ L @ I)) & ((ord_less_nat @ I @ U))))))). % atLeastLessThan_iff
thf(fact_82_Suc__leI, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ M @ N) => (ord_less_eq_nat @ (suc @ M) @ N))))). % Suc_leI
thf(fact_83_Suc__le__eq, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ (suc @ M) @ N) = (ord_less_nat @ M @ N))))). % Suc_le_eq
thf(fact_84_dec__induct, axiom,
    ((![I : nat, J : nat, P : nat > $o]: ((ord_less_eq_nat @ I @ J) => ((P @ I) => ((![N2 : nat]: ((ord_less_eq_nat @ I @ N2) => ((ord_less_nat @ N2 @ J) => ((P @ N2) => (P @ (suc @ N2)))))) => (P @ J))))))). % dec_induct
thf(fact_85_inc__induct, axiom,
    ((![I : nat, J : nat, P : nat > $o]: ((ord_less_eq_nat @ I @ J) => ((P @ J) => ((![N2 : nat]: ((ord_less_eq_nat @ I @ N2) => ((ord_less_nat @ N2 @ J) => ((P @ (suc @ N2)) => (P @ N2))))) => (P @ I))))))). % inc_induct
thf(fact_86_Suc__le__lessD, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ (suc @ M) @ N) => (ord_less_nat @ M @ N))))). % Suc_le_lessD
thf(fact_87_le__less__Suc__eq, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ M @ N) => ((ord_less_nat @ N @ (suc @ M)) = (N = M)))))). % le_less_Suc_eq
thf(fact_88_less__Suc__eq__le, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ M @ (suc @ N)) = (ord_less_eq_nat @ M @ N))))). % less_Suc_eq_le
thf(fact_89_less__eq__Suc__le, axiom,
    ((ord_less_nat = (^[N3 : nat]: (ord_less_eq_nat @ (suc @ N3)))))). % less_eq_Suc_le
thf(fact_90_le__imp__less__Suc, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ M @ N) => (ord_less_nat @ M @ (suc @ N)))))). % le_imp_less_Suc
thf(fact_91_atLeastLessThan__subset__iff, axiom,
    ((![A : nat, B : nat, C : nat, D : nat]: ((ord_less_eq_set_nat @ (set_or562006527an_nat @ A @ B) @ (set_or562006527an_nat @ C @ D)) => ((ord_less_eq_nat @ B @ A) | ((ord_less_eq_nat @ C @ A) & (ord_less_eq_nat @ B @ D))))))). % atLeastLessThan_subset_iff
thf(fact_92_lift__Suc__antimono__le, axiom,
    ((![F : nat > nat, N : nat, N4 : nat]: ((![N2 : nat]: (ord_less_eq_nat @ (F @ (suc @ N2)) @ (F @ N2))) => ((ord_less_eq_nat @ N @ N4) => (ord_less_eq_nat @ (F @ N4) @ (F @ N))))))). % lift_Suc_antimono_le
thf(fact_93_lift__Suc__mono__le, axiom,
    ((![F : nat > nat, N : nat, N4 : nat]: ((![N2 : nat]: (ord_less_eq_nat @ (F @ N2) @ (F @ (suc @ N2)))) => ((ord_less_eq_nat @ N @ N4) => (ord_less_eq_nat @ (F @ N) @ (F @ N4))))))). % lift_Suc_mono_le
thf(fact_94_bounded__Max__nat, axiom,
    ((![P : nat > $o, X3 : nat, M3 : nat]: ((P @ X3) => ((![X : nat]: ((P @ X) => (ord_less_eq_nat @ X @ M3))) => (~ ((![M4 : nat]: ((P @ M4) => (~ ((![X2 : nat]: ((P @ X2) => (ord_less_eq_nat @ X2 @ M4)))))))))))))). % bounded_Max_nat
thf(fact_95_transitive__stepwise__le, axiom,
    ((![M : nat, N : nat, R : nat > nat > $o]: ((ord_less_eq_nat @ M @ N) => ((![X : nat]: (R @ X @ X)) => ((![X : nat, Y : nat, Z : nat]: ((R @ X @ Y) => ((R @ Y @ Z) => (R @ X @ Z)))) => ((![N2 : nat]: (R @ N2 @ (suc @ N2))) => (R @ M @ N)))))))). % transitive_stepwise_le
thf(fact_96_nat__induct__at__least, axiom,
    ((![M : nat, N : nat, P : nat > $o]: ((ord_less_eq_nat @ M @ N) => ((P @ M) => ((![N2 : nat]: ((ord_less_eq_nat @ M @ N2) => ((P @ N2) => (P @ (suc @ N2))))) => (P @ N))))))). % nat_induct_at_least
thf(fact_97_Nat_Oex__has__greatest__nat, axiom,
    ((![P : nat > $o, K : nat, B : nat]: ((P @ K) => ((![Y : nat]: ((P @ Y) => (ord_less_eq_nat @ Y @ B))) => (?[X : nat]: ((P @ X) & (![Y3 : nat]: ((P @ Y3) => (ord_less_eq_nat @ Y3 @ X)))))))))). % Nat.ex_has_greatest_nat
thf(fact_98_full__nat__induct, axiom,
    ((![P : nat > $o, N : nat]: ((![N2 : nat]: ((![M2 : nat]: ((ord_less_eq_nat @ (suc @ M2) @ N2) => (P @ M2))) => (P @ N2))) => (P @ N))))). % full_nat_induct
thf(fact_99_not__less__eq__eq, axiom,
    ((![M : nat, N : nat]: ((~ ((ord_less_eq_nat @ M @ N))) = (ord_less_eq_nat @ (suc @ N) @ M))))). % not_less_eq_eq
thf(fact_100_Suc__n__not__le__n, axiom,
    ((![N : nat]: (~ ((ord_less_eq_nat @ (suc @ N) @ N)))))). % Suc_n_not_le_n
thf(fact_101_nat__le__linear, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ M @ N) | (ord_less_eq_nat @ N @ M))))). % nat_le_linear
thf(fact_102_n__not__Suc__n, axiom,
    ((![N : nat]: (~ ((N = (suc @ N))))))). % n_not_Suc_n
thf(fact_103_le__antisym, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ M @ N) => ((ord_less_eq_nat @ N @ M) => (M = N)))))). % le_antisym
thf(fact_104_Suc__inject, axiom,
    ((![X3 : nat, Y2 : nat]: (((suc @ X3) = (suc @ Y2)) => (X3 = Y2))))). % Suc_inject
thf(fact_105_le__Suc__eq, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ M @ (suc @ N)) = (((ord_less_eq_nat @ M @ N)) | ((M = (suc @ N)))))))). % le_Suc_eq
thf(fact_106_eq__imp__le, axiom,
    ((![M : nat, N : nat]: ((M = N) => (ord_less_eq_nat @ M @ N))))). % eq_imp_le
thf(fact_107_le__trans, axiom,
    ((![I : nat, J : nat, K : nat]: ((ord_less_eq_nat @ I @ J) => ((ord_less_eq_nat @ J @ K) => (ord_less_eq_nat @ I @ K)))))). % le_trans
thf(fact_108_Suc__le__D, axiom,
    ((![N : nat, M5 : nat]: ((ord_less_eq_nat @ (suc @ N) @ M5) => (?[M4 : nat]: (M5 = (suc @ M4))))))). % Suc_le_D
thf(fact_109_le__refl, axiom,
    ((![N : nat]: (ord_less_eq_nat @ N @ N)))). % le_refl
thf(fact_110_le__SucI, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ M @ N) => (ord_less_eq_nat @ M @ (suc @ N)))))). % le_SucI
thf(fact_111_le__SucE, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ M @ (suc @ N)) => ((~ ((ord_less_eq_nat @ M @ N))) => (M = (suc @ N))))))). % le_SucE
thf(fact_112_Suc__leD, axiom,
    ((![M : nat, N : nat]: ((ord_less_eq_nat @ (suc @ M) @ N) => (ord_less_eq_nat @ M @ N))))). % Suc_leD
thf(fact_113_complete__interval, axiom,
    ((![A : nat, B : nat, P : nat > $o]: ((ord_less_nat @ A @ B) => ((P @ A) => ((~ ((P @ B))) => (?[C2 : nat]: ((ord_less_eq_nat @ A @ C2) & ((ord_less_eq_nat @ C2 @ B) & ((![X2 : nat]: (((ord_less_eq_nat @ A @ X2) & (ord_less_nat @ X2 @ C2)) => (P @ X2))) & (![D2 : nat]: ((![X : nat]: (((ord_less_eq_nat @ A @ X) & (ord_less_nat @ X @ D2)) => (P @ X))) => (ord_less_eq_nat @ D2 @ C2))))))))))))). % complete_interval
thf(fact_114_order_Onot__eq__order__implies__strict, axiom,
    ((![A : nat, B : nat]: ((~ ((A = B))) => ((ord_less_eq_nat @ A @ B) => (ord_less_nat @ A @ B)))))). % order.not_eq_order_implies_strict
thf(fact_115_dual__order_Ostrict__implies__order, axiom,
    ((![B : nat, A : nat]: ((ord_less_nat @ B @ A) => (ord_less_eq_nat @ B @ A))))). % dual_order.strict_implies_order
thf(fact_116_dual__order_Ostrict__iff__order, axiom,
    ((ord_less_nat = (^[B4 : nat]: (^[A4 : nat]: (((ord_less_eq_nat @ B4 @ A4)) & ((~ ((A4 = B4)))))))))). % dual_order.strict_iff_order
thf(fact_117_dual__order_Oorder__iff__strict, axiom,
    ((ord_less_eq_nat = (^[B4 : nat]: (^[A4 : nat]: (((ord_less_nat @ B4 @ A4)) | ((A4 = B4)))))))). % dual_order.order_iff_strict
thf(fact_118_order_Ostrict__implies__order, axiom,
    ((![A : nat, B : nat]: ((ord_less_nat @ A @ B) => (ord_less_eq_nat @ A @ B))))). % order.strict_implies_order
thf(fact_119_dual__order_Ostrict__trans2, axiom,
    ((![B : nat, A : nat, C : nat]: ((ord_less_nat @ B @ A) => ((ord_less_eq_nat @ C @ B) => (ord_less_nat @ C @ A)))))). % dual_order.strict_trans2
thf(fact_120_dual__order_Ostrict__trans1, axiom,
    ((![B : nat, A : nat, C : nat]: ((ord_less_eq_nat @ B @ A) => ((ord_less_nat @ C @ B) => (ord_less_nat @ C @ A)))))). % dual_order.strict_trans1
thf(fact_121_order_Ostrict__iff__order, axiom,
    ((ord_less_nat = (^[A4 : nat]: (^[B4 : nat]: (((ord_less_eq_nat @ A4 @ B4)) & ((~ ((A4 = B4)))))))))). % order.strict_iff_order
thf(fact_122_order_Oorder__iff__strict, axiom,
    ((ord_less_eq_nat = (^[A4 : nat]: (^[B4 : nat]: (((ord_less_nat @ A4 @ B4)) | ((A4 = B4)))))))). % order.order_iff_strict
thf(fact_123_order_Ostrict__trans2, axiom,
    ((![A : nat, B : nat, C : nat]: ((ord_less_nat @ A @ B) => ((ord_less_eq_nat @ B @ C) => (ord_less_nat @ A @ C)))))). % order.strict_trans2
thf(fact_124_order_Ostrict__trans1, axiom,
    ((![A : nat, B : nat, C : nat]: ((ord_less_eq_nat @ A @ B) => ((ord_less_nat @ B @ C) => (ord_less_nat @ A @ C)))))). % order.strict_trans1
thf(fact_125_not__le__imp__less, axiom,
    ((![Y2 : nat, X3 : nat]: ((~ ((ord_less_eq_nat @ Y2 @ X3))) => (ord_less_nat @ X3 @ Y2))))). % not_le_imp_less
thf(fact_126_less__le__not__le, axiom,
    ((ord_less_nat = (^[X4 : nat]: (^[Y4 : nat]: (((ord_less_eq_nat @ X4 @ Y4)) & ((~ ((ord_less_eq_nat @ Y4 @ X4)))))))))). % less_le_not_le
thf(fact_127_le__imp__less__or__eq, axiom,
    ((![X3 : nat, Y2 : nat]: ((ord_less_eq_nat @ X3 @ Y2) => ((ord_less_nat @ X3 @ Y2) | (X3 = Y2)))))). % le_imp_less_or_eq
thf(fact_128_le__less__linear, axiom,
    ((![X3 : nat, Y2 : nat]: ((ord_less_eq_nat @ X3 @ Y2) | (ord_less_nat @ Y2 @ X3))))). % le_less_linear
thf(fact_129_less__le__trans, axiom,
    ((![X3 : nat, Y2 : nat, Z2 : nat]: ((ord_less_nat @ X3 @ Y2) => ((ord_less_eq_nat @ Y2 @ Z2) => (ord_less_nat @ X3 @ Z2)))))). % less_le_trans
thf(fact_130_le__less__trans, axiom,
    ((![X3 : nat, Y2 : nat, Z2 : nat]: ((ord_less_eq_nat @ X3 @ Y2) => ((ord_less_nat @ Y2 @ Z2) => (ord_less_nat @ X3 @ Z2)))))). % le_less_trans
thf(fact_131_less__imp__le, axiom,
    ((![X3 : nat, Y2 : nat]: ((ord_less_nat @ X3 @ Y2) => (ord_less_eq_nat @ X3 @ Y2))))). % less_imp_le
thf(fact_132_antisym__conv2, axiom,
    ((![X3 : nat, Y2 : nat]: ((ord_less_eq_nat @ X3 @ Y2) => ((~ ((ord_less_nat @ X3 @ Y2))) = (X3 = Y2)))))). % antisym_conv2
thf(fact_133_antisym__conv1, axiom,
    ((![X3 : nat, Y2 : nat]: ((~ ((ord_less_nat @ X3 @ Y2))) => ((ord_less_eq_nat @ X3 @ Y2) = (X3 = Y2)))))). % antisym_conv1
thf(fact_134_le__neq__trans, axiom,
    ((![A : nat, B : nat]: ((ord_less_eq_nat @ A @ B) => ((~ ((A = B))) => (ord_less_nat @ A @ B)))))). % le_neq_trans
thf(fact_135_not__less, axiom,
    ((![X3 : nat, Y2 : nat]: ((~ ((ord_less_nat @ X3 @ Y2))) = (ord_less_eq_nat @ Y2 @ X3))))). % not_less
thf(fact_136_not__le, axiom,
    ((![X3 : nat, Y2 : nat]: ((~ ((ord_less_eq_nat @ X3 @ Y2))) = (ord_less_nat @ Y2 @ X3))))). % not_le
thf(fact_137_order__less__le__subst2, axiom,
    ((![A : nat, B : nat, F : nat > nat, C : nat]: ((ord_less_nat @ A @ B) => ((ord_less_eq_nat @ (F @ B) @ C) => ((![X : nat, Y : nat]: ((ord_less_nat @ X @ Y) => (ord_less_nat @ (F @ X) @ (F @ Y)))) => (ord_less_nat @ (F @ A) @ C))))))). % order_less_le_subst2
thf(fact_138_order__less__le__subst1, axiom,
    ((![A : nat, F : nat > nat, B : nat, C : nat]: ((ord_less_nat @ A @ (F @ B)) => ((ord_less_eq_nat @ B @ C) => ((![X : nat, Y : nat]: ((ord_less_eq_nat @ X @ Y) => (ord_less_eq_nat @ (F @ X) @ (F @ Y)))) => (ord_less_nat @ A @ (F @ C)))))))). % order_less_le_subst1
thf(fact_139_order__le__less__subst2, axiom,
    ((![A : nat, B : nat, F : nat > nat, C : nat]: ((ord_less_eq_nat @ A @ B) => ((ord_less_nat @ (F @ B) @ C) => ((![X : nat, Y : nat]: ((ord_less_eq_nat @ X @ Y) => (ord_less_eq_nat @ (F @ X) @ (F @ Y)))) => (ord_less_nat @ (F @ A) @ C))))))). % order_le_less_subst2
thf(fact_140_order__le__less__subst1, axiom,
    ((![A : nat, F : nat > nat, B : nat, C : nat]: ((ord_less_eq_nat @ A @ (F @ B)) => ((ord_less_nat @ B @ C) => ((![X : nat, Y : nat]: ((ord_less_nat @ X @ Y) => (ord_less_nat @ (F @ X) @ (F @ Y)))) => (ord_less_nat @ A @ (F @ C)))))))). % order_le_less_subst1
thf(fact_141_less__le, axiom,
    ((ord_less_nat = (^[X4 : nat]: (^[Y4 : nat]: (((ord_less_eq_nat @ X4 @ Y4)) & ((~ ((X4 = Y4)))))))))). % less_le
thf(fact_142_le__less, axiom,
    ((ord_less_eq_nat = (^[X4 : nat]: (^[Y4 : nat]: (((ord_less_nat @ X4 @ Y4)) | ((X4 = Y4)))))))). % le_less
thf(fact_143_leI, axiom,
    ((![X3 : nat, Y2 : nat]: ((~ ((ord_less_nat @ X3 @ Y2))) => (ord_less_eq_nat @ Y2 @ X3))))). % leI
thf(fact_144_leD, axiom,
    ((![Y2 : nat, X3 : nat]: ((ord_less_eq_nat @ Y2 @ X3) => (~ ((ord_less_nat @ X3 @ Y2))))))). % leD
thf(fact_145_order__subst1, axiom,
    ((![A : nat, F : nat > nat, B : nat, C : nat]: ((ord_less_eq_nat @ A @ (F @ B)) => ((ord_less_eq_nat @ B @ C) => ((![X : nat, Y : nat]: ((ord_less_eq_nat @ X @ Y) => (ord_less_eq_nat @ (F @ X) @ (F @ Y)))) => (ord_less_eq_nat @ A @ (F @ C)))))))). % order_subst1

% Conjectures (1)
thf(conj_0, conjecture,
    (((plus_plus_a @ (f @ m) @ (groups1145913330_nat_a @ g @ (set_or1544565540an_nat @ m @ n))) = (groups1145913330_nat_a @ f @ (set_or562006527an_nat @ m @ n))))).
