% 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_73__3223160_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:09:03.616

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

% Explicit typings (19)
thf(sy_c_Groups_Otimes__class_Otimes_001t__Nat__Onat, type,
    times_times_nat : nat > nat > nat).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Num__Onum, type,
    times_times_num : num > num > num).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat, type,
    zero_zero_nat : nat).
thf(sy_c_Lattices_Osup__class_Osup_001_062_It__Nat__Onat_M_Eo_J, type,
    sup_sup_nat_o : (nat > $o) > (nat > $o) > nat > $o).
thf(sy_c_Lattices_Osup__class_Osup_001t__Nat__Onat, type,
    sup_sup_nat : nat > nat > nat).
thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Nat__Onat_J, type,
    sup_sup_set_nat : set_nat > set_nat > set_nat).
thf(sy_c_Nat_OSuc, type,
    suc : nat > nat).
thf(sy_c_Num_Onum_OBit0, type,
    bit0 : num > num).
thf(sy_c_Num_Onum_OOne, type,
    one : num).
thf(sy_c_Num_Onumeral__class_Onumeral_001t__Nat__Onat, type,
    numeral_numeral_nat : num > 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_001t__Num__Onum, type,
    ord_less_num : num > num > $o).
thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Nat__Onat_J, type,
    ord_less_set_nat : set_nat > set_nat > $o).
thf(sy_c_Parity_Osemiring__bit__shifts__class_Opush__bit_001t__Nat__Onat, type,
    semiri2013084963it_nat : nat > nat > nat).
thf(sy_c_Parity_Osemiring__bit__shifts__class_Otake__bit_001t__Nat__Onat, type,
    semiri967765622it_nat : nat > nat > nat).
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_member_001t__Nat__Onat, type,
    member_nat : nat > set_nat > $o).
thf(sy_v_n, type,
    n : nat).

% Relevant facts (142)
thf(fact_0_mult__eq__1__iff, axiom,
    ((![M : nat, N : nat]: (((times_times_nat @ M @ N) = (suc @ zero_zero_nat)) = (((M = (suc @ zero_zero_nat))) & ((N = (suc @ zero_zero_nat)))))))). % mult_eq_1_iff
thf(fact_1_one__eq__mult__iff, axiom,
    ((![M : nat, N : nat]: (((suc @ zero_zero_nat) = (times_times_nat @ M @ N)) = (((M = (suc @ zero_zero_nat))) & ((N = (suc @ zero_zero_nat)))))))). % one_eq_mult_iff
thf(fact_2_mult__is__0, axiom,
    ((![M : nat, N : nat]: (((times_times_nat @ M @ N) = zero_zero_nat) = (((M = zero_zero_nat)) | ((N = zero_zero_nat))))))). % mult_is_0
thf(fact_3_mult__0__right, axiom,
    ((![M : nat]: ((times_times_nat @ M @ zero_zero_nat) = zero_zero_nat)))). % mult_0_right
thf(fact_4_mult__cancel1, axiom,
    ((![K : nat, M : nat, N : nat]: (((times_times_nat @ K @ M) = (times_times_nat @ K @ N)) = (((M = N)) | ((K = zero_zero_nat))))))). % mult_cancel1
thf(fact_5_mult__cancel2, axiom,
    ((![M : nat, K : nat, N : nat]: (((times_times_nat @ M @ K) = (times_times_nat @ N @ K)) = (((M = N)) | ((K = zero_zero_nat))))))). % mult_cancel2
thf(fact_6_Suc__double__not__eq__double, axiom,
    ((![M : nat, N : nat]: (~ (((suc @ (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ M)) = (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ N))))))). % Suc_double_not_eq_double
thf(fact_7_double__not__eq__Suc__double, axiom,
    ((![M : nat, N : nat]: (~ (((times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ M) = (suc @ (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ N)))))))). % double_not_eq_Suc_double
thf(fact_8_numeral__2__eq__2, axiom,
    (((numeral_numeral_nat @ (bit0 @ one)) = (suc @ (suc @ zero_zero_nat))))). % numeral_2_eq_2
thf(fact_9_semiring__norm_I85_J, axiom,
    ((![M : num]: (~ (((bit0 @ M) = one)))))). % semiring_norm(85)
thf(fact_10_semiring__norm_I83_J, axiom,
    ((![N : num]: (~ ((one = (bit0 @ N))))))). % semiring_norm(83)
thf(fact_11_mult__numeral__left__semiring__numeral, axiom,
    ((![V : num, W : num, Z : nat]: ((times_times_nat @ (numeral_numeral_nat @ V) @ (times_times_nat @ (numeral_numeral_nat @ W) @ Z)) = (times_times_nat @ (numeral_numeral_nat @ (times_times_num @ V @ W)) @ Z))))). % mult_numeral_left_semiring_numeral
