TPTP Problem File: ITP078^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : ITP078^1 : TPTP v9.0.0. Released v7.5.0.
% Domain   : Interactive Theorem Proving
% Problem  : Sledgehammer Hilbert_Function problem prob_85__11621656_1
% Version  : Especial.
% English  :

% Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
%          : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% Source   : [Des21]
% Names    : Hilbert_Function/prob_85__11621656_1 [Des21]

% Status   : Theorem
% Rating   : 0.12 v9.0.0, 0.30 v8.2.0, 0.23 v8.1.0, 0.27 v7.5.0
% Syntax   : Number of formulae    :  469 ( 228 unt; 112 typ;   0 def)
%            Number of atoms       :  857 ( 438 equ;   0 cnn)
%            Maximal formula atoms :    5 (   2 avg)
%            Number of connectives : 2404 (  69   ~;   4   |;  37   &;2049   @)
%                                         (   0 <=>; 245  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   13 (   5 avg)
%            Number of types       :   15 (  14 usr)
%            Number of type conns  :  493 ( 493   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  101 (  98 usr;   9 con; 0-3 aty)
%            Number of variables   :  818 (  31   ^; 762   !;  25   ?; 818   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Sledgehammer 2021-02-23 15:36:44.233
%------------------------------------------------------------------------------
% Could-be-implicit typings (14)
thf(ty_n_t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    set_list_a: $tType ).

thf(ty_n_t__Multiset__Omultiset_It__Nat__Onat_J,type,
    multiset_nat: $tType ).

thf(ty_n_t__Multiset__Omultiset_It__Int__Oint_J,type,
    multiset_int: $tType ).

thf(ty_n_t__Multiset__Omultiset_Itf__a_J,type,
    multiset_a: $tType ).

thf(ty_n_t__Set__Oset_It__Real__Oreal_J,type,
    set_real: $tType ).

thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
    list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
    set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Int__Oint_J,type,
    set_int: $tType ).

thf(ty_n_t__List__Olist_Itf__a_J,type,
    list_a: $tType ).

thf(ty_n_t__Set__Oset_Itf__a_J,type,
    set_a: $tType ).

thf(ty_n_t__Real__Oreal,type,
    real: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_t__Int__Oint,type,
    int: $tType ).

thf(ty_n_tf__a,type,
    a: $tType ).

% Explicit typings (98)
thf(sy_c_Fields_Oinverse__class_Oinverse_001t__Real__Oreal,type,
    inverse_inverse_real: real > real ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001t__Int__Oint,type,
    bij_betw_nat_int: ( nat > int ) > set_nat > set_int > $o ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001t__Nat__Onat,type,
    bij_betw_nat_nat: ( nat > nat ) > set_nat > set_nat > $o ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001t__Real__Oreal,type,
    bij_betw_nat_real: ( nat > real ) > set_nat > set_real > $o ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001tf__a,type,
    bij_betw_nat_a: ( nat > a ) > set_nat > set_a > $o ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Int__Oint_001t__Nat__Onat,type,
    comp_int_int_nat: ( int > int ) > ( nat > int ) > nat > int ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_int_nat_nat: ( int > nat ) > ( nat > int ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_Itf__a_J_001t__List__Olist_It__Nat__Onat_J,type,
    comp_l728830689st_nat: ( list_nat > list_a ) > ( list_nat > list_nat ) > list_nat > list_a ).

thf(sy_c_Fun_Ocomp_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J_001t__List__Olist_It__Nat__Onat_J,type,
    comp_l1234327363st_nat: ( list_a > list_a ) > ( list_nat > list_a ) > list_nat > list_a ).

thf(sy_c_Fun_Ocomp_001t__Multiset__Omultiset_It__Nat__Onat_J_001t__Multiset__Omultiset_It__Nat__Onat_J_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    comp_m1386984005et_nat: ( multiset_nat > multiset_nat ) > ( multiset_nat > multiset_nat ) > multiset_nat > multiset_nat ).

thf(sy_c_Fun_Ocomp_001t__Multiset__Omultiset_It__Nat__Onat_J_001t__Multiset__Omultiset_Itf__a_J_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    comp_m1844659105et_nat: ( multiset_nat > multiset_a ) > ( multiset_nat > multiset_nat ) > multiset_nat > multiset_a ).

thf(sy_c_Fun_Ocomp_001t__Multiset__Omultiset_It__Nat__Onat_J_001t__Nat__Onat_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    comp_m346803701et_nat: ( multiset_nat > nat ) > ( multiset_nat > multiset_nat ) > multiset_nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Multiset__Omultiset_Itf__a_J_001t__Multiset__Omultiset_It__Nat__Onat_J_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    comp_m1962190563et_nat: ( multiset_a > multiset_nat ) > ( multiset_nat > multiset_a ) > multiset_nat > multiset_nat ).

thf(sy_c_Fun_Ocomp_001t__Multiset__Omultiset_Itf__a_J_001t__Multiset__Omultiset_Itf__a_J_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    comp_m540523139et_nat: ( multiset_a > multiset_a ) > ( multiset_nat > multiset_a ) > multiset_nat > multiset_a ).

thf(sy_c_Fun_Ocomp_001t__Multiset__Omultiset_Itf__a_J_001t__Nat__Onat_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    comp_m1512105363et_nat: ( multiset_a > nat ) > ( multiset_nat > multiset_a ) > multiset_nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Int__Oint_001t__Nat__Onat,type,
    comp_nat_int_nat: ( nat > int ) > ( nat > nat ) > nat > int ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_nat_nat_nat: ( nat > nat ) > ( nat > nat ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001tf__a_001t__Nat__Onat,type,
    comp_nat_a_nat: ( nat > a ) > ( nat > nat ) > nat > a ).

thf(sy_c_Fun_Ocomp_001tf__a_001t__Nat__Onat_001t__Nat__Onat,type,
    comp_a_nat_nat: ( a > nat ) > ( nat > a ) > nat > nat ).

thf(sy_c_Fun_Ocomp_001tf__a_001tf__a_001t__Nat__Onat,type,
    comp_a_a_nat: ( a > a ) > ( nat > a ) > nat > a ).

thf(sy_c_Fun_Oinj__on_001t__Int__Oint_001t__Int__Oint,type,
    inj_on_int_int: ( int > int ) > set_int > $o ).

thf(sy_c_Fun_Oinj__on_001t__Int__Oint_001t__Nat__Onat,type,
    inj_on_int_nat: ( int > nat ) > set_int > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Int__Oint,type,
    inj_on_nat_int: ( nat > int ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Nat__Onat,type,
    inj_on_nat_nat: ( nat > nat ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Real__Oreal,type,
    inj_on_nat_real: ( nat > real ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001tf__a,type,
    inj_on_nat_a: ( nat > a ) > set_nat > $o ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Int__Oint,type,
    uminus_uminus_int: int > int ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Real__Oreal,type,
    uminus_uminus_real: real > real ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Int__Oint,type,
    zero_zero_int: int ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    zero_z2005226153et_nat: multiset_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Multiset__Omultiset_Itf__a_J,type,
    zero_zero_multiset_a: multiset_a ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Real__Oreal,type,
    zero_zero_real: real ).

thf(sy_c_If_001t__Int__Oint,type,
    if_int: $o > int > int > int ).

thf(sy_c_If_001t__Nat__Onat,type,
    if_nat: $o > nat > nat > nat ).

thf(sy_c_If_001t__Real__Oreal,type,
    if_real: $o > real > real > real ).

thf(sy_c_Int_Onat,type,
    nat2: int > nat ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Int__Oint,type,
    ring_1_of_int_int: int > int ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Real__Oreal,type,
    ring_1_of_int_real: int > real ).

thf(sy_c_List_Ogen__length_001tf__a,type,
    gen_length_a: nat > list_a > nat ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Nat__Onat,type,
    map_nat_nat: ( nat > nat ) > list_nat > list_nat ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001tf__a,type,
    map_nat_a: ( nat > a ) > list_nat > list_a ).

thf(sy_c_List_Olist_Omap_001tf__a_001t__Nat__Onat,type,
    map_a_nat: ( a > nat ) > list_a > list_nat ).

thf(sy_c_List_Olist_Omap_001tf__a_001tf__a,type,
    map_a_a: ( a > a ) > list_a > list_a ).

thf(sy_c_List_Olist__ex_001tf__a,type,
    list_ex_a: ( a > $o ) > list_a > $o ).

thf(sy_c_List_Omap__tailrec_001t__Nat__Onat_001tf__a,type,
    map_tailrec_nat_a: ( nat > a ) > list_nat > list_a ).

thf(sy_c_List_Onth_001t__Nat__Onat,type,
    nth_nat: list_nat > nat > nat ).

thf(sy_c_List_Onth_001tf__a,type,
    nth_a: list_a > nat > a ).

thf(sy_c_List_Oupt,type,
    upt: nat > nat > list_nat ).

thf(sy_c_Multiset_Oimage__mset_001t__Nat__Onat_001t__Int__Oint,type,
    image_mset_nat_int: ( nat > int ) > multiset_nat > multiset_int ).

thf(sy_c_Multiset_Oimage__mset_001t__Nat__Onat_001t__Nat__Onat,type,
    image_mset_nat_nat: ( nat > nat ) > multiset_nat > multiset_nat ).

thf(sy_c_Multiset_Oimage__mset_001t__Nat__Onat_001tf__a,type,
    image_mset_nat_a: ( nat > a ) > multiset_nat > multiset_a ).

thf(sy_c_Multiset_Oimage__mset_001tf__a_001t__Nat__Onat,type,
    image_mset_a_nat: ( a > nat ) > multiset_a > multiset_nat ).

thf(sy_c_Multiset_Oimage__mset_001tf__a_001tf__a,type,
    image_mset_a_a: ( a > a ) > multiset_a > multiset_a ).

thf(sy_c_Multiset_Omset_001t__Nat__Onat,type,
    mset_nat: list_nat > multiset_nat ).

thf(sy_c_Multiset_Omset_001tf__a,type,
    mset_a: list_a > multiset_a ).

thf(sy_c_Multiset_Omset__set_001t__Int__Oint,type,
    mset_set_int: set_int > multiset_int ).

thf(sy_c_Multiset_Omset__set_001t__Nat__Onat,type,
    mset_set_nat: set_nat > multiset_nat ).

thf(sy_c_Multiset_Omset__set_001tf__a,type,
    mset_set_a: set_a > multiset_a ).

thf(sy_c_Multiset_Osize__multiset_001t__Nat__Onat,type,
    size_multiset_nat: ( nat > nat ) > multiset_nat > nat ).

thf(sy_c_Multiset_Osize__multiset_001tf__a,type,
    size_multiset_a: ( a > nat ) > multiset_a > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Int__Oint,type,
    semiri2019852685at_int: nat > int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Nat__Onat,type,
    semiri1382578993at_nat: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Real__Oreal,type,
    semiri2110766477t_real: nat > real ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
    size_size_list_nat: list_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__a_J,type,
    size_size_list_a: list_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Multiset__Omultiset_It__Nat__Onat_J,type,
    size_s1679505588et_nat: multiset_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Multiset__Omultiset_Itf__a_J,type,
    size_size_multiset_a: multiset_a > nat ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Int__Oint,type,
    ord_less_int: int > int > $o ).

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__Real__Oreal,type,
    ord_less_real: real > real > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Int__Oint_J,type,
    ord_less_set_int: set_int > set_int > $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_Orderings_Oord__class_Oless_001t__Set__Oset_It__Real__Oreal_J,type,
    ord_less_set_real: set_real > set_real > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Int__Oint,type,
    ord_less_eq_int: int > int > $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__Real__Oreal,type,
    ord_less_eq_real: real > real > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Int__Oint_J,type,
    ord_less_eq_set_int: set_int > set_int > $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_Oimage_001t__Int__Oint_001t__Int__Oint,type,
    image_int_int: ( int > int ) > set_int > set_int ).

thf(sy_c_Set_Oimage_001t__Int__Oint_001t__Nat__Onat,type,
    image_int_nat: ( int > nat ) > set_int > set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Int__Oint,type,
    image_nat_int: ( nat > int ) > set_nat > set_int ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Nat__Onat,type,
    image_nat_nat: ( nat > nat ) > set_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Real__Oreal,type,
    image_nat_real: ( nat > real ) > set_nat > set_real ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001tf__a,type,
    image_nat_a: ( nat > a ) > set_nat > set_a ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Int__Oint,type,
    set_or1199280219an_int: int > int > set_int ).

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_OatLeastLessThan_001t__Real__Oreal,type,
    set_or2075149659n_real: real > real > set_real ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Int__Oint,type,
    set_ord_lessThan_int: int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Nat__Onat,type,
    set_ord_lessThan_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Real__Oreal,type,
    set_or1211449801n_real: real > set_real ).

thf(sy_c_member_001t__Int__Oint,type,
    member_int: int > set_int > $o ).

thf(sy_c_member_001t__List__Olist_Itf__a_J,type,
    member_list_a: list_a > set_list_a > $o ).

thf(sy_c_member_001t__Nat__Onat,type,
    member_nat: nat > set_nat > $o ).

thf(sy_c_member_001t__Real__Oreal,type,
    member_real: real > set_real > $o ).

thf(sy_v_f,type,
    f: nat > nat ).

thf(sy_v_xs,type,
    xs: list_a ).

thf(sy_v_ys,type,
    ys: list_a ).

% Relevant facts (349)
thf(fact_0__C1_C,axiom,
    inj_on_nat_nat @ f @ ( set_or562006527an_nat @ zero_zero_nat @ ( size_size_list_a @ xs ) ) ).

% "1"
thf(fact_1_calculation,axiom,
    ( ( mset_a @ xs )
    = ( image_mset_nat_a @ ( nth_a @ ys ) @ ( image_mset_nat_nat @ f @ ( mset_set_nat @ ( set_or562006527an_nat @ zero_zero_nat @ ( size_size_list_a @ xs ) ) ) ) ) ) ).

% calculation
thf(fact_2_assms_I2_J,axiom,
    ! [I: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_a @ xs ) )
     => ( ( nth_a @ xs @ I )
        = ( nth_a @ ys @ ( f @ I ) ) ) ) ).

% assms(2)
thf(fact_3__C2_C,axiom,
    ( ( image_nat_nat @ f @ ( set_or562006527an_nat @ zero_zero_nat @ ( size_size_list_a @ xs ) ) )
    = ( set_or562006527an_nat @ zero_zero_nat @ ( size_size_list_a @ ys ) ) ) ).

% "2"
thf(fact_4_assms_I1_J,axiom,
    bij_betw_nat_nat @ f @ ( set_ord_lessThan_nat @ ( size_size_list_a @ xs ) ) @ ( set_ord_lessThan_nat @ ( size_size_list_a @ ys ) ) ).

% assms(1)
thf(fact_5__092_060open_062mset_A_Imap_A_I_I_B_J_Ays_A_092_060circ_062_Af_J_A_0910_O_O_060length_Axs_093_J_A_061_Aimage__mset_A_I_I_B_J_Ays_J_A_Iimage__mset_Af_A_Imset__set_A_1230_O_O_060length_Axs_125_J_J_092_060close_062,axiom,
    ( ( mset_a @ ( map_nat_a @ ( comp_nat_a_nat @ ( nth_a @ ys ) @ f ) @ ( upt @ zero_zero_nat @ ( size_size_list_a @ xs ) ) ) )
    = ( image_mset_nat_a @ ( nth_a @ ys ) @ ( image_mset_nat_nat @ f @ ( mset_set_nat @ ( set_or562006527an_nat @ zero_zero_nat @ ( size_size_list_a @ xs ) ) ) ) ) ) ).

% \<open>mset (map ((!) ys \<circ> f) [0..<length xs]) = image_mset ((!) ys) (image_mset f (mset_set {0..<length xs}))\<close>
thf(fact_6__092_060open_062xs_A_061_Amap_A_I_I_B_J_Ays_A_092_060circ_062_Af_J_A_0910_O_O_060length_Axs_093_092_060close_062,axiom,
    ( xs
    = ( map_nat_a @ ( comp_nat_a_nat @ ( nth_a @ ys ) @ f ) @ ( upt @ zero_zero_nat @ ( size_size_list_a @ xs ) ) ) ) ).

% \<open>xs = map ((!) ys \<circ> f) [0..<length xs]\<close>
thf(fact_7_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs: list_a] :
      ( ( size_size_list_a @ Xs )
      = N ) ).

% Ex_list_of_length
thf(fact_8_neq__if__length__neq,axiom,
    ! [Xs2: list_a,Ys: list_a] :
      ( ( ( size_size_list_a @ Xs2 )
       != ( size_size_list_a @ Ys ) )
     => ( Xs2 != Ys ) ) ).

% neq_if_length_neq
thf(fact_9_size__neq__size__imp__neq,axiom,
    ! [X: list_a,Y: list_a] :
      ( ( ( size_size_list_a @ X )
       != ( size_size_list_a @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_10_not__gr__zero,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_11_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_12_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_13_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% neq0_conv
thf(fact_14_map__map,axiom,
    ! [F: a > a,G: nat > a,Xs2: list_nat] :
      ( ( map_a_a @ F @ ( map_nat_a @ G @ Xs2 ) )
      = ( map_nat_a @ ( comp_a_a_nat @ F @ G ) @ Xs2 ) ) ).

% map_map
thf(fact_15_map__map,axiom,
    ! [F: nat > a,G: nat > nat,Xs2: list_nat] :
      ( ( map_nat_a @ F @ ( map_nat_nat @ G @ Xs2 ) )
      = ( map_nat_a @ ( comp_nat_a_nat @ F @ G ) @ Xs2 ) ) ).

% map_map
thf(fact_16_List_Omap_Ocomp,axiom,
    ! [F: a > a,G: nat > a] :
      ( ( comp_l1234327363st_nat @ ( map_a_a @ F ) @ ( map_nat_a @ G ) )
      = ( map_nat_a @ ( comp_a_a_nat @ F @ G ) ) ) ).

% List.map.comp
thf(fact_17_List_Omap_Ocomp,axiom,
    ! [F: nat > a,G: nat > nat] :
      ( ( comp_l728830689st_nat @ ( map_nat_a @ F ) @ ( map_nat_nat @ G ) )
      = ( map_nat_a @ ( comp_nat_a_nat @ F @ G ) ) ) ).

% List.map.comp
thf(fact_18_map__comp__map,axiom,
    ! [F: a > a,G: nat > a] :
      ( ( comp_l1234327363st_nat @ ( map_a_a @ F ) @ ( map_nat_a @ G ) )
      = ( map_nat_a @ ( comp_a_a_nat @ F @ G ) ) ) ).

% map_comp_map
thf(fact_19_map__comp__map,axiom,
    ! [F: nat > a,G: nat > nat] :
      ( ( comp_l728830689st_nat @ ( map_nat_a @ F ) @ ( map_nat_nat @ G ) )
      = ( map_nat_a @ ( comp_nat_a_nat @ F @ G ) ) ) ).

% map_comp_map
thf(fact_20_list_Omap__comp,axiom,
    ! [G: a > a,F: nat > a,V: list_nat] :
      ( ( map_a_a @ G @ ( map_nat_a @ F @ V ) )
      = ( map_nat_a @ ( comp_a_a_nat @ G @ F ) @ V ) ) ).

% list.map_comp
thf(fact_21_list_Omap__comp,axiom,
    ! [G: nat > a,F: nat > nat,V: list_nat] :
      ( ( map_nat_a @ G @ ( map_nat_nat @ F @ V ) )
      = ( map_nat_a @ ( comp_nat_a_nat @ G @ F ) @ V ) ) ).

% list.map_comp
thf(fact_22_List_Omap_Ocompositionality,axiom,
    ! [F: a > a,G: nat > a,List: list_nat] :
      ( ( map_a_a @ F @ ( map_nat_a @ G @ List ) )
      = ( map_nat_a @ ( comp_a_a_nat @ F @ G ) @ List ) ) ).

% List.map.compositionality
thf(fact_23_List_Omap_Ocompositionality,axiom,
    ! [F: nat > a,G: nat > nat,List: list_nat] :
      ( ( map_nat_a @ F @ ( map_nat_nat @ G @ List ) )
      = ( map_nat_a @ ( comp_nat_a_nat @ F @ G ) @ List ) ) ).

% List.map.compositionality
thf(fact_24_length__map,axiom,
    ! [F: nat > a,Xs2: list_nat] :
      ( ( size_size_list_a @ ( map_nat_a @ F @ Xs2 ) )
      = ( size_size_list_nat @ Xs2 ) ) ).

% length_map
thf(fact_25_length__map,axiom,
    ! [F: a > a,Xs2: list_a] :
      ( ( size_size_list_a @ ( map_a_a @ F @ Xs2 ) )
      = ( size_size_list_a @ Xs2 ) ) ).

% length_map
thf(fact_26_nth__map,axiom,
    ! [N: nat,Xs2: list_nat,F: nat > a] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs2 ) )
     => ( ( nth_a @ ( map_nat_a @ F @ Xs2 ) @ N )
        = ( F @ ( nth_nat @ Xs2 @ N ) ) ) ) ).

% nth_map
thf(fact_27_nth__map,axiom,
    ! [N: nat,Xs2: list_a,F: a > a] :
      ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs2 ) )
     => ( ( nth_a @ ( map_a_a @ F @ Xs2 ) @ N )
        = ( F @ ( nth_a @ Xs2 @ N ) ) ) ) ).

% nth_map
thf(fact_28__092_060open_062mset_Axs_A_061_Amset_A_Imap_A_I_I_B_J_Ays_A_092_060circ_062_Af_J_A_0910_O_O_060length_Axs_093_J_092_060close_062,axiom,
    ( ( mset_a @ xs )
    = ( mset_a @ ( map_nat_a @ ( comp_nat_a_nat @ ( nth_a @ ys ) @ f ) @ ( upt @ zero_zero_nat @ ( size_size_list_a @ xs ) ) ) ) ) ).

% \<open>mset xs = mset (map ((!) ys \<circ> f) [0..<length xs])\<close>
thf(fact_29_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_30_less__not__refl,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_not_refl
thf(fact_31_less__not__refl2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( M != N ) ) ).

% less_not_refl2
thf(fact_32_less__not__refl3,axiom,
    ! [S: nat,T: nat] :
      ( ( ord_less_nat @ S @ T )
     => ( S != T ) ) ).

% less_not_refl3
thf(fact_33_less__irrefl__nat,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_irrefl_nat
thf(fact_34_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_35_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_36_linorder__neqE__nat,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
     => ( ~ ( ord_less_nat @ X @ Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_neqE_nat
thf(fact_37_map__eq__imp__length__eq,axiom,
    ! [F: nat > a,Xs2: list_nat,G: nat > a,Ys: list_nat] :
      ( ( ( map_nat_a @ F @ Xs2 )
        = ( map_nat_a @ G @ Ys ) )
     => ( ( size_size_list_nat @ Xs2 )
        = ( size_size_list_nat @ Ys ) ) ) ).

% map_eq_imp_length_eq
thf(fact_38_map__eq__imp__length__eq,axiom,
    ! [F: nat > a,Xs2: list_nat,G: a > a,Ys: list_a] :
      ( ( ( map_nat_a @ F @ Xs2 )
        = ( map_a_a @ G @ Ys ) )
     => ( ( size_size_list_nat @ Xs2 )
        = ( size_size_list_a @ Ys ) ) ) ).

% map_eq_imp_length_eq
thf(fact_39_map__eq__imp__length__eq,axiom,
    ! [F: a > a,Xs2: list_a,G: nat > a,Ys: list_nat] :
      ( ( ( map_a_a @ F @ Xs2 )
        = ( map_nat_a @ G @ Ys ) )
     => ( ( size_size_list_a @ Xs2 )
        = ( size_size_list_nat @ Ys ) ) ) ).

% map_eq_imp_length_eq
thf(fact_40_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_41_gr__implies__not__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not_zero
thf(fact_42_not__less__zero,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less_zero
thf(fact_43_gr__zeroI,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr_zeroI
thf(fact_44_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_45_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ~ ( P @ N2 )
             => ? [M2: nat] :
                  ( ( ord_less_nat @ M2 @ N2 )
                  & ~ ( P @ M2 ) ) ) )
       => ( P @ N ) ) ) ).

% infinite_descent0
thf(fact_46_gr__implies__not0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_47_less__zeroE,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_zeroE
thf(fact_48_not__less0,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less0
thf(fact_49_not__gr0,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr0
thf(fact_50_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr0I
thf(fact_51_length__induct,axiom,
    ! [P: list_a > $o,Xs2: list_a] :
      ( ! [Xs: list_a] :
          ( ! [Ys2: list_a] :
              ( ( ord_less_nat @ ( size_size_list_a @ Ys2 ) @ ( size_size_list_a @ Xs ) )
             => ( P @ Ys2 ) )
         => ( P @ Xs ) )
     => ( P @ Xs2 ) ) ).

% length_induct
thf(fact_52_all__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M3: nat] :
            ( ( ord_less_nat @ M3 @ N )
           => ( P @ M3 ) ) )
      = ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_or562006527an_nat @ zero_zero_nat @ N ) )
           => ( P @ X2 ) ) ) ) ).

% all_nat_less_eq
thf(fact_53_ex__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M3: nat] :
            ( ( ord_less_nat @ M3 @ N )
            & ( P @ M3 ) ) )
      = ( ? [X2: nat] :
            ( ( member_nat @ X2 @ ( set_or562006527an_nat @ zero_zero_nat @ N ) )
            & ( P @ X2 ) ) ) ) ).