thf(fact_12_numeral__eq__iff, axiom,
    ((![M : num, N : num]: (((numeral_numeral_nat @ M) = (numeral_numeral_nat @ N)) = (M = N))))). % numeral_eq_iff
thf(fact_13_semiring__norm_I87_J, axiom,
    ((![M : num, N : num]: (((bit0 @ M) = (bit0 @ N)) = (M = N))))). % semiring_norm(87)
thf(fact_14_old_Onat_Oinject, axiom,
    ((![Nat : nat, Nat2 : nat]: (((suc @ Nat) = (suc @ Nat2)) = (Nat = Nat2))))). % old.nat.inject
thf(fact_15_nat_Oinject, axiom,
    ((![X2 : nat, Y2 : nat]: (((suc @ X2) = (suc @ Y2)) = (X2 = Y2))))). % nat.inject
thf(fact_16_semiring__norm_I13_J, axiom,
    ((![M : num, N : num]: ((times_times_num @ (bit0 @ M) @ (bit0 @ N)) = (bit0 @ (bit0 @ (times_times_num @ M @ N))))))). % semiring_norm(13)
thf(fact_17_semiring__norm_I11_J, axiom,
    ((![M : num]: ((times_times_num @ M @ one) = M)))). % semiring_norm(11)
thf(fact_18_semiring__norm_I12_J, axiom,
    ((![N : num]: ((times_times_num @ one @ N) = N)))). % semiring_norm(12)
thf(fact_19_numeral__times__numeral, axiom,
    ((![M : num, N : num]: ((times_times_nat @ (numeral_numeral_nat @ M) @ (numeral_numeral_nat @ N)) = (numeral_numeral_nat @ (times_times_num @ M @ N)))))). % numeral_times_numeral
thf(fact_20_num__double, axiom,
    ((![N : num]: ((times_times_num @ (bit0 @ one) @ N) = (bit0 @ N))))). % num_double
thf(fact_21_n__not__Suc__n, axiom,
    ((![N : nat]: (~ ((N = (suc @ N))))))). % n_not_Suc_n
thf(fact_22_Suc__inject, axiom,
    ((![X : nat, Y : nat]: (((suc @ X) = (suc @ Y)) => (X = Y))))). % Suc_inject
thf(fact_23_zero__neq__numeral, axiom,
    ((![N : num]: (~ ((zero_zero_nat = (numeral_numeral_nat @ N))))))). % zero_neq_numeral
thf(fact_24_not0__implies__Suc, axiom,
    ((![N : nat]: ((~ ((N = zero_zero_nat))) => (?[M2 : nat]: (N = (suc @ M2))))))). % not0_implies_Suc
thf(fact_25_old_Onat_Oinducts, axiom,
    ((![P : nat > $o, Nat : nat]: ((P @ zero_zero_nat) => ((![Nat3 : nat]: ((P @ Nat3) => (P @ (suc @ Nat3)))) => (P @ Nat)))))). % old.nat.inducts
thf(fact_26_old_Onat_Oexhaust, axiom,
    ((![Y : nat]: ((~ ((Y = zero_zero_nat))) => (~ ((![Nat3 : nat]: (~ ((Y = (suc @ Nat3))))))))))). % old.nat.exhaust
thf(fact_27_Zero__not__Suc, axiom,
    ((![M : nat]: (~ ((zero_zero_nat = (suc @ M))))))). % Zero_not_Suc
thf(fact_28_Zero__neq__Suc, axiom,
    ((![M : nat]: (~ ((zero_zero_nat = (suc @ M))))))). % Zero_neq_Suc
thf(fact_29_Suc__neq__Zero, axiom,
    ((![M : nat]: (~ (((suc @ M) = zero_zero_nat)))))). % Suc_neq_Zero
thf(fact_30_zero__induct, axiom,
    ((![P : nat > $o, K : nat]: ((P @ K) => ((![N2 : nat]: ((P @ (suc @ N2)) => (P @ N2))) => (P @ zero_zero_nat)))))). % zero_induct
thf(fact_31_diff__induct, axiom,
    ((![P : nat > nat > $o, M : nat, N : nat]: ((![X3 : nat]: (P @ X3 @ zero_zero_nat)) => ((![Y3 : nat]: (P @ zero_zero_nat @ (suc @ Y3))) => ((![X3 : nat, Y3 : nat]: ((P @ X3 @ Y3) => (P @ (suc @ X3) @ (suc @ Y3)))) => (P @ M @ N))))))). % diff_induct
thf(fact_32_nat__induct, axiom,
    ((![P : nat > $o, N : nat]: ((P @ zero_zero_nat) => ((![N2 : nat]: ((P @ N2) => (P @ (suc @ N2)))) => (P @ N)))))). % nat_induct
thf(fact_33_nat_OdiscI, axiom,
    ((![Nat : nat, X2 : nat]: ((Nat = (suc @ X2)) => (~ ((Nat = zero_zero_nat))))))). % nat.discI
thf(fact_34_old_Onat_Odistinct_I1_J, axiom,
    ((![Nat2 : nat]: (~ ((zero_zero_nat = (suc @ Nat2))))))). % old.nat.distinct(1)
thf(fact_35_old_Onat_Odistinct_I2_J, axiom,
    ((![Nat2 : nat]: (~ (((suc @ Nat2) = zero_zero_nat)))))). % old.nat.distinct(2)
thf(fact_36_nat_Odistinct_I1_J, axiom,
    ((![X2 : nat]: (~ ((zero_zero_nat = (suc @ X2))))))). % nat.distinct(1)
thf(fact_37_nat__mult__eq__cancel__disj, axiom,
    ((![K : nat, M : nat, N : nat]: (((times_times_nat @ K @ M) = (times_times_nat @ K @ N)) = (((K = zero_zero_nat)) | ((M = N))))))). % nat_mult_eq_cancel_disj
thf(fact_38_mult__0, axiom,
    ((![N : nat]: ((times_times_nat @ zero_zero_nat @ N) = zero_zero_nat)))). % mult_0
thf(fact_39_Suc__mult__cancel1, axiom,
    ((![K : nat, M : nat, N : nat]: (((times_times_nat @ (suc @ K) @ M) = (times_times_nat @ (suc @ K) @ N)) = (M = N))))). % Suc_mult_cancel1
thf(fact_40_mult__numeral__1__right, axiom,
    ((![A : nat]: ((times_times_nat @ A @ (numeral_numeral_nat @ one)) = A)))). % mult_numeral_1_right
thf(fact_41_mem__Collect__eq, axiom,
    ((![A : nat, P : nat > $o]: ((member_nat @ A @ (collect_nat @ P)) = (P @ A))))). % mem_Collect_eq
thf(fact_42_Collect__mem__eq, axiom,
    ((![A2 : set_nat]: ((collect_nat @ (^[X4 : nat]: (member_nat @ X4 @ A2))) = A2)))). % Collect_mem_eq
thf(fact_43_Collect__cong, axiom,
    ((![P : nat > $o, Q : nat > $o]: ((![X3 : nat]: ((P @ X3) = (Q @ X3))) => ((collect_nat @ P) = (collect_nat @ Q)))))). % Collect_cong
thf(fact_44_mult__numeral__1, axiom,
    ((![A : nat]: ((times_times_nat @ (numeral_numeral_nat @ one) @ A) = A)))). % mult_numeral_1
thf(fact_45_numeral__1__eq__Suc__0, axiom,
    (((numeral_numeral_nat @ one) = (suc @ zero_zero_nat)))). % numeral_1_eq_Suc_0
thf(fact_46_mult__cancel__right, axiom,
    ((![A : nat, C : nat, B : nat]: (((times_times_nat @ A @ C) = (times_times_nat @ B @ C)) = (((C = zero_zero_nat)) | ((A = B))))))). % mult_cancel_right
thf(fact_47_mult__cancel__left, axiom,
    ((![C : nat, A : nat, B : nat]: (((times_times_nat @ C @ A) = (times_times_nat @ C @ B)) = (((C = zero_zero_nat)) | ((A = B))))))). % mult_cancel_left
thf(fact_48_mult__eq__0__iff, axiom,
    ((![A : nat, B : nat]: (((times_times_nat @ A @ B) = zero_zero_nat) = (((A = zero_zero_nat)) | ((B = zero_zero_nat))))))). % mult_eq_0_iff
thf(fact_49_mult__zero__right, axiom,
    ((![A : nat]: ((times_times_nat @ A @ zero_zero_nat) = zero_zero_nat)))). % mult_zero_right
thf(fact_50_mult__zero__left, axiom,
    ((![A : nat]: ((times_times_nat @ zero_zero_nat @ A) = zero_zero_nat)))). % mult_zero_left
thf(fact_51_Un__iff, axiom,
    ((![C : nat, A2 : set_nat, B2 : set_nat]: ((member_nat @ C @ (sup_sup_set_nat @ A2 @ B2)) = (((member_nat @ C @ A2)) | ((member_nat @ C @ B2))))))). % Un_iff
thf(fact_52_UnCI, axiom,
    ((![C : nat, B2 : set_nat, A2 : set_nat]: (((~ ((member_nat @ C @ B2))) => (member_nat @ C @ A2)) => (member_nat @ C @ (sup_sup_set_nat @ A2 @ B2)))))). % UnCI
thf(fact_53_sup_Oright__idem, axiom,
    ((![A : set_nat, B : set_nat]: ((sup_sup_set_nat @ (sup_sup_set_nat @ A @ B) @ B) = (sup_sup_set_nat @ A @ B))))). % sup.right_idem
thf(fact_54_sup__left__idem, axiom,
    ((![X : set_nat, Y : set_nat]: ((sup_sup_set_nat @ X @ (sup_sup_set_nat @ X @ Y)) = (sup_sup_set_nat @ X @ Y))))). % sup_left_idem