% ex_nat_less_eq
thf(fact_54_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y2: list_a,Z: list_a] : ( Y2 = Z ) )
    = ( ^ [Xs3: list_a,Ys3: list_a] :
          ( ( ( size_size_list_a @ Xs3 )
            = ( size_size_list_a @ Ys3 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs3 ) )
             => ( ( nth_a @ Xs3 @ I2 )
                = ( nth_a @ Ys3 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_55_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > a > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X3: a] : ( P @ I2 @ X3 ) ) )
      = ( ? [Xs3: list_a] :
            ( ( ( size_size_list_a @ Xs3 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_a @ Xs3 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_56_nth__equalityI,axiom,
    ! [Xs2: list_a,Ys: list_a] :
      ( ( ( size_size_list_a @ Xs2 )
        = ( size_size_list_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_a @ Xs2 ) )
           => ( ( nth_a @ Xs2 @ I3 )
              = ( nth_a @ Ys @ I3 ) ) )
       => ( Xs2 = Ys ) ) ) ).

% nth_equalityI
thf(fact_57_zero__reorient,axiom,
    ! [X: nat] :
      ( ( zero_zero_nat = X )
      = ( X = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_58_zero__reorient,axiom,
    ! [X: int] :
      ( ( zero_zero_int = X )
      = ( X = zero_zero_int ) ) ).

% zero_reorient
thf(fact_59_zero__reorient,axiom,
    ! [X: real] :
      ( ( zero_zero_real = X )
      = ( X = zero_zero_real ) ) ).

% zero_reorient
thf(fact_60_mset__map,axiom,
    ! [F: a > a,Xs2: list_a] :
      ( ( mset_a @ ( map_a_a @ F @ Xs2 ) )
      = ( image_mset_a_a @ F @ ( mset_a @ Xs2 ) ) ) ).

% mset_map
thf(fact_61_mset__map,axiom,
    ! [F: a > nat,Xs2: list_a] :
      ( ( mset_nat @ ( map_a_nat @ F @ Xs2 ) )
      = ( image_mset_a_nat @ F @ ( mset_a @ Xs2 ) ) ) ).

% mset_map
thf(fact_62_mset__map,axiom,
    ! [F: nat > a,Xs2: list_nat] :
      ( ( mset_a @ ( map_nat_a @ F @ Xs2 ) )
      = ( image_mset_nat_a @ F @ ( mset_nat @ Xs2 ) ) ) ).

% mset_map
thf(fact_63_mset__map,axiom,
    ! [F: nat > nat,Xs2: list_nat] :
      ( ( mset_nat @ ( map_nat_nat @ F @ Xs2 ) )
      = ( image_mset_nat_nat @ F @ ( mset_nat @ Xs2 ) ) ) ).

% mset_map
thf(fact_64_size__mset,axiom,
    ! [Xs2: list_nat] :
      ( ( size_s1679505588et_nat @ ( mset_nat @ Xs2 ) )
      = ( size_size_list_nat @ Xs2 ) ) ).

% size_mset
thf(fact_65_size__mset,axiom,
    ! [Xs2: list_a] :
      ( ( size_size_multiset_a @ ( mset_a @ Xs2 ) )
      = ( size_size_list_a @ Xs2 ) ) ).

% size_mset
thf(fact_66_lessThan__iff,axiom,
    ! [I: int,K: int] :
      ( ( member_int @ I @ ( set_ord_lessThan_int @ K ) )
      = ( ord_less_int @ I @ K ) ) ).

% lessThan_iff
thf(fact_67_lessThan__iff,axiom,
    ! [I: real,K: real] :
      ( ( member_real @ I @ ( set_or1211449801n_real @ K ) )
      = ( ord_less_real @ I @ K ) ) ).

% lessThan_iff
thf(fact_68_lessThan__iff,axiom,
    ! [I: nat,K: nat] :
      ( ( member_nat @ I @ ( set_ord_lessThan_nat @ K ) )
      = ( ord_less_nat @ I @ K ) ) ).

% lessThan_iff
thf(fact_69_image__mset__mset__set,axiom,
    ! [F: nat > int,A2: set_nat] :
      ( ( inj_on_nat_int @ F @ A2 )
     => ( ( image_mset_nat_int @ F @ ( mset_set_nat @ A2 ) )
        = ( mset_set_int @ ( image_nat_int @ F @ A2 ) ) ) ) ).

% image_mset_mset_set
thf(fact_70_image__mset__mset__set,axiom,
    ! [F: nat > a,A2: set_nat] :
      ( ( inj_on_nat_a @ F @ A2 )
     => ( ( image_mset_nat_a @ F @ ( mset_set_nat @ A2 ) )
        = ( mset_set_a @ ( image_nat_a @ F @ A2 ) ) ) ) ).

% image_mset_mset_set
thf(fact_71_image__mset__mset__set,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( image_mset_nat_nat @ F @ ( mset_set_nat @ A2 ) )
        = ( mset_set_nat @ ( image_nat_nat @ F @ A2 ) ) ) ) ).

% image_mset_mset_set
thf(fact_72_lessThan__atLeast0,axiom,
    ( set_ord_lessThan_nat
    = ( set_or562006527an_nat @ zero_zero_nat ) ) ).

% lessThan_atLeast0
thf(fact_73_bij__betw__def,axiom,
    ( bij_betw_nat_int
    = ( ^ [F2: nat > int,A3: set_nat,B: set_int] :
          ( ( inj_on_nat_int @ F2 @ A3 )
          & ( ( image_nat_int @ F2 @ A3 )
            = B ) ) ) ) ).

% bij_betw_def
thf(fact_74_bij__betw__def,axiom,
    ( bij_betw_nat_nat
    = ( ^ [F2: nat > nat,A3: set_nat,B: set_nat] :
          ( ( inj_on_nat_nat @ F2 @ A3 )
          & ( ( image_nat_nat @ F2 @ A3 )
            = B ) ) ) ) ).

% bij_betw_def
thf(fact_75_bij__betw__imageI,axiom,
    ! [F: nat > int,A2: set_nat,B2: set_int] :
      ( ( inj_on_nat_int @ F @ A2 )
     => ( ( ( image_nat_int @ F @ A2 )
          = B2 )
       => ( bij_betw_nat_int @ F @ A2 @ B2 ) ) ) ).

% bij_betw_imageI
thf(fact_76_bij__betw__imageI,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( ( image_nat_nat @ F @ A2 )
          = B2 )
       => ( bij_betw_nat_nat @ F @ A2 @ B2 ) ) ) ).

% bij_betw_imageI
thf(fact_77_inj__on__imp__bij__betw,axiom,
    ! [F: nat > int,A2: set_nat] :
      ( ( inj_on_nat_int @ F @ A2 )
     => ( bij_betw_nat_int @ F @ A2 @ ( image_nat_int @ F @ A2 ) ) ) ).

% inj_on_imp_bij_betw
thf(fact_78_inj__on__imp__bij__betw,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( bij_betw_nat_nat @ F @ A2 @ ( image_nat_nat @ F @ A2 ) ) ) ).

% inj_on_imp_bij_betw
thf(fact_79_comp__inj__on,axiom,
    ! [F: nat > int,A2: set_nat,G: int > nat] :
      ( ( inj_on_nat_int @ F @ A2 )
     => ( ( inj_on_int_nat @ G @ ( image_nat_int @ F @ A2 ) )
       => ( inj_on_nat_nat @ ( comp_int_nat_nat @ G @ F ) @ A2 ) ) ) ).

% comp_inj_on
thf(fact_80_comp__inj__on,axiom,
    ! [F: nat > nat,A2: set_nat,G: nat > a] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( inj_on_nat_a @ G @ ( image_nat_nat @ F @ A2 ) )
       => ( inj_on_nat_a @ ( comp_nat_a_nat @ G @ F ) @ A2 ) ) ) ).

% comp_inj_on
thf(fact_81_comp__inj__on,axiom,
    ! [F: nat > nat,A2: set_nat,G: nat > nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( inj_on_nat_nat @ G @ ( image_nat_nat @ F @ A2 ) )
       => ( inj_on_nat_nat @ ( comp_nat_nat_nat @ G @ F ) @ A2 ) ) ) ).

% comp_inj_on
thf(fact_82_inj__on__imageI,axiom,
    ! [G: nat > a,F: nat > nat,A2: set_nat] :
      ( ( inj_on_nat_a @ ( comp_nat_a_nat @ G @ F ) @ A2 )
     => ( inj_on_nat_a @ G @ ( image_nat_nat @ F @ A2 ) ) ) ).

% inj_on_imageI
thf(fact_83_inj__on__imageI,axiom,
    ! [G: int > nat,F: nat > int,A2: set_nat] :
      ( ( inj_on_nat_nat @ ( comp_int_nat_nat @ G @ F ) @ A2 )
     => ( inj_on_int_nat @ G @ ( image_nat_int @ F @ A2 ) ) ) ).

% inj_on_imageI
thf(fact_84_inj__on__imageI,axiom,
    ! [G: nat > nat,F: nat > nat,A2: set_nat] :
      ( ( inj_on_nat_nat @ ( comp_nat_nat_nat @ G @ F ) @ A2 )
     => ( inj_on_nat_nat @ G @ ( image_nat_nat @ F @ A2 ) ) ) ).

% inj_on_imageI
thf(fact_85_comp__inj__on__iff,axiom,
    ! [F: nat > int,A2: set_nat,F3: int > nat] :
      ( ( inj_on_nat_int @ F @ A2 )
     => ( ( inj_on_int_nat @ F3 @ ( image_nat_int @ F @ A2 ) )
        = ( inj_on_nat_nat @ ( comp_int_nat_nat @ F3 @ F ) @ A2 ) ) ) ).

% comp_inj_on_iff
thf(fact_86_comp__inj__on__iff,axiom,
    ! [F: nat > nat,A2: set_nat,F3: nat > a] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( inj_on_nat_a @ F3 @ ( image_nat_nat @ F @ A2 ) )
        = ( inj_on_nat_a @ ( comp_nat_a_nat @ F3 @ F ) @ A2 ) ) ) ).

% comp_inj_on_iff
thf(fact_87_comp__inj__on__iff,axiom,
    ! [F: nat > nat,A2: set_nat,F3: nat > nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( inj_on_nat_nat @ F3 @ ( image_nat_nat @ F @ A2 ) )
        = ( inj_on_nat_nat @ ( comp_nat_nat_nat @ F3 @ F ) @ A2 ) ) ) ).

% comp_inj_on_iff
thf(fact_88_comp__apply,axiom,
    ( comp_nat_a_nat
    = ( ^ [F2: nat > a,G2: nat > nat,X2: nat] : ( F2 @ ( G2 @ X2 ) ) ) ) ).

% comp_apply
thf(fact_89_lessThan__eq__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( set_ord_lessThan_nat @ X )
        = ( set_ord_lessThan_nat @ Y ) )
      = ( X = Y ) ) ).

% lessThan_eq_iff
thf(fact_90_image__mset__empty,axiom,
    ! [F: nat > a] :
      ( ( image_mset_nat_a @ F @ zero_z2005226153et_nat )
      = zero_zero_multiset_a ) ).

% image_mset_empty
thf(fact_91_image__mset__empty,axiom,
    ! [F: nat > nat] :
      ( ( image_mset_nat_nat @ F @ zero_z2005226153et_nat )
      = zero_z2005226153et_nat ) ).

% image_mset_empty
thf(fact_92_image__mset__is__empty__iff,axiom,
    ! [F: nat > a,M4: multiset_nat] :
      ( ( ( image_mset_nat_a @ F @ M4 )
        = zero_zero_multiset_a )
      = ( M4 = zero_z2005226153et_nat ) ) ).

% image_mset_is_empty_iff
thf(fact_93_image__mset__is__empty__iff,axiom,
    ! [F: nat > nat,M4: multiset_nat] :
      ( ( ( image_mset_nat_nat @ F @ M4 )
        = zero_z2005226153et_nat )
      = ( M4 = zero_z2005226153et_nat ) ) ).

% image_mset_is_empty_iff
thf(fact_94_size__image__mset,axiom,
    ! [F: nat > a,M4: multiset_nat] :
      ( ( size_size_multiset_a @ ( image_mset_nat_a @ F @ M4 ) )
      = ( size_s1679505588et_nat @ M4 ) ) ).

% size_image_mset
thf(fact_95_size__image__mset,axiom,
    ! [F: nat > nat,M4: multiset_nat] :
      ( ( size_s1679505588et_nat @ ( image_mset_nat_nat @ F @ M4 ) )
      = ( size_s1679505588et_nat @ M4 ) ) ).

% size_image_mset
thf(fact_96_mset__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( mset_nat @ ( upt @ M @ N ) )
      = ( mset_set_nat @ ( set_or562006527an_nat @ M @ N ) ) ) ).

% mset_upt
thf(fact_97_inj__on__strict__subset,axiom,
    ! [F: nat > int,B2: set_nat,A2: set_nat] :
      ( ( inj_on_nat_int @ F @ B2 )
     => ( ( ord_less_set_nat @ A2 @ B2 )
       => ( ord_less_set_int @ ( image_nat_int @ F @ A2 ) @ ( image_nat_int @ F @ B2 ) ) ) ) ).

% inj_on_strict_subset
thf(fact_98_inj__on__strict__subset,axiom,
    ! [F: nat > nat,B2: set_nat,A2: set_nat] :
      ( ( inj_on_nat_nat @ F @ B2 )
     => ( ( ord_less_set_nat @ A2 @ B2 )
       => ( ord_less_set_nat @ ( image_nat_nat @ F @ A2 ) @ ( image_nat_nat @ F @ B2 ) ) ) ) ).

% inj_on_strict_subset
thf(fact_99_comp__eq__dest__lhs,axiom,
    ! [A: nat > a,B3: nat > nat,C: nat > a,V: nat] :
      ( ( ( comp_nat_a_nat @ A @ B3 )
        = C )
     => ( ( A @ ( B3 @ V ) )
        = ( C @ V ) ) ) ).

% comp_eq_dest_lhs
thf(fact_100_comp__eq__elim,axiom,
    ! [A: nat > a,B3: nat > nat,C: nat > a,D: nat > nat] :
      ( ( ( comp_nat_a_nat @ A @ B3 )
        = ( comp_nat_a_nat @ C @ D ) )
     => ! [V2: nat] :
          ( ( A @ ( B3 @ V2 ) )
          = ( C @ ( D @ V2 ) ) ) ) ).

% comp_eq_elim
thf(fact_101_comp__eq__dest,axiom,
    ! [A: nat > a,B3: nat > nat,C: nat > a,D: nat > nat,V: nat] :
      ( ( ( comp_nat_a_nat @ A @ B3 )
        = ( comp_nat_a_nat @ C @ D ) )
     => ( ( A @ ( B3 @ V ) )
        = ( C @ ( D @ V ) ) ) ) ).

% comp_eq_dest
thf(fact_102_comp__assoc,axiom,
    ! [F: a > a,G: nat > a,H: nat > nat] :
      ( ( comp_nat_a_nat @ ( comp_a_a_nat @ F @ G ) @ H )
      = ( comp_a_a_nat @ F @ ( comp_nat_a_nat @ G @ H ) ) ) ).

% comp_assoc
thf(fact_103_comp__assoc,axiom,
    ! [F: nat > a,G: nat > nat,H: nat > nat] :
      ( ( comp_nat_a_nat @ ( comp_nat_a_nat @ F @ G ) @ H )
      = ( comp_nat_a_nat @ F @ ( comp_nat_nat_nat @ G @ H ) ) ) ).

% comp_assoc
thf(fact_104_comp__def,axiom,
    ( comp_nat_a_nat
    = ( ^ [F2: nat > a,G2: nat > nat,X2: nat] : ( F2 @ ( G2 @ X2 ) ) ) ) ).

% comp_def
thf(fact_105_inj__on__inverseI,axiom,
    ! [A2: set_nat,G: nat > nat,F: nat > nat] :
      ( ! [X4: nat] :
          ( ( member_nat @ X4 @ A2 )
         => ( ( G @ ( F @ X4 ) )
            = X4 ) )
     => ( inj_on_nat_nat @ F @ A2 ) ) ).

% inj_on_inverseI
thf(fact_106_inj__on__contraD,axiom,
    ! [F: nat > nat,A2: set_nat,X: nat,Y: nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( X != Y )
       => ( ( member_nat @ X @ A2 )
         => ( ( member_nat @ Y @ A2 )
           => ( ( F @ X )
             != ( F @ Y ) ) ) ) ) ) ).