thf(fact_55_sup_Oleft__idem, axiom,
    ((![A : set_nat, B : set_nat]: ((sup_sup_set_nat @ A @ (sup_sup_set_nat @ A @ B)) = (sup_sup_set_nat @ A @ B))))). % sup.left_idem
thf(fact_56_sup_Oidem, axiom,
    ((![A : set_nat]: ((sup_sup_set_nat @ A @ A) = A)))). % sup.idem
thf(fact_57_sup__idem, axiom,
    ((![X : set_nat]: ((sup_sup_set_nat @ X @ X) = X)))). % sup_idem
thf(fact_58_sup__set__def, axiom,
    ((sup_sup_set_nat = (^[A3 : set_nat]: (^[B3 : set_nat]: (collect_nat @ (sup_sup_nat_o @ (^[X4 : nat]: (member_nat @ X4 @ A3)) @ (^[X4 : nat]: (member_nat @ X4 @ B3))))))))). % sup_set_def
thf(fact_59_inf__sup__aci_I8_J, axiom,
    ((![X : set_nat, Y : set_nat]: ((sup_sup_set_nat @ X @ (sup_sup_set_nat @ X @ Y)) = (sup_sup_set_nat @ X @ Y))))). % inf_sup_aci(8)
thf(fact_60_inf__sup__aci_I7_J, axiom,
    ((![X : set_nat, Y : set_nat, Z : set_nat]: ((sup_sup_set_nat @ X @ (sup_sup_set_nat @ Y @ Z)) = (sup_sup_set_nat @ Y @ (sup_sup_set_nat @ X @ Z)))))). % inf_sup_aci(7)
thf(fact_61_inf__sup__aci_I6_J, axiom,
    ((![X : set_nat, Y : set_nat, Z : set_nat]: ((sup_sup_set_nat @ (sup_sup_set_nat @ X @ Y) @ Z) = (sup_sup_set_nat @ X @ (sup_sup_set_nat @ Y @ Z)))))). % inf_sup_aci(6)
thf(fact_62_inf__sup__aci_I5_J, axiom,
    ((sup_sup_set_nat = (^[X4 : set_nat]: (^[Y4 : set_nat]: (sup_sup_set_nat @ Y4 @ X4)))))). % inf_sup_aci(5)
thf(fact_63_boolean__algebra__cancel_Osup1, axiom,
    ((![A2 : set_nat, K : set_nat, A : set_nat, B : set_nat]: ((A2 = (sup_sup_set_nat @ K @ A)) => ((sup_sup_set_nat @ A2 @ B) = (sup_sup_set_nat @ K @ (sup_sup_set_nat @ A @ B))))))). % boolean_algebra_cancel.sup1
thf(fact_64_boolean__algebra__cancel_Osup2, axiom,
    ((![B2 : set_nat, K : set_nat, B : set_nat, A : set_nat]: ((B2 = (sup_sup_set_nat @ K @ B)) => ((sup_sup_set_nat @ A @ B2) = (sup_sup_set_nat @ K @ (sup_sup_set_nat @ A @ B))))))). % boolean_algebra_cancel.sup2
thf(fact_65_sup_Oassoc, axiom,
    ((![A : set_nat, B : set_nat, C : set_nat]: ((sup_sup_set_nat @ (sup_sup_set_nat @ A @ B) @ C) = (sup_sup_set_nat @ A @ (sup_sup_set_nat @ B @ C)))))). % sup.assoc
thf(fact_66_sup__assoc, axiom,
    ((![X : set_nat, Y : set_nat, Z : set_nat]: ((sup_sup_set_nat @ (sup_sup_set_nat @ X @ Y) @ Z) = (sup_sup_set_nat @ X @ (sup_sup_set_nat @ Y @ Z)))))). % sup_assoc
thf(fact_67_sup_Ocommute, axiom,
    ((sup_sup_set_nat = (^[A4 : set_nat]: (^[B4 : set_nat]: (sup_sup_set_nat @ B4 @ A4)))))). % sup.commute
thf(fact_68_sup__commute, axiom,
    ((sup_sup_set_nat = (^[X4 : set_nat]: (^[Y4 : set_nat]: (sup_sup_set_nat @ Y4 @ X4)))))). % sup_commute
thf(fact_69_sup_Oleft__commute, axiom,
    ((![B : set_nat, A : set_nat, C : set_nat]: ((sup_sup_set_nat @ B @ (sup_sup_set_nat @ A @ C)) = (sup_sup_set_nat @ A @ (sup_sup_set_nat @ B @ C)))))). % sup.left_commute
thf(fact_70_sup__left__commute, axiom,
    ((![X : set_nat, Y : set_nat, Z : set_nat]: ((sup_sup_set_nat @ X @ (sup_sup_set_nat @ Y @ Z)) = (sup_sup_set_nat @ Y @ (sup_sup_set_nat @ X @ Z)))))). % sup_left_commute
thf(fact_71_UnE, axiom,
    ((![C : nat, A2 : set_nat, B2 : set_nat]: ((member_nat @ C @ (sup_sup_set_nat @ A2 @ B2)) => ((~ ((member_nat @ C @ A2))) => (member_nat @ C @ B2)))))). % UnE
thf(fact_72_UnI1, axiom,
    ((![C : nat, A2 : set_nat, B2 : set_nat]: ((member_nat @ C @ A2) => (member_nat @ C @ (sup_sup_set_nat @ A2 @ B2)))))). % UnI1
thf(fact_73_UnI2, axiom,
    ((![C : nat, B2 : set_nat, A2 : set_nat]: ((member_nat @ C @ B2) => (member_nat @ C @ (sup_sup_set_nat @ A2 @ B2)))))). % UnI2
thf(fact_74_bex__Un, axiom,
    ((![A2 : set_nat, B2 : set_nat, P : nat > $o]: ((?[X4 : nat]: (((member_nat @ X4 @ (sup_sup_set_nat @ A2 @ B2))) & ((P @ X4)))) = (((?[X4 : nat]: (((member_nat @ X4 @ A2)) & ((P @ X4))))) | ((?[X4 : nat]: (((member_nat @ X4 @ B2)) & ((P @ X4)))))))))). % bex_Un
thf(fact_75_ball__Un, axiom,
    ((![A2 : set_nat, B2 : set_nat, P : nat > $o]: ((![X4 : nat]: (((member_nat @ X4 @ (sup_sup_set_nat @ A2 @ B2))) => ((P @ X4)))) = (((![X4 : nat]: (((member_nat @ X4 @ A2)) => ((P @ X4))))) & ((![X4 : nat]: (((member_nat @ X4 @ B2)) => ((P @ X4)))))))))). % ball_Un
thf(fact_76_Un__assoc, axiom,
    ((![A2 : set_nat, B2 : set_nat, C2 : set_nat]: ((sup_sup_set_nat @ (sup_sup_set_nat @ A2 @ B2) @ C2) = (sup_sup_set_nat @ A2 @ (sup_sup_set_nat @ B2 @ C2)))))). % Un_assoc
thf(fact_77_Un__absorb, axiom,
    ((![A2 : set_nat]: ((sup_sup_set_nat @ A2 @ A2) = A2)))). % Un_absorb
thf(fact_78_Un__commute, axiom,
    ((sup_sup_set_nat = (^[A3 : set_nat]: (^[B3 : set_nat]: (sup_sup_set_nat @ B3 @ A3)))))). % Un_commute
thf(fact_79_Un__left__absorb, axiom,
    ((![A2 : set_nat, B2 : set_nat]: ((sup_sup_set_nat @ A2 @ (sup_sup_set_nat @ A2 @ B2)) = (sup_sup_set_nat @ A2 @ B2))))). % Un_left_absorb
thf(fact_80_Un__left__commute, axiom,
    ((![A2 : set_nat, B2 : set_nat, C2 : set_nat]: ((sup_sup_set_nat @ A2 @ (sup_sup_set_nat @ B2 @ C2)) = (sup_sup_set_nat @ B2 @ (sup_sup_set_nat @ A2 @ C2)))))). % Un_left_commute
thf(fact_81_Un__def, axiom,
    ((sup_sup_set_nat = (^[A3 : set_nat]: (^[B3 : set_nat]: (collect_nat @ (^[X4 : nat]: (((member_nat @ X4 @ A3)) | ((member_nat @ X4 @ B3)))))))))). % Un_def
thf(fact_82_Collect__disj__eq, axiom,
    ((![P : nat > $o, Q : nat > $o]: ((collect_nat @ (^[X4 : nat]: (((P @ X4)) | ((Q @ X4))))) = (sup_sup_set_nat @ (collect_nat @ P) @ (collect_nat @ Q)))))). % Collect_disj_eq
thf(fact_83_mult__not__zero, axiom,
    ((![A : nat, B : nat]: ((~ (((times_times_nat @ A @ B) = zero_zero_nat))) => ((~ ((A = zero_zero_nat))) & (~ ((B = zero_zero_nat)))))))). % mult_not_zero
thf(fact_84_divisors__zero, axiom,
    ((![A : nat, B : nat]: (((times_times_nat @ A @ B) = zero_zero_nat) => ((A = zero_zero_nat) | (B = zero_zero_nat)))))). % divisors_zero
thf(fact_85_no__zero__divisors, axiom,
    ((![A : nat, B : nat]: ((~ ((A = zero_zero_nat))) => ((~ ((B = zero_zero_nat))) => (~ (((times_times_nat @ A @ B) = zero_zero_nat)))))))). % no_zero_divisors
thf(fact_86_mult__left__cancel, axiom,
    ((![C : nat, A : nat, B : nat]: ((~ ((C = zero_zero_nat))) => (((times_times_nat @ C @ A) = (times_times_nat @ C @ B)) = (A = B)))))). % mult_left_cancel