% inj_on_contraD
thf(fact_107_inj__on__eq__iff,axiom,
    ! [F: nat > nat,A2: set_nat,X: nat,Y: nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( member_nat @ X @ A2 )
       => ( ( member_nat @ Y @ A2 )
         => ( ( ( F @ X )
              = ( F @ Y ) )
            = ( X = Y ) ) ) ) ) ).

% inj_on_eq_iff
thf(fact_108_inj__on__cong,axiom,
    ! [A2: set_nat,F: nat > nat,G: nat > nat] :
      ( ! [A4: nat] :
          ( ( member_nat @ A4 @ A2 )
         => ( ( F @ A4 )
            = ( G @ A4 ) ) )
     => ( ( inj_on_nat_nat @ F @ A2 )
        = ( inj_on_nat_nat @ G @ A2 ) ) ) ).

% inj_on_cong
thf(fact_109_inj__on__def,axiom,
    ( inj_on_nat_nat
    = ( ^ [F2: nat > nat,A3: set_nat] :
        ! [X2: nat] :
          ( ( member_nat @ X2 @ A3 )
         => ! [Y3: nat] :
              ( ( member_nat @ Y3 @ A3 )
             => ( ( ( F2 @ X2 )
                  = ( F2 @ Y3 ) )
               => ( X2 = Y3 ) ) ) ) ) ) ).

% inj_on_def
thf(fact_110_inj__onI,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ! [X4: nat,Y4: nat] :
          ( ( member_nat @ X4 @ A2 )
         => ( ( member_nat @ Y4 @ A2 )
           => ( ( ( F @ X4 )
                = ( F @ Y4 ) )
             => ( X4 = Y4 ) ) ) )
     => ( inj_on_nat_nat @ F @ A2 ) ) ).

% inj_onI
thf(fact_111_inj__onD,axiom,
    ! [F: nat > nat,A2: set_nat,X: nat,Y: nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( ( F @ X )
          = ( F @ Y ) )
       => ( ( member_nat @ X @ A2 )
         => ( ( member_nat @ Y @ A2 )
           => ( X = Y ) ) ) ) ) ).

% inj_onD
thf(fact_112_bij__betw__iff__bijections,axiom,
    ( bij_betw_nat_nat
    = ( ^ [F2: nat > nat,A3: set_nat,B: set_nat] :
        ? [G2: nat > nat] :
          ( ! [X2: nat] :
              ( ( member_nat @ X2 @ A3 )
             => ( ( member_nat @ ( F2 @ X2 ) @ B )
                & ( ( G2 @ ( F2 @ X2 ) )
                  = X2 ) ) )
          & ! [X2: nat] :
              ( ( member_nat @ X2 @ B )
             => ( ( member_nat @ ( G2 @ X2 ) @ A3 )
                & ( ( F2 @ ( G2 @ X2 ) )
                  = X2 ) ) ) ) ) ) ).

% bij_betw_iff_bijections
thf(fact_113_bij__betw__apply,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat,A: nat] :
      ( ( bij_betw_nat_nat @ F @ A2 @ B2 )
     => ( ( member_nat @ A @ A2 )
       => ( member_nat @ ( F @ A ) @ B2 ) ) ) ).

% bij_betw_apply
thf(fact_114_bij__betw__cong,axiom,
    ! [A2: set_nat,F: nat > nat,G: nat > nat,A5: set_nat] :
      ( ! [A4: nat] :
          ( ( member_nat @ A4 @ A2 )
         => ( ( F @ A4 )
            = ( G @ A4 ) ) )
     => ( ( bij_betw_nat_nat @ F @ A2 @ A5 )
        = ( bij_betw_nat_nat @ G @ A2 @ A5 ) ) ) ).

% bij_betw_cong
thf(fact_115_bij__betw__inv,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( bij_betw_nat_nat @ F @ A2 @ B2 )
     => ? [G3: nat > nat] : ( bij_betw_nat_nat @ G3 @ B2 @ A2 ) ) ).

% bij_betw_inv
thf(fact_116_bij__betwE,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( bij_betw_nat_nat @ F @ A2 @ B2 )
     => ! [X5: nat] :
          ( ( member_nat @ X5 @ A2 )
         => ( member_nat @ ( F @ X5 ) @ B2 ) ) ) ).

% bij_betwE
thf(fact_117_ex__mset,axiom,
    ! [X6: multiset_a] :
    ? [Xs: list_a] :
      ( ( mset_a @ Xs )
      = X6 ) ).

% ex_mset
thf(fact_118_ex__mset,axiom,
    ! [X6: multiset_nat] :
    ? [Xs: list_nat] :
      ( ( mset_nat @ Xs )
      = X6 ) ).

% ex_mset
thf(fact_119_image__eq__imp__comp,axiom,
    ! [F: nat > nat,A2: set_nat,G: nat > nat,B2: set_nat,H: nat > a] :
      ( ( ( image_nat_nat @ F @ A2 )
        = ( image_nat_nat @ G @ B2 ) )
     => ( ( image_nat_a @ ( comp_nat_a_nat @ H @ F ) @ A2 )
        = ( image_nat_a @ ( comp_nat_a_nat @ H @ G ) @ B2 ) ) ) ).

% image_eq_imp_comp
thf(fact_120_image__eq__imp__comp,axiom,
    ! [F: nat > nat,A2: set_nat,G: nat > nat,B2: set_nat,H: nat > nat] :
      ( ( ( image_nat_nat @ F @ A2 )
        = ( image_nat_nat @ G @ B2 ) )
     => ( ( image_nat_nat @ ( comp_nat_nat_nat @ H @ F ) @ A2 )
        = ( image_nat_nat @ ( comp_nat_nat_nat @ H @ G ) @ B2 ) ) ) ).

% image_eq_imp_comp
thf(fact_121_image__eq__imp__comp,axiom,
    ! [F: nat > nat,A2: set_nat,G: nat > nat,B2: set_nat,H: nat > int] :
      ( ( ( image_nat_nat @ F @ A2 )
        = ( image_nat_nat @ G @ B2 ) )
     => ( ( image_nat_int @ ( comp_nat_int_nat @ H @ F ) @ A2 )
        = ( image_nat_int @ ( comp_nat_int_nat @ H @ G ) @ B2 ) ) ) ).

% image_eq_imp_comp
thf(fact_122_image__eq__imp__comp,axiom,
    ! [F: nat > int,A2: set_nat,G: nat > int,B2: set_nat,H: int > nat] :
      ( ( ( image_nat_int @ F @ A2 )
        = ( image_nat_int @ G @ B2 ) )
     => ( ( image_nat_nat @ ( comp_int_nat_nat @ H @ F ) @ A2 )
        = ( image_nat_nat @ ( comp_int_nat_nat @ H @ G ) @ B2 ) ) ) ).

% image_eq_imp_comp
thf(fact_123_image__eq__imp__comp,axiom,
    ! [F: nat > int,A2: set_nat,G: nat > int,B2: set_nat,H: int > int] :
      ( ( ( image_nat_int @ F @ A2 )
        = ( image_nat_int @ G @ B2 ) )
     => ( ( image_nat_int @ ( comp_int_int_nat @ H @ F ) @ A2 )
        = ( image_nat_int @ ( comp_int_int_nat @ H @ G ) @ B2 ) ) ) ).

% image_eq_imp_comp
thf(fact_124_image__comp,axiom,
    ! [F: nat > a,G: nat > nat,R: set_nat] :
      ( ( image_nat_a @ F @ ( image_nat_nat @ G @ R ) )
      = ( image_nat_a @ ( comp_nat_a_nat @ F @ G ) @ R ) ) ).

% image_comp
thf(fact_125_image__comp,axiom,
    ! [F: int > nat,G: nat > int,R: set_nat] :
      ( ( image_int_nat @ F @ ( image_nat_int @ G @ R ) )
      = ( image_nat_nat @ ( comp_int_nat_nat @ F @ G ) @ R ) ) ).

% image_comp
thf(fact_126_image__comp,axiom,
    ! [F: int > int,G: nat > int,R: set_nat] :
      ( ( image_int_int @ F @ ( image_nat_int @ G @ R ) )
      = ( image_nat_int @ ( comp_int_int_nat @ F @ G ) @ R ) ) ).

% image_comp
thf(fact_127_image__comp,axiom,
    ! [F: nat > nat,G: nat > nat,R: set_nat] :
      ( ( image_nat_nat @ F @ ( image_nat_nat @ G @ R ) )
      = ( image_nat_nat @ ( comp_nat_nat_nat @ F @ G ) @ R ) ) ).

% image_comp
thf(fact_128_image__comp,axiom,
    ! [F: nat > int,G: nat > nat,R: set_nat] :
      ( ( image_nat_int @ F @ ( image_nat_nat @ G @ R ) )
      = ( image_nat_int @ ( comp_nat_int_nat @ F @ G ) @ R ) ) ).

% image_comp
thf(fact_129_atLeastLessThan__inj_I2_J,axiom,
    ! [A: real,B3: real,C: real,D: real] :
      ( ( ( set_or2075149659n_real @ A @ B3 )
        = ( set_or2075149659n_real @ C @ D ) )
     => ( ( ord_less_real @ A @ B3 )
       => ( ( ord_less_real @ C @ D )
         => ( B3 = D ) ) ) ) ).

% atLeastLessThan_inj(2)
thf(fact_130_atLeastLessThan__inj_I2_J,axiom,
    ! [A: nat,B3: nat,C: nat,D: nat] :
      ( ( ( set_or562006527an_nat @ A @ B3 )
        = ( set_or562006527an_nat @ C @ D ) )
     => ( ( ord_less_nat @ A @ B3 )
       => ( ( ord_less_nat @ C @ D )
         => ( B3 = D ) ) ) ) ).

% atLeastLessThan_inj(2)
thf(fact_131_atLeastLessThan__inj_I2_J,axiom,
    ! [A: int,B3: int,C: int,D: int] :
      ( ( ( set_or1199280219an_int @ A @ B3 )
        = ( set_or1199280219an_int @ C @ D ) )
     => ( ( ord_less_int @ A @ B3 )
       => ( ( ord_less_int @ C @ D )
         => ( B3 = D ) ) ) ) ).

% atLeastLessThan_inj(2)
thf(fact_132_atLeastLessThan__inj_I1_J,axiom,
    ! [A: real,B3: real,C: real,D: real] :
      ( ( ( set_or2075149659n_real @ A @ B3 )
        = ( set_or2075149659n_real @ C @ D ) )
     => ( ( ord_less_real @ A @ B3 )
       => ( ( ord_less_real @ C @ D )
         => ( A = C ) ) ) ) ).

% atLeastLessThan_inj(1)
thf(fact_133_atLeastLessThan__inj_I1_J,axiom,
    ! [A: nat,B3: nat,C: nat,D: nat] :
      ( ( ( set_or562006527an_nat @ A @ B3 )
        = ( set_or562006527an_nat @ C @ D ) )
     => ( ( ord_less_nat @ A @ B3 )
       => ( ( ord_less_nat @ C @ D )
         => ( A = C ) ) ) ) ).

% atLeastLessThan_inj(1)
thf(fact_134_atLeastLessThan__inj_I1_J,axiom,
    ! [A: int,B3: int,C: int,D: int] :
      ( ( ( set_or1199280219an_int @ A @ B3 )
        = ( set_or1199280219an_int @ C @ D ) )
     => ( ( ord_less_int @ A @ B3 )
       => ( ( ord_less_int @ C @ D )
         => ( A = C ) ) ) ) ).

% atLeastLessThan_inj(1)
thf(fact_135_atLeastLessThan__eq__iff,axiom,
    ! [A: real,B3: real,C: real,D: real] :
      ( ( ord_less_real @ A @ B3 )
     => ( ( ord_less_real @ C @ D )
       => ( ( ( set_or2075149659n_real @ A @ B3 )
            = ( set_or2075149659n_real @ C @ D ) )
          = ( ( A = C )
            & ( B3 = D ) ) ) ) ) ).

% atLeastLessThan_eq_iff
thf(fact_136_atLeastLessThan__eq__iff,axiom,
    ! [A: nat,B3: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B3 )
     => ( ( ord_less_nat @ C @ D )
       => ( ( ( set_or562006527an_nat @ A @ B3 )
            = ( set_or562006527an_nat @ C @ D ) )
          = ( ( A = C )
            & ( B3 = D ) ) ) ) ) ).

% atLeastLessThan_eq_iff
thf(fact_137_atLeastLessThan__eq__iff,axiom,
    ! [A: int,B3: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B3 )
     => ( ( ord_less_int @ C @ D )
       => ( ( ( set_or1199280219an_int @ A @ B3 )
            = ( set_or1199280219an_int @ C @ D ) )
          = ( ( A = C )
            & ( B3 = D ) ) ) ) ) ).

% atLeastLessThan_eq_iff
thf(fact_138_lessThan__strict__subset__iff,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_set_int @ ( set_ord_lessThan_int @ M ) @ ( set_ord_lessThan_int @ N ) )
      = ( ord_less_int @ M @ N ) ) ).

% lessThan_strict_subset_iff
thf(fact_139_lessThan__strict__subset__iff,axiom,
    ! [M: real,N: real] :
      ( ( ord_less_set_real @ ( set_or1211449801n_real @ M ) @ ( set_or1211449801n_real @ N ) )
      = ( ord_less_real @ M @ N ) ) ).

% lessThan_strict_subset_iff
thf(fact_140_lessThan__strict__subset__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_set_nat @ ( set_ord_lessThan_nat @ M ) @ ( set_ord_lessThan_nat @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% lessThan_strict_subset_iff
thf(fact_141_inj__on__image__iff,axiom,
    ! [A2: set_nat,G: nat > nat,F: nat > nat] :
      ( ! [X4: nat] :
          ( ( member_nat @ X4 @ A2 )
         => ! [Xa: nat] :
              ( ( member_nat @ Xa @ A2 )
             => ( ( ( G @ ( F @ X4 ) )
                  = ( G @ ( F @ Xa ) ) )
                = ( ( G @ X4 )
                  = ( G @ Xa ) ) ) ) )
     => ( ( inj_on_nat_nat @ F @ A2 )
       => ( ( inj_on_nat_nat @ G @ ( image_nat_nat @ F @ A2 ) )
          = ( inj_on_nat_nat @ G @ A2 ) ) ) ) ).

% inj_on_image_iff
thf(fact_142_inj__on__imageI2,axiom,
    ! [F3: nat > a,F: nat > nat,A2: set_nat] :
      ( ( inj_on_nat_a @ ( comp_nat_a_nat @ F3 @ F ) @ A2 )
     => ( inj_on_nat_nat @ F @ A2 ) ) ).

% inj_on_imageI2
thf(fact_143_inj__on__imageI2,axiom,
    ! [F3: nat > nat,F: nat > nat,A2: set_nat] :
      ( ( inj_on_nat_nat @ ( comp_nat_nat_nat @ F3 @ F ) @ A2 )
     => ( inj_on_nat_nat @ F @ A2 ) ) ).

% inj_on_imageI2
thf(fact_144_bij__betw__imp__surj__on,axiom,
    ! [F: nat > int,A2: set_nat,B2: set_int] :
      ( ( bij_betw_nat_int @ F @ A2 @ B2 )
     => ( ( image_nat_int @ F @ A2 )
        = B2 ) ) ).

% bij_betw_imp_surj_on
thf(fact_145_bij__betw__imp__surj__on,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( bij_betw_nat_nat @ F @ A2 @ B2 )
     => ( ( image_nat_nat @ F @ A2 )
        = B2 ) ) ).

% bij_betw_imp_surj_on
thf(fact_146_bij__betw__comp__iff,axiom,
    ! [F: nat > nat,A2: set_nat,A5: set_nat,F3: nat > a,A6: set_a] :
      ( ( bij_betw_nat_nat @ F @ A2 @ A5 )
     => ( ( bij_betw_nat_a @ F3 @ A5 @ A6 )
        = ( bij_betw_nat_a @ ( comp_nat_a_nat @ F3 @ F ) @ A2 @ A6 ) ) ) ).

% bij_betw_comp_iff
thf(fact_147_bij__betw__comp__iff,axiom,
    ! [F: nat > nat,A2: set_nat,A5: set_nat,F3: nat > nat,A6: set_nat] :
      ( ( bij_betw_nat_nat @ F @ A2 @ A5 )
     => ( ( bij_betw_nat_nat @ F3 @ A5 @ A6 )
        = ( bij_betw_nat_nat @ ( comp_nat_nat_nat @ F3 @ F ) @ A2 @ A6 ) ) ) ).

% bij_betw_comp_iff
thf(fact_148_bij__betw__trans,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat,G: nat > a,C2: set_a] :
      ( ( bij_betw_nat_nat @ F @ A2 @ B2 )
     => ( ( bij_betw_nat_a @ G @ B2 @ C2 )
       => ( bij_betw_nat_a @ ( comp_nat_a_nat @ G @ F ) @ A2 @ C2 ) ) ) ).

% bij_betw_trans
thf(fact_149_bij__betw__trans,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat,G: nat > nat,C2: set_nat] :
      ( ( bij_betw_nat_nat @ F @ A2 @ B2 )
     => ( ( bij_betw_nat_nat @ G @ B2 @ C2 )
       => ( bij_betw_nat_nat @ ( comp_nat_nat_nat @ G @ F ) @ A2 @ C2 ) ) ) ).

% bij_betw_trans
thf(fact_150_multiset_Omap__comp,axiom,
    ! [G: a > a,F: nat > a,V: multiset_nat] :
      ( ( image_mset_a_a @ G @ ( image_mset_nat_a @ F @ V ) )
      = ( image_mset_nat_a @ ( comp_a_a_nat @ G @ F ) @ V ) ) ).

% multiset.map_comp
thf(fact_151_multiset_Omap__comp,axiom,
    ! [G: a > nat,F: nat > a,V: multiset_nat] :
      ( ( image_mset_a_nat @ G @ ( image_mset_nat_a @ F @ V ) )
      = ( image_mset_nat_nat @ ( comp_a_nat_nat @ G @ F ) @ V ) ) ).

% multiset.map_comp
thf(fact_152_multiset_Omap__comp,axiom,
    ! [G: nat > a,F: nat > nat,V: multiset_nat] :
      ( ( image_mset_nat_a @ G @ ( image_mset_nat_nat @ F @ V ) )
      = ( image_mset_nat_a @ ( comp_nat_a_nat @ G @ F ) @ V ) ) ).

% multiset.map_comp
thf(fact_153_multiset_Omap__comp,axiom,
    ! [G: nat > nat,F: nat > nat,V: multiset_nat] :
      ( ( image_mset_nat_nat @ G @ ( image_mset_nat_nat @ F @ V ) )
      = ( image_mset_nat_nat @ ( comp_nat_nat_nat @ G @ F ) @ V ) ) ).

% multiset.map_comp
thf(fact_154_image__mset_Ocompositionality,axiom,
    ! [F: a > a,G: nat > a,Multiset: multiset_nat] :
      ( ( image_mset_a_a @ F @ ( image_mset_nat_a @ G @ Multiset ) )
      = ( image_mset_nat_a @ ( comp_a_a_nat @ F @ G ) @ Multiset ) ) ).

% image_mset.compositionality
thf(fact_155_image__mset_Ocompositionality,axiom,
    ! [F: a > nat,G: nat > a,Multiset: multiset_nat] :
      ( ( image_mset_a_nat @ F @ ( image_mset_nat_a @ G @ Multiset ) )
      = ( image_mset_nat_nat @ ( comp_a_nat_nat @ F @ G ) @ Multiset ) ) ).

% image_mset.compositionality
thf(fact_156_image__mset_Ocompositionality,axiom,
    ! [F: nat > a,G: nat > nat,Multiset: multiset_nat] :
      ( ( image_mset_nat_a @ F @ ( image_mset_nat_nat @ G @ Multiset ) )
      = ( image_mset_nat_a @ ( comp_nat_a_nat @ F @ G ) @ Multiset ) ) ).

% image_mset.compositionality
thf(fact_157_image__mset_Ocompositionality,axiom,
    ! [F: nat > nat,G: nat > nat,Multiset: multiset_nat] :
      ( ( image_mset_nat_nat @ F @ ( image_mset_nat_nat @ G @ Multiset ) )
      = ( image_mset_nat_nat @ ( comp_nat_nat_nat @ F @ G ) @ Multiset ) ) ).

% image_mset.compositionality
thf(fact_158_image__mset_Ocomp,axiom,
    ! [F: a > a,G: nat > a] :
      ( ( comp_m540523139et_nat @ ( image_mset_a_a @ F ) @ ( image_mset_nat_a @ G ) )
      = ( image_mset_nat_a @ ( comp_a_a_nat @ F @ G ) ) ) ).

% image_mset.comp
thf(fact_159_image__mset_Ocomp,axiom,
    ! [F: a > nat,G: nat > a] :
      ( ( comp_m1962190563et_nat @ ( image_mset_a_nat @ F ) @ ( image_mset_nat_a @ G ) )
      = ( image_mset_nat_nat @ ( comp_a_nat_nat @ F @ G ) ) ) ).

% image_mset.comp
thf(fact_160_image__mset_Ocomp,axiom,
    ! [F: nat > a,G: nat > nat] :
      ( ( comp_m1844659105et_nat @ ( image_mset_nat_a @ F ) @ ( image_mset_nat_nat @ G ) )
      = ( image_mset_nat_a @ ( comp_nat_a_nat @ F @ G ) ) ) ).

% image_mset.comp
thf(fact_161_image__mset_Ocomp,axiom,
    ! [F: nat > nat,G: nat > nat] :
      ( ( comp_m1386984005et_nat @ ( image_mset_nat_nat @ F ) @ ( image_mset_nat_nat @ G ) )
      = ( image_mset_nat_nat @ ( comp_nat_nat_nat @ F @ G ) ) ) ).

% image_mset.comp
thf(fact_162_bij__betw__imp__inj__on,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( bij_betw_nat_nat @ F @ A2 @ B2 )
     => ( inj_on_nat_nat @ F @ A2 ) ) ).

% bij_betw_imp_inj_on
thf(fact_163_mset__eq__length,axiom,
    ! [Xs2: list_nat,Ys: list_nat] :
      ( ( ( mset_nat @ Xs2 )
        = ( mset_nat @ Ys ) )
     => ( ( size_size_list_nat @ Xs2 )
        = ( size_size_list_nat @ Ys ) ) ) ).

% mset_eq_length
thf(fact_164_mset__eq__length,axiom,
    ! [Xs2: list_a,Ys: list_a] :
      ( ( ( mset_a @ Xs2 )
        = ( mset_a @ Ys ) )
     => ( ( size_size_list_a @ Xs2 )
        = ( size_size_list_a @ Ys ) ) ) ).

% mset_eq_length
thf(fact_165_image__eqI,axiom,
    ! [B3: nat,F: nat > nat,X: nat,A2: set_nat] :
      ( ( B3
        = ( F @ X ) )
     => ( ( member_nat @ X @ A2 )
       => ( member_nat @ B3 @ ( image_nat_nat @ F @ A2 ) ) ) ) ).

% image_eqI
thf(fact_166_image__eqI,axiom,
    ! [B3: int,F: nat > int,X: nat,A2: set_nat] :
      ( ( B3
        = ( F @ X ) )
     => ( ( member_nat @ X @ A2 )
       => ( member_int @ B3 @ ( image_nat_int @ F @ A2 ) ) ) ) ).

% image_eqI
thf(fact_167_mbs_Oless__not__eq,axiom,
    ! [X: list_a,A2: set_list_a,Y: list_a] :
      ( ( member_list_a @ X @ A2 )
     => ( ( ord_less_nat @ ( size_size_list_a @ X ) @ ( size_size_list_a @ Y ) )
       => ( X != Y ) ) ) ).

% mbs.less_not_eq
thf(fact_168_Sup_OSUP__image,axiom,
    ! [Sup: set_a > a,G: nat > a,F: nat > nat,A2: set_nat] :
      ( ( Sup @ ( image_nat_a @ G @ ( image_nat_nat @ F @ A2 ) ) )
      = ( Sup @ ( image_nat_a @ ( comp_nat_a_nat @ G @ F ) @ A2 ) ) ) ).

% Sup.SUP_image
thf(fact_169_Sup_OSUP__image,axiom,
    ! [Sup: set_nat > nat,G: int > nat,F: nat > int,A2: set_nat] :
      ( ( Sup @ ( image_int_nat @ G @ ( image_nat_int @ F @ A2 ) ) )
      = ( Sup @ ( image_nat_nat @ ( comp_int_nat_nat @ G @ F ) @ A2 ) ) ) ).

% Sup.SUP_image
thf(fact_170_Sup_OSUP__image,axiom,
    ! [Sup: set_int > int,G: int > int,F: nat > int,A2: set_nat] :
      ( ( Sup @ ( image_int_int @ G @ ( image_nat_int @ F @ A2 ) ) )
      = ( Sup @ ( image_nat_int @ ( comp_int_int_nat @ G @ F ) @ A2 ) ) ) ).

% Sup.SUP_image
thf(fact_171_Sup_OSUP__image,axiom,
    ! [Sup: set_nat > nat,G: nat > nat,F: nat > nat,A2: set_nat] :
      ( ( Sup @ ( image_nat_nat @ G @ ( image_nat_nat @ F @ A2 ) ) )
      = ( Sup @ ( image_nat_nat @ ( comp_nat_nat_nat @ G @ F ) @ A2 ) ) ) ).

% Sup.SUP_image
thf(fact_172_Sup_OSUP__image,axiom,
    ! [Sup: set_int > int,G: nat > int,F: nat > nat,A2: set_nat] :
      ( ( Sup @ ( image_nat_int @ G @ ( image_nat_nat @ F @ A2 ) ) )
      = ( Sup @ ( image_nat_int @ ( comp_nat_int_nat @ G @ F ) @ A2 ) ) ) ).

% Sup.SUP_image
thf(fact_173_Inf_OINF__image,axiom,
    ! [Inf: set_a > a,G: nat > a,F: nat > nat,A2: set_nat] :
      ( ( Inf @ ( image_nat_a @ G @ ( image_nat_nat @ F @ A2 ) ) )
      = ( Inf @ ( image_nat_a @ ( comp_nat_a_nat @ G @ F ) @ A2 ) ) ) ).

% Inf.INF_image
thf(fact_174_Inf_OINF__image,axiom,
    ! [Inf: set_nat > nat,G: int > nat,F: nat > int,A2: set_nat] :
      ( ( Inf @ ( image_int_nat @ G @ ( image_nat_int @ F @ A2 ) ) )
      = ( Inf @ ( image_nat_nat @ ( comp_int_nat_nat @ G @ F ) @ A2 ) ) ) ).

% Inf.INF_image
thf(fact_175_Inf_OINF__image,axiom,
    ! [Inf: set_int > int,G: int > int,F: nat > int,A2: set_nat] :
      ( ( Inf @ ( image_int_int @ G @ ( image_nat_int @ F @ A2 ) ) )
      = ( Inf @ ( image_nat_int @ ( comp_int_int_nat @ G @ F ) @ A2 ) ) ) ).

% Inf.INF_image
thf(fact_176_Inf_OINF__image,axiom,
    ! [Inf: set_nat > nat,G: nat > nat,F: nat > nat,A2: set_nat] :
      ( ( Inf @ ( image_nat_nat @ G @ ( image_nat_nat @ F @ A2 ) ) )
      = ( Inf @ ( image_nat_nat @ ( comp_nat_nat_nat @ G @ F ) @ A2 ) ) ) ).

% Inf.INF_image
thf(fact_177_Inf_OINF__image,axiom,
    ! [Inf: set_int > int,G: nat > int,F: nat > nat,A2: set_nat] :
      ( ( Inf @ ( image_nat_int @ G @ ( image_nat_nat @ F @ A2 ) ) )
      = ( Inf @ ( image_nat_int @ ( comp_nat_int_nat @ G @ F ) @ A2 ) ) ) ).

% Inf.INF_image
thf(fact_178_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_179_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ zero_zero_int ) ).

% less_numeral_extra(3)
thf(fact_180_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_real @ zero_zero_real @ zero_zero_real ) ).