thf(fact_87_mult__right__cancel, axiom,
    ((![C : nat, A : nat, B : nat]: ((~ ((C = zero_zero_nat))) => (((times_times_nat @ A @ C) = (times_times_nat @ B @ C)) = (A = B)))))). % mult_right_cancel
thf(fact_88_lambda__zero, axiom,
    (((^[H : nat]: zero_zero_nat) = (times_times_nat @ zero_zero_nat)))). % lambda_zero
thf(fact_89_verit__eq__simplify_I8_J, axiom,
    ((![X2 : num, Y2 : num]: (((bit0 @ X2) = (bit0 @ Y2)) = (X2 = Y2))))). % verit_eq_simplify(8)
thf(fact_90_push__bit__Suc, axiom,
    ((![N : nat, A : nat]: ((semiri2013084963it_nat @ (suc @ N) @ A) = (semiri2013084963it_nat @ N @ (times_times_nat @ A @ (numeral_numeral_nat @ (bit0 @ one)))))))). % push_bit_Suc
thf(fact_91_exists__least__lemma, axiom,
    ((![P : nat > $o]: ((~ ((P @ zero_zero_nat))) => ((?[X_1 : nat]: (P @ X_1)) => (?[N2 : nat]: ((~ ((P @ N2))) & (P @ (suc @ N2))))))))). % exists_least_lemma
thf(fact_92_push__bit__eq__0__iff, axiom,
    ((![N : nat, A : nat]: (((semiri2013084963it_nat @ N @ A) = zero_zero_nat) = (A = zero_zero_nat))))). % push_bit_eq_0_iff
thf(fact_93_push__bit__of__0, axiom,
    ((![N : nat]: ((semiri2013084963it_nat @ N @ zero_zero_nat) = zero_zero_nat)))). % push_bit_of_0
thf(fact_94_zero__reorient, axiom,
    ((![X : nat]: ((zero_zero_nat = X) = (X = zero_zero_nat))))). % zero_reorient
thf(fact_95_mult_Oleft__commute, axiom,
    ((![B : nat, A : nat, C : nat]: ((times_times_nat @ B @ (times_times_nat @ A @ C)) = (times_times_nat @ A @ (times_times_nat @ B @ C)))))). % mult.left_commute
thf(fact_96_mult_Ocommute, axiom,
    ((times_times_nat = (^[A4 : nat]: (^[B4 : nat]: (times_times_nat @ B4 @ A4)))))). % mult.commute
thf(fact_97_mult_Oassoc, axiom,
    ((![A : nat, B : nat, C : nat]: ((times_times_nat @ (times_times_nat @ A @ B) @ C) = (times_times_nat @ A @ (times_times_nat @ B @ C)))))). % mult.assoc
thf(fact_98_ab__semigroup__mult__class_Omult__ac_I1_J, axiom,
    ((![A : nat, B : nat, C : nat]: ((times_times_nat @ (times_times_nat @ A @ B) @ C) = (times_times_nat @ A @ (times_times_nat @ B @ C)))))). % ab_semigroup_mult_class.mult_ac(1)
thf(fact_99_push__bit__double, axiom,
    ((![N : nat, A : nat]: ((semiri2013084963it_nat @ N @ (times_times_nat @ A @ (numeral_numeral_nat @ (bit0 @ one)))) = (times_times_nat @ (semiri2013084963it_nat @ N @ A) @ (numeral_numeral_nat @ (bit0 @ one))))))). % push_bit_double
thf(fact_100_verit__eq__simplify_I10_J, axiom,
    ((![X2 : num]: (~ ((one = (bit0 @ X2))))))). % verit_eq_simplify(10)
thf(fact_101_sup__Un__eq, axiom,
    ((![R : set_nat, S : set_nat]: ((sup_sup_nat_o @ (^[X4 : nat]: (member_nat @ X4 @ R)) @ (^[X4 : nat]: (member_nat @ X4 @ S))) = (^[X4 : nat]: (member_nat @ X4 @ (sup_sup_set_nat @ R @ S))))))). % sup_Un_eq
thf(fact_102_take__bit__Suc__bit0, axiom,
    ((![N : nat, K : num]: ((semiri967765622it_nat @ (suc @ N) @ (numeral_numeral_nat @ (bit0 @ K))) = (times_times_nat @ (semiri967765622it_nat @ N @ (numeral_numeral_nat @ K)) @ (numeral_numeral_nat @ (bit0 @ one))))))). % take_bit_Suc_bit0
thf(fact_103_nat__bit__induct, axiom,
    ((![P : nat > $o, N : nat]: ((P @ zero_zero_nat) => ((![N2 : nat]: ((P @ N2) => ((ord_less_nat @ zero_zero_nat @ N2) => (P @ (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ N2))))) => ((![N2 : nat]: ((P @ N2) => (P @ (suc @ (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ N2))))) => (P @ N))))))). % nat_bit_induct
thf(fact_104_not__gr__zero, axiom,
    ((![N : nat]: ((~ ((ord_less_nat @ zero_zero_nat @ N))) = (N = zero_zero_nat))))). % not_gr_zero
thf(fact_105_numeral__less__iff, axiom,
    ((![M : num, N : num]: ((ord_less_nat @ (numeral_numeral_nat @ M) @ (numeral_numeral_nat @ N)) = (ord_less_num @ M @ N))))). % numeral_less_iff
thf(fact_106_bot__nat__0_Onot__eq__extremum, axiom,
    ((![A : nat]: ((~ ((A = zero_zero_nat))) = (ord_less_nat @ zero_zero_nat @ A))))). % bot_nat_0.not_eq_extremum
thf(fact_107_less__nat__zero__code, axiom,
    ((![N : nat]: (~ ((ord_less_nat @ N @ zero_zero_nat)))))). % less_nat_zero_code
thf(fact_108_neq0__conv, axiom,
    ((![N : nat]: ((~ ((N = zero_zero_nat))) = (ord_less_nat @ zero_zero_nat @ N))))). % neq0_conv
thf(fact_109_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_110_Suc__mono, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ M @ N) => (ord_less_nat @ (suc @ M) @ (suc @ N)))))). % Suc_mono
thf(fact_111_lessI, axiom,
    ((![N : nat]: (ord_less_nat @ N @ (suc @ N))))). % lessI
thf(fact_112_take__bit__of__0, axiom,
    ((![N : nat]: ((semiri967765622it_nat @ N @ zero_zero_nat) = zero_zero_nat)))). % take_bit_of_0
thf(fact_113_less__Suc0, axiom,
    ((![N : nat]: ((ord_less_nat @ N @ (suc @ zero_zero_nat)) = (N = zero_zero_nat))))). % less_Suc0
thf(fact_114_zero__less__Suc, axiom,
    ((![N : nat]: (ord_less_nat @ zero_zero_nat @ (suc @ N))))). % zero_less_Suc
thf(fact_115_mult__less__cancel2, axiom,
    ((![M : nat, K : nat, N : nat]: ((ord_less_nat @ (times_times_nat @ M @ K) @ (times_times_nat @ N @ K)) = (((ord_less_nat @ zero_zero_nat @ K)) & ((ord_less_nat @ M @ N))))))). % mult_less_cancel2
thf(fact_116_nat__0__less__mult__iff, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ (times_times_nat @ M @ N)) = (((ord_less_nat @ zero_zero_nat @ M)) & ((ord_less_nat @ zero_zero_nat @ N))))))). % nat_0_less_mult_iff
thf(fact_117_nat__mult__less__cancel__disj, axiom,
    ((![K : nat, M : nat, N : nat]: ((ord_less_nat @ (times_times_nat @ K @ M) @ (times_times_nat @ K @ N)) = (((ord_less_nat @ zero_zero_nat @ K)) & ((ord_less_nat @ M @ N))))))). % nat_mult_less_cancel_disj
thf(fact_118_take__bit__0, axiom,
    ((![A : nat]: ((semiri967765622it_nat @ zero_zero_nat @ A) = zero_zero_nat)))). % take_bit_0
thf(fact_119_gr__zeroI, axiom,
    ((![N : nat]: ((~ ((N = zero_zero_nat))) => (ord_less_nat @ zero_zero_nat @ N))))). % gr_zeroI
thf(fact_120_not__less__zero, axiom,
    ((![N : nat]: (~ ((ord_less_nat @ N @ zero_zero_nat)))))). % not_less_zero
thf(fact_121_gr__implies__not__zero, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ M @ N) => (~ ((N = zero_zero_nat))))))). % gr_implies_not_zero
thf(fact_122_zero__less__iff__neq__zero, axiom,
    ((![N : nat]: ((ord_less_nat @ zero_zero_nat @ N) = (~ ((N = zero_zero_nat))))))). % zero_less_iff_neq_zero
thf(fact_123_verit__comp__simplify1_I1_J, axiom,
    ((![A : nat]: (~ ((ord_less_nat @ A @ A)))))). % verit_comp_simplify1(1)
thf(fact_124_sup_Ostrict__coboundedI2, axiom,
    ((![C : set_nat, B : set_nat, A : set_nat]: ((ord_less_set_nat @ C @ B) => (ord_less_set_nat @ C @ (sup_sup_set_nat @ A @ B)))))). % sup.strict_coboundedI2
thf(fact_125_sup_Ostrict__coboundedI2, axiom,
    ((![C : nat, B : nat, A : nat]: ((ord_less_nat @ C @ B) => (ord_less_nat @ C @ (sup_sup_nat @ A @ B)))))). % sup.strict_coboundedI2