% less_numeral_extra(3)
thf(fact_181_field__lbound__gt__zero,axiom,
    ! [D1: real,D2: real] :
      ( ( ord_less_real @ zero_zero_real @ D1 )
     => ( ( ord_less_real @ zero_zero_real @ D2 )
       => ? [E: real] :
            ( ( ord_less_real @ zero_zero_real @ E )
            & ( ord_less_real @ E @ D1 )
            & ( ord_less_real @ E @ D2 ) ) ) ) ).

% field_lbound_gt_zero
thf(fact_182_length__code,axiom,
    ( size_size_list_a
    = ( gen_length_a @ zero_zero_nat ) ) ).

% length_code
thf(fact_183_imageI,axiom,
    ! [X: nat,A2: set_nat,F: nat > nat] :
      ( ( member_nat @ X @ A2 )
     => ( member_nat @ ( F @ X ) @ ( image_nat_nat @ F @ A2 ) ) ) ).

% imageI
thf(fact_184_imageI,axiom,
    ! [X: nat,A2: set_nat,F: nat > int] :
      ( ( member_nat @ X @ A2 )
     => ( member_int @ ( F @ X ) @ ( image_nat_int @ F @ A2 ) ) ) ).

% imageI
thf(fact_185_image__iff,axiom,
    ! [Z2: nat,F: nat > nat,A2: set_nat] :
      ( ( member_nat @ Z2 @ ( image_nat_nat @ F @ A2 ) )
      = ( ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ( Z2
              = ( F @ X2 ) ) ) ) ) ).

% image_iff
thf(fact_186_image__iff,axiom,
    ! [Z2: int,F: nat > int,A2: set_nat] :
      ( ( member_int @ Z2 @ ( image_nat_int @ F @ A2 ) )
      = ( ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ( Z2
              = ( F @ X2 ) ) ) ) ) ).

% image_iff
thf(fact_187_bex__imageD,axiom,
    ! [F: nat > nat,A2: set_nat,P: nat > $o] :
      ( ? [X5: nat] :
          ( ( member_nat @ X5 @ ( image_nat_nat @ F @ A2 ) )
          & ( P @ X5 ) )
     => ? [X4: nat] :
          ( ( member_nat @ X4 @ A2 )
          & ( P @ ( F @ X4 ) ) ) ) ).

% bex_imageD
thf(fact_188_bex__imageD,axiom,
    ! [F: nat > int,A2: set_nat,P: int > $o] :
      ( ? [X5: int] :
          ( ( member_int @ X5 @ ( image_nat_int @ F @ A2 ) )
          & ( P @ X5 ) )
     => ? [X4: nat] :
          ( ( member_nat @ X4 @ A2 )
          & ( P @ ( F @ X4 ) ) ) ) ).

% bex_imageD
thf(fact_189_image__cong,axiom,
    ! [M4: set_nat,N3: set_nat,F: nat > nat,G: nat > nat] :
      ( ( M4 = N3 )
     => ( ! [X4: nat] :
            ( ( member_nat @ X4 @ N3 )
           => ( ( F @ X4 )
              = ( G @ X4 ) ) )
       => ( ( image_nat_nat @ F @ M4 )
          = ( image_nat_nat @ G @ N3 ) ) ) ) ).

% image_cong
thf(fact_190_image__cong,axiom,
    ! [M4: set_nat,N3: set_nat,F: nat > int,G: nat > int] :
      ( ( M4 = N3 )
     => ( ! [X4: nat] :
            ( ( member_nat @ X4 @ N3 )
           => ( ( F @ X4 )
              = ( G @ X4 ) ) )
       => ( ( image_nat_int @ F @ M4 )
          = ( image_nat_int @ G @ N3 ) ) ) ) ).

% image_cong
thf(fact_191_ball__imageD,axiom,
    ! [F: nat > nat,A2: set_nat,P: nat > $o] :
      ( ! [X4: nat] :
          ( ( member_nat @ X4 @ ( image_nat_nat @ F @ A2 ) )
         => ( P @ X4 ) )
     => ! [X5: nat] :
          ( ( member_nat @ X5 @ A2 )
         => ( P @ ( F @ X5 ) ) ) ) ).

% ball_imageD
thf(fact_192_ball__imageD,axiom,
    ! [F: nat > int,A2: set_nat,P: int > $o] :
      ( ! [X4: int] :
          ( ( member_int @ X4 @ ( image_nat_int @ F @ A2 ) )
         => ( P @ X4 ) )
     => ! [X5: nat] :
          ( ( member_nat @ X5 @ A2 )
         => ( P @ ( F @ X5 ) ) ) ) ).

% ball_imageD
thf(fact_193_rev__image__eqI,axiom,
    ! [X: nat,A2: set_nat,B3: nat,F: nat > nat] :
      ( ( member_nat @ X @ A2 )
     => ( ( B3
          = ( F @ X ) )
       => ( member_nat @ B3 @ ( image_nat_nat @ F @ A2 ) ) ) ) ).

% rev_image_eqI
thf(fact_194_rev__image__eqI,axiom,
    ! [X: nat,A2: set_nat,B3: int,F: nat > int] :
      ( ( member_nat @ X @ A2 )
     => ( ( B3
          = ( F @ X ) )
       => ( member_int @ B3 @ ( image_nat_int @ F @ A2 ) ) ) ) ).

% rev_image_eqI
thf(fact_195_Inf_OINF__cong,axiom,
    ! [A2: set_nat,B2: set_nat,C2: nat > nat,D3: nat > nat,Inf: set_nat > nat] :
      ( ( A2 = B2 )
     => ( ! [X4: nat] :
            ( ( member_nat @ X4 @ B2 )
           => ( ( C2 @ X4 )
              = ( D3 @ X4 ) ) )
       => ( ( Inf @ ( image_nat_nat @ C2 @ A2 ) )
          = ( Inf @ ( image_nat_nat @ D3 @ B2 ) ) ) ) ) ).

% Inf.INF_cong
thf(fact_196_Inf_OINF__cong,axiom,
    ! [A2: set_nat,B2: set_nat,C2: nat > int,D3: nat > int,Inf: set_int > int] :
      ( ( A2 = B2 )
     => ( ! [X4: nat] :
            ( ( member_nat @ X4 @ B2 )
           => ( ( C2 @ X4 )
              = ( D3 @ X4 ) ) )
       => ( ( Inf @ ( image_nat_int @ C2 @ A2 ) )
          = ( Inf @ ( image_nat_int @ D3 @ B2 ) ) ) ) ) ).

% Inf.INF_cong
thf(fact_197_Sup_OSUP__cong,axiom,
    ! [A2: set_nat,B2: set_nat,C2: nat > nat,D3: nat > nat,Sup: set_nat > nat] :
      ( ( A2 = B2 )
     => ( ! [X4: nat] :
            ( ( member_nat @ X4 @ B2 )
           => ( ( C2 @ X4 )
              = ( D3 @ X4 ) ) )
       => ( ( Sup @ ( image_nat_nat @ C2 @ A2 ) )
          = ( Sup @ ( image_nat_nat @ D3 @ B2 ) ) ) ) ) ).

% Sup.SUP_cong
thf(fact_198_Sup_OSUP__cong,axiom,
    ! [A2: set_nat,B2: set_nat,C2: nat > int,D3: nat > int,Sup: set_int > int] :
      ( ( A2 = B2 )
     => ( ! [X4: nat] :
            ( ( member_nat @ X4 @ B2 )
           => ( ( C2 @ X4 )
              = ( D3 @ X4 ) ) )
       => ( ( Sup @ ( image_nat_int @ C2 @ A2 ) )
          = ( Sup @ ( image_nat_int @ D3 @ B2 ) ) ) ) ) ).

% Sup.SUP_cong
thf(fact_199_map__eq__map__tailrec,axiom,
    map_nat_a = map_tailrec_nat_a ).

% map_eq_map_tailrec
thf(fact_200_list__ex__length,axiom,
    ( list_ex_a
    = ( ^ [P2: a > $o,Xs3: list_a] :
        ? [N4: nat] :
          ( ( ord_less_nat @ N4 @ ( size_size_list_a @ Xs3 ) )
          & ( P2 @ ( nth_a @ Xs3 @ N4 ) ) ) ) ) ).

% list_ex_length
thf(fact_201_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( semiri1382578993at_nat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_202_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( semiri2019852685at_int @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_203_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_real @ zero_zero_real @ ( semiri2110766477t_real @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_204_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri2019852685at_int @ M )
        = ( semiri2019852685at_int @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_205_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri2110766477t_real @ M )
        = ( semiri2110766477t_real @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_206_of__nat__0,axiom,
    ( ( semiri1382578993at_nat @ zero_zero_nat )
    = zero_zero_nat ) ).

% of_nat_0
thf(fact_207_of__nat__0,axiom,
    ( ( semiri2019852685at_int @ zero_zero_nat )
    = zero_zero_int ) ).

% of_nat_0
thf(fact_208_of__nat__0,axiom,
    ( ( semiri2110766477t_real @ zero_zero_nat )
    = zero_zero_real ) ).

% of_nat_0
thf(fact_209_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_nat
        = ( semiri1382578993at_nat @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_210_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_int
        = ( semiri2019852685at_int @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_211_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_real
        = ( semiri2110766477t_real @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_212_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri1382578993at_nat @ M )
        = zero_zero_nat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_213_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri2019852685at_int @ M )
        = zero_zero_int )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_214_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri2110766477t_real @ M )
        = zero_zero_real )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_215_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( semiri1382578993at_nat @ M ) @ ( semiri1382578993at_nat @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_216_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_int @ ( semiri2019852685at_int @ M ) @ ( semiri2019852685at_int @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_217_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_real @ ( semiri2110766477t_real @ M ) @ ( semiri2110766477t_real @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_218_bij__betw__of__nat,axiom,
    ! [N3: set_nat,A2: set_nat] :
      ( ( bij_betw_nat_nat @ semiri1382578993at_nat @ N3 @ A2 )
      = ( ( image_nat_nat @ semiri1382578993at_nat @ N3 )
        = A2 ) ) ).

% bij_betw_of_nat
thf(fact_219_bij__betw__of__nat,axiom,
    ! [N3: set_nat,A2: set_int] :
      ( ( bij_betw_nat_int @ semiri2019852685at_int @ N3 @ A2 )
      = ( ( image_nat_int @ semiri2019852685at_int @ N3 )
        = A2 ) ) ).

% bij_betw_of_nat
thf(fact_220_bij__betw__of__nat,axiom,
    ! [N3: set_nat,A2: set_real] :
      ( ( bij_betw_nat_real @ semiri2110766477t_real @ N3 @ A2 )
      = ( ( image_nat_real @ semiri2110766477t_real @ N3 )
        = A2 ) ) ).

% bij_betw_of_nat
thf(fact_221_image__int__atLeastLessThan,axiom,
    ! [A: nat,B3: nat] :
      ( ( image_nat_int @ semiri2019852685at_int @ ( set_or562006527an_nat @ A @ B3 ) )
      = ( set_or1199280219an_int @ ( semiri2019852685at_int @ A ) @ ( semiri2019852685at_int @ B3 ) ) ) ).

% image_int_atLeastLessThan
thf(fact_222_inj__on__of__nat,axiom,
    ! [N3: set_nat] : ( inj_on_nat_nat @ semiri1382578993at_nat @ N3 ) ).

% inj_on_of_nat
thf(fact_223_inj__on__of__nat,axiom,
    ! [N3: set_nat] : ( inj_on_nat_int @ semiri2019852685at_int @ N3 ) ).

% inj_on_of_nat
thf(fact_224_inj__on__of__nat,axiom,
    ! [N3: set_nat] : ( inj_on_nat_real @ semiri2110766477t_real @ N3 ) ).

% inj_on_of_nat
thf(fact_225_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_nat @ ( semiri1382578993at_nat @ M ) @ zero_zero_nat ) ).

% of_nat_less_0_iff
thf(fact_226_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_int @ ( semiri2019852685at_int @ M ) @ zero_zero_int ) ).

% of_nat_less_0_iff
thf(fact_227_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_real @ ( semiri2110766477t_real @ M ) @ zero_zero_real ) ).

% of_nat_less_0_iff
thf(fact_228_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( semiri1382578993at_nat @ M ) @ ( semiri1382578993at_nat @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_229_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_int @ ( semiri2019852685at_int @ M ) @ ( semiri2019852685at_int @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_230_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_real @ ( semiri2110766477t_real @ M ) @ ( semiri2110766477t_real @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_231_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( semiri1382578993at_nat @ M ) @ ( semiri1382578993at_nat @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_232_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_int @ ( semiri2019852685at_int @ M ) @ ( semiri2019852685at_int @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_233_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_real @ ( semiri2110766477t_real @ M ) @ ( semiri2110766477t_real @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_234_pos__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ~ ! [N2: nat] :
            ( ( K
              = ( semiri2019852685at_int @ N2 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ).

% pos_int_cases
thf(fact_235_zero__less__imp__eq__int,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ? [N2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ N2 )
          & ( K
            = ( semiri2019852685at_int @ N2 ) ) ) ) ).

% zero_less_imp_eq_int
thf(fact_236_reals__Archimedean2,axiom,
    ! [X: real] :
    ? [N2: nat] : ( ord_less_real @ X @ ( semiri2110766477t_real @ N2 ) ) ).

% reals_Archimedean2
thf(fact_237_int__int__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri2019852685at_int @ M )
        = ( semiri2019852685at_int @ N ) )
      = ( M = N ) ) ).

% int_int_eq
thf(fact_238_less__int__code_I1_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ zero_zero_int ) ).

% less_int_code(1)
thf(fact_239_size__multiset__o__map,axiom,
    ! [G: a > nat,F: nat > a] :
      ( ( comp_m1512105363et_nat @ ( size_multiset_a @ G ) @ ( image_mset_nat_a @ F ) )
      = ( size_multiset_nat @ ( comp_a_nat_nat @ G @ F ) ) ) ).

% size_multiset_o_map
thf(fact_240_size__multiset__o__map,axiom,
    ! [G: nat > nat,F: nat > nat] :
      ( ( comp_m346803701et_nat @ ( size_multiset_nat @ G ) @ ( image_mset_nat_nat @ F ) )
      = ( size_multiset_nat @ ( comp_nat_nat_nat @ G @ F ) ) ) ).

% size_multiset_o_map
thf(fact_241_nat__int__comparison_I2_J,axiom,
    ( ord_less_nat
    = ( ^ [A7: nat,B4: nat] : ( ord_less_int @ ( semiri2019852685at_int @ A7 ) @ ( semiri2019852685at_int @ B4 ) ) ) ) ).

% nat_int_comparison(2)
thf(fact_242_int__ops_I1_J,axiom,
    ( ( semiri2019852685at_int @ zero_zero_nat )
    = zero_zero_int ) ).

% int_ops(1)
thf(fact_243_neg__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ~ ! [N2: nat] :
            ( ( K
              = ( uminus_uminus_int @ ( semiri2019852685at_int @ N2 ) ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ).

% neg_int_cases
thf(fact_244_add_Oinverse__inverse,axiom,
    ! [A: int] :
      ( ( uminus_uminus_int @ ( uminus_uminus_int @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_245_neg__equal__iff__equal,axiom,
    ! [A: int,B3: int] :
      ( ( ( uminus_uminus_int @ A )
        = ( uminus_uminus_int @ B3 ) )
      = ( A = B3 ) ) ).

% neg_equal_iff_equal
thf(fact_246_add_Oinverse__neutral,axiom,
    ( ( uminus_uminus_real @ zero_zero_real )
    = zero_zero_real ) ).

% add.inverse_neutral
thf(fact_247_add_Oinverse__neutral,axiom,
    ( ( uminus_uminus_int @ zero_zero_int )
    = zero_zero_int ) ).

% add.inverse_neutral
thf(fact_248_neg__0__equal__iff__equal,axiom,
    ! [A: real] :
      ( ( zero_zero_real
        = ( uminus_uminus_real @ A ) )
      = ( zero_zero_real = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_249_neg__0__equal__iff__equal,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( uminus_uminus_int @ A ) )
      = ( zero_zero_int = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_250_neg__equal__0__iff__equal,axiom,
    ! [A: real] :
      ( ( ( uminus_uminus_real @ A )
        = zero_zero_real )
      = ( A = zero_zero_real ) ) ).

% neg_equal_0_iff_equal
thf(fact_251_neg__equal__0__iff__equal,axiom,
    ! [A: int] :
      ( ( ( uminus_uminus_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% neg_equal_0_iff_equal
thf(fact_252_equal__neg__zero,axiom,
    ! [A: real] :
      ( ( A
        = ( uminus_uminus_real @ A ) )
      = ( A = zero_zero_real ) ) ).

% equal_neg_zero
thf(fact_253_equal__neg__zero,axiom,
    ! [A: int] :
      ( ( A
        = ( uminus_uminus_int @ A ) )
      = ( A = zero_zero_int ) ) ).

% equal_neg_zero
thf(fact_254_neg__equal__zero,axiom,
    ! [A: real] :
      ( ( ( uminus_uminus_real @ A )
        = A )
      = ( A = zero_zero_real ) ) ).

% neg_equal_zero
thf(fact_255_neg__equal__zero,axiom,
    ! [A: int] :
      ( ( ( uminus_uminus_int @ A )
        = A )
      = ( A = zero_zero_int ) ) ).

% neg_equal_zero
thf(fact_256_neg__less__iff__less,axiom,
    ! [B3: real,A: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ B3 ) @ ( uminus_uminus_real @ A ) )
      = ( ord_less_real @ A @ B3 ) ) ).

% neg_less_iff_less
thf(fact_257_neg__less__iff__less,axiom,
    ! [B3: int,A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ B3 ) @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ B3 ) ) ).

% neg_less_iff_less
thf(fact_258_inj__uminus,axiom,
    ! [A2: set_int] : ( inj_on_int_int @ uminus_uminus_int @ A2 ) ).

% inj_uminus
thf(fact_259_neg__less__0__iff__less,axiom,
    ! [A: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ A ) @ zero_zero_real )
      = ( ord_less_real @ zero_zero_real @ A ) ) ).

% neg_less_0_iff_less
thf(fact_260_neg__less__0__iff__less,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ zero_zero_int )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% neg_less_0_iff_less
thf(fact_261_neg__0__less__iff__less,axiom,
    ! [A: real] :
      ( ( ord_less_real @ zero_zero_real @ ( uminus_uminus_real @ A ) )
      = ( ord_less_real @ A @ zero_zero_real ) ) ).

% neg_0_less_iff_less
thf(fact_262_neg__0__less__iff__less,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% neg_0_less_iff_less
thf(fact_263_neg__less__pos,axiom,
    ! [A: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ A ) @ A )
      = ( ord_less_real @ zero_zero_real @ A ) ) ).

% neg_less_pos
thf(fact_264_neg__less__pos,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ A )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% neg_less_pos
thf(fact_265_less__neg__neg,axiom,
    ! [A: real] :
      ( ( ord_less_real @ A @ ( uminus_uminus_real @ A ) )
      = ( ord_less_real @ A @ zero_zero_real ) ) ).

% less_neg_neg
thf(fact_266_less__neg__neg,axiom,
    ! [A: int] :
      ( ( ord_less_int @ A @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% less_neg_neg
thf(fact_267_negative__eq__positive,axiom,
    ! [N: nat,M: nat] :
      ( ( ( uminus_uminus_int @ ( semiri2019852685at_int @ N ) )
        = ( semiri2019852685at_int @ M ) )
      = ( ( N = zero_zero_nat )
        & ( M = zero_zero_nat ) ) ) ).

% negative_eq_positive
thf(fact_268_int__cases2,axiom,
    ! [Z2: int] :
      ( ! [N2: nat] :
          ( Z2
         != ( semiri2019852685at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( Z2
           != ( uminus_uminus_int @ ( semiri2019852685at_int @ N2 ) ) ) ) ).

% int_cases2
thf(fact_269_minus__less__iff,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ A ) @ B3 )
      = ( ord_less_real @ ( uminus_uminus_real @ B3 ) @ A ) ) ).

% minus_less_iff
thf(fact_270_minus__less__iff,axiom,
    ! [A: int,B3: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ B3 )
      = ( ord_less_int @ ( uminus_uminus_int @ B3 ) @ A ) ) ).

% minus_less_iff
thf(fact_271_less__minus__iff,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ A @ ( uminus_uminus_real @ B3 ) )
      = ( ord_less_real @ B3 @ ( uminus_uminus_real @ A ) ) ) ).

% less_minus_iff
thf(fact_272_less__minus__iff,axiom,
    ! [A: int,B3: int] :
      ( ( ord_less_int @ A @ ( uminus_uminus_int @ B3 ) )
      = ( ord_less_int @ B3 @ ( uminus_uminus_int @ A ) ) ) ).

% less_minus_iff
thf(fact_273_uminus__int__code_I1_J,axiom,
    ( ( uminus_uminus_int @ zero_zero_int )
    = zero_zero_int ) ).

% uminus_int_code(1)
thf(fact_274_verit__negate__coefficient_I2_J,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ A @ B3 )
     => ( ord_less_real @ ( uminus_uminus_real @ B3 ) @ ( uminus_uminus_real @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_275_verit__negate__coefficient_I2_J,axiom,
    ! [A: int,B3: int] :
      ( ( ord_less_int @ A @ B3 )
     => ( ord_less_int @ ( uminus_uminus_int @ B3 ) @ ( uminus_uminus_int @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_276_equation__minus__iff,axiom,
    ! [A: int,B3: int] :
      ( ( A
        = ( uminus_uminus_int @ B3 ) )
      = ( B3
        = ( uminus_uminus_int @ A ) ) ) ).

% equation_minus_iff
thf(fact_277_minus__equation__iff,axiom,
    ! [A: int,B3: int] :
      ( ( ( uminus_uminus_int @ A )
        = B3 )
      = ( ( uminus_uminus_int @ B3 )
        = A ) ) ).

% minus_equation_iff
thf(fact_278_not__int__zless__negative,axiom,
    ! [N: nat,M: nat] :
      ~ ( ord_less_int @ ( semiri2019852685at_int @ N ) @ ( uminus_uminus_int @ ( semiri2019852685at_int @ M ) ) ) ).

% not_int_zless_negative
thf(fact_279_int__cases4,axiom,
    ! [M: int] :
      ( ! [N2: nat] :
          ( M
         != ( semiri2019852685at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( M
             != ( uminus_uminus_int @ ( semiri2019852685at_int @ N2 ) ) ) ) ) ).

% int_cases4
thf(fact_280_verit__comp__simplify1_I1_J,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_281_verit__comp__simplify1_I1_J,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_282_verit__comp__simplify1_I1_J,axiom,
    ! [A: real] :
      ~ ( ord_less_real @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_283_nat__int__comparison_I1_J,axiom,
    ( ( ^ [Y2: nat,Z: nat] : ( Y2 = Z ) )
    = ( ^ [A7: nat,B4: nat] :
          ( ( semiri2019852685at_int @ A7 )
          = ( semiri2019852685at_int @ B4 ) ) ) ) ).

% nat_int_comparison(1)
thf(fact_284_int__if,axiom,
    ! [P: $o,A: nat,B3: nat] :
      ( ( P
       => ( ( semiri2019852685at_int @ ( if_nat @ P @ A @ B3 ) )
          = ( semiri2019852685at_int @ A ) ) )
      & ( ~ P
       => ( ( semiri2019852685at_int @ ( if_nat @ P @ A @ B3 ) )
          = ( semiri2019852685at_int @ B3 ) ) ) ) ).

% int_if
thf(fact_285_int__cases3,axiom,
    ! [K: int] :
      ( ( K != zero_zero_int )
     => ( ! [N2: nat] :
            ( ( K
              = ( semiri2019852685at_int @ N2 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) )
       => ~ ! [N2: nat] :
              ( ( K
                = ( uminus_uminus_int @ ( semiri2019852685at_int @ N2 ) ) )
             => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ) ).

% int_cases3
thf(fact_286_norm__frac_Oinduct,axiom,
    ! [P: int > int > $o,A0: int,A1: int] :
      ( ! [A4: int,B5: int] :
          ( ( ( ord_less_int @ B5 @ zero_zero_int )
           => ( P @ ( uminus_uminus_int @ A4 ) @ ( uminus_uminus_int @ B5 ) ) )
         => ( P @ A4 @ B5 ) )
     => ( P @ A0 @ A1 ) ) ).

% norm_frac.induct
thf(fact_287_ex__inverse__of__nat__less,axiom,
    ! [X: real] :
      ( ( ord_less_real @ zero_zero_real @ X )
     => ? [N2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ N2 )
          & ( ord_less_real @ ( inverse_inverse_real @ ( semiri2110766477t_real @ N2 ) ) @ X ) ) ) ).

% ex_inverse_of_nat_less
thf(fact_288_zero__less__nat__eq,axiom,
    ! [Z2: int] :
      ( ( ord_less_nat @ zero_zero_nat @ ( nat2 @ Z2 ) )
      = ( ord_less_int @ zero_zero_int @ Z2 ) ) ).

% zero_less_nat_eq
thf(fact_289_nat__int,axiom,
    ! [N: nat] :
      ( ( nat2 @ ( semiri2019852685at_int @ N ) )
      = N ) ).

% nat_int
thf(fact_290_zless__nat__conj,axiom,
    ! [W: int,Z2: int] :
      ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z2 ) )
      = ( ( ord_less_int @ zero_zero_int @ Z2 )
        & ( ord_less_int @ W @ Z2 ) ) ) ).

% zless_nat_conj
thf(fact_291_nat__zminus__int,axiom,
    ! [N: nat] :
      ( ( nat2 @ ( uminus_uminus_int @ ( semiri2019852685at_int @ N ) ) )
      = zero_zero_nat ) ).

% nat_zminus_int
thf(fact_292_nat__zero__as__int,axiom,
    ( zero_zero_nat
    = ( nat2 @ zero_zero_int ) ) ).

% nat_zero_as_int
thf(fact_293_forall__pos__mono,axiom,
    ! [P: real > $o,E2: real] :
      ( ! [D4: real,E: real] :
          ( ( ord_less_real @ D4 @ E )
         => ( ( P @ D4 )
           => ( P @ E ) ) )
     => ( ! [N2: nat] :
            ( ( N2 != zero_zero_nat )
           => ( P @ ( inverse_inverse_real @ ( semiri2110766477t_real @ N2 ) ) ) )
       => ( ( ord_less_real @ zero_zero_real @ E2 )
         => ( P @ E2 ) ) ) ) ).

% forall_pos_mono
thf(fact_294_real__arch__inverse,axiom,
    ! [E2: real] :
      ( ( ord_less_real @ zero_zero_real @ E2 )
      = ( ? [N4: nat] :
            ( ( N4 != zero_zero_nat )
            & ( ord_less_real @ zero_zero_real @ ( inverse_inverse_real @ ( semiri2110766477t_real @ N4 ) ) )
            & ( ord_less_real @ ( inverse_inverse_real @ ( semiri2110766477t_real @ N4 ) ) @ E2 ) ) ) ) ).

% real_arch_inverse
thf(fact_295_nat__mono__iff,axiom,
    ! [Z2: int,W: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ( ord_less_nat @ ( nat2 @ W ) @ ( nat2 @ Z2 ) )
        = ( ord_less_int @ W @ Z2 ) ) ) ).

% nat_mono_iff
thf(fact_296_zless__nat__eq__int__zless,axiom,
    ! [M: nat,Z2: int] :
      ( ( ord_less_nat @ M @ ( nat2 @ Z2 ) )
      = ( ord_less_int @ ( semiri2019852685at_int @ M ) @ Z2 ) ) ).

% zless_nat_eq_int_zless
thf(fact_297_split__nat,axiom,
    ! [P: nat > $o,I: int] :
      ( ( P @ ( nat2 @ I ) )
      = ( ! [N4: nat] :
            ( ( I
              = ( semiri2019852685at_int @ N4 ) )
           => ( P @ N4 ) )
        & ( ( ord_less_int @ I @ zero_zero_int )
         => ( P @ zero_zero_nat ) ) ) ) ).

% split_nat
thf(fact_298_inverse__positive__iff__positive,axiom,
    ! [A: real] :
      ( ( ord_less_real @ zero_zero_real @ ( inverse_inverse_real @ A ) )
      = ( ord_less_real @ zero_zero_real @ A ) ) ).

% inverse_positive_iff_positive
thf(fact_299_inverse__negative__iff__negative,axiom,
    ! [A: real] :
      ( ( ord_less_real @ ( inverse_inverse_real @ A ) @ zero_zero_real )
      = ( ord_less_real @ A @ zero_zero_real ) ) ).

% inverse_negative_iff_negative
thf(fact_300_inverse__zero,axiom,
    ( ( inverse_inverse_real @ zero_zero_real )
    = zero_zero_real ) ).

% inverse_zero
thf(fact_301_inverse__nonzero__iff__nonzero,axiom,
    ! [A: real] :
      ( ( ( inverse_inverse_real @ A )
        = zero_zero_real )
      = ( A = zero_zero_real ) ) ).

% inverse_nonzero_iff_nonzero
thf(fact_302_inverse__less__iff__less,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ( ord_less_real @ zero_zero_real @ B3 )
       => ( ( ord_less_real @ ( inverse_inverse_real @ A ) @ ( inverse_inverse_real @ B3 ) )
          = ( ord_less_real @ B3 @ A ) ) ) ) ).

% inverse_less_iff_less
thf(fact_303_inverse__less__iff__less__neg,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ A @ zero_zero_real )
     => ( ( ord_less_real @ B3 @ zero_zero_real )
       => ( ( ord_less_real @ ( inverse_inverse_real @ A ) @ ( inverse_inverse_real @ B3 ) )
          = ( ord_less_real @ B3 @ A ) ) ) ) ).

% inverse_less_iff_less_neg
thf(fact_304_linordered__field__no__lb,axiom,
    ! [X5: real] :
    ? [Y4: real] : ( ord_less_real @ Y4 @ X5 ) ).

% linordered_field_no_lb
thf(fact_305_linordered__field__no__ub,axiom,
    ! [X5: real] :
    ? [X_1: real] : ( ord_less_real @ X5 @ X_1 ) ).

% linordered_field_no_ub
thf(fact_306_field__class_Ofield__inverse__zero,axiom,
    ( ( inverse_inverse_real @ zero_zero_real )
    = zero_zero_real ) ).

% field_class.field_inverse_zero
thf(fact_307_inverse__zero__imp__zero,axiom,
    ! [A: real] :
      ( ( ( inverse_inverse_real @ A )
        = zero_zero_real )
     => ( A = zero_zero_real ) ) ).

% inverse_zero_imp_zero
thf(fact_308_nonzero__inverse__eq__imp__eq,axiom,
    ! [A: real,B3: real] :
      ( ( ( inverse_inverse_real @ A )
        = ( inverse_inverse_real @ B3 ) )
     => ( ( A != zero_zero_real )
       => ( ( B3 != zero_zero_real )
         => ( A = B3 ) ) ) ) ).

% nonzero_inverse_eq_imp_eq
thf(fact_309_nonzero__inverse__inverse__eq,axiom,
    ! [A: real] :
      ( ( A != zero_zero_real )
     => ( ( inverse_inverse_real @ ( inverse_inverse_real @ A ) )
        = A ) ) ).

% nonzero_inverse_inverse_eq
thf(fact_310_nonzero__imp__inverse__nonzero,axiom,
    ! [A: real] :
      ( ( A != zero_zero_real )
     => ( ( inverse_inverse_real @ A )
       != zero_zero_real ) ) ).

% nonzero_imp_inverse_nonzero
thf(fact_311_inverse__less__imp__less,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ ( inverse_inverse_real @ A ) @ ( inverse_inverse_real @ B3 ) )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ( ord_less_real @ B3 @ A ) ) ) ).

% inverse_less_imp_less
thf(fact_312_less__imp__inverse__less,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ A @ B3 )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ( ord_less_real @ ( inverse_inverse_real @ B3 ) @ ( inverse_inverse_real @ A ) ) ) ) ).

% less_imp_inverse_less
thf(fact_313_inverse__less__imp__less__neg,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ ( inverse_inverse_real @ A ) @ ( inverse_inverse_real @ B3 ) )
     => ( ( ord_less_real @ B3 @ zero_zero_real )
       => ( ord_less_real @ B3 @ A ) ) ) ).