thf(fact_126_sup_Ostrict__coboundedI1, axiom,
    ((![C : set_nat, A : set_nat, B : set_nat]: ((ord_less_set_nat @ C @ A) => (ord_less_set_nat @ C @ (sup_sup_set_nat @ A @ B)))))). % sup.strict_coboundedI1
thf(fact_127_sup_Ostrict__coboundedI1, axiom,
    ((![C : nat, A : nat, B : nat]: ((ord_less_nat @ C @ A) => (ord_less_nat @ C @ (sup_sup_nat @ A @ B)))))). % sup.strict_coboundedI1
thf(fact_128_sup_Ostrict__order__iff, axiom,
    ((ord_less_set_nat = (^[B4 : set_nat]: (^[A4 : set_nat]: (((A4 = (sup_sup_set_nat @ A4 @ B4))) & ((~ ((A4 = B4)))))))))). % sup.strict_order_iff
thf(fact_129_sup_Ostrict__order__iff, axiom,
    ((ord_less_nat = (^[B4 : nat]: (^[A4 : nat]: (((A4 = (sup_sup_nat @ A4 @ B4))) & ((~ ((A4 = B4)))))))))). % sup.strict_order_iff
thf(fact_130_sup_Ostrict__boundedE, axiom,
    ((![B : set_nat, C : set_nat, A : set_nat]: ((ord_less_set_nat @ (sup_sup_set_nat @ B @ C) @ A) => (~ (((ord_less_set_nat @ B @ A) => (~ ((ord_less_set_nat @ C @ A)))))))))). % sup.strict_boundedE
thf(fact_131_sup_Ostrict__boundedE, axiom,
    ((![B : nat, C : nat, A : nat]: ((ord_less_nat @ (sup_sup_nat @ B @ C) @ A) => (~ (((ord_less_nat @ B @ A) => (~ ((ord_less_nat @ C @ A)))))))))). % sup.strict_boundedE
thf(fact_132_less__supI2, axiom,
    ((![X : set_nat, B : set_nat, A : set_nat]: ((ord_less_set_nat @ X @ B) => (ord_less_set_nat @ X @ (sup_sup_set_nat @ A @ B)))))). % less_supI2
thf(fact_133_less__supI2, axiom,
    ((![X : nat, B : nat, A : nat]: ((ord_less_nat @ X @ B) => (ord_less_nat @ X @ (sup_sup_nat @ A @ B)))))). % less_supI2
thf(fact_134_less__supI1, axiom,
    ((![X : set_nat, A : set_nat, B : set_nat]: ((ord_less_set_nat @ X @ A) => (ord_less_set_nat @ X @ (sup_sup_set_nat @ A @ B)))))). % less_supI1
thf(fact_135_less__supI1, axiom,
    ((![X : nat, A : nat, B : nat]: ((ord_less_nat @ X @ A) => (ord_less_nat @ X @ (sup_sup_nat @ A @ B)))))). % less_supI1
thf(fact_136_bot__nat__0_Oextremum__strict, axiom,
    ((![A : nat]: (~ ((ord_less_nat @ A @ zero_zero_nat)))))). % bot_nat_0.extremum_strict
thf(fact_137_infinite__descent0, axiom,
    ((![P : nat > $o, N : nat]: ((P @ zero_zero_nat) => ((![N2 : nat]: ((ord_less_nat @ zero_zero_nat @ N2) => ((~ ((P @ N2))) => (?[M3 : nat]: ((ord_less_nat @ M3 @ N2) & (~ ((P @ M3)))))))) => (P @ N)))))). % infinite_descent0
thf(fact_138_gr__implies__not0, axiom,
    ((![M : nat, N : nat]: ((ord_less_nat @ M @ N) => (~ ((N = zero_zero_nat))))))). % gr_implies_not0
thf(fact_139_less__zeroE, axiom,
    ((![N : nat]: (~ ((ord_less_nat @ N @ zero_zero_nat)))))). % less_zeroE
thf(fact_140_not__less0, axiom,
    ((![N : nat]: (~ ((ord_less_nat @ N @ zero_zero_nat)))))). % not_less0
thf(fact_141_not__gr0, axiom,
    ((![N : nat]: ((~ ((ord_less_nat @ zero_zero_nat @ N))) = (N = zero_zero_nat))))). % not_gr0

% Conjectures (1)
thf(conj_0, conjecture,
    (((set_or562006527an_nat @ zero_zero_nat @ (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ n)) = (sup_sup_set_nat @ (collect_nat @ (^[Y4 : nat]: (?[X4 : nat]: (((member_nat @ X4 @ (set_or562006527an_nat @ zero_zero_nat @ n))) & ((Y4 = (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ X4))))))) @ (collect_nat @ (^[Y4 : nat]: (?[X4 : nat]: (((member_nat @ X4 @ (set_or562006527an_nat @ zero_zero_nat @ n))) & ((Y4 = (suc @ (times_times_nat @ (numeral_numeral_nat @ (bit0 @ one)) @ X4)))))))))))).