% inverse_less_imp_less_neg
thf(fact_314_less__imp__inverse__less__neg,axiom,
    ! [A: real,B3: real] :
      ( ( ord_less_real @ A @ B3 )
     => ( ( ord_less_real @ B3 @ zero_zero_real )
       => ( ord_less_real @ ( inverse_inverse_real @ B3 ) @ ( inverse_inverse_real @ A ) ) ) ) ).

% less_imp_inverse_less_neg
thf(fact_315_inverse__negative__imp__negative,axiom,
    ! [A: real] :
      ( ( ord_less_real @ ( inverse_inverse_real @ A ) @ zero_zero_real )
     => ( ( A != zero_zero_real )
       => ( ord_less_real @ A @ zero_zero_real ) ) ) ).

% inverse_negative_imp_negative
thf(fact_316_inverse__positive__imp__positive,axiom,
    ! [A: real] :
      ( ( ord_less_real @ zero_zero_real @ ( inverse_inverse_real @ A ) )
     => ( ( A != zero_zero_real )
       => ( ord_less_real @ zero_zero_real @ A ) ) ) ).

% inverse_positive_imp_positive
thf(fact_317_negative__imp__inverse__negative,axiom,
    ! [A: real] :
      ( ( ord_less_real @ A @ zero_zero_real )
     => ( ord_less_real @ ( inverse_inverse_real @ A ) @ zero_zero_real ) ) ).

% negative_imp_inverse_negative
thf(fact_318_positive__imp__inverse__positive,axiom,
    ! [A: real] :
      ( ( ord_less_real @ zero_zero_real @ A )
     => ( ord_less_real @ zero_zero_real @ ( inverse_inverse_real @ A ) ) ) ).

% positive_imp_inverse_positive
thf(fact_319_nonzero__inverse__minus__eq,axiom,
    ! [A: real] :
      ( ( A != zero_zero_real )
     => ( ( inverse_inverse_real @ ( uminus_uminus_real @ A ) )
        = ( uminus_uminus_real @ ( inverse_inverse_real @ A ) ) ) ) ).

% nonzero_inverse_minus_eq
thf(fact_320_image__atLeastZeroLessThan__int,axiom,
    ! [U: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ U )
     => ( ( set_or1199280219an_int @ zero_zero_int @ U )
        = ( image_nat_int @ semiri2019852685at_int @ ( set_ord_lessThan_nat @ ( nat2 @ U ) ) ) ) ) ).

% image_atLeastZeroLessThan_int
thf(fact_321_of__int__of__nat,axiom,
    ( ring_1_of_int_int
    = ( ^ [K2: int] : ( if_int @ ( ord_less_int @ K2 @ zero_zero_int ) @ ( uminus_uminus_int @ ( semiri2019852685at_int @ ( nat2 @ ( uminus_uminus_int @ K2 ) ) ) ) @ ( semiri2019852685at_int @ ( nat2 @ K2 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_322_of__int__of__nat,axiom,
    ( ring_1_of_int_real
    = ( ^ [K2: int] : ( if_real @ ( ord_less_int @ K2 @ zero_zero_int ) @ ( uminus_uminus_real @ ( semiri2110766477t_real @ ( nat2 @ ( uminus_uminus_int @ K2 ) ) ) ) @ ( semiri2110766477t_real @ ( nat2 @ K2 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_323_le__zero__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_zero_eq
thf(fact_324_neg__le__iff__le,axiom,
    ! [B3: int,A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ B3 ) @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ B3 ) ) ).

% neg_le_iff_le
thf(fact_325_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_real @ ( semiri2110766477t_real @ M ) @ ( semiri2110766477t_real @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_326_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_int @ ( semiri2019852685at_int @ M ) @ ( semiri2019852685at_int @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_327_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_328_ivl__subset,axiom,
    ! [I: int,J: int,M: int,N: int] :
      ( ( ord_less_eq_set_int @ ( set_or1199280219an_int @ I @ J ) @ ( set_or1199280219an_int @ M @ N ) )
      = ( ( ord_less_eq_int @ J @ I )
        | ( ( ord_less_eq_int @ M @ I )
          & ( ord_less_eq_int @ J @ N ) ) ) ) ).

% ivl_subset
thf(fact_329_lessThan__subset__iff,axiom,
    ! [X: int,Y: int] :
      ( ( ord_less_eq_set_int @ ( set_ord_lessThan_int @ X ) @ ( set_ord_lessThan_int @ Y ) )
      = ( ord_less_eq_int @ X @ Y ) ) ).

% lessThan_subset_iff
thf(fact_330_lessThan__subset__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_set_nat @ ( set_ord_lessThan_nat @ X ) @ ( set_ord_lessThan_nat @ Y ) )
      = ( ord_less_eq_nat @ X @ Y ) ) ).

% lessThan_subset_iff
thf(fact_331_neg__0__le__iff__le,axiom,
    ! [A: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( uminus_uminus_real @ A ) )
      = ( ord_less_eq_real @ A @ zero_zero_real ) ) ).

% neg_0_le_iff_le
thf(fact_332_neg__0__le__iff__le,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% neg_0_le_iff_le
thf(fact_333_neg__le__0__iff__le,axiom,
    ! [A: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ A ) @ zero_zero_real )
      = ( ord_less_eq_real @ zero_zero_real @ A ) ) ).

% neg_le_0_iff_le
thf(fact_334_neg__le__0__iff__le,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ zero_zero_int )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% neg_le_0_iff_le
thf(fact_335_less__eq__neg__nonpos,axiom,
    ! [A: real] :
      ( ( ord_less_eq_real @ A @ ( uminus_uminus_real @ A ) )
      = ( ord_less_eq_real @ A @ zero_zero_real ) ) ).

% less_eq_neg_nonpos
thf(fact_336_less__eq__neg__nonpos,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ A @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% less_eq_neg_nonpos
thf(fact_337_neg__less__eq__nonneg,axiom,
    ! [A: real] :
      ( ( ord_less_eq_real @ ( uminus_uminus_real @ A ) @ A )
      = ( ord_less_eq_real @ zero_zero_real @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_338_neg__less__eq__nonneg,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ A )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_339_inverse__nonpositive__iff__nonpositive,axiom,
    ! [A: real] :
      ( ( ord_less_eq_real @ ( inverse_inverse_real @ A ) @ zero_zero_real )
      = ( ord_less_eq_real @ A @ zero_zero_real ) ) ).

% inverse_nonpositive_iff_nonpositive
thf(fact_340_inverse__nonnegative__iff__nonnegative,axiom,
    ! [A: real] :
      ( ( ord_less_eq_real @ zero_zero_real @ ( inverse_inverse_real @ A ) )
      = ( ord_less_eq_real @ zero_zero_real @ A ) ) ).

% inverse_nonnegative_iff_nonnegative
thf(fact_341_atLeastLessThan__iff,axiom,
    ! [I: real,L: real,U: real] :
      ( ( member_real @ I @ ( set_or2075149659n_real @ L @ U ) )
      = ( ( ord_less_eq_real @ L @ I )
        & ( ord_less_real @ I @ U ) ) ) ).

% atLeastLessThan_iff
thf(fact_342_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_343_atLeastLessThan__iff,axiom,
    ! [I: int,L: int,U: int] :
      ( ( member_int @ I @ ( set_or1199280219an_int @ L @ U ) )
      = ( ( ord_less_eq_int @ L @ I )
        & ( ord_less_int @ I @ U ) ) ) ).

% atLeastLessThan_iff
thf(fact_344_of__int__eq__0__iff,axiom,
    ! [Z2: int] :
      ( ( ( ring_1_of_int_real @ Z2 )
        = zero_zero_real )
      = ( Z2 = zero_zero_int ) ) ).

% of_int_eq_0_iff
thf(fact_345_negative__zle,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( semiri2019852685at_int @ N ) ) @ ( semiri2019852685at_int @ M ) ) ).

% negative_zle
thf(fact_346_nat__le__0,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ Z2 @ zero_zero_int )
     => ( ( nat2 @ Z2 )
        = zero_zero_nat ) ) ).

% nat_le_0
thf(fact_347_nat__0__iff,axiom,
    ! [I: int] :
      ( ( ( nat2 @ I )
        = zero_zero_nat )
      = ( ord_less_eq_int @ I @ zero_zero_int ) ) ).

% nat_0_iff
thf(fact_348_int__nat__eq,axiom,
    ! [Z2: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
       => ( ( semiri2019852685at_int @ ( nat2 @ Z2 ) )
          = Z2 ) )
      & ( ~ ( ord_less_eq_int @ zero_zero_int @ Z2 )
       => ( ( semiri2019852685at_int @ ( nat2 @ Z2 ) )
          = zero_zero_int ) ) ) ).

% int_nat_eq

% Helper facts (7)
thf(help_If_2_1_If_001t__Int__Oint_T,axiom,
    ! [X: int,Y: int] :
      ( ( if_int @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Int__Oint_T,axiom,
    ! [X: int,Y: int] :
      ( ( if_int @ $true @ X @ Y )
      = X ) ).

thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $true @ X @ Y )
      = X ) ).

thf(help_If_3_1_If_001t__Real__Oreal_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Real__Oreal_T,axiom,
    ! [X: real,Y: real] :
      ( ( if_real @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Real__Oreal_T,axiom,
    ! [X: real,Y: real] :
      ( ( if_real @ $true @ X @ Y )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( ( image_mset_nat_a @ ( nth_a @ ys ) @ ( image_mset_nat_nat @ f @ ( mset_set_nat @ ( set_or562006527an_nat @ zero_zero_nat @ ( size_size_list_a @ xs ) ) ) ) )
    = ( image_mset_nat_a @ ( nth_a @ ys ) @ ( mset_set_nat @ ( set_or562006527an_nat @ zero_zero_nat @ ( size_size_list_a @ ys ) ) ) ) ) ).

%------------------------------------------------------------------------------