TPTP Problem File: SLH0920^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SLH0000^1 : TPTP v8.2.0. Released v8.2.0.
% Domain   : Archive of Formal Proofs
% Problem  :
% Version  : Especial.
% English  :

% Refs     : [Des23] Desharnais (2023), Email to Geoff Sutcliffe
% Source   : [Des23]
% Names    : Khovanskii_Theorem/0008_Khovanskii/prob_00815_029990__13569876_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1446 ( 569 unt; 175 typ;   0 def)
%            Number of atoms       : 3689 (1254 equ;   0 cnn)
%            Maximal formula atoms :   12 (   2 avg)
%            Number of connectives : 10827 ( 405   ~;  61   |; 327   &;8502   @)
%                                         (   0 <=>;1532  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   6 avg)
%            Number of types       :   14 (  13 usr)
%            Number of type conns  :  629 ( 629   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  165 ( 162 usr;  15 con; 0-5 aty)
%            Number of variables   : 3475 ( 163   ^;3106   !; 206   ?;3475   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-18 16:15:04.555
%------------------------------------------------------------------------------
% Could-be-implicit typings (13)
thf(ty_n_t__Set__Oset_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    set_list_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Nat__Onat_J_J_J,type,
    set_set_list_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    list_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    set_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    set_set_nat: $tType ).

thf(ty_n_t__List__Olist_It__Extended____Nat__Oenat_J,type,
    list_Extended_enat: $tType ).

thf(ty_n_t__Set__Oset_It__Extended____Nat__Oenat_J,type,
    set_Extended_enat: $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__Extended____Nat__Oenat,type,
    extended_enat: $tType ).

thf(ty_n_t__String__Ochar,type,
    char: $tType ).

thf(ty_n_t__Num__Onum,type,
    num: $tType ).

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

% Explicit typings (162)
thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__List__Olist_It__Nat__Onat_J,type,
    bNF_Gr9051742241863529473st_nat: set_list_list_nat > list_nat > set_list_list_nat ).

thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__Nat__Onat,type,
    bNF_Gr1872714664788909425ft_nat: set_list_nat > nat > set_list_nat ).

thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__List__Olist_It__Nat__Onat_J,type,
    bNF_Gr3053708287304744325st_nat: set_list_list_nat > list_list_nat > set_list_nat ).

thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__Nat__Onat,type,
    bNF_Gr6352880689984616693cc_nat: set_list_nat > list_nat > set_nat ).

thf(sy_c_Countable__Set_Oto__nat__on_001t__List__Olist_It__Nat__Onat_J,type,
    counta9103016383634126529st_nat: set_list_nat > list_nat > nat ).

thf(sy_c_Countable__Set_Oto__nat__on_001t__Nat__Onat,type,
    counta4844910239362777137on_nat: set_nat > nat > nat ).

thf(sy_c_Finite__Set_OFpow_001t__Nat__Onat,type,
    finite_Fpow_nat: set_nat > set_set_nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Nat__Onat_J,type,
    finite_card_list_nat: set_list_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Nat__Onat,type,
    finite_card_nat: set_nat > nat ).

thf(sy_c_Finite__Set_Ofinite_001t__Extended____Nat__Oenat,type,
    finite4001608067531595151d_enat: set_Extended_enat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__List__Olist_It__Nat__Onat_J,type,
    finite8100373058378681591st_nat: set_list_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Nat__Onat,type,
    finite_finite_nat: set_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__Nat__Onat_J,type,
    finite1152437895449049373et_nat: set_set_nat > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    minus_3911745200923244873st_nat: list_list_nat > list_list_nat > list_list_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__List__Olist_It__Nat__Onat_J,type,
    minus_minus_list_nat: list_nat > list_nat > list_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    minus_7954133019191499631st_nat: set_list_nat > set_list_nat > set_list_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Nat__Onat_J,type,
    minus_minus_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Extended____Nat__Oenat,type,
    one_on7984719198319812577d_enat: extended_enat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Extended____Nat__Oenat,type,
    plus_p3455044024723400733d_enat: extended_enat > extended_enat > extended_enat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
    plus_plus_nat: nat > nat > nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Num__Onum,type,
    plus_plus_num: num > num > num ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Extended____Nat__Oenat,type,
    zero_z5237406670263579293d_enat: extended_enat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups__List_Ocomm__semiring__0__class_Ohorner__sum_001t__Nat__Onat_001t__Nat__Onat,type,
    groups7488368174851004413at_nat: ( nat > nat ) > nat > list_nat > nat ).

thf(sy_c_Groups__List_Omonoid__add__class_Osum__list_001t__Extended____Nat__Oenat,type,
    groups5145338220374282879d_enat: list_Extended_enat > extended_enat ).

thf(sy_c_Groups__List_Omonoid__add__class_Osum__list_001t__Nat__Onat,type,
    groups4561878855575611511st_nat: list_nat > nat ).

thf(sy_c_If_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    if_list_list_nat: $o > list_list_nat > list_list_nat > list_list_nat ).

thf(sy_c_If_001t__List__Olist_It__Nat__Onat_J,type,
    if_list_nat: $o > list_nat > list_nat > list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_001t__List__Olist_It__Nat__Onat_J,type,
    khovanskii_list_nat: set_list_nat > ( list_nat > list_nat > list_nat ) > list_nat > set_list_nat > $o ).

thf(sy_c_Khovanskii_OKhovanskii_001t__Nat__Onat,type,
    khovanskii_nat: set_nat > ( nat > nat > nat ) > nat > set_nat > $o ).

thf(sy_c_Khovanskii_OKhovanskii_OGmult_001t__List__Olist_It__Nat__Onat_J,type,
    gmult_list_nat: ( list_nat > list_nat > list_nat ) > list_nat > list_nat > nat > list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_OGmult_001t__Nat__Onat,type,
    gmult_nat: ( nat > nat > nat ) > nat > nat > nat > nat ).

thf(sy_c_Khovanskii_OKhovanskii_O_092_060alpha_062_001t__List__Olist_It__Nat__Onat_J,type,
    alpha_list_nat: set_list_nat > ( list_nat > list_nat > list_nat ) > list_nat > set_list_nat > list_nat > list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_O_092_060alpha_062_001t__Nat__Onat,type,
    alpha_nat: set_nat > ( nat > nat > nat ) > nat > set_nat > list_nat > nat ).

thf(sy_c_Khovanskii_OKhovanskii_OaA_001t__List__Olist_It__Nat__Onat_J,type,
    aA_list_nat: set_list_nat > list_list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_OaA_001t__Nat__Onat,type,
    aA_nat: set_nat > list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_Oaugmentum,type,
    augmentum: list_nat > list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_Odementum,type,
    dementum: list_nat > list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_Olength__sum__set,type,
    length_sum_set: nat > nat > set_list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_Olist__incr,type,
    list_incr: nat > list_nat > list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_Ominimal__elements,type,
    minimal_elements: set_list_nat > set_list_nat ).

thf(sy_c_Khovanskii_OKhovanskii_Ominimal__elementsp,type,
    minimal_elementsp: ( list_nat > $o ) > list_nat > $o ).

thf(sy_c_Khovanskii_OKhovanskii_Ouseless_001t__Nat__Onat,type,
    useless_nat: set_nat > ( nat > nat > nat ) > nat > set_nat > list_nat > $o ).

thf(sy_c_Khovanskii_Omax__pointwise,type,
    max_pointwise: nat > set_list_nat > list_nat ).

thf(sy_c_Khovanskii_Omin__pointwise,type,
    min_pointwise: nat > set_list_nat > list_nat ).

thf(sy_c_Khovanskii_Opointwise__le,type,
    pointwise_le: list_nat > list_nat > $o ).

thf(sy_c_Khovanskii_Opointwise__less,type,
    pointwise_less: list_nat > list_nat > $o ).

thf(sy_c_List_Oappend_001t__Extended____Nat__Oenat,type,
    append_Extended_enat: list_Extended_enat > list_Extended_enat > list_Extended_enat ).

thf(sy_c_List_Oappend_001t__List__Olist_It__Nat__Onat_J,type,
    append_list_nat: list_list_nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Oappend_001t__Nat__Onat,type,
    append_nat: list_nat > list_nat > list_nat ).

thf(sy_c_List_Obind_001t__Nat__Onat_001t__Nat__Onat,type,
    bind_nat_nat: list_nat > ( nat > list_nat ) > list_nat ).

thf(sy_c_List_Obutlast_001t__Extended____Nat__Oenat,type,
    butlas2973130096617243576d_enat: list_Extended_enat > list_Extended_enat ).

thf(sy_c_List_Obutlast_001t__List__Olist_It__Nat__Onat_J,type,
    butlast_list_nat: list_list_nat > list_list_nat ).

thf(sy_c_List_Obutlast_001t__Nat__Onat,type,
    butlast_nat: list_nat > list_nat ).

thf(sy_c_List_Ocan__select_001t__List__Olist_It__Nat__Onat_J,type,
    can_select_list_nat: ( list_nat > $o ) > set_list_nat > $o ).

thf(sy_c_List_Ocan__select_001t__Nat__Onat,type,
    can_select_nat: ( nat > $o ) > set_nat > $o ).

thf(sy_c_List_Oconcat_001t__Nat__Onat,type,
    concat_nat: list_list_nat > list_nat ).

thf(sy_c_List_Ocoset_001t__List__Olist_It__Nat__Onat_J,type,
    coset_list_nat: list_list_nat > set_list_nat ).

thf(sy_c_List_Ocoset_001t__Nat__Onat,type,
    coset_nat: list_nat > set_nat ).

thf(sy_c_List_Odistinct_001t__Extended____Nat__Oenat,type,
    distin4523846830085650399d_enat: list_Extended_enat > $o ).

thf(sy_c_List_Odistinct_001t__List__Olist_It__Nat__Onat_J,type,
    distinct_list_nat: list_list_nat > $o ).

thf(sy_c_List_Odistinct_001t__Nat__Onat,type,
    distinct_nat: list_nat > $o ).

thf(sy_c_List_Ogen__length_001t__Nat__Onat,type,
    gen_length_nat: nat > list_nat > nat ).

thf(sy_c_List_Oinsert_001t__List__Olist_It__Nat__Onat_J,type,
    insert_list_nat: list_nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Oinsert_001t__Nat__Onat,type,
    insert_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Olast_001t__List__Olist_It__Nat__Onat_J,type,
    last_list_nat: list_list_nat > list_nat ).

thf(sy_c_List_Olast_001t__Nat__Onat,type,
    last_nat: list_nat > nat ).

thf(sy_c_List_Olinorder__class_Osorted__list__of__set_001t__Extended____Nat__Oenat,type,
    linord1591021928418041270d_enat: set_Extended_enat > list_Extended_enat ).

thf(sy_c_List_Olinorder__class_Osorted__list__of__set_001t__List__Olist_It__Nat__Onat_J,type,
    linord2712301520579796368st_nat: set_list_nat > list_list_nat ).

thf(sy_c_List_Olinorder__class_Osorted__list__of__set_001t__Nat__Onat,type,
    linord2614967742042102400et_nat: set_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001t__Extended____Nat__Oenat,type,
    cons_Extended_enat: extended_enat > list_Extended_enat > list_Extended_enat ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Nat__Onat_J,type,
    cons_list_nat: list_nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
    cons_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Olist_ONil_001t__Extended____Nat__Oenat,type,
    nil_Extended_enat: list_Extended_enat ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Nat__Onat_J,type,
    nil_list_nat: list_list_nat ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_Oset_001t__Extended____Nat__Oenat,type,
    set_Extended_enat2: list_Extended_enat > set_Extended_enat ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Nat__Onat_J,type,
    set_list_nat2: list_list_nat > set_list_nat ).

thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
    set_nat2: list_nat > set_nat ).

thf(sy_c_List_Olist__ex1_001t__List__Olist_It__Nat__Onat_J,type,
    list_ex1_list_nat: ( list_nat > $o ) > list_list_nat > $o ).

thf(sy_c_List_Olist__ex1_001t__Nat__Onat,type,
    list_ex1_nat: ( nat > $o ) > list_nat > $o ).

thf(sy_c_List_Olist__update_001t__List__Olist_It__Nat__Onat_J,type,
    list_update_list_nat: list_list_nat > nat > list_nat > list_list_nat ).

thf(sy_c_List_Olist__update_001t__Nat__Onat,type,
    list_update_nat: list_nat > nat > nat > list_nat ).

thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Nat__Onat,type,
    maps_nat_nat: ( nat > list_nat ) > list_nat > list_nat ).

thf(sy_c_List_On__lists_001t__Nat__Onat,type,
    n_lists_nat: nat > list_nat > list_list_nat ).

thf(sy_c_List_Onth_001t__Extended____Nat__Oenat,type,
    nth_Extended_enat: list_Extended_enat > nat > extended_enat ).

thf(sy_c_List_Onth_001t__List__Olist_It__Nat__Onat_J,type,
    nth_list_nat: list_list_nat > nat > list_nat ).

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

thf(sy_c_List_Onths_001t__Extended____Nat__Oenat,type,
    nths_Extended_enat: list_Extended_enat > set_nat > list_Extended_enat ).

thf(sy_c_List_Onths_001t__List__Olist_It__Nat__Onat_J,type,
    nths_list_nat: list_list_nat > set_nat > list_list_nat ).

thf(sy_c_List_Onths_001t__Nat__Onat,type,
    nths_nat: list_nat > set_nat > list_nat ).

thf(sy_c_List_Oproduct__lists_001t__Nat__Onat,type,
    product_lists_nat: list_list_nat > list_list_nat ).

thf(sy_c_List_Osorted__wrt_001t__Extended____Nat__Oenat,type,
    sorted143172755617435219d_enat: ( extended_enat > extended_enat > $o ) > list_Extended_enat > $o ).

thf(sy_c_List_Osorted__wrt_001t__List__Olist_It__Nat__Onat_J,type,
    sorted_wrt_list_nat: ( list_nat > list_nat > $o ) > list_list_nat > $o ).

thf(sy_c_List_Osorted__wrt_001t__Nat__Onat,type,
    sorted_wrt_nat: ( nat > nat > $o ) > list_nat > $o ).

thf(sy_c_List_Osubseqs_001t__Nat__Onat,type,
    subseqs_nat: list_nat > list_list_nat ).

thf(sy_c_List_Ounion_001t__Nat__Onat,type,
    union_nat: list_nat > list_nat > list_nat ).

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

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Extended____Nat__Oenat_J,type,
    size_s3941691890525107288d_enat: list_Extended_enat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    size_s3023201423986296836st_nat: list_list_nat > nat ).

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__String__Ochar,type,
    size_size_char: char > nat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Extended____Nat__Oenat,type,
    numera1916890842035813515d_enat: num > extended_enat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Nat__Onat,type,
    numeral_numeral_nat: num > nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    bot_bot_set_list_nat: set_list_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Nat__Onat_J,type,
    bot_bot_set_nat: set_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Set__Oset_It__List__Olist_It__Nat__Onat_J_J_J,type,
    bot_bo3886227569956363488st_nat: set_set_list_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    bot_bot_set_set_nat: set_set_nat ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Extended____Nat__Oenat,type,
    ord_le72135733267957522d_enat: extended_enat > extended_enat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__List__Olist_It__Nat__Onat_J,type,
    ord_less_list_nat: list_nat > list_nat > $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__Num__Onum,type,
    ord_less_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    ord_le1190675801316882794st_nat: set_list_nat > set_list_nat > $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__eq_001t__Extended____Nat__Oenat,type,
    ord_le2932123472753598470d_enat: extended_enat > extended_enat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__List__Olist_It__Nat__Onat_J,type,
    ord_less_eq_list_nat: list_nat > list_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat,type,
    ord_less_eq_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Num__Onum,type,
    ord_less_eq_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Extended____Nat__Oenat_J,type,
    ord_le7203529160286727270d_enat: set_Extended_enat > set_Extended_enat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    ord_le6045566169113846134st_nat: set_list_nat > set_list_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_eq_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    ord_le6893508408891458716et_nat: set_set_nat > set_set_nat > $o ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Nat__Onat_J,type,
    collect_list_nat: ( list_nat > $o ) > set_list_nat ).

thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
    collect_nat: ( nat > $o ) > set_nat ).

thf(sy_c_Set_OPow_001t__List__Olist_It__Nat__Onat_J,type,
    pow_list_nat: set_list_nat > set_set_list_nat ).

thf(sy_c_Set_OPow_001t__Nat__Onat,type,
    pow_nat: set_nat > set_set_nat ).

thf(sy_c_Set_Oimage_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
    image_7976474329151083847st_nat: ( list_nat > list_nat ) > set_list_nat > set_list_nat ).

thf(sy_c_Set_Oimage_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
    image_list_nat_nat: ( list_nat > nat ) > set_list_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__List__Olist_It__Nat__Onat_J_001t__Set__Oset_It__Nat__Onat_J,type,
    image_1775855109352712557et_nat: ( list_nat > set_nat ) > set_list_nat > set_set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
    image_nat_list_nat: ( nat > list_nat ) > set_nat > set_list_nat ).

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__Set__Oset_It__Nat__Onat_J_001t__Set__Oset_It__Nat__Onat_J,type,
    image_7916887816326733075et_nat: ( set_nat > set_nat ) > set_set_nat > set_set_nat ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Nat__Onat_J,type,
    insert_list_nat2: list_nat > set_list_nat > set_list_nat ).

thf(sy_c_Set_Oinsert_001t__Nat__Onat,type,
    insert_nat2: nat > set_nat > set_nat ).

thf(sy_c_Set_Oinsert_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    insert_set_list_nat: set_list_nat > set_set_list_nat > set_set_list_nat ).

thf(sy_c_Set_Oinsert_001t__Set__Oset_It__Nat__Onat_J,type,
    insert_set_nat: set_nat > set_set_nat > set_set_nat ).

thf(sy_c_Set_Oremove_001t__List__Olist_It__Nat__Onat_J,type,
    remove_list_nat: list_nat > set_list_nat > set_list_nat ).

thf(sy_c_Set_Oremove_001t__Nat__Onat,type,
    remove_nat: nat > set_nat > set_nat ).

thf(sy_c_Set_Othe__elem_001t__Nat__Onat,type,
    the_elem_nat: set_nat > nat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Extended____Nat__Oenat,type,
    set_or8332593352340944941d_enat: extended_enat > set_Extended_enat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__List__Olist_It__Nat__Onat_J,type,
    set_or4185896845444216793st_nat: list_nat > set_list_nat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Nat__Onat,type,
    set_ord_atMost_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Set__Oset_It__Nat__Onat_J,type,
    set_or4236626031148496127et_nat: set_nat > set_set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Extended____Nat__Oenat,type,
    set_or7678188136779942326d_enat: extended_enat > extended_enat > set_Extended_enat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__List__Olist_It__Nat__Onat_J,type,
    set_or2698080078649356688st_nat: list_nat > list_nat > set_list_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Nat__Onat,type,
    set_or6659071591806873216st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Set__Oset_It__Nat__Onat_J,type,
    set_or7074010630789208630et_nat: set_nat > set_nat > set_set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Extended____Nat__Oenat,type,
    set_or8419480210114673929d_enat: extended_enat > set_Extended_enat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__List__Olist_It__Nat__Onat_J,type,
    set_or3033090826390029821st_nat: list_nat > set_list_nat ).

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

thf(sy_c_String_Ochar_Osize__char,type,
    size_char: char > nat ).

thf(sy_c_Wellfounded_OwfP_001t__List__Olist_It__Nat__Onat_J,type,
    wfP_list_nat: ( list_nat > list_nat > $o ) > $o ).

thf(sy_c_member_001t__Extended____Nat__Oenat,type,
    member_Extended_enat: extended_enat > set_Extended_enat > $o ).

thf(sy_c_member_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    member_list_list_nat: list_list_nat > set_list_list_nat > $o ).

thf(sy_c_member_001t__List__Olist_It__Nat__Onat_J,type,
    member_list_nat: list_nat > set_list_nat > $o ).

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

thf(sy_c_member_001t__Set__Oset_It__Nat__Onat_J,type,
    member_set_nat: set_nat > set_set_nat > $o ).

thf(sy_v_n,type,
    n: nat ).

thf(sy_v_xs,type,
    xs: list_nat ).

% Relevant facts (1265)
thf(fact_0_dementum__Nil,axiom,
    ( ( dementum @ nil_nat )
    = nil_nat ) ).

% dementum_Nil
thf(fact_1_append1__eq__conv,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat,Y: nat] :
      ( ( ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) )
        = ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) )
      = ( ( Xs = Ys )
        & ( X = Y ) ) ) ).

% append1_eq_conv
thf(fact_2_append_Oright__neutral,axiom,
    ! [A: list_nat] :
      ( ( append_nat @ A @ nil_nat )
      = A ) ).

% append.right_neutral
thf(fact_3_append__Nil2,axiom,
    ! [Xs: list_nat] :
      ( ( append_nat @ Xs @ nil_nat )
      = Xs ) ).

% append_Nil2
thf(fact_4_append__self__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_nat ) ) ).

% append_self_conv
thf(fact_5_self__append__conv,axiom,
    ! [Y: list_nat,Ys: list_nat] :
      ( ( Y
        = ( append_nat @ Y @ Ys ) )
      = ( Ys = nil_nat ) ) ).

% self_append_conv
thf(fact_6_append__self__conv2,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_nat ) ) ).

% append_self_conv2
thf(fact_7_self__append__conv2,axiom,
    ! [Y: list_nat,Xs: list_nat] :
      ( ( Y
        = ( append_nat @ Xs @ Y ) )
      = ( Xs = nil_nat ) ) ).

% self_append_conv2
thf(fact_8_Nil__is__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( nil_nat
        = ( append_nat @ Xs @ Ys ) )
      = ( ( Xs = nil_nat )
        & ( Ys = nil_nat ) ) ) ).

% Nil_is_append_conv
thf(fact_9_append__is__Nil__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = nil_nat )
      = ( ( Xs = nil_nat )
        & ( Ys = nil_nat ) ) ) ).

% append_is_Nil_conv
thf(fact_10_assms,axiom,
    sorted_wrt_nat @ ord_less_eq_nat @ ( append_nat @ xs @ ( cons_nat @ n @ nil_nat ) ) ).

% assms
thf(fact_11_rev__induct,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X2: nat,Xs2: list_nat] :
            ( ( P @ Xs2 )
           => ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X2 @ nil_nat ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_12_rev__exhaust,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ~ ! [Ys2: list_nat,Y2: nat] :
            ( Xs
           != ( append_nat @ Ys2 @ ( cons_nat @ Y2 @ nil_nat ) ) ) ) ).

% rev_exhaust
thf(fact_13_list_Oinject,axiom,
    ! [X21: nat,X22: list_nat,Y21: nat,Y22: list_nat] :
      ( ( ( cons_nat @ X21 @ X22 )
        = ( cons_nat @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_14_same__append__eq,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Xs @ Zs ) )
      = ( Ys = Zs ) ) ).

% same_append_eq
thf(fact_15_append__same__eq,axiom,
    ! [Ys: list_nat,Xs: list_nat,Zs: list_nat] :
      ( ( ( append_nat @ Ys @ Xs )
        = ( append_nat @ Zs @ Xs ) )
      = ( Ys = Zs ) ) ).

% append_same_eq
thf(fact_16_append__assoc,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ( append_nat @ ( append_nat @ Xs @ Ys ) @ Zs )
      = ( append_nat @ Xs @ ( append_nat @ Ys @ Zs ) ) ) ).

% append_assoc
thf(fact_17_append_Oassoc,axiom,
    ! [A: list_nat,B: list_nat,C: list_nat] :
      ( ( append_nat @ ( append_nat @ A @ B ) @ C )
      = ( append_nat @ A @ ( append_nat @ B @ C ) ) ) ).

% append.assoc
thf(fact_18_sorted0,axiom,
    sorted_wrt_nat @ ord_less_eq_nat @ nil_nat ).

% sorted0
thf(fact_19_sorted0,axiom,
    sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ nil_Extended_enat ).

% sorted0
thf(fact_20_sorted2,axiom,
    ! [X: nat,Y: nat,Zs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ ( cons_nat @ X @ ( cons_nat @ Y @ Zs ) ) )
      = ( ( ord_less_eq_nat @ X @ Y )
        & ( sorted_wrt_nat @ ord_less_eq_nat @ ( cons_nat @ Y @ Zs ) ) ) ) ).

% sorted2
thf(fact_21_sorted2,axiom,
    ! [X: extended_enat,Y: extended_enat,Zs: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( cons_Extended_enat @ X @ ( cons_Extended_enat @ Y @ Zs ) ) )
      = ( ( ord_le2932123472753598470d_enat @ X @ Y )
        & ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( cons_Extended_enat @ Y @ Zs ) ) ) ) ).

% sorted2
thf(fact_22_sorted__wrt_Osimps_I1_J,axiom,
    ! [P: nat > nat > $o] : ( sorted_wrt_nat @ P @ nil_nat ) ).

% sorted_wrt.simps(1)
thf(fact_23_sorted1,axiom,
    ! [X: nat] : ( sorted_wrt_nat @ ord_less_eq_nat @ ( cons_nat @ X @ nil_nat ) ) ).

% sorted1
thf(fact_24_sorted1,axiom,
    ! [X: extended_enat] : ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( cons_Extended_enat @ X @ nil_Extended_enat ) ) ).

% sorted1
thf(fact_25_sorted__wrt1,axiom,
    ! [P: nat > nat > $o,X: nat] : ( sorted_wrt_nat @ P @ ( cons_nat @ X @ nil_nat ) ) ).

% sorted_wrt1
thf(fact_26_not__Cons__self2,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( cons_nat @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_27_append__eq__append__conv2,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ts: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Zs @ Ts ) )
      = ( ? [Us: list_nat] :
            ( ( ( Xs
                = ( append_nat @ Zs @ Us ) )
              & ( ( append_nat @ Us @ Ys )
                = Ts ) )
            | ( ( ( append_nat @ Xs @ Us )
                = Zs )
              & ( Ys
                = ( append_nat @ Us @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_28_append__eq__appendI,axiom,
    ! [Xs: list_nat,Xs1: list_nat,Zs: list_nat,Ys: list_nat,Us2: list_nat] :
      ( ( ( append_nat @ Xs @ Xs1 )
        = Zs )
     => ( ( Ys
          = ( append_nat @ Xs1 @ Us2 ) )
       => ( ( append_nat @ Xs @ Ys )
          = ( append_nat @ Zs @ Us2 ) ) ) ) ).

% append_eq_appendI
thf(fact_29_list__nonempty__induct,axiom,
    ! [Xs: list_nat,P: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X2: nat] : ( P @ ( cons_nat @ X2 @ nil_nat ) )
       => ( ! [X2: nat,Xs2: list_nat] :
              ( ( Xs2 != nil_nat )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_nat @ X2 @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_30_list__induct2_H,axiom,
    ! [P: list_nat > list_nat > $o,Xs: list_nat,Ys: list_nat] :
      ( ( P @ nil_nat @ nil_nat )
     => ( ! [X2: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X2 @ Xs2 ) @ nil_nat )
       => ( ! [Y2: nat,Ys2: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y2 @ Ys2 ) )
         => ( ! [X2: nat,Xs2: list_nat,Y2: nat,Ys2: list_nat] :
                ( ( P @ Xs2 @ Ys2 )
               => ( P @ ( cons_nat @ X2 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_31_neq__Nil__conv,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
      = ( ? [Y3: nat,Ys3: list_nat] :
            ( Xs
            = ( cons_nat @ Y3 @ Ys3 ) ) ) ) ).

% neq_Nil_conv
thf(fact_32_remdups__adj_Ocases,axiom,
    ! [X: list_nat] :
      ( ( X != nil_nat )
     => ( ! [X2: nat] :
            ( X
           != ( cons_nat @ X2 @ nil_nat ) )
       => ~ ! [X2: nat,Y2: nat,Xs2: list_nat] :
              ( X
             != ( cons_nat @ X2 @ ( cons_nat @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_33_transpose_Ocases,axiom,
    ! [X: list_list_nat] :
      ( ( X != nil_list_nat )
     => ( ! [Xss: list_list_nat] :
            ( X
           != ( cons_list_nat @ nil_nat @ Xss ) )
       => ~ ! [X2: nat,Xs2: list_nat,Xss: list_list_nat] :
              ( X
             != ( cons_list_nat @ ( cons_nat @ X2 @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_34_min__list_Ocases,axiom,
    ! [X: list_nat] :
      ( ! [X2: nat,Xs2: list_nat] :
          ( X
         != ( cons_nat @ X2 @ Xs2 ) )
     => ( X = nil_nat ) ) ).

% min_list.cases
thf(fact_35_list_Oexhaust,axiom,
    ! [Y: list_nat] :
      ( ( Y != nil_nat )
     => ~ ! [X212: nat,X222: list_nat] :
            ( Y
           != ( cons_nat @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_36_list_OdiscI,axiom,
    ! [List: list_nat,X21: nat,X22: list_nat] :
      ( ( List
        = ( cons_nat @ X21 @ X22 ) )
     => ( List != nil_nat ) ) ).

% list.discI
thf(fact_37_mem__Collect__eq,axiom,
    ! [A: nat,P: nat > $o] :
      ( ( member_nat @ A @ ( collect_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_38_mem__Collect__eq,axiom,
    ! [A: list_nat,P: list_nat > $o] :
      ( ( member_list_nat @ A @ ( collect_list_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_39_Collect__mem__eq,axiom,
    ! [A2: set_nat] :
      ( ( collect_nat
        @ ^ [X3: nat] : ( member_nat @ X3 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_40_Collect__mem__eq,axiom,
    ! [A2: set_list_nat] :
      ( ( collect_list_nat
        @ ^ [X3: list_nat] : ( member_list_nat @ X3 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_41_list_Odistinct_I1_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( nil_nat
     != ( cons_nat @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_42_Cons__eq__appendI,axiom,
    ! [X: nat,Xs1: list_nat,Ys: list_nat,Xs: list_nat,Zs: list_nat] :
      ( ( ( cons_nat @ X @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_nat @ Xs1 @ Zs ) )
       => ( ( cons_nat @ X @ Xs )
          = ( append_nat @ Ys @ Zs ) ) ) ) ).

% Cons_eq_appendI
thf(fact_43_append__Cons,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat] :
      ( ( append_nat @ ( cons_nat @ X @ Xs ) @ Ys )
      = ( cons_nat @ X @ ( append_nat @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_44_eq__Nil__appendI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_nat @ nil_nat @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_45_append_Oleft__neutral,axiom,
    ! [A: list_nat] :
      ( ( append_nat @ nil_nat @ A )
      = A ) ).

% append.left_neutral
thf(fact_46_append__Nil,axiom,
    ! [Ys: list_nat] :
      ( ( append_nat @ nil_nat @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_47_rev__nonempty__induct,axiom,
    ! [Xs: list_nat,P: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X2: nat] : ( P @ ( cons_nat @ X2 @ nil_nat ) )
       => ( ! [X2: nat,Xs2: list_nat] :
              ( ( Xs2 != nil_nat )
             => ( ( P @ Xs2 )
               => ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X2 @ nil_nat ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_48_append__eq__Cons__conv,axiom,
    ! [Ys: list_nat,Zs: list_nat,X: nat,Xs: list_nat] :
      ( ( ( append_nat @ Ys @ Zs )
        = ( cons_nat @ X @ Xs ) )
      = ( ( ( Ys = nil_nat )
          & ( Zs
            = ( cons_nat @ X @ Xs ) ) )
        | ? [Ys4: list_nat] :
            ( ( Ys
              = ( cons_nat @ X @ Ys4 ) )
            & ( ( append_nat @ Ys4 @ Zs )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_49_Cons__eq__append__conv,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ( ( cons_nat @ X @ Xs )
        = ( append_nat @ Ys @ Zs ) )
      = ( ( ( Ys = nil_nat )
          & ( ( cons_nat @ X @ Xs )
            = Zs ) )
        | ? [Ys4: list_nat] :
            ( ( ( cons_nat @ X @ Ys4 )
              = Ys )
            & ( Xs
              = ( append_nat @ Ys4 @ Zs ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_50_order__refl,axiom,
    ! [X: nat] : ( ord_less_eq_nat @ X @ X ) ).

% order_refl
thf(fact_51_order__refl,axiom,
    ! [X: set_nat] : ( ord_less_eq_set_nat @ X @ X ) ).

% order_refl
thf(fact_52_order__refl,axiom,
    ! [X: extended_enat] : ( ord_le2932123472753598470d_enat @ X @ X ) ).

% order_refl
thf(fact_53_dual__order_Orefl,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% dual_order.refl
thf(fact_54_dual__order_Orefl,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% dual_order.refl
thf(fact_55_dual__order_Orefl,axiom,
    ! [A: extended_enat] : ( ord_le2932123472753598470d_enat @ A @ A ) ).

% dual_order.refl
thf(fact_56_augmentum_Osimps_I1_J,axiom,
    ( ( augmentum @ nil_nat )
    = nil_nat ) ).

% augmentum.simps(1)
thf(fact_57_list__encode_Ocases,axiom,
    ! [X: list_nat] :
      ( ( X != nil_nat )
     => ~ ! [X2: nat,Xs2: list_nat] :
            ( X
           != ( cons_nat @ X2 @ Xs2 ) ) ) ).

% list_encode.cases
thf(fact_58_bind__simps_I2_J,axiom,
    ! [X: nat,Xs: list_nat,F: nat > list_nat] :
      ( ( bind_nat_nat @ ( cons_nat @ X @ Xs ) @ F )
      = ( append_nat @ ( F @ X ) @ ( bind_nat_nat @ Xs @ F ) ) ) ).

% bind_simps(2)
thf(fact_59_sorted__imp__pointwise,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ ( append_nat @ Xs @ ( cons_nat @ N @ nil_nat ) ) )
     => ( pointwise_le @ ( cons_nat @ zero_zero_nat @ Xs ) @ ( append_nat @ Xs @ ( cons_nat @ N @ nil_nat ) ) ) ) ).

% sorted_imp_pointwise
thf(fact_60_maps__simps_I1_J,axiom,
    ! [F: nat > list_nat,X: nat,Xs: list_nat] :
      ( ( maps_nat_nat @ F @ ( cons_nat @ X @ Xs ) )
      = ( append_nat @ ( F @ X ) @ ( maps_nat_nat @ F @ Xs ) ) ) ).

% maps_simps(1)
thf(fact_61_insert__Nil,axiom,
    ! [X: nat] :
      ( ( insert_nat @ X @ nil_nat )
      = ( cons_nat @ X @ nil_nat ) ) ).

% insert_Nil
thf(fact_62_butlast__snoc,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( butlast_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) )
      = Xs ) ).

% butlast_snoc
thf(fact_63_list__ex1__simps_I1_J,axiom,
    ! [P: nat > $o] :
      ~ ( list_ex1_nat @ P @ nil_nat ) ).

% list_ex1_simps(1)
thf(fact_64_last__snoc,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( last_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) )
      = X ) ).

% last_snoc
thf(fact_65_pointwise__le__refl,axiom,
    ! [X: list_nat] : ( pointwise_le @ X @ X ) ).

% pointwise_le_refl
thf(fact_66_pointwise__le__Nil,axiom,
    ! [X: list_nat] :
      ( ( pointwise_le @ nil_nat @ X )
      = ( X = nil_nat ) ) ).

% pointwise_le_Nil
thf(fact_67_pointwise__le__Nil2,axiom,
    ! [X: list_nat] :
      ( ( pointwise_le @ X @ nil_nat )
      = ( X = nil_nat ) ) ).

% pointwise_le_Nil2
thf(fact_68_bind__simps_I1_J,axiom,
    ! [F: nat > list_nat] :
      ( ( bind_nat_nat @ nil_nat @ F )
      = nil_nat ) ).

% bind_simps(1)
thf(fact_69_pointwise__append__le__iff,axiom,
    ! [U: list_nat,X: list_nat,Y: list_nat] :
      ( ( pointwise_le @ ( append_nat @ U @ X ) @ ( append_nat @ U @ Y ) )
      = ( pointwise_le @ X @ Y ) ) ).

% pointwise_append_le_iff
thf(fact_70_last__appendL,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( Ys = nil_nat )
     => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
        = ( last_nat @ Xs ) ) ) ).

% last_appendL
thf(fact_71_last__appendR,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( Ys != nil_nat )
     => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
        = ( last_nat @ Ys ) ) ) ).

% last_appendR
thf(fact_72_append__butlast__last__id,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( append_nat @ ( butlast_nat @ Xs ) @ ( cons_nat @ ( last_nat @ Xs ) @ nil_nat ) )
        = Xs ) ) ).

% append_butlast_last_id
thf(fact_73_pointwise__le__antisym,axiom,
    ! [X: list_nat,Y: list_nat] :
      ( ( pointwise_le @ X @ Y )
     => ( ( pointwise_le @ Y @ X )
       => ( X = Y ) ) ) ).

% pointwise_le_antisym
thf(fact_74_pointwise__le__trans,axiom,
    ! [X: list_nat,Y: list_nat,Z: list_nat] :
      ( ( pointwise_le @ X @ Y )
     => ( ( pointwise_le @ Y @ Z )
       => ( pointwise_le @ X @ Z ) ) ) ).

% pointwise_le_trans
thf(fact_75_butlast_Osimps_I1_J,axiom,
    ( ( butlast_nat @ nil_nat )
    = nil_nat ) ).

% butlast.simps(1)
thf(fact_76_snoc__eq__iff__butlast,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) )
        = Ys )
      = ( ( Ys != nil_nat )
        & ( ( butlast_nat @ Ys )
          = Xs )
        & ( ( last_nat @ Ys )
          = X ) ) ) ).

% snoc_eq_iff_butlast
thf(fact_77_last_Osimps,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( ( Xs = nil_nat )
       => ( ( last_nat @ ( cons_nat @ X @ Xs ) )
          = X ) )
      & ( ( Xs != nil_nat )
       => ( ( last_nat @ ( cons_nat @ X @ Xs ) )
          = ( last_nat @ Xs ) ) ) ) ).

% last.simps
thf(fact_78_last__ConsL,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( Xs = nil_nat )
     => ( ( last_nat @ ( cons_nat @ X @ Xs ) )
        = X ) ) ).

% last_ConsL
thf(fact_79_last__ConsR,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( Xs != nil_nat )
     => ( ( last_nat @ ( cons_nat @ X @ Xs ) )
        = ( last_nat @ Xs ) ) ) ).

% last_ConsR
thf(fact_80_last__append,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( ( Ys = nil_nat )
       => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
          = ( last_nat @ Xs ) ) )
      & ( ( Ys != nil_nat )
       => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
          = ( last_nat @ Ys ) ) ) ) ).

% last_append
thf(fact_81_longest__common__suffix,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
    ? [Ss: list_nat,Xs3: list_nat,Ys5: list_nat] :
      ( ( Xs
        = ( append_nat @ Xs3 @ Ss ) )
      & ( Ys
        = ( append_nat @ Ys5 @ Ss ) )
      & ( ( Xs3 = nil_nat )
        | ( Ys5 = nil_nat )
        | ( ( last_nat @ Xs3 )
         != ( last_nat @ Ys5 ) ) ) ) ).

% longest_common_suffix
thf(fact_82_butlast_Osimps_I2_J,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( ( Xs = nil_nat )
       => ( ( butlast_nat @ ( cons_nat @ X @ Xs ) )
          = nil_nat ) )
      & ( ( Xs != nil_nat )
       => ( ( butlast_nat @ ( cons_nat @ X @ Xs ) )
          = ( cons_nat @ X @ ( butlast_nat @ Xs ) ) ) ) ) ).

% butlast.simps(2)
thf(fact_83_butlast__append,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( ( Ys = nil_nat )
       => ( ( butlast_nat @ ( append_nat @ Xs @ Ys ) )
          = ( butlast_nat @ Xs ) ) )
      & ( ( Ys != nil_nat )
       => ( ( butlast_nat @ ( append_nat @ Xs @ Ys ) )
          = ( append_nat @ Xs @ ( butlast_nat @ Ys ) ) ) ) ) ).

% butlast_append
thf(fact_84_pointwise__le__imp___092_060sigma_062,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( pointwise_le @ Xs @ Ys )
     => ( ord_less_eq_nat @ ( groups4561878855575611511st_nat @ Xs ) @ ( groups4561878855575611511st_nat @ Ys ) ) ) ).

% pointwise_le_imp_\<sigma>
thf(fact_85_maps__simps_I2_J,axiom,
    ! [F: nat > list_nat] :
      ( ( maps_nat_nat @ F @ nil_nat )
      = nil_nat ) ).

% maps_simps(2)
thf(fact_86_order__antisym__conv,axiom,
    ! [Y: nat,X: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ( ( ord_less_eq_nat @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_87_order__antisym__conv,axiom,
    ! [Y: set_nat,X: set_nat] :
      ( ( ord_less_eq_set_nat @ Y @ X )
     => ( ( ord_less_eq_set_nat @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_88_order__antisym__conv,axiom,
    ! [Y: extended_enat,X: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ Y @ X )
     => ( ( ord_le2932123472753598470d_enat @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_89_linorder__le__cases,axiom,
    ! [X: nat,Y: nat] :
      ( ~ ( ord_less_eq_nat @ X @ Y )
     => ( ord_less_eq_nat @ Y @ X ) ) ).

% linorder_le_cases
thf(fact_90_linorder__le__cases,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ~ ( ord_le2932123472753598470d_enat @ X @ Y )
     => ( ord_le2932123472753598470d_enat @ Y @ X ) ) ).

% linorder_le_cases
thf(fact_91_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_92_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_93_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > extended_enat,C: extended_enat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_94_ord__le__eq__subst,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_95_ord__le__eq__subst,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_96_ord__le__eq__subst,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > extended_enat,C: extended_enat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_97_ord__le__eq__subst,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > nat,C: nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_98_ord__le__eq__subst,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > set_nat,C: set_nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_99_ord__le__eq__subst,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_100_ord__eq__le__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_101_ord__eq__le__subst,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_102_ord__eq__le__subst,axiom,
    ! [A: extended_enat,F: nat > extended_enat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_103_ord__eq__le__subst,axiom,
    ! [A: nat,F: set_nat > nat,B: set_nat,C: set_nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_104_ord__eq__le__subst,axiom,
    ! [A: set_nat,F: set_nat > set_nat,B: set_nat,C: set_nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_105_ord__eq__le__subst,axiom,
    ! [A: extended_enat,F: set_nat > extended_enat,B: set_nat,C: set_nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_106_ord__eq__le__subst,axiom,
    ! [A: nat,F: extended_enat > nat,B: extended_enat,C: extended_enat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_107_ord__eq__le__subst,axiom,
    ! [A: set_nat,F: extended_enat > set_nat,B: extended_enat,C: extended_enat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_108_ord__eq__le__subst,axiom,
    ! [A: extended_enat,F: extended_enat > extended_enat,B: extended_enat,C: extended_enat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_109_linorder__linear,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
      | ( ord_less_eq_nat @ Y @ X ) ) ).

% linorder_linear
thf(fact_110_linorder__linear,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ X @ Y )
      | ( ord_le2932123472753598470d_enat @ Y @ X ) ) ).

% linorder_linear
thf(fact_111_order__eq__refl,axiom,
    ! [X: nat,Y: nat] :
      ( ( X = Y )
     => ( ord_less_eq_nat @ X @ Y ) ) ).

% order_eq_refl
thf(fact_112_order__eq__refl,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( X = Y )
     => ( ord_less_eq_set_nat @ X @ Y ) ) ).

% order_eq_refl
thf(fact_113_order__eq__refl,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( X = Y )
     => ( ord_le2932123472753598470d_enat @ X @ Y ) ) ).

% order_eq_refl
thf(fact_114_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_115_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_116_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > extended_enat,C: extended_enat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_le2932123472753598470d_enat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_117_order__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_118_order__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_119_order__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > extended_enat,C: extended_enat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_le2932123472753598470d_enat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_120_order__subst2,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > nat,C: nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_121_order__subst2,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > set_nat,C: set_nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_122_order__subst2,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_le2932123472753598470d_enat @ ( F @ B ) @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_123_order__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_124_order__subst1,axiom,
    ! [A: nat,F: set_nat > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_125_order__subst1,axiom,
    ! [A: nat,F: extended_enat > nat,B: extended_enat,C: extended_enat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_126_order__subst1,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_127_order__subst1,axiom,
    ! [A: set_nat,F: set_nat > set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_128_order__subst1,axiom,
    ! [A: set_nat,F: extended_enat > set_nat,B: extended_enat,C: extended_enat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_129_order__subst1,axiom,
    ! [A: extended_enat,F: nat > extended_enat,B: nat,C: nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_130_order__subst1,axiom,
    ! [A: extended_enat,F: set_nat > extended_enat,B: set_nat,C: set_nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_131_order__subst1,axiom,
    ! [A: extended_enat,F: extended_enat > extended_enat,B: extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le2932123472753598470d_enat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_132_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z2: nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A3 @ B2 )
          & ( ord_less_eq_nat @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_133_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z2: set_nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ A3 @ B2 )
          & ( ord_less_eq_set_nat @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_134_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: extended_enat,Z2: extended_enat] : ( Y4 = Z2 ) )
    = ( ^ [A3: extended_enat,B2: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ A3 @ B2 )
          & ( ord_le2932123472753598470d_enat @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_135_antisym,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_136_antisym,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_137_antisym,axiom,
    ! [A: extended_enat,B: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_le2932123472753598470d_enat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_138_dual__order_Otrans,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_eq_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_139_dual__order_Otrans,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ C @ B )
       => ( ord_less_eq_set_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_140_dual__order_Otrans,axiom,
    ! [B: extended_enat,A: extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ B @ A )
     => ( ( ord_le2932123472753598470d_enat @ C @ B )
       => ( ord_le2932123472753598470d_enat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_141_dual__order_Oantisym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_142_dual__order_Oantisym,axiom,
    ! [B: set_nat,A: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_143_dual__order_Oantisym,axiom,
    ! [B: extended_enat,A: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ B @ A )
     => ( ( ord_le2932123472753598470d_enat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_144_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: nat,Z2: nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ B2 @ A3 )
          & ( ord_less_eq_nat @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_145_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z2: set_nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ B2 @ A3 )
          & ( ord_less_eq_set_nat @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_146_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: extended_enat,Z2: extended_enat] : ( Y4 = Z2 ) )
    = ( ^ [A3: extended_enat,B2: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ B2 @ A3 )
          & ( ord_le2932123472753598470d_enat @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_147_linorder__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A4 @ B3 )
         => ( P @ A4 @ B3 ) )
     => ( ! [A4: nat,B3: nat] :
            ( ( P @ B3 @ A4 )
           => ( P @ A4 @ B3 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_148_linorder__wlog,axiom,
    ! [P: extended_enat > extended_enat > $o,A: extended_enat,B: extended_enat] :
      ( ! [A4: extended_enat,B3: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ A4 @ B3 )
         => ( P @ A4 @ B3 ) )
     => ( ! [A4: extended_enat,B3: extended_enat] :
            ( ( P @ B3 @ A4 )
           => ( P @ A4 @ B3 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_149_order__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z )
       => ( ord_less_eq_nat @ X @ Z ) ) ) ).

% order_trans
thf(fact_150_order__trans,axiom,
    ! [X: set_nat,Y: set_nat,Z: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ Z )
       => ( ord_less_eq_set_nat @ X @ Z ) ) ) ).

% order_trans
thf(fact_151_order__trans,axiom,
    ! [X: extended_enat,Y: extended_enat,Z: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ X @ Y )
     => ( ( ord_le2932123472753598470d_enat @ Y @ Z )
       => ( ord_le2932123472753598470d_enat @ X @ Z ) ) ) ).

% order_trans
thf(fact_152_order_Otrans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_153_order_Otrans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_154_order_Otrans,axiom,
    ! [A: extended_enat,B: extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ord_le2932123472753598470d_enat @ A @ C ) ) ) ).

% order.trans
thf(fact_155_order__antisym,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_156_order__antisym,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_157_order__antisym,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ X @ Y )
     => ( ( ord_le2932123472753598470d_enat @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_158_ord__le__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_159_ord__le__eq__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_160_ord__le__eq__trans,axiom,
    ! [A: extended_enat,B: extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( B = C )
       => ( ord_le2932123472753598470d_enat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_161_ord__eq__le__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A = B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_162_ord__eq__le__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( A = B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_163_ord__eq__le__trans,axiom,
    ! [A: extended_enat,B: extended_enat,C: extended_enat] :
      ( ( A = B )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ord_le2932123472753598470d_enat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_164_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z2: nat] : ( Y4 = Z2 ) )
    = ( ^ [X3: nat,Y3: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y3 )
          & ( ord_less_eq_nat @ Y3 @ X3 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_165_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z2: set_nat] : ( Y4 = Z2 ) )
    = ( ^ [X3: set_nat,Y3: set_nat] :
          ( ( ord_less_eq_set_nat @ X3 @ Y3 )
          & ( ord_less_eq_set_nat @ Y3 @ X3 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_166_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: extended_enat,Z2: extended_enat] : ( Y4 = Z2 ) )
    = ( ^ [X3: extended_enat,Y3: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ X3 @ Y3 )
          & ( ord_le2932123472753598470d_enat @ Y3 @ X3 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_167_le__cases3,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ( ord_less_eq_nat @ X @ Y )
       => ~ ( ord_less_eq_nat @ Y @ Z ) )
     => ( ( ( ord_less_eq_nat @ Y @ X )
         => ~ ( ord_less_eq_nat @ X @ Z ) )
       => ( ( ( ord_less_eq_nat @ X @ Z )
           => ~ ( ord_less_eq_nat @ Z @ Y ) )
         => ( ( ( ord_less_eq_nat @ Z @ Y )
             => ~ ( ord_less_eq_nat @ Y @ X ) )
           => ( ( ( ord_less_eq_nat @ Y @ Z )
               => ~ ( ord_less_eq_nat @ Z @ X ) )
             => ~ ( ( ord_less_eq_nat @ Z @ X )
                 => ~ ( ord_less_eq_nat @ X @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_168_le__cases3,axiom,
    ! [X: extended_enat,Y: extended_enat,Z: extended_enat] :
      ( ( ( ord_le2932123472753598470d_enat @ X @ Y )
       => ~ ( ord_le2932123472753598470d_enat @ Y @ Z ) )
     => ( ( ( ord_le2932123472753598470d_enat @ Y @ X )
         => ~ ( ord_le2932123472753598470d_enat @ X @ Z ) )
       => ( ( ( ord_le2932123472753598470d_enat @ X @ Z )
           => ~ ( ord_le2932123472753598470d_enat @ Z @ Y ) )
         => ( ( ( ord_le2932123472753598470d_enat @ Z @ Y )
             => ~ ( ord_le2932123472753598470d_enat @ Y @ X ) )
           => ( ( ( ord_le2932123472753598470d_enat @ Y @ Z )
               => ~ ( ord_le2932123472753598470d_enat @ Z @ X ) )
             => ~ ( ( ord_le2932123472753598470d_enat @ Z @ X )
                 => ~ ( ord_le2932123472753598470d_enat @ X @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_169_nle__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( ord_less_eq_nat @ A @ B ) )
      = ( ( ord_less_eq_nat @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_170_nle__le,axiom,
    ! [A: extended_enat,B: extended_enat] :
      ( ( ~ ( ord_le2932123472753598470d_enat @ A @ B ) )
      = ( ( ord_le2932123472753598470d_enat @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_171_sorted__butlast,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
       => ( sorted_wrt_nat @ ord_less_eq_nat @ ( butlast_nat @ Xs ) ) ) ) ).

% sorted_butlast
thf(fact_172_sorted__butlast,axiom,
    ! [Xs: list_Extended_enat] :
      ( ( Xs != nil_Extended_enat )
     => ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
       => ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( butlas2973130096617243576d_enat @ Xs ) ) ) ) ).

% sorted_butlast
thf(fact_173_sum__list_ONil,axiom,
    ( ( groups4561878855575611511st_nat @ nil_nat )
    = zero_zero_nat ) ).

% sum_list.Nil
thf(fact_174_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% le0
thf(fact_175_bot__nat__0_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).

% bot_nat_0.extremum
thf(fact_176_le__zero__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_zero_eq
thf(fact_177_le__zero__eq,axiom,
    ! [N: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ N @ zero_z5237406670263579293d_enat )
      = ( N = zero_z5237406670263579293d_enat ) ) ).

% le_zero_eq
thf(fact_178_n__lists__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( n_lists_nat @ N @ nil_nat )
          = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( n_lists_nat @ N @ nil_nat )
          = nil_list_nat ) ) ) ).

% n_lists_Nil
thf(fact_179_sorted__augmentum,axiom,
    ! [Ns: list_nat] :
      ( ~ ( member_nat @ zero_zero_nat @ ( set_nat2 @ Ns ) )
     => ( sorted_wrt_nat @ ord_less_eq_nat @ ( augmentum @ Ns ) ) ) ).

% sorted_augmentum
thf(fact_180_dementum__def,axiom,
    ( dementum
    = ( ^ [Xs4: list_nat] : ( minus_minus_list_nat @ Xs4 @ ( cons_nat @ zero_zero_nat @ Xs4 ) ) ) ) ).

% dementum_def
thf(fact_181_le__Nil,axiom,
    ! [X: list_nat] :
      ( ( ord_less_eq_list_nat @ X @ nil_nat )
      = ( X = nil_nat ) ) ).

% le_Nil
thf(fact_182_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_nat] :
      ( ( n_lists_nat @ zero_zero_nat @ Xs )
      = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% n_lists.simps(1)
thf(fact_183_zero__notin__augmentum,axiom,
    ! [Ns: list_nat] :
      ( ~ ( member_nat @ zero_zero_nat @ ( set_nat2 @ Ns ) )
     => ~ ( member_nat @ zero_zero_nat @ ( set_nat2 @ ( augmentum @ Ns ) ) ) ) ).

% zero_notin_augmentum
thf(fact_184_zero__diff,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_185_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

% diff_zero
thf(fact_186_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ A )
      = zero_zero_nat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_187_minus__Nil,axiom,
    ! [Xs: list_nat] :
      ( ( minus_minus_list_nat @ nil_nat @ Xs )
      = nil_nat ) ).

% minus_Nil
thf(fact_188_in__set__insert,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( insert_list_nat @ X @ Xs )
        = Xs ) ) ).

% in_set_insert
thf(fact_189_in__set__insert,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ( ( insert_nat @ X @ Xs )
        = Xs ) ) ).

% in_set_insert
thf(fact_190_sum__list__eq__0__iff,axiom,
    ! [Ns: list_nat] :
      ( ( ( groups4561878855575611511st_nat @ Ns )
        = zero_zero_nat )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Ns ) )
           => ( X3 = zero_zero_nat ) ) ) ) ).

% sum_list_eq_0_iff
thf(fact_191_not__in__set__insert,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ~ ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( insert_list_nat @ X @ Xs )
        = ( cons_list_nat @ X @ Xs ) ) ) ).

% not_in_set_insert
thf(fact_192_not__in__set__insert,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ( ( insert_nat @ X @ Xs )
        = ( cons_nat @ X @ Xs ) ) ) ).

% not_in_set_insert
thf(fact_193_subset__code_I1_J,axiom,
    ! [Xs: list_list_nat,B4: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ B4 )
      = ( ! [X3: list_nat] :
            ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xs ) )
           => ( member_list_nat @ X3 @ B4 ) ) ) ) ).

% subset_code(1)
thf(fact_194_subset__code_I1_J,axiom,
    ! [Xs: list_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ B4 )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
           => ( member_nat @ X3 @ B4 ) ) ) ) ).

% subset_code(1)
thf(fact_195_diff__right__commute,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_196_minus__Cons,axiom,
    ! [Y: list_nat,Ys: list_list_nat,X: list_nat,Xs: list_list_nat] :
      ( ( minus_3911745200923244873st_nat @ ( cons_list_nat @ Y @ Ys ) @ ( cons_list_nat @ X @ Xs ) )
      = ( cons_list_nat @ ( minus_minus_list_nat @ Y @ X ) @ ( minus_3911745200923244873st_nat @ Ys @ Xs ) ) ) ).

% minus_Cons
thf(fact_197_minus__Cons,axiom,
    ! [Y: nat,Ys: list_nat,X: nat,Xs: list_nat] :
      ( ( minus_minus_list_nat @ ( cons_nat @ Y @ Ys ) @ ( cons_nat @ X @ Xs ) )
      = ( cons_nat @ ( minus_minus_nat @ Y @ X ) @ ( minus_minus_list_nat @ Ys @ Xs ) ) ) ).

% minus_Cons
thf(fact_198_set__ConsD,axiom,
    ! [Y: list_nat,X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ Y @ ( set_list_nat2 @ ( cons_list_nat @ X @ Xs ) ) )
     => ( ( Y = X )
        | ( member_list_nat @ Y @ ( set_list_nat2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_199_set__ConsD,axiom,
    ! [Y: nat,X: nat,Xs: list_nat] :
      ( ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X @ Xs ) ) )
     => ( ( Y = X )
        | ( member_nat @ Y @ ( set_nat2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_200_list_Oset__cases,axiom,
    ! [E: list_nat,A: list_list_nat] :
      ( ( member_list_nat @ E @ ( set_list_nat2 @ A ) )
     => ( ! [Z22: list_list_nat] :
            ( A
           != ( cons_list_nat @ E @ Z22 ) )
       => ~ ! [Z1: list_nat,Z22: list_list_nat] :
              ( ( A
                = ( cons_list_nat @ Z1 @ Z22 ) )
             => ~ ( member_list_nat @ E @ ( set_list_nat2 @ Z22 ) ) ) ) ) ).

% list.set_cases
thf(fact_201_list_Oset__cases,axiom,
    ! [E: nat,A: list_nat] :
      ( ( member_nat @ E @ ( set_nat2 @ A ) )
     => ( ! [Z22: list_nat] :
            ( A
           != ( cons_nat @ E @ Z22 ) )
       => ~ ! [Z1: nat,Z22: list_nat] :
              ( ( A
                = ( cons_nat @ Z1 @ Z22 ) )
             => ~ ( member_nat @ E @ ( set_nat2 @ Z22 ) ) ) ) ) ).

% list.set_cases
thf(fact_202_list_Oset__intros_I1_J,axiom,
    ! [X21: list_nat,X22: list_list_nat] : ( member_list_nat @ X21 @ ( set_list_nat2 @ ( cons_list_nat @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_203_list_Oset__intros_I1_J,axiom,
    ! [X21: nat,X22: list_nat] : ( member_nat @ X21 @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_204_list_Oset__intros_I2_J,axiom,
    ! [Y: list_nat,X22: list_list_nat,X21: list_nat] :
      ( ( member_list_nat @ Y @ ( set_list_nat2 @ X22 ) )
     => ( member_list_nat @ Y @ ( set_list_nat2 @ ( cons_list_nat @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_205_list_Oset__intros_I2_J,axiom,
    ! [Y: nat,X22: list_nat,X21: nat] :
      ( ( member_nat @ Y @ ( set_nat2 @ X22 ) )
     => ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_206_set__subset__Cons,axiom,
    ! [Xs: list_nat,X: nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ ( set_nat2 @ ( cons_nat @ X @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_207_sorted__wrt__mono__rel,axiom,
    ! [Xs: list_list_nat,P: list_nat > list_nat > $o,Q: list_nat > list_nat > $o] :
      ( ! [X2: list_nat,Y2: list_nat] :
          ( ( member_list_nat @ X2 @ ( set_list_nat2 @ Xs ) )
         => ( ( member_list_nat @ Y2 @ ( set_list_nat2 @ Xs ) )
           => ( ( P @ X2 @ Y2 )
             => ( Q @ X2 @ Y2 ) ) ) )
     => ( ( sorted_wrt_list_nat @ P @ Xs )
       => ( sorted_wrt_list_nat @ Q @ Xs ) ) ) ).

% sorted_wrt_mono_rel
thf(fact_208_sorted__wrt__mono__rel,axiom,
    ! [Xs: list_nat,P: nat > nat > $o,Q: nat > nat > $o] :
      ( ! [X2: nat,Y2: nat] :
          ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
         => ( ( member_nat @ Y2 @ ( set_nat2 @ Xs ) )
           => ( ( P @ X2 @ Y2 )
             => ( Q @ X2 @ Y2 ) ) ) )
     => ( ( sorted_wrt_nat @ P @ Xs )
       => ( sorted_wrt_nat @ Q @ Xs ) ) ) ).

% sorted_wrt_mono_rel
thf(fact_209_in__set__butlastD,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ ( butlast_list_nat @ Xs ) ) )
     => ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) ) ) ).

% in_set_butlastD
thf(fact_210_in__set__butlastD,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ ( butlast_nat @ Xs ) ) )
     => ( member_nat @ X @ ( set_nat2 @ Xs ) ) ) ).

% in_set_butlastD
thf(fact_211_member__le__sum__list,axiom,
    ! [X: extended_enat,Xs: list_Extended_enat] :
      ( ( member_Extended_enat @ X @ ( set_Extended_enat2 @ Xs ) )
     => ( ord_le2932123472753598470d_enat @ X @ ( groups5145338220374282879d_enat @ Xs ) ) ) ).

% member_le_sum_list
thf(fact_212_member__le__sum__list,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ( ord_less_eq_nat @ X @ ( groups4561878855575611511st_nat @ Xs ) ) ) ).

% member_le_sum_list
thf(fact_213_pairwise__minus__cancel,axiom,
    ! [Z: list_nat,X: list_nat,Y: list_nat] :
      ( ( pointwise_le @ Z @ X )
     => ( ( pointwise_le @ Z @ Y )
       => ( ( ( minus_minus_list_nat @ X @ Z )
            = ( minus_minus_list_nat @ Y @ Z ) )
         => ( X = Y ) ) ) ) ).

% pairwise_minus_cancel
thf(fact_214_list__ex1__iff,axiom,
    ( list_ex1_list_nat
    = ( ^ [P2: list_nat > $o,Xs4: list_list_nat] :
        ? [X3: list_nat] :
          ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xs4 ) )
          & ( P2 @ X3 )
          & ! [Y3: list_nat] :
              ( ( ( member_list_nat @ Y3 @ ( set_list_nat2 @ Xs4 ) )
                & ( P2 @ Y3 ) )
             => ( Y3 = X3 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_215_list__ex1__iff,axiom,
    ( list_ex1_nat
    = ( ^ [P2: nat > $o,Xs4: list_nat] :
        ? [X3: nat] :
          ( ( member_nat @ X3 @ ( set_nat2 @ Xs4 ) )
          & ( P2 @ X3 )
          & ! [Y3: nat] :
              ( ( ( member_nat @ Y3 @ ( set_nat2 @ Xs4 ) )
                & ( P2 @ Y3 ) )
             => ( Y3 = X3 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_216_sum__list__nonpos,axiom,
    ! [Xs: list_Extended_enat] :
      ( ! [X2: extended_enat] :
          ( ( member_Extended_enat @ X2 @ ( set_Extended_enat2 @ Xs ) )
         => ( ord_le2932123472753598470d_enat @ X2 @ zero_z5237406670263579293d_enat ) )
     => ( ord_le2932123472753598470d_enat @ ( groups5145338220374282879d_enat @ Xs ) @ zero_z5237406670263579293d_enat ) ) ).

% sum_list_nonpos
thf(fact_217_sum__list__nonpos,axiom,
    ! [Xs: list_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
         => ( ord_less_eq_nat @ X2 @ zero_zero_nat ) )
     => ( ord_less_eq_nat @ ( groups4561878855575611511st_nat @ Xs ) @ zero_zero_nat ) ) ).

% sum_list_nonpos
thf(fact_218_sum__list__nonneg__eq__0__iff,axiom,
    ! [Xs: list_Extended_enat] :
      ( ! [X2: extended_enat] :
          ( ( member_Extended_enat @ X2 @ ( set_Extended_enat2 @ Xs ) )
         => ( ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ X2 ) )
     => ( ( ( groups5145338220374282879d_enat @ Xs )
          = zero_z5237406670263579293d_enat )
        = ( ! [X3: extended_enat] :
              ( ( member_Extended_enat @ X3 @ ( set_Extended_enat2 @ Xs ) )
             => ( X3 = zero_z5237406670263579293d_enat ) ) ) ) ) ).

% sum_list_nonneg_eq_0_iff
thf(fact_219_sum__list__nonneg__eq__0__iff,axiom,
    ! [Xs: list_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
         => ( ord_less_eq_nat @ zero_zero_nat @ X2 ) )
     => ( ( ( groups4561878855575611511st_nat @ Xs )
          = zero_zero_nat )
        = ( ! [X3: nat] :
              ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
             => ( X3 = zero_zero_nat ) ) ) ) ) ).

% sum_list_nonneg_eq_0_iff
thf(fact_220_Groups__List_Osum__list__nonneg,axiom,
    ! [Xs: list_Extended_enat] :
      ( ! [X2: extended_enat] :
          ( ( member_Extended_enat @ X2 @ ( set_Extended_enat2 @ Xs ) )
         => ( ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ X2 ) )
     => ( ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ ( groups5145338220374282879d_enat @ Xs ) ) ) ).

% Groups_List.sum_list_nonneg
thf(fact_221_Groups__List_Osum__list__nonneg,axiom,
    ! [Xs: list_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
         => ( ord_less_eq_nat @ zero_zero_nat @ X2 ) )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( groups4561878855575611511st_nat @ Xs ) ) ) ).

% Groups_List.sum_list_nonneg
thf(fact_222_split__list__first__prop__iff,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ? [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
            & ( P @ X3 ) ) )
      = ( ? [Ys3: list_nat,X3: nat] :
            ( ? [Zs2: list_nat] :
                ( Xs
                = ( append_nat @ Ys3 @ ( cons_nat @ X3 @ Zs2 ) ) )
            & ( P @ X3 )
            & ! [Y3: nat] :
                ( ( member_nat @ Y3 @ ( set_nat2 @ Ys3 ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_223_split__list__last__prop__iff,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ? [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
            & ( P @ X3 ) ) )
      = ( ? [Ys3: list_nat,X3: nat,Zs2: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ X3 @ Zs2 ) ) )
            & ( P @ X3 )
            & ! [Y3: nat] :
                ( ( member_nat @ Y3 @ ( set_nat2 @ Zs2 ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_224_in__set__conv__decomp__first,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [Ys3: list_list_nat,Zs2: list_list_nat] :
            ( ( Xs
              = ( append_list_nat @ Ys3 @ ( cons_list_nat @ X @ Zs2 ) ) )
            & ~ ( member_list_nat @ X @ ( set_list_nat2 @ Ys3 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_225_in__set__conv__decomp__first,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
      = ( ? [Ys3: list_nat,Zs2: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs2 ) ) )
            & ~ ( member_nat @ X @ ( set_nat2 @ Ys3 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_226_in__set__conv__decomp__last,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [Ys3: list_list_nat,Zs2: list_list_nat] :
            ( ( Xs
              = ( append_list_nat @ Ys3 @ ( cons_list_nat @ X @ Zs2 ) ) )
            & ~ ( member_list_nat @ X @ ( set_list_nat2 @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_227_in__set__conv__decomp__last,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
      = ( ? [Ys3: list_nat,Zs2: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs2 ) ) )
            & ~ ( member_nat @ X @ ( set_nat2 @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_228_split__list__first__propE,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_nat,X2: nat] :
            ( ? [Zs3: list_nat] :
                ( Xs
                = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs3 ) ) )
           => ( ( P @ X2 )
             => ~ ! [Xa: nat] :
                    ( ( member_nat @ Xa @ ( set_nat2 @ Ys2 ) )
                   => ~ ( P @ Xa ) ) ) ) ) ).

% split_list_first_propE
thf(fact_229_split__list__last__propE,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_nat,X2: nat,Zs3: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs3 ) ) )
           => ( ( P @ X2 )
             => ~ ! [Xa: nat] :
                    ( ( member_nat @ Xa @ ( set_nat2 @ Zs3 ) )
                   => ~ ( P @ Xa ) ) ) ) ) ).

% split_list_last_propE
thf(fact_230_split__list__first__prop,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_nat,X2: nat] :
          ( ? [Zs3: list_nat] :
              ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs3 ) ) )
          & ( P @ X2 )
          & ! [Xa: nat] :
              ( ( member_nat @ Xa @ ( set_nat2 @ Ys2 ) )
             => ~ ( P @ Xa ) ) ) ) ).

% split_list_first_prop
thf(fact_231_split__list__last__prop,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_nat,X2: nat,Zs3: list_nat] :
          ( ( Xs
            = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs3 ) ) )
          & ( P @ X2 )
          & ! [Xa: nat] :
              ( ( member_nat @ Xa @ ( set_nat2 @ Zs3 ) )
             => ~ ( P @ Xa ) ) ) ) ).

% split_list_last_prop
thf(fact_232_in__set__conv__decomp,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [Ys3: list_list_nat,Zs2: list_list_nat] :
            ( Xs
            = ( append_list_nat @ Ys3 @ ( cons_list_nat @ X @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_233_in__set__conv__decomp,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
      = ( ? [Ys3: list_nat,Zs2: list_nat] :
            ( Xs
            = ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_234_append__Cons__eq__iff,axiom,
    ! [X: list_nat,Xs: list_list_nat,Ys: list_list_nat,Xs5: list_list_nat,Ys6: list_list_nat] :
      ( ~ ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ( ~ ( member_list_nat @ X @ ( set_list_nat2 @ Ys ) )
       => ( ( ( append_list_nat @ Xs @ ( cons_list_nat @ X @ Ys ) )
            = ( append_list_nat @ Xs5 @ ( cons_list_nat @ X @ Ys6 ) ) )
          = ( ( Xs = Xs5 )
            & ( Ys = Ys6 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_235_append__Cons__eq__iff,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat,Xs5: list_nat,Ys6: list_nat] :
      ( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ( ~ ( member_nat @ X @ ( set_nat2 @ Ys ) )
       => ( ( ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) )
            = ( append_nat @ Xs5 @ ( cons_nat @ X @ Ys6 ) ) )
          = ( ( Xs = Xs5 )
            & ( Ys = Ys6 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_236_split__list__propE,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_nat,X2: nat] :
            ( ? [Zs3: list_nat] :
                ( Xs
                = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs3 ) ) )
           => ~ ( P @ X2 ) ) ) ).

% split_list_propE
thf(fact_237_split__list__first,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ? [Ys2: list_list_nat,Zs3: list_list_nat] :
          ( ( Xs
            = ( append_list_nat @ Ys2 @ ( cons_list_nat @ X @ Zs3 ) ) )
          & ~ ( member_list_nat @ X @ ( set_list_nat2 @ Ys2 ) ) ) ) ).

% split_list_first
thf(fact_238_split__list__first,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ? [Ys2: list_nat,Zs3: list_nat] :
          ( ( Xs
            = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs3 ) ) )
          & ~ ( member_nat @ X @ ( set_nat2 @ Ys2 ) ) ) ) ).

% split_list_first
thf(fact_239_split__list__prop,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_nat,X2: nat] :
          ( ? [Zs3: list_nat] :
              ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs3 ) ) )
          & ( P @ X2 ) ) ) ).

% split_list_prop
thf(fact_240_split__list__last,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ? [Ys2: list_list_nat,Zs3: list_list_nat] :
          ( ( Xs
            = ( append_list_nat @ Ys2 @ ( cons_list_nat @ X @ Zs3 ) ) )
          & ~ ( member_list_nat @ X @ ( set_list_nat2 @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_241_split__list__last,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ? [Ys2: list_nat,Zs3: list_nat] :
          ( ( Xs
            = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs3 ) ) )
          & ~ ( member_nat @ X @ ( set_nat2 @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_242_split__list,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ? [Ys2: list_list_nat,Zs3: list_list_nat] :
          ( Xs
          = ( append_list_nat @ Ys2 @ ( cons_list_nat @ X @ Zs3 ) ) ) ) ).

% split_list
thf(fact_243_split__list,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ? [Ys2: list_nat,Zs3: list_nat] :
          ( Xs
          = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs3 ) ) ) ) ).

% split_list
thf(fact_244_sorted__wrt__append,axiom,
    ! [P: nat > nat > $o,Xs: list_nat,Ys: list_nat] :
      ( ( sorted_wrt_nat @ P @ ( append_nat @ Xs @ Ys ) )
      = ( ( sorted_wrt_nat @ P @ Xs )
        & ( sorted_wrt_nat @ P @ Ys )
        & ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
           => ! [Y3: nat] :
                ( ( member_nat @ Y3 @ ( set_nat2 @ Ys ) )
               => ( P @ X3 @ Y3 ) ) ) ) ) ).

% sorted_wrt_append
thf(fact_245_last__in__set,axiom,
    ! [As: list_list_nat] :
      ( ( As != nil_list_nat )
     => ( member_list_nat @ ( last_list_nat @ As ) @ ( set_list_nat2 @ As ) ) ) ).

% last_in_set
thf(fact_246_last__in__set,axiom,
    ! [As: list_nat] :
      ( ( As != nil_nat )
     => ( member_nat @ ( last_nat @ As ) @ ( set_nat2 @ As ) ) ) ).

% last_in_set
thf(fact_247_in__set__butlast__appendI,axiom,
    ! [X: list_nat,Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ( member_list_nat @ X @ ( set_list_nat2 @ ( butlast_list_nat @ Xs ) ) )
        | ( member_list_nat @ X @ ( set_list_nat2 @ ( butlast_list_nat @ Ys ) ) ) )
     => ( member_list_nat @ X @ ( set_list_nat2 @ ( butlast_list_nat @ ( append_list_nat @ Xs @ Ys ) ) ) ) ) ).

% in_set_butlast_appendI
thf(fact_248_in__set__butlast__appendI,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ( member_nat @ X @ ( set_nat2 @ ( butlast_nat @ Xs ) ) )
        | ( member_nat @ X @ ( set_nat2 @ ( butlast_nat @ Ys ) ) ) )
     => ( member_nat @ X @ ( set_nat2 @ ( butlast_nat @ ( append_nat @ Xs @ Ys ) ) ) ) ) ).

% in_set_butlast_appendI
thf(fact_249_List_Oinsert__def,axiom,
    ( insert_list_nat
    = ( ^ [X3: list_nat,Xs4: list_list_nat] : ( if_list_list_nat @ ( member_list_nat @ X3 @ ( set_list_nat2 @ Xs4 ) ) @ Xs4 @ ( cons_list_nat @ X3 @ Xs4 ) ) ) ) ).

% List.insert_def
thf(fact_250_List_Oinsert__def,axiom,
    ( insert_nat
    = ( ^ [X3: nat,Xs4: list_nat] : ( if_list_nat @ ( member_nat @ X3 @ ( set_nat2 @ Xs4 ) ) @ Xs4 @ ( cons_nat @ X3 @ Xs4 ) ) ) ) ).

% List.insert_def
thf(fact_251_sorted__simps_I2_J,axiom,
    ! [X: nat,Ys: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ ( cons_nat @ X @ Ys ) )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Ys ) )
           => ( ord_less_eq_nat @ X @ X3 ) )
        & ( sorted_wrt_nat @ ord_less_eq_nat @ Ys ) ) ) ).

% sorted_simps(2)
thf(fact_252_sorted__simps_I2_J,axiom,
    ! [X: extended_enat,Ys: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( cons_Extended_enat @ X @ Ys ) )
      = ( ! [X3: extended_enat] :
            ( ( member_Extended_enat @ X3 @ ( set_Extended_enat2 @ Ys ) )
           => ( ord_le2932123472753598470d_enat @ X @ X3 ) )
        & ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Ys ) ) ) ).

% sorted_simps(2)
thf(fact_253_sorted__append,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ ( append_nat @ Xs @ Ys ) )
      = ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
        & ( sorted_wrt_nat @ ord_less_eq_nat @ Ys )
        & ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
           => ! [Y3: nat] :
                ( ( member_nat @ Y3 @ ( set_nat2 @ Ys ) )
               => ( ord_less_eq_nat @ X3 @ Y3 ) ) ) ) ) ).

% sorted_append
thf(fact_254_sorted__append,axiom,
    ! [Xs: list_Extended_enat,Ys: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( append_Extended_enat @ Xs @ Ys ) )
      = ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
        & ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Ys )
        & ! [X3: extended_enat] :
            ( ( member_Extended_enat @ X3 @ ( set_Extended_enat2 @ Xs ) )
           => ! [Y3: extended_enat] :
                ( ( member_Extended_enat @ Y3 @ ( set_Extended_enat2 @ Ys ) )
               => ( ord_le2932123472753598470d_enat @ X3 @ Y3 ) ) ) ) ) ).

% sorted_append
thf(fact_255_zero__reorient,axiom,
    ! [X: nat] :
      ( ( zero_zero_nat = X )
      = ( X = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_256_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_257_le__trans,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I @ K ) ) ) ).

% le_trans
thf(fact_258_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_259_le__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( M = N ) ) ) ).

% le_antisym
thf(fact_260_nat__le__linear,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
      | ( ord_less_eq_nat @ N @ M ) ) ).

% nat_le_linear
thf(fact_261_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ? [X2: nat] :
            ( ( P @ X2 )
            & ! [Y5: nat] :
                ( ( P @ Y5 )
               => ( ord_less_eq_nat @ Y5 @ X2 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_262_Nil__le__Cons,axiom,
    ! [X: list_nat] : ( ord_less_eq_list_nat @ nil_nat @ X ) ).

% Nil_le_Cons
thf(fact_263_zero__le,axiom,
    ! [X: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X ) ).

% zero_le
thf(fact_264_zero__le,axiom,
    ! [X: extended_enat] : ( ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ X ) ).

% zero_le
thf(fact_265_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_266_bot__nat__0_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_unique
thf(fact_267_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_uniqueI
thf(fact_268_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_269_can__select__set__list__ex1,axiom,
    ! [P: nat > $o,A2: list_nat] :
      ( ( can_select_nat @ P @ ( set_nat2 @ A2 ) )
      = ( list_ex1_nat @ P @ A2 ) ) ).

% can_select_set_list_ex1
thf(fact_270_augmentum__subset__sum__list,axiom,
    ! [Ns: list_nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ ( augmentum @ Ns ) ) @ ( set_ord_atMost_nat @ ( groups4561878855575611511st_nat @ Ns ) ) ) ).

% augmentum_subset_sum_list
thf(fact_271_distinct__augmentum,axiom,
    ! [Ns: list_nat] :
      ( ~ ( member_nat @ zero_zero_nat @ ( set_nat2 @ Ns ) )
     => ( distinct_nat @ ( augmentum @ Ns ) ) ) ).

% distinct_augmentum
thf(fact_272_the__elem__set,axiom,
    ! [X: nat] :
      ( ( the_elem_nat @ ( set_nat2 @ ( cons_nat @ X @ nil_nat ) ) )
      = X ) ).

% the_elem_set
thf(fact_273_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_274_le__numeral__extra_I3_J,axiom,
    ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ zero_z5237406670263579293d_enat ).

% le_numeral_extra(3)
thf(fact_275_product__lists_Osimps_I1_J,axiom,
    ( ( product_lists_nat @ nil_list_nat )
    = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% product_lists.simps(1)
thf(fact_276_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_277_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_278_diff__diff__cancel,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I ) )
        = I ) ) ).

% diff_diff_cancel
thf(fact_279_diff__is__0__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% diff_is_0_eq
thf(fact_280_diff__is__0__eq_H,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_281_distinct__insert,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( distinct_nat @ ( insert_nat @ X @ Xs ) )
      = ( distinct_nat @ Xs ) ) ).

% distinct_insert
thf(fact_282_Khovanskii_OAsubG,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ord_less_eq_set_nat @ A2 @ G ) ) ).

% Khovanskii.AsubG
thf(fact_283_distinct__product__lists,axiom,
    ! [Xss2: list_list_nat] :
      ( ! [X2: list_nat] :
          ( ( member_list_nat @ X2 @ ( set_list_nat2 @ Xss2 ) )
         => ( distinct_nat @ X2 ) )
     => ( distinct_list_nat @ ( product_lists_nat @ Xss2 ) ) ) ).

% distinct_product_lists
thf(fact_284_sorted__list__of__set_Odistinct__if__distinct__map,axiom,
    ! [Xs: list_nat] :
      ( ( distinct_nat @ Xs )
     => ( distinct_nat @ Xs ) ) ).

% sorted_list_of_set.distinct_if_distinct_map
thf(fact_285_distinct__n__lists,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( distinct_nat @ Xs )
     => ( distinct_list_nat @ ( n_lists_nat @ N @ Xs ) ) ) ).

% distinct_n_lists
thf(fact_286_distinct__length__2__or__more,axiom,
    ! [A: nat,B: nat,Xs: list_nat] :
      ( ( distinct_nat @ ( cons_nat @ A @ ( cons_nat @ B @ Xs ) ) )
      = ( ( A != B )
        & ( distinct_nat @ ( cons_nat @ A @ Xs ) )
        & ( distinct_nat @ ( cons_nat @ B @ Xs ) ) ) ) ).

% distinct_length_2_or_more
thf(fact_287_distinct_Osimps_I1_J,axiom,
    distinct_nat @ nil_nat ).

% distinct.simps(1)
thf(fact_288_can__select__def,axiom,
    ( can_select_nat
    = ( ^ [P2: nat > $o,A5: set_nat] :
        ? [X3: nat] :
          ( ( member_nat @ X3 @ A5 )
          & ( P2 @ X3 )
          & ! [Y3: nat] :
              ( ( ( member_nat @ Y3 @ A5 )
                & ( P2 @ Y3 ) )
             => ( Y3 = X3 ) ) ) ) ) ).

% can_select_def
thf(fact_289_can__select__def,axiom,
    ( can_select_list_nat
    = ( ^ [P2: list_nat > $o,A5: set_list_nat] :
        ? [X3: list_nat] :
          ( ( member_list_nat @ X3 @ A5 )
          & ( P2 @ X3 )
          & ! [Y3: list_nat] :
              ( ( ( member_list_nat @ Y3 @ A5 )
                & ( P2 @ Y3 ) )
             => ( Y3 = X3 ) ) ) ) ) ).

% can_select_def
thf(fact_290_diffs0__imp__equal,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M )
          = zero_zero_nat )
       => ( M = N ) ) ) ).

% diffs0_imp_equal
thf(fact_291_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_292_diff__le__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ).

% diff_le_mono2
thf(fact_293_le__diff__iff_H,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C @ A ) @ ( minus_minus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_294_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_295_diff__le__mono,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ L ) @ ( minus_minus_nat @ N @ L ) ) ) ).

% diff_le_mono
thf(fact_296_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_297_le__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% le_diff_iff
thf(fact_298_eq__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M = N ) ) ) ) ).

% eq_diff_iff
thf(fact_299_distinct__butlast,axiom,
    ! [Xs: list_nat] :
      ( ( distinct_nat @ Xs )
     => ( distinct_nat @ ( butlast_nat @ Xs ) ) ) ).

% distinct_butlast
thf(fact_300_distinct__singleton,axiom,
    ! [X: nat] : ( distinct_nat @ ( cons_nat @ X @ nil_nat ) ) ).

% distinct_singleton
thf(fact_301_distinct_Osimps_I2_J,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( distinct_list_nat @ ( cons_list_nat @ X @ Xs ) )
      = ( ~ ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
        & ( distinct_list_nat @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_302_distinct_Osimps_I2_J,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( distinct_nat @ ( cons_nat @ X @ Xs ) )
      = ( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
        & ( distinct_nat @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_303_not__distinct__decomp,axiom,
    ! [Ws: list_nat] :
      ( ~ ( distinct_nat @ Ws )
     => ? [Xs2: list_nat,Ys2: list_nat,Zs3: list_nat,Y2: nat] :
          ( Ws
          = ( append_nat @ Xs2 @ ( append_nat @ ( cons_nat @ Y2 @ nil_nat ) @ ( append_nat @ Ys2 @ ( append_nat @ ( cons_nat @ Y2 @ nil_nat ) @ Zs3 ) ) ) ) ) ) ).

% not_distinct_decomp
thf(fact_304_sorted__distinct__set__unique,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
     => ( ( distinct_nat @ Xs )
       => ( ( sorted_wrt_nat @ ord_less_eq_nat @ Ys )
         => ( ( distinct_nat @ Ys )
           => ( ( ( set_nat2 @ Xs )
                = ( set_nat2 @ Ys ) )
             => ( Xs = Ys ) ) ) ) ) ) ).

% sorted_distinct_set_unique
thf(fact_305_sorted__distinct__set__unique,axiom,
    ! [Xs: list_Extended_enat,Ys: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
     => ( ( distin4523846830085650399d_enat @ Xs )
       => ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Ys )
         => ( ( distin4523846830085650399d_enat @ Ys )
           => ( ( ( set_Extended_enat2 @ Xs )
                = ( set_Extended_enat2 @ Ys ) )
             => ( Xs = Ys ) ) ) ) ) ) ).

% sorted_distinct_set_unique
thf(fact_306_not__distinct__conv__prefix,axiom,
    ! [As: list_list_nat] :
      ( ( ~ ( distinct_list_nat @ As ) )
      = ( ? [Xs4: list_list_nat,Y3: list_nat,Ys3: list_list_nat] :
            ( ( member_list_nat @ Y3 @ ( set_list_nat2 @ Xs4 ) )
            & ( distinct_list_nat @ Xs4 )
            & ( As
              = ( append_list_nat @ Xs4 @ ( cons_list_nat @ Y3 @ Ys3 ) ) ) ) ) ) ).

% not_distinct_conv_prefix
thf(fact_307_not__distinct__conv__prefix,axiom,
    ! [As: list_nat] :
      ( ( ~ ( distinct_nat @ As ) )
      = ( ? [Xs4: list_nat,Y3: nat,Ys3: list_nat] :
            ( ( member_nat @ Y3 @ ( set_nat2 @ Xs4 ) )
            & ( distinct_nat @ Xs4 )
            & ( As
              = ( append_nat @ Xs4 @ ( cons_nat @ Y3 @ Ys3 ) ) ) ) ) ) ).

% not_distinct_conv_prefix
thf(fact_308_sum__list__minus,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( pointwise_le @ Xs @ Ys )
     => ( ( groups4561878855575611511st_nat @ ( minus_minus_list_nat @ Ys @ Xs ) )
        = ( minus_minus_nat @ ( groups4561878855575611511st_nat @ Ys ) @ ( groups4561878855575611511st_nat @ Xs ) ) ) ) ).

% sum_list_minus
thf(fact_309_atMost__subset__iff,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_le6893508408891458716et_nat @ ( set_or4236626031148496127et_nat @ X ) @ ( set_or4236626031148496127et_nat @ Y ) )
      = ( ord_less_eq_set_nat @ X @ Y ) ) ).

% atMost_subset_iff
thf(fact_310_atMost__subset__iff,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le7203529160286727270d_enat @ ( set_or8332593352340944941d_enat @ X ) @ ( set_or8332593352340944941d_enat @ Y ) )
      = ( ord_le2932123472753598470d_enat @ X @ Y ) ) ).

% atMost_subset_iff
thf(fact_311_atMost__subset__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_set_nat @ ( set_ord_atMost_nat @ X ) @ ( set_ord_atMost_nat @ Y ) )
      = ( ord_less_eq_nat @ X @ Y ) ) ).

% atMost_subset_iff
thf(fact_312_atMost__iff,axiom,
    ! [I: list_nat,K: list_nat] :
      ( ( member_list_nat @ I @ ( set_or4185896845444216793st_nat @ K ) )
      = ( ord_less_eq_list_nat @ I @ K ) ) ).

% atMost_iff
thf(fact_313_atMost__iff,axiom,
    ! [I: set_nat,K: set_nat] :
      ( ( member_set_nat @ I @ ( set_or4236626031148496127et_nat @ K ) )
      = ( ord_less_eq_set_nat @ I @ K ) ) ).

% atMost_iff
thf(fact_314_atMost__iff,axiom,
    ! [I: extended_enat,K: extended_enat] :
      ( ( member_Extended_enat @ I @ ( set_or8332593352340944941d_enat @ K ) )
      = ( ord_le2932123472753598470d_enat @ I @ K ) ) ).

% atMost_iff
thf(fact_315_atMost__iff,axiom,
    ! [I: nat,K: nat] :
      ( ( member_nat @ I @ ( set_ord_atMost_nat @ K ) )
      = ( ord_less_eq_nat @ I @ K ) ) ).

% atMost_iff
thf(fact_316_atMost__eq__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( set_ord_atMost_nat @ X )
        = ( set_ord_atMost_nat @ Y ) )
      = ( X = Y ) ) ).

% atMost_eq_iff
thf(fact_317_distinct__union,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( distinct_nat @ ( union_nat @ Xs @ Ys ) )
      = ( distinct_nat @ Ys ) ) ).

% distinct_union
thf(fact_318_subsetI,axiom,
    ! [A2: set_list_nat,B4: set_list_nat] :
      ( ! [X2: list_nat] :
          ( ( member_list_nat @ X2 @ A2 )
         => ( member_list_nat @ X2 @ B4 ) )
     => ( ord_le6045566169113846134st_nat @ A2 @ B4 ) ) ).

% subsetI
thf(fact_319_subsetI,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_nat @ X2 @ B4 ) )
     => ( ord_less_eq_set_nat @ A2 @ B4 ) ) ).

% subsetI
thf(fact_320_subset__antisym,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( ord_less_eq_set_nat @ B4 @ A2 )
       => ( A2 = B4 ) ) ) ).

% subset_antisym
thf(fact_321_subseqs_Osimps_I1_J,axiom,
    ( ( subseqs_nat @ nil_nat )
    = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% subseqs.simps(1)
thf(fact_322_sorted__list__of__set_Oidem__if__sorted__distinct,axiom,
    ! [Xs: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
     => ( ( distin4523846830085650399d_enat @ Xs )
       => ( ( linord1591021928418041270d_enat @ ( set_Extended_enat2 @ Xs ) )
          = Xs ) ) ) ).

% sorted_list_of_set.idem_if_sorted_distinct
thf(fact_323_sorted__list__of__set_Oidem__if__sorted__distinct,axiom,
    ! [Xs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
     => ( ( distinct_nat @ Xs )
       => ( ( linord2614967742042102400et_nat @ ( set_nat2 @ Xs ) )
          = Xs ) ) ) ).

% sorted_list_of_set.idem_if_sorted_distinct
thf(fact_324_diff__commute,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J ) ) ).

% diff_commute
thf(fact_325_subseqs__refl,axiom,
    ! [Xs: list_nat] : ( member_list_nat @ Xs @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ).

% subseqs_refl
thf(fact_326_sorted__list__of__set_Odistinct__sorted__key__list__of__set,axiom,
    ! [A2: set_nat] : ( distinct_nat @ ( linord2614967742042102400et_nat @ A2 ) ) ).

% sorted_list_of_set.distinct_sorted_key_list_of_set
thf(fact_327_Cons__in__subseqsD,axiom,
    ! [Y: nat,Ys: list_nat,Xs: list_nat] :
      ( ( member_list_nat @ ( cons_nat @ Y @ Ys ) @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) )
     => ( member_list_nat @ Ys @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ) ).

% Cons_in_subseqsD
thf(fact_328_subseqs__distinctD,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( member_list_nat @ Ys @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) )
     => ( ( distinct_nat @ Xs )
       => ( distinct_nat @ Ys ) ) ) ).

% subseqs_distinctD
thf(fact_329_sorted__list__of__set_Osorted__sorted__key__list__of__set,axiom,
    ! [A2: set_Extended_enat] : ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( linord1591021928418041270d_enat @ A2 ) ) ).

% sorted_list_of_set.sorted_sorted_key_list_of_set
thf(fact_330_sorted__list__of__set_Osorted__sorted__key__list__of__set,axiom,
    ! [A2: set_nat] : ( sorted_wrt_nat @ ord_less_eq_nat @ ( linord2614967742042102400et_nat @ A2 ) ) ).

% sorted_list_of_set.sorted_sorted_key_list_of_set
thf(fact_331_Collect__mono__iff,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ( ord_less_eq_set_nat @ ( collect_nat @ P ) @ ( collect_nat @ Q ) )
      = ( ! [X3: nat] :
            ( ( P @ X3 )
           => ( Q @ X3 ) ) ) ) ).

% Collect_mono_iff
thf(fact_332_set__eq__subset,axiom,
    ( ( ^ [Y4: set_nat,Z2: set_nat] : ( Y4 = Z2 ) )
    = ( ^ [A5: set_nat,B5: set_nat] :
          ( ( ord_less_eq_set_nat @ A5 @ B5 )
          & ( ord_less_eq_set_nat @ B5 @ A5 ) ) ) ) ).

% set_eq_subset
thf(fact_333_subset__trans,axiom,
    ! [A2: set_nat,B4: set_nat,C2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( ord_less_eq_set_nat @ B4 @ C2 )
       => ( ord_less_eq_set_nat @ A2 @ C2 ) ) ) ).

% subset_trans
thf(fact_334_Collect__mono,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ! [X2: nat] :
          ( ( P @ X2 )
         => ( Q @ X2 ) )
     => ( ord_less_eq_set_nat @ ( collect_nat @ P ) @ ( collect_nat @ Q ) ) ) ).

% Collect_mono
thf(fact_335_subset__refl,axiom,
    ! [A2: set_nat] : ( ord_less_eq_set_nat @ A2 @ A2 ) ).

% subset_refl
thf(fact_336_double__diff,axiom,
    ! [A2: set_nat,B4: set_nat,C2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( ord_less_eq_set_nat @ B4 @ C2 )
       => ( ( minus_minus_set_nat @ B4 @ ( minus_minus_set_nat @ C2 @ A2 ) )
          = A2 ) ) ) ).

% double_diff
thf(fact_337_Diff__subset,axiom,
    ! [A2: set_nat,B4: set_nat] : ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ A2 @ B4 ) @ A2 ) ).

% Diff_subset
thf(fact_338_subset__iff,axiom,
    ( ord_le6045566169113846134st_nat
    = ( ^ [A5: set_list_nat,B5: set_list_nat] :
        ! [T: list_nat] :
          ( ( member_list_nat @ T @ A5 )
         => ( member_list_nat @ T @ B5 ) ) ) ) ).

% subset_iff
thf(fact_339_subset__iff,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A5: set_nat,B5: set_nat] :
        ! [T: nat] :
          ( ( member_nat @ T @ A5 )
         => ( member_nat @ T @ B5 ) ) ) ) ).

% subset_iff
thf(fact_340_equalityD2,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( A2 = B4 )
     => ( ord_less_eq_set_nat @ B4 @ A2 ) ) ).

% equalityD2
thf(fact_341_equalityD1,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( A2 = B4 )
     => ( ord_less_eq_set_nat @ A2 @ B4 ) ) ).

% equalityD1
thf(fact_342_subset__eq,axiom,
    ( ord_le6045566169113846134st_nat
    = ( ^ [A5: set_list_nat,B5: set_list_nat] :
        ! [X3: list_nat] :
          ( ( member_list_nat @ X3 @ A5 )
         => ( member_list_nat @ X3 @ B5 ) ) ) ) ).

% subset_eq
thf(fact_343_subset__eq,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A5: set_nat,B5: set_nat] :
        ! [X3: nat] :
          ( ( member_nat @ X3 @ A5 )
         => ( member_nat @ X3 @ B5 ) ) ) ) ).

% subset_eq
thf(fact_344_equalityE,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( A2 = B4 )
     => ~ ( ( ord_less_eq_set_nat @ A2 @ B4 )
         => ~ ( ord_less_eq_set_nat @ B4 @ A2 ) ) ) ).

% equalityE
thf(fact_345_Diff__mono,axiom,
    ! [A2: set_nat,C2: set_nat,D: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ C2 )
     => ( ( ord_less_eq_set_nat @ D @ B4 )
       => ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ A2 @ B4 ) @ ( minus_minus_set_nat @ C2 @ D ) ) ) ) ).

% Diff_mono
thf(fact_346_subsetD,axiom,
    ! [A2: set_list_nat,B4: set_list_nat,C: list_nat] :
      ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
     => ( ( member_list_nat @ C @ A2 )
       => ( member_list_nat @ C @ B4 ) ) ) ).

% subsetD
thf(fact_347_subsetD,axiom,
    ! [A2: set_nat,B4: set_nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( member_nat @ C @ A2 )
       => ( member_nat @ C @ B4 ) ) ) ).

% subsetD
thf(fact_348_in__mono,axiom,
    ! [A2: set_list_nat,B4: set_list_nat,X: list_nat] :
      ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
     => ( ( member_list_nat @ X @ A2 )
       => ( member_list_nat @ X @ B4 ) ) ) ).

% in_mono
thf(fact_349_in__mono,axiom,
    ! [A2: set_nat,B4: set_nat,X: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( member_nat @ X @ A2 )
       => ( member_nat @ X @ B4 ) ) ) ).

% in_mono
thf(fact_350_bounded__Max__nat,axiom,
    ! [P: nat > $o,X: nat,M2: nat] :
      ( ( P @ X )
     => ( ! [X2: nat] :
            ( ( P @ X2 )
           => ( ord_less_eq_nat @ X2 @ M2 ) )
       => ~ ! [M3: nat] :
              ( ( P @ M3 )
             => ~ ! [X4: nat] :
                    ( ( P @ X4 )
                   => ( ord_less_eq_nat @ X4 @ M3 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_351_sorted__list__of__set__atMost__Suc,axiom,
    ! [K: nat] :
      ( ( linord2614967742042102400et_nat @ ( set_ord_atMost_nat @ ( suc @ K ) ) )
      = ( append_nat @ ( linord2614967742042102400et_nat @ ( set_ord_atMost_nat @ K ) ) @ ( cons_nat @ ( suc @ K ) @ nil_nat ) ) ) ).

% sorted_list_of_set_atMost_Suc
thf(fact_352_subset__code_I3_J,axiom,
    ~ ( ord_less_eq_set_nat @ ( coset_nat @ nil_nat ) @ ( set_nat2 @ nil_nat ) ) ).

% subset_code(3)
thf(fact_353_concat__eq__append__conv,axiom,
    ! [Xss2: list_list_nat,Ys: list_nat,Zs: list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = ( append_nat @ Ys @ Zs ) )
      = ( ( ( Xss2 = nil_list_nat )
         => ( ( Ys = nil_nat )
            & ( Zs = nil_nat ) ) )
        & ( ( Xss2 != nil_list_nat )
         => ? [Xss1: list_list_nat,Xs4: list_nat,Xs6: list_nat,Xss22: list_list_nat] :
              ( ( Xss2
                = ( append_list_nat @ Xss1 @ ( cons_list_nat @ ( append_nat @ Xs4 @ Xs6 ) @ Xss22 ) ) )
              & ( Ys
                = ( append_nat @ ( concat_nat @ Xss1 ) @ Xs4 ) )
              & ( Zs
                = ( append_nat @ Xs6 @ ( concat_nat @ Xss22 ) ) ) ) ) ) ) ).

% concat_eq_append_conv
thf(fact_354_horner__sum__simps_I1_J,axiom,
    ! [F: nat > nat,A: nat] :
      ( ( groups7488368174851004413at_nat @ F @ A @ nil_nat )
      = zero_zero_nat ) ).

% horner_sum_simps(1)
thf(fact_355_nths__singleton,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( ( member_nat @ zero_zero_nat @ A2 )
       => ( ( nths_nat @ ( cons_nat @ X @ nil_nat ) @ A2 )
          = ( cons_nat @ X @ nil_nat ) ) )
      & ( ~ ( member_nat @ zero_zero_nat @ A2 )
       => ( ( nths_nat @ ( cons_nat @ X @ nil_nat ) @ A2 )
          = nil_nat ) ) ) ).

% nths_singleton
thf(fact_356_subset__subseqs,axiom,
    ! [X5: set_nat,Xs: list_nat] :
      ( ( ord_less_eq_set_nat @ X5 @ ( set_nat2 @ Xs ) )
     => ( member_set_nat @ X5 @ ( image_1775855109352712557et_nat @ set_nat2 @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ) ) ).

% subset_subseqs
thf(fact_357_Khovanskii_Oset__aA,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( set_nat2 @ ( aA_nat @ A2 ) )
        = A2 ) ) ).

% Khovanskii.set_aA
thf(fact_358_image__eqI,axiom,
    ! [B: nat,F: nat > nat,X: nat,A2: set_nat] :
      ( ( B
        = ( F @ X ) )
     => ( ( member_nat @ X @ A2 )
       => ( member_nat @ B @ ( image_nat_nat @ F @ A2 ) ) ) ) ).

% image_eqI
thf(fact_359_image__eqI,axiom,
    ! [B: list_nat,F: nat > list_nat,X: nat,A2: set_nat] :
      ( ( B
        = ( F @ X ) )
     => ( ( member_nat @ X @ A2 )
       => ( member_list_nat @ B @ ( image_nat_list_nat @ F @ A2 ) ) ) ) ).

% image_eqI
thf(fact_360_image__eqI,axiom,
    ! [B: nat,F: list_nat > nat,X: list_nat,A2: set_list_nat] :
      ( ( B
        = ( F @ X ) )
     => ( ( member_list_nat @ X @ A2 )
       => ( member_nat @ B @ ( image_list_nat_nat @ F @ A2 ) ) ) ) ).

% image_eqI
thf(fact_361_image__eqI,axiom,
    ! [B: list_nat,F: list_nat > list_nat,X: list_nat,A2: set_list_nat] :
      ( ( B
        = ( F @ X ) )
     => ( ( member_list_nat @ X @ A2 )
       => ( member_list_nat @ B @ ( image_7976474329151083847st_nat @ F @ A2 ) ) ) ) ).

% image_eqI
thf(fact_362_nat_Oinject,axiom,
    ! [X23: nat,Y23: nat] :
      ( ( ( suc @ X23 )
        = ( suc @ Y23 ) )
      = ( X23 = Y23 ) ) ).

% nat.inject
thf(fact_363_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_364_DiffI,axiom,
    ! [C: nat,A2: set_nat,B4: set_nat] :
      ( ( member_nat @ C @ A2 )
     => ( ~ ( member_nat @ C @ B4 )
       => ( member_nat @ C @ ( minus_minus_set_nat @ A2 @ B4 ) ) ) ) ).

% DiffI
thf(fact_365_DiffI,axiom,
    ! [C: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ( member_list_nat @ C @ A2 )
     => ( ~ ( member_list_nat @ C @ B4 )
       => ( member_list_nat @ C @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) ) ) ).

% DiffI
thf(fact_366_Diff__iff,axiom,
    ! [C: nat,A2: set_nat,B4: set_nat] :
      ( ( member_nat @ C @ ( minus_minus_set_nat @ A2 @ B4 ) )
      = ( ( member_nat @ C @ A2 )
        & ~ ( member_nat @ C @ B4 ) ) ) ).

% Diff_iff
thf(fact_367_Diff__iff,axiom,
    ! [C: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ( member_list_nat @ C @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) )
      = ( ( member_list_nat @ C @ A2 )
        & ~ ( member_list_nat @ C @ B4 ) ) ) ).

% Diff_iff
thf(fact_368_Suc__le__mono,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M ) )
      = ( ord_less_eq_nat @ N @ M ) ) ).

% Suc_le_mono
thf(fact_369_Suc__diff__diff,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ N ) @ K ) ) ).

% Suc_diff_diff
thf(fact_370_diff__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_Suc_Suc
thf(fact_371_nths__nil,axiom,
    ! [A2: set_nat] :
      ( ( nths_nat @ nil_nat @ A2 )
      = nil_nat ) ).

% nths_nil
thf(fact_372_Nil__eq__concat__conv,axiom,
    ! [Xss2: list_list_nat] :
      ( ( nil_nat
        = ( concat_nat @ Xss2 ) )
      = ( ! [X3: list_nat] :
            ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xss2 ) )
           => ( X3 = nil_nat ) ) ) ) ).

% Nil_eq_concat_conv
thf(fact_373_concat__eq__Nil__conv,axiom,
    ! [Xss2: list_list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = nil_nat )
      = ( ! [X3: list_nat] :
            ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xss2 ) )
           => ( X3 = nil_nat ) ) ) ) ).

% concat_eq_Nil_conv
thf(fact_374_concat__append,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat] :
      ( ( concat_nat @ ( append_list_nat @ Xs @ Ys ) )
      = ( append_nat @ ( concat_nat @ Xs ) @ ( concat_nat @ Ys ) ) ) ).

% concat_append
thf(fact_375_DiffE,axiom,
    ! [C: nat,A2: set_nat,B4: set_nat] :
      ( ( member_nat @ C @ ( minus_minus_set_nat @ A2 @ B4 ) )
     => ~ ( ( member_nat @ C @ A2 )
         => ( member_nat @ C @ B4 ) ) ) ).

% DiffE
thf(fact_376_DiffE,axiom,
    ! [C: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ( member_list_nat @ C @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) )
     => ~ ( ( member_list_nat @ C @ A2 )
         => ( member_list_nat @ C @ B4 ) ) ) ).

% DiffE
thf(fact_377_DiffD1,axiom,
    ! [C: nat,A2: set_nat,B4: set_nat] :
      ( ( member_nat @ C @ ( minus_minus_set_nat @ A2 @ B4 ) )
     => ( member_nat @ C @ A2 ) ) ).

% DiffD1
thf(fact_378_DiffD1,axiom,
    ! [C: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ( member_list_nat @ C @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) )
     => ( member_list_nat @ C @ A2 ) ) ).

% DiffD1
thf(fact_379_DiffD2,axiom,
    ! [C: nat,A2: set_nat,B4: set_nat] :
      ( ( member_nat @ C @ ( minus_minus_set_nat @ A2 @ B4 ) )
     => ~ ( member_nat @ C @ B4 ) ) ).

% DiffD2
thf(fact_380_DiffD2,axiom,
    ! [C: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ( member_list_nat @ C @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) )
     => ~ ( member_list_nat @ C @ B4 ) ) ).

% DiffD2
thf(fact_381_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_382_imageI,axiom,
    ! [X: nat,A2: set_nat,F: nat > list_nat] :
      ( ( member_nat @ X @ A2 )
     => ( member_list_nat @ ( F @ X ) @ ( image_nat_list_nat @ F @ A2 ) ) ) ).

% imageI
thf(fact_383_imageI,axiom,
    ! [X: list_nat,A2: set_list_nat,F: list_nat > nat] :
      ( ( member_list_nat @ X @ A2 )
     => ( member_nat @ ( F @ X ) @ ( image_list_nat_nat @ F @ A2 ) ) ) ).

% imageI
thf(fact_384_imageI,axiom,
    ! [X: list_nat,A2: set_list_nat,F: list_nat > list_nat] :
      ( ( member_list_nat @ X @ A2 )
     => ( member_list_nat @ ( F @ X ) @ ( image_7976474329151083847st_nat @ F @ A2 ) ) ) ).

% imageI
thf(fact_385_image__iff,axiom,
    ! [Z: nat,F: nat > nat,A2: set_nat] :
      ( ( member_nat @ Z @ ( image_nat_nat @ F @ A2 ) )
      = ( ? [X3: nat] :
            ( ( member_nat @ X3 @ A2 )
            & ( Z
              = ( F @ X3 ) ) ) ) ) ).

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

% bex_imageD
thf(fact_387_image__cong,axiom,
    ! [M2: set_nat,N2: set_nat,F: nat > nat,G2: nat > nat] :
      ( ( M2 = N2 )
     => ( ! [X2: nat] :
            ( ( member_nat @ X2 @ N2 )
           => ( ( F @ X2 )
              = ( G2 @ X2 ) ) )
       => ( ( image_nat_nat @ F @ M2 )
          = ( image_nat_nat @ G2 @ N2 ) ) ) ) ).

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

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

% rev_image_eqI
thf(fact_390_rev__image__eqI,axiom,
    ! [X: nat,A2: set_nat,B: list_nat,F: nat > list_nat] :
      ( ( member_nat @ X @ A2 )
     => ( ( B
          = ( F @ X ) )
       => ( member_list_nat @ B @ ( image_nat_list_nat @ F @ A2 ) ) ) ) ).

% rev_image_eqI
thf(fact_391_rev__image__eqI,axiom,
    ! [X: list_nat,A2: set_list_nat,B: nat,F: list_nat > nat] :
      ( ( member_list_nat @ X @ A2 )
     => ( ( B
          = ( F @ X ) )
       => ( member_nat @ B @ ( image_list_nat_nat @ F @ A2 ) ) ) ) ).

% rev_image_eqI
thf(fact_392_rev__image__eqI,axiom,
    ! [X: list_nat,A2: set_list_nat,B: list_nat,F: list_nat > list_nat] :
      ( ( member_list_nat @ X @ A2 )
     => ( ( B
          = ( F @ X ) )
       => ( member_list_nat @ B @ ( image_7976474329151083847st_nat @ F @ A2 ) ) ) ) ).

% rev_image_eqI
thf(fact_393_Suc__inject,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( suc @ X )
        = ( suc @ Y ) )
     => ( X = Y ) ) ).

% Suc_inject
thf(fact_394_n__not__Suc__n,axiom,
    ! [N: nat] :
      ( N
     != ( suc @ N ) ) ).

% n_not_Suc_n
thf(fact_395_image__diff__subset,axiom,
    ! [F: nat > nat,A2: set_nat,B4: set_nat] : ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ ( image_nat_nat @ F @ A2 ) @ ( image_nat_nat @ F @ B4 ) ) @ ( image_nat_nat @ F @ ( minus_minus_set_nat @ A2 @ B4 ) ) ) ).

% image_diff_subset
thf(fact_396_subset__image__iff,axiom,
    ! [B4: set_nat,F: nat > nat,A2: set_nat] :
      ( ( ord_less_eq_set_nat @ B4 @ ( image_nat_nat @ F @ A2 ) )
      = ( ? [AA: set_nat] :
            ( ( ord_less_eq_set_nat @ AA @ A2 )
            & ( B4
              = ( image_nat_nat @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_397_image__subset__iff,axiom,
    ! [F: nat > nat,A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B4 )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ A2 )
           => ( member_nat @ ( F @ X3 ) @ B4 ) ) ) ) ).

% image_subset_iff
thf(fact_398_subset__imageE,axiom,
    ! [B4: set_nat,F: nat > nat,A2: set_nat] :
      ( ( ord_less_eq_set_nat @ B4 @ ( image_nat_nat @ F @ A2 ) )
     => ~ ! [C3: set_nat] :
            ( ( ord_less_eq_set_nat @ C3 @ A2 )
           => ( B4
             != ( image_nat_nat @ F @ C3 ) ) ) ) ).

% subset_imageE
thf(fact_399_image__subsetI,axiom,
    ! [A2: set_nat,F: nat > list_nat,B4: set_list_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_list_nat @ ( F @ X2 ) @ B4 ) )
     => ( ord_le6045566169113846134st_nat @ ( image_nat_list_nat @ F @ A2 ) @ B4 ) ) ).

% image_subsetI
thf(fact_400_image__subsetI,axiom,
    ! [A2: set_list_nat,F: list_nat > list_nat,B4: set_list_nat] :
      ( ! [X2: list_nat] :
          ( ( member_list_nat @ X2 @ A2 )
         => ( member_list_nat @ ( F @ X2 ) @ B4 ) )
     => ( ord_le6045566169113846134st_nat @ ( image_7976474329151083847st_nat @ F @ A2 ) @ B4 ) ) ).

% image_subsetI
thf(fact_401_image__subsetI,axiom,
    ! [A2: set_nat,F: nat > nat,B4: set_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_nat @ ( F @ X2 ) @ B4 ) )
     => ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B4 ) ) ).

% image_subsetI
thf(fact_402_image__subsetI,axiom,
    ! [A2: set_list_nat,F: list_nat > nat,B4: set_nat] :
      ( ! [X2: list_nat] :
          ( ( member_list_nat @ X2 @ A2 )
         => ( member_nat @ ( F @ X2 ) @ B4 ) )
     => ( ord_less_eq_set_nat @ ( image_list_nat_nat @ F @ A2 ) @ B4 ) ) ).

% image_subsetI
thf(fact_403_image__mono,axiom,
    ! [A2: set_nat,B4: set_nat,F: nat > nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ ( image_nat_nat @ F @ B4 ) ) ) ).

% image_mono
thf(fact_404_list__decode_Ocases,axiom,
    ! [X: nat] :
      ( ( X != zero_zero_nat )
     => ~ ! [N3: nat] :
            ( X
           != ( suc @ N3 ) ) ) ).

% list_decode.cases
thf(fact_405_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M3: nat] :
          ( N
          = ( suc @ M3 ) ) ) ).

% not0_implies_Suc
thf(fact_406_Zero__not__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_not_Suc
thf(fact_407_Zero__neq__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_neq_Suc
thf(fact_408_Suc__neq__Zero,axiom,
    ! [M: nat] :
      ( ( suc @ M )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_409_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N3: nat] :
            ( ( P @ ( suc @ N3 ) )
           => ( P @ N3 ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_410_diff__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [X2: nat] : ( P @ X2 @ zero_zero_nat )
     => ( ! [Y2: nat] : ( P @ zero_zero_nat @ ( suc @ Y2 ) )
       => ( ! [X2: nat,Y2: nat] :
              ( ( P @ X2 @ Y2 )
             => ( P @ ( suc @ X2 ) @ ( suc @ Y2 ) ) )
         => ( P @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_411_nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N3: nat] :
            ( ( P @ N3 )
           => ( P @ ( suc @ N3 ) ) )
       => ( P @ N ) ) ) ).

% nat_induct
thf(fact_412_old_Onat_Oexhaust,axiom,
    ! [Y: nat] :
      ( ( Y != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y
           != ( suc @ Nat3 ) ) ) ).

% old.nat.exhaust
thf(fact_413_nat_OdiscI,axiom,
    ! [Nat: nat,X23: nat] :
      ( ( Nat
        = ( suc @ X23 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_414_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

% old.nat.distinct(1)
thf(fact_415_old_Onat_Odistinct_I2_J,axiom,
    ! [Nat2: nat] :
      ( ( suc @ Nat2 )
     != zero_zero_nat ) ).

% old.nat.distinct(2)
thf(fact_416_nat_Odistinct_I1_J,axiom,
    ! [X23: nat] :
      ( zero_zero_nat
     != ( suc @ X23 ) ) ).

% nat.distinct(1)
thf(fact_417_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X2: nat] : ( R @ X2 @ X2 )
       => ( ! [X2: nat,Y2: nat,Z3: nat] :
              ( ( R @ X2 @ Y2 )
             => ( ( R @ Y2 @ Z3 )
               => ( R @ X2 @ Z3 ) ) )
         => ( ! [N3: nat] : ( R @ N3 @ ( suc @ N3 ) )
           => ( R @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_418_nat__induct__at__least,axiom,
    ! [M: nat,N: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( P @ M )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ M @ N3 )
             => ( ( P @ N3 )
               => ( P @ ( suc @ N3 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_419_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M4: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M4 ) @ N3 )
             => ( P @ M4 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_420_not__less__eq__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_eq_nat @ M @ N ) )
      = ( ord_less_eq_nat @ ( suc @ N ) @ M ) ) ).

% not_less_eq_eq
thf(fact_421_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_422_le__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_eq_nat @ M @ N )
        | ( M
          = ( suc @ N ) ) ) ) ).

% le_Suc_eq
thf(fact_423_Suc__le__D,axiom,
    ! [N: nat,M5: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M5 )
     => ? [M3: nat] :
          ( M5
          = ( suc @ M3 ) ) ) ).

% Suc_le_D
thf(fact_424_le__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_425_le__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_eq_nat @ M @ N )
       => ( M
          = ( suc @ N ) ) ) ) ).

% le_SucE
thf(fact_426_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_leD
thf(fact_427_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N3: nat] :
            ( ( P @ ( suc @ N3 ) )
           => ( P @ N3 ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_428_in__set__nthsD,axiom,
    ! [X: list_nat,Xs: list_list_nat,I2: set_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ ( nths_list_nat @ Xs @ I2 ) ) )
     => ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) ) ) ).

% in_set_nthsD
thf(fact_429_in__set__nthsD,axiom,
    ! [X: nat,Xs: list_nat,I2: set_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ ( nths_nat @ Xs @ I2 ) ) )
     => ( member_nat @ X @ ( set_nat2 @ Xs ) ) ) ).

% in_set_nthsD
thf(fact_430_notin__set__nthsI,axiom,
    ! [X: list_nat,Xs: list_list_nat,I2: set_nat] :
      ( ~ ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ~ ( member_list_nat @ X @ ( set_list_nat2 @ ( nths_list_nat @ Xs @ I2 ) ) ) ) ).

% notin_set_nthsI
thf(fact_431_notin__set__nthsI,axiom,
    ! [X: nat,Xs: list_nat,I2: set_nat] :
      ( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ~ ( member_nat @ X @ ( set_nat2 @ ( nths_nat @ Xs @ I2 ) ) ) ) ).

% notin_set_nthsI
thf(fact_432_distinct__nthsI,axiom,
    ! [Xs: list_nat,I2: set_nat] :
      ( ( distinct_nat @ Xs )
     => ( distinct_nat @ ( nths_nat @ Xs @ I2 ) ) ) ).

% distinct_nthsI
thf(fact_433_lift__Suc__antimono__le,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_434_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_set_nat @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_nat @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_435_lift__Suc__antimono__le,axiom,
    ! [F: nat > extended_enat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_le2932123472753598470d_enat @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_le2932123472753598470d_enat @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_436_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_437_lift__Suc__mono__le,axiom,
    ! [F: nat > set_nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_set_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_438_lift__Suc__mono__le,axiom,
    ! [F: nat > extended_enat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_le2932123472753598470d_enat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_le2932123472753598470d_enat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_439_Suc__diff__le,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( suc @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% Suc_diff_le
thf(fact_440_concat_Osimps_I1_J,axiom,
    ( ( concat_nat @ nil_list_nat )
    = nil_nat ) ).

% concat.simps(1)
thf(fact_441_concat_Osimps_I2_J,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( concat_nat @ ( cons_list_nat @ X @ Xs ) )
      = ( append_nat @ X @ ( concat_nat @ Xs ) ) ) ).

% concat.simps(2)
thf(fact_442_set__nths__subset,axiom,
    ! [Xs: list_nat,I2: set_nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ ( nths_nat @ Xs @ I2 ) ) @ ( set_nat2 @ Xs ) ) ).

% set_nths_subset
thf(fact_443_sorted__nths,axiom,
    ! [Xs: list_nat,I2: set_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
     => ( sorted_wrt_nat @ ord_less_eq_nat @ ( nths_nat @ Xs @ I2 ) ) ) ).

% sorted_nths
thf(fact_444_sorted__nths,axiom,
    ! [Xs: list_Extended_enat,I2: set_nat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
     => ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ ( nths_Extended_enat @ Xs @ I2 ) ) ) ).

% sorted_nths
thf(fact_445_subset__code_I2_J,axiom,
    ! [A2: set_list_nat,Ys: list_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ A2 @ ( coset_list_nat @ Ys ) )
      = ( ! [X3: list_nat] :
            ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Ys ) )
           => ~ ( member_list_nat @ X3 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_446_subset__code_I2_J,axiom,
    ! [A2: set_nat,Ys: list_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( coset_nat @ Ys ) )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Ys ) )
           => ~ ( member_nat @ X3 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_447_concat__eq__appendD,axiom,
    ! [Xss2: list_list_nat,Ys: list_nat,Zs: list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = ( append_nat @ Ys @ Zs ) )
     => ( ( Xss2 != nil_list_nat )
       => ? [Xss12: list_list_nat,Xs2: list_nat,Xs3: list_nat,Xss23: list_list_nat] :
            ( ( Xss2
              = ( append_list_nat @ Xss12 @ ( cons_list_nat @ ( append_nat @ Xs2 @ Xs3 ) @ Xss23 ) ) )
            & ( Ys
              = ( append_nat @ ( concat_nat @ Xss12 ) @ Xs2 ) )
            & ( Zs
              = ( append_nat @ Xs3 @ ( concat_nat @ Xss23 ) ) ) ) ) ) ).

% concat_eq_appendD
thf(fact_448_sorted__list__of__set__lessThan__Suc,axiom,
    ! [K: nat] :
      ( ( linord2614967742042102400et_nat @ ( set_ord_lessThan_nat @ ( suc @ K ) ) )
      = ( append_nat @ ( linord2614967742042102400et_nat @ ( set_ord_lessThan_nat @ K ) ) @ ( cons_nat @ K @ nil_nat ) ) ) ).

% sorted_list_of_set_lessThan_Suc
thf(fact_449_exists__least__lemma,axiom,
    ! [P: nat > $o] :
      ( ~ ( P @ zero_zero_nat )
     => ( ? [X_1: nat] : ( P @ X_1 )
       => ? [N3: nat] :
            ( ~ ( P @ N3 )
            & ( P @ ( suc @ N3 ) ) ) ) ) ).

% exists_least_lemma
thf(fact_450_all__subset__image,axiom,
    ! [F: nat > nat,A2: set_nat,P: set_nat > $o] :
      ( ( ! [B5: set_nat] :
            ( ( ord_less_eq_set_nat @ B5 @ ( image_nat_nat @ F @ A2 ) )
           => ( P @ B5 ) ) )
      = ( ! [B5: set_nat] :
            ( ( ord_less_eq_set_nat @ B5 @ A2 )
           => ( P @ ( image_nat_nat @ F @ B5 ) ) ) ) ) ).

% all_subset_image
thf(fact_451_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_452_member__remove,axiom,
    ! [X: nat,Y: nat,A2: set_nat] :
      ( ( member_nat @ X @ ( remove_nat @ Y @ A2 ) )
      = ( ( member_nat @ X @ A2 )
        & ( X != Y ) ) ) ).

% member_remove
thf(fact_453_member__remove,axiom,
    ! [X: list_nat,Y: list_nat,A2: set_list_nat] :
      ( ( member_list_nat @ X @ ( remove_list_nat @ Y @ A2 ) )
      = ( ( member_list_nat @ X @ A2 )
        & ( X != Y ) ) ) ).

% member_remove
thf(fact_454_lessThan__subset__iff,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le7203529160286727270d_enat @ ( set_or8419480210114673929d_enat @ X ) @ ( set_or8419480210114673929d_enat @ Y ) )
      = ( ord_le2932123472753598470d_enat @ X @ Y ) ) ).

% lessThan_subset_iff
thf(fact_455_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_456_zero__notin__Suc__image,axiom,
    ! [A2: set_nat] :
      ~ ( member_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ A2 ) ) ).

% zero_notin_Suc_image
thf(fact_457_lessThan__Suc__atMost,axiom,
    ! [K: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ K ) )
      = ( set_ord_atMost_nat @ K ) ) ).

% lessThan_Suc_atMost
thf(fact_458_upt__Suc__append,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( upt @ I @ ( suc @ J ) )
        = ( append_nat @ ( upt @ I @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) ) ).

% upt_Suc_append
thf(fact_459_upt__Suc,axiom,
    ! [I: nat,J: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
       => ( ( upt @ I @ ( suc @ J ) )
          = ( append_nat @ ( upt @ I @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) )
      & ( ~ ( ord_less_eq_nat @ I @ J )
       => ( ( upt @ I @ ( suc @ J ) )
          = nil_nat ) ) ) ).

% upt_Suc
thf(fact_460_subseqs__powset,axiom,
    ! [Xs: list_nat] :
      ( ( image_1775855109352712557et_nat @ set_nat2 @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) )
      = ( pow_nat @ ( set_nat2 @ Xs ) ) ) ).

% subseqs_powset
thf(fact_461_gen__length__code_I2_J,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( gen_length_nat @ N @ ( cons_nat @ X @ Xs ) )
      = ( gen_length_nat @ ( suc @ N ) @ Xs ) ) ).

% gen_length_code(2)
thf(fact_462_sorted__list__of__set__greaterThanAtMost,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( suc @ I ) @ J )
     => ( ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ I @ J ) )
        = ( cons_nat @ ( suc @ I ) @ ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ ( suc @ I ) @ J ) ) ) ) ) ).

% sorted_list_of_set_greaterThanAtMost
thf(fact_463_Pow__iff,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( member_set_nat @ A2 @ ( pow_nat @ B4 ) )
      = ( ord_less_eq_set_nat @ A2 @ B4 ) ) ).

% Pow_iff
thf(fact_464_PowI,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( member_set_nat @ A2 @ ( pow_nat @ B4 ) ) ) ).

% PowI
thf(fact_465_list__incr__Nil,axiom,
    ! [I: nat] :
      ( ( list_incr @ I @ nil_nat )
      = nil_nat ) ).

% list_incr_Nil
thf(fact_466_upt__conv__Nil,axiom,
    ! [J: nat,I: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( upt @ I @ J )
        = nil_nat ) ) ).

% upt_conv_Nil
thf(fact_467_list__incr__Cons,axiom,
    ! [I: nat,K: nat,Ks: list_nat] :
      ( ( list_incr @ ( suc @ I ) @ ( cons_nat @ K @ Ks ) )
      = ( cons_nat @ K @ ( list_incr @ I @ Ks ) ) ) ).

% list_incr_Cons
thf(fact_468_upt__eq__Nil__conv,axiom,
    ! [I: nat,J: nat] :
      ( ( ( upt @ I @ J )
        = nil_nat )
      = ( ( J = zero_zero_nat )
        | ( ord_less_eq_nat @ J @ I ) ) ) ).

% upt_eq_Nil_conv
thf(fact_469_greaterThanAtMost__upt,axiom,
    ( set_or6659071591806873216st_nat
    = ( ^ [N5: nat,M6: nat] : ( set_nat2 @ ( upt @ ( suc @ N5 ) @ ( suc @ M6 ) ) ) ) ) ).

% greaterThanAtMost_upt
thf(fact_470_Ioc__inj,axiom,
    ! [A: extended_enat,B: extended_enat,C: extended_enat,D2: extended_enat] :
      ( ( ( set_or7678188136779942326d_enat @ A @ B )
        = ( set_or7678188136779942326d_enat @ C @ D2 ) )
      = ( ( ( ord_le2932123472753598470d_enat @ B @ A )
          & ( ord_le2932123472753598470d_enat @ D2 @ C ) )
        | ( ( A = C )
          & ( B = D2 ) ) ) ) ).

% Ioc_inj
thf(fact_471_Ioc__inj,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ( set_or6659071591806873216st_nat @ A @ B )
        = ( set_or6659071591806873216st_nat @ C @ D2 ) )
      = ( ( ( ord_less_eq_nat @ B @ A )
          & ( ord_less_eq_nat @ D2 @ C ) )
        | ( ( A = C )
          & ( B = D2 ) ) ) ) ).

% Ioc_inj
thf(fact_472_image__Pow__surj,axiom,
    ! [F: nat > nat,A2: set_nat,B4: set_nat] :
      ( ( ( image_nat_nat @ F @ A2 )
        = B4 )
     => ( ( image_7916887816326733075et_nat @ ( image_nat_nat @ F ) @ ( pow_nat @ A2 ) )
        = ( pow_nat @ B4 ) ) ) ).

% image_Pow_surj
thf(fact_473_Pow__mono,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ord_le6893508408891458716et_nat @ ( pow_nat @ A2 ) @ ( pow_nat @ B4 ) ) ) ).

% Pow_mono
thf(fact_474_PowD,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( member_set_nat @ A2 @ ( pow_nat @ B4 ) )
     => ( ord_less_eq_set_nat @ A2 @ B4 ) ) ).

% PowD
thf(fact_475_distinct__upt,axiom,
    ! [I: nat,J: nat] : ( distinct_nat @ ( upt @ I @ J ) ) ).

% distinct_upt
thf(fact_476_image__Pow__mono,axiom,
    ! [F: nat > nat,A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B4 )
     => ( ord_le6893508408891458716et_nat @ ( image_7916887816326733075et_nat @ ( image_nat_nat @ F ) @ ( pow_nat @ A2 ) ) @ ( pow_nat @ B4 ) ) ) ).

% image_Pow_mono
thf(fact_477_Ioc__subset__iff,axiom,
    ! [A: extended_enat,B: extended_enat,C: extended_enat,D2: extended_enat] :
      ( ( ord_le7203529160286727270d_enat @ ( set_or7678188136779942326d_enat @ A @ B ) @ ( set_or7678188136779942326d_enat @ C @ D2 ) )
      = ( ( ord_le2932123472753598470d_enat @ B @ A )
        | ( ( ord_le2932123472753598470d_enat @ C @ A )
          & ( ord_le2932123472753598470d_enat @ B @ D2 ) ) ) ) ).

% Ioc_subset_iff
thf(fact_478_Ioc__subset__iff,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_eq_set_nat @ ( set_or6659071591806873216st_nat @ A @ B ) @ ( set_or6659071591806873216st_nat @ C @ D2 ) )
      = ( ( ord_less_eq_nat @ B @ A )
        | ( ( ord_less_eq_nat @ C @ A )
          & ( ord_less_eq_nat @ B @ D2 ) ) ) ) ).

% Ioc_subset_iff
thf(fact_479_upt__0,axiom,
    ! [I: nat] :
      ( ( upt @ I @ zero_zero_nat )
      = nil_nat ) ).

% upt_0
thf(fact_480_upt__conv__Cons__Cons,axiom,
    ! [M: nat,N: nat,Ns: list_nat,Q2: nat] :
      ( ( ( cons_nat @ M @ ( cons_nat @ N @ Ns ) )
        = ( upt @ M @ Q2 ) )
      = ( ( cons_nat @ N @ Ns )
        = ( upt @ ( suc @ M ) @ Q2 ) ) ) ).

% upt_conv_Cons_Cons
thf(fact_481_sorted__upt,axiom,
    ! [M: nat,N: nat] : ( sorted_wrt_nat @ ord_less_eq_nat @ ( upt @ M @ N ) ) ).

% sorted_upt
thf(fact_482_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_length_nat @ N @ nil_nat )
      = N ) ).

% gen_length_code(1)
thf(fact_483_atLeast__upt,axiom,
    ( set_ord_lessThan_nat
    = ( ^ [N5: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ N5 ) ) ) ) ).

% atLeast_upt
thf(fact_484_atMost__upto,axiom,
    ( set_ord_atMost_nat
    = ( ^ [N5: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ ( suc @ N5 ) ) ) ) ) ).

% atMost_upto
thf(fact_485_upt__rec,axiom,
    ( upt
    = ( ^ [I3: nat,J2: nat] : ( if_list_nat @ ( ord_less_nat @ I3 @ J2 ) @ ( cons_nat @ I3 @ ( upt @ ( suc @ I3 ) @ J2 ) ) @ nil_nat ) ) ) ).

% upt_rec
thf(fact_486_atMost__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_atMost_nat @ ( suc @ N ) )
      = ( insert_nat2 @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% atMost_Suc_eq_insert_0
thf(fact_487_lessThan__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ N ) )
      = ( insert_nat2 @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% lessThan_Suc_eq_insert_0
thf(fact_488_Khovanskii_OGmult__1,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,A: nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_nat @ A @ G )
       => ( ( gmult_nat @ Addition @ Zero @ A @ ( suc @ zero_zero_nat ) )
          = A ) ) ) ).

% Khovanskii.Gmult_1
thf(fact_489_Khovanskii_OGmult__1,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat,A: list_nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_list_nat @ A @ G )
       => ( ( gmult_list_nat @ Addition @ Zero @ A @ ( suc @ zero_zero_nat ) )
          = A ) ) ) ).

% Khovanskii.Gmult_1
thf(fact_490_finite__sorted__distinct__unique,axiom,
    ! [A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ? [X2: list_list_nat] :
          ( ( ( set_list_nat2 @ X2 )
            = A2 )
          & ( sorted_wrt_list_nat @ ord_less_eq_list_nat @ X2 )
          & ( distinct_list_nat @ X2 )
          & ! [Y5: list_list_nat] :
              ( ( ( ( set_list_nat2 @ Y5 )
                  = A2 )
                & ( sorted_wrt_list_nat @ ord_less_eq_list_nat @ Y5 )
                & ( distinct_list_nat @ Y5 ) )
             => ( Y5 = X2 ) ) ) ) ).

% finite_sorted_distinct_unique
thf(fact_491_finite__sorted__distinct__unique,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ? [X2: list_nat] :
          ( ( ( set_nat2 @ X2 )
            = A2 )
          & ( sorted_wrt_nat @ ord_less_eq_nat @ X2 )
          & ( distinct_nat @ X2 )
          & ! [Y5: list_nat] :
              ( ( ( ( set_nat2 @ Y5 )
                  = A2 )
                & ( sorted_wrt_nat @ ord_less_eq_nat @ Y5 )
                & ( distinct_nat @ Y5 ) )
             => ( Y5 = X2 ) ) ) ) ).

% finite_sorted_distinct_unique
thf(fact_492_finite__sorted__distinct__unique,axiom,
    ! [A2: set_Extended_enat] :
      ( ( finite4001608067531595151d_enat @ A2 )
     => ? [X2: list_Extended_enat] :
          ( ( ( set_Extended_enat2 @ X2 )
            = A2 )
          & ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ X2 )
          & ( distin4523846830085650399d_enat @ X2 )
          & ! [Y5: list_Extended_enat] :
              ( ( ( ( set_Extended_enat2 @ Y5 )
                  = A2 )
                & ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Y5 )
                & ( distin4523846830085650399d_enat @ Y5 ) )
             => ( Y5 = X2 ) ) ) ) ).

% finite_sorted_distinct_unique
thf(fact_493_insert__absorb2,axiom,
    ! [X: nat,A2: set_nat] :
      ( ( insert_nat2 @ X @ ( insert_nat2 @ X @ A2 ) )
      = ( insert_nat2 @ X @ A2 ) ) ).

% insert_absorb2
thf(fact_494_insert__absorb2,axiom,
    ! [X: list_nat,A2: set_list_nat] :
      ( ( insert_list_nat2 @ X @ ( insert_list_nat2 @ X @ A2 ) )
      = ( insert_list_nat2 @ X @ A2 ) ) ).

% insert_absorb2
thf(fact_495_insert__iff,axiom,
    ! [A: nat,B: nat,A2: set_nat] :
      ( ( member_nat @ A @ ( insert_nat2 @ B @ A2 ) )
      = ( ( A = B )
        | ( member_nat @ A @ A2 ) ) ) ).

% insert_iff
thf(fact_496_insert__iff,axiom,
    ! [A: list_nat,B: list_nat,A2: set_list_nat] :
      ( ( member_list_nat @ A @ ( insert_list_nat2 @ B @ A2 ) )
      = ( ( A = B )
        | ( member_list_nat @ A @ A2 ) ) ) ).

% insert_iff
thf(fact_497_insertCI,axiom,
    ! [A: nat,B4: set_nat,B: nat] :
      ( ( ~ ( member_nat @ A @ B4 )
       => ( A = B ) )
     => ( member_nat @ A @ ( insert_nat2 @ B @ B4 ) ) ) ).

% insertCI
thf(fact_498_insertCI,axiom,
    ! [A: list_nat,B4: set_list_nat,B: list_nat] :
      ( ( ~ ( member_list_nat @ A @ B4 )
       => ( A = B ) )
     => ( member_list_nat @ A @ ( insert_list_nat2 @ B @ B4 ) ) ) ).

% insertCI
thf(fact_499_finite__lessThan,axiom,
    ! [K: nat] : ( finite_finite_nat @ ( set_ord_lessThan_nat @ K ) ) ).

% finite_lessThan
thf(fact_500_finite__atMost,axiom,
    ! [K: nat] : ( finite_finite_nat @ ( set_ord_atMost_nat @ K ) ) ).

% finite_atMost
thf(fact_501_finite__greaterThanAtMost,axiom,
    ! [L: nat,U: nat] : ( finite_finite_nat @ ( set_or6659071591806873216st_nat @ L @ U ) ) ).

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

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

% insert_image
thf(fact_504_insert__image,axiom,
    ! [X: nat,A2: set_nat,F: nat > list_nat] :
      ( ( member_nat @ X @ A2 )
     => ( ( insert_list_nat2 @ ( F @ X ) @ ( image_nat_list_nat @ F @ A2 ) )
        = ( image_nat_list_nat @ F @ A2 ) ) ) ).

% insert_image
thf(fact_505_insert__image,axiom,
    ! [X: list_nat,A2: set_list_nat,F: list_nat > nat] :
      ( ( member_list_nat @ X @ A2 )
     => ( ( insert_nat2 @ ( F @ X ) @ ( image_list_nat_nat @ F @ A2 ) )
        = ( image_list_nat_nat @ F @ A2 ) ) ) ).

% insert_image
thf(fact_506_insert__image,axiom,
    ! [X: list_nat,A2: set_list_nat,F: list_nat > list_nat] :
      ( ( member_list_nat @ X @ A2 )
     => ( ( insert_list_nat2 @ ( F @ X ) @ ( image_7976474329151083847st_nat @ F @ A2 ) )
        = ( image_7976474329151083847st_nat @ F @ A2 ) ) ) ).

% insert_image
thf(fact_507_image__insert,axiom,
    ! [F: nat > nat,A: nat,B4: set_nat] :
      ( ( image_nat_nat @ F @ ( insert_nat2 @ A @ B4 ) )
      = ( insert_nat2 @ ( F @ A ) @ ( image_nat_nat @ F @ B4 ) ) ) ).

% image_insert
thf(fact_508_image__insert,axiom,
    ! [F: nat > list_nat,A: nat,B4: set_nat] :
      ( ( image_nat_list_nat @ F @ ( insert_nat2 @ A @ B4 ) )
      = ( insert_list_nat2 @ ( F @ A ) @ ( image_nat_list_nat @ F @ B4 ) ) ) ).

% image_insert
thf(fact_509_image__insert,axiom,
    ! [F: list_nat > nat,A: list_nat,B4: set_list_nat] :
      ( ( image_list_nat_nat @ F @ ( insert_list_nat2 @ A @ B4 ) )
      = ( insert_nat2 @ ( F @ A ) @ ( image_list_nat_nat @ F @ B4 ) ) ) ).

% image_insert
thf(fact_510_image__insert,axiom,
    ! [F: list_nat > list_nat,A: list_nat,B4: set_list_nat] :
      ( ( image_7976474329151083847st_nat @ F @ ( insert_list_nat2 @ A @ B4 ) )
      = ( insert_list_nat2 @ ( F @ A ) @ ( image_7976474329151083847st_nat @ F @ B4 ) ) ) ).

% image_insert
thf(fact_511_insert__subset,axiom,
    ! [X: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ ( insert_list_nat2 @ X @ A2 ) @ B4 )
      = ( ( member_list_nat @ X @ B4 )
        & ( ord_le6045566169113846134st_nat @ A2 @ B4 ) ) ) ).

% insert_subset
thf(fact_512_insert__subset,axiom,
    ! [X: nat,A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ ( insert_nat2 @ X @ A2 ) @ B4 )
      = ( ( member_nat @ X @ B4 )
        & ( ord_less_eq_set_nat @ A2 @ B4 ) ) ) ).

% insert_subset
thf(fact_513_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_514_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

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

% less_nat_zero_code
thf(fact_516_Suc__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_less_eq
thf(fact_517_Suc__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_518_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

% lessI
thf(fact_519_lessThan__iff,axiom,
    ! [I: list_nat,K: list_nat] :
      ( ( member_list_nat @ I @ ( set_or3033090826390029821st_nat @ K ) )
      = ( ord_less_list_nat @ I @ K ) ) ).

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

% lessThan_iff
thf(fact_521_List_Ofinite__set,axiom,
    ! [Xs: list_nat] : ( finite_finite_nat @ ( set_nat2 @ Xs ) ) ).

% List.finite_set
thf(fact_522_List_Ofinite__set,axiom,
    ! [Xs: list_list_nat] : ( finite8100373058378681591st_nat @ ( set_list_nat2 @ Xs ) ) ).

% List.finite_set
thf(fact_523_finite__Diff,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( finite_finite_nat @ ( minus_minus_set_nat @ A2 @ B4 ) ) ) ).

% finite_Diff
thf(fact_524_finite__Diff,axiom,
    ! [A2: set_list_nat,B4: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( finite8100373058378681591st_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) ) ).

% finite_Diff
thf(fact_525_finite__Diff2,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( finite_finite_nat @ ( minus_minus_set_nat @ A2 @ B4 ) )
        = ( finite_finite_nat @ A2 ) ) ) ).

% finite_Diff2
thf(fact_526_finite__Diff2,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( finite8100373058378681591st_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) )
        = ( finite8100373058378681591st_nat @ A2 ) ) ) ).

% finite_Diff2
thf(fact_527_insert__Diff1,axiom,
    ! [X: nat,B4: set_nat,A2: set_nat] :
      ( ( member_nat @ X @ B4 )
     => ( ( minus_minus_set_nat @ ( insert_nat2 @ X @ A2 ) @ B4 )
        = ( minus_minus_set_nat @ A2 @ B4 ) ) ) ).

% insert_Diff1
thf(fact_528_insert__Diff1,axiom,
    ! [X: list_nat,B4: set_list_nat,A2: set_list_nat] :
      ( ( member_list_nat @ X @ B4 )
     => ( ( minus_7954133019191499631st_nat @ ( insert_list_nat2 @ X @ A2 ) @ B4 )
        = ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) ) ).

% insert_Diff1
thf(fact_529_Diff__insert0,axiom,
    ! [X: nat,A2: set_nat,B4: set_nat] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ( minus_minus_set_nat @ A2 @ ( insert_nat2 @ X @ B4 ) )
        = ( minus_minus_set_nat @ A2 @ B4 ) ) ) ).

% Diff_insert0
thf(fact_530_Diff__insert0,axiom,
    ! [X: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ~ ( member_list_nat @ X @ A2 )
     => ( ( minus_7954133019191499631st_nat @ A2 @ ( insert_list_nat2 @ X @ B4 ) )
        = ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) ) ).

% Diff_insert0
thf(fact_531_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_532_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_533_finite__Diff__insert,axiom,
    ! [A2: set_nat,A: nat,B4: set_nat] :
      ( ( finite_finite_nat @ ( minus_minus_set_nat @ A2 @ ( insert_nat2 @ A @ B4 ) ) )
      = ( finite_finite_nat @ ( minus_minus_set_nat @ A2 @ B4 ) ) ) ).

% finite_Diff_insert
thf(fact_534_finite__Diff__insert,axiom,
    ! [A2: set_list_nat,A: list_nat,B4: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ ( minus_7954133019191499631st_nat @ A2 @ ( insert_list_nat2 @ A @ B4 ) ) )
      = ( finite8100373058378681591st_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) ) ).

% finite_Diff_insert
thf(fact_535_list_Osimps_I15_J,axiom,
    ! [X21: list_nat,X22: list_list_nat] :
      ( ( set_list_nat2 @ ( cons_list_nat @ X21 @ X22 ) )
      = ( insert_list_nat2 @ X21 @ ( set_list_nat2 @ X22 ) ) ) ).

% list.simps(15)
thf(fact_536_list_Osimps_I15_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( ( set_nat2 @ ( cons_nat @ X21 @ X22 ) )
      = ( insert_nat2 @ X21 @ ( set_nat2 @ X22 ) ) ) ).

% list.simps(15)
thf(fact_537_zero__less__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
      = ( ord_less_nat @ M @ N ) ) ).

% zero_less_diff
thf(fact_538_greaterThanAtMost__iff,axiom,
    ! [I: list_nat,L: list_nat,U: list_nat] :
      ( ( member_list_nat @ I @ ( set_or2698080078649356688st_nat @ L @ U ) )
      = ( ( ord_less_list_nat @ L @ I )
        & ( ord_less_eq_list_nat @ I @ U ) ) ) ).

% greaterThanAtMost_iff
thf(fact_539_greaterThanAtMost__iff,axiom,
    ! [I: set_nat,L: set_nat,U: set_nat] :
      ( ( member_set_nat @ I @ ( set_or7074010630789208630et_nat @ L @ U ) )
      = ( ( ord_less_set_nat @ L @ I )
        & ( ord_less_eq_set_nat @ I @ U ) ) ) ).

% greaterThanAtMost_iff
thf(fact_540_greaterThanAtMost__iff,axiom,
    ! [I: extended_enat,L: extended_enat,U: extended_enat] :
      ( ( member_Extended_enat @ I @ ( set_or7678188136779942326d_enat @ L @ U ) )
      = ( ( ord_le72135733267957522d_enat @ L @ I )
        & ( ord_le2932123472753598470d_enat @ I @ U ) ) ) ).

% greaterThanAtMost_iff
thf(fact_541_greaterThanAtMost__iff,axiom,
    ! [I: nat,L: nat,U: nat] :
      ( ( member_nat @ I @ ( set_or6659071591806873216st_nat @ L @ U ) )
      = ( ( ord_less_nat @ L @ I )
        & ( ord_less_eq_nat @ I @ U ) ) ) ).

% greaterThanAtMost_iff
thf(fact_542_sorted__list__of__set_Ofold__insort__key_Oinfinite,axiom,
    ! [A2: set_list_nat] :
      ( ~ ( finite8100373058378681591st_nat @ A2 )
     => ( ( linord2712301520579796368st_nat @ A2 )
        = nil_list_nat ) ) ).

% sorted_list_of_set.fold_insort_key.infinite
thf(fact_543_sorted__list__of__set_Ofold__insort__key_Oinfinite,axiom,
    ! [A2: set_nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ( ( linord2614967742042102400et_nat @ A2 )
        = nil_nat ) ) ).

% sorted_list_of_set.fold_insort_key.infinite
thf(fact_544_sorted__list__of__set_Oset__sorted__key__list__of__set,axiom,
    ! [A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( set_list_nat2 @ ( linord2712301520579796368st_nat @ A2 ) )
        = A2 ) ) ).

% sorted_list_of_set.set_sorted_key_list_of_set
thf(fact_545_sorted__list__of__set_Oset__sorted__key__list__of__set,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( set_nat2 @ ( linord2614967742042102400et_nat @ A2 ) )
        = A2 ) ) ).

% sorted_list_of_set.set_sorted_key_list_of_set
thf(fact_546_List_Oset__insert,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( set_list_nat2 @ ( insert_list_nat @ X @ Xs ) )
      = ( insert_list_nat2 @ X @ ( set_list_nat2 @ Xs ) ) ) ).

% List.set_insert
thf(fact_547_List_Oset__insert,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( set_nat2 @ ( insert_nat @ X @ Xs ) )
      = ( insert_nat2 @ X @ ( set_nat2 @ Xs ) ) ) ).

% List.set_insert
thf(fact_548_Suc__pred,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% Suc_pred
thf(fact_549_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_550_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ N @ N4 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_551_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_552_order__less__imp__not__less,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ~ ( ord_less_nat @ Y @ X ) ) ).

% order_less_imp_not_less
thf(fact_553_order__less__imp__not__eq2,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( Y != X ) ) ).

% order_less_imp_not_eq2
thf(fact_554_order__less__imp__not__eq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( X != Y ) ) ).

% order_less_imp_not_eq
thf(fact_555_linorder__less__linear,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
      | ( X = Y )
      | ( ord_less_nat @ Y @ X ) ) ).

% linorder_less_linear
thf(fact_556_order__less__imp__triv,axiom,
    ! [X: nat,Y: nat,P: $o] :
      ( ( ord_less_nat @ X @ Y )
     => ( ( ord_less_nat @ Y @ X )
       => P ) ) ).

% order_less_imp_triv
thf(fact_557_order__less__not__sym,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ~ ( ord_less_nat @ Y @ X ) ) ).

% order_less_not_sym
thf(fact_558_order__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_559_order__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_560_order__less__irrefl,axiom,
    ! [X: nat] :
      ~ ( ord_less_nat @ X @ X ) ).

% order_less_irrefl
thf(fact_561_ord__less__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_562_ord__eq__less__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_563_order__less__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( ( ord_less_nat @ Y @ Z )
       => ( ord_less_nat @ X @ Z ) ) ) ).

% order_less_trans
thf(fact_564_order__less__asym_H,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ( ord_less_nat @ B @ A ) ) ).

% order_less_asym'
thf(fact_565_linorder__neq__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
      = ( ( ord_less_nat @ X @ Y )
        | ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_neq_iff
thf(fact_566_order__less__asym,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ~ ( ord_less_nat @ Y @ X ) ) ).

% order_less_asym
thf(fact_567_linorder__neqE,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
     => ( ~ ( ord_less_nat @ X @ Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_neqE
thf(fact_568_dual__order_Ostrict__implies__not__eq,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( A != B ) ) ).

% dual_order.strict_implies_not_eq
thf(fact_569_order_Ostrict__implies__not__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( A != B ) ) ).

% order.strict_implies_not_eq
thf(fact_570_dual__order_Ostrict__trans,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( ord_less_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans
thf(fact_571_not__less__iff__gr__or__eq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X @ Y ) )
      = ( ( ord_less_nat @ Y @ X )
        | ( X = Y ) ) ) ).

% not_less_iff_gr_or_eq
thf(fact_572_order_Ostrict__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans
thf(fact_573_linorder__less__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B3: nat] :
          ( ( ord_less_nat @ A4 @ B3 )
         => ( P @ A4 @ B3 ) )
     => ( ! [A4: nat] : ( P @ A4 @ A4 )
       => ( ! [A4: nat,B3: nat] :
              ( ( P @ B3 @ A4 )
             => ( P @ A4 @ B3 ) )
         => ( P @ A @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_574_exists__least__iff,axiom,
    ( ( ^ [P3: nat > $o] :
        ? [X6: nat] : ( P3 @ X6 ) )
    = ( ^ [P2: nat > $o] :
        ? [N5: nat] :
          ( ( P2 @ N5 )
          & ! [M6: nat] :
              ( ( ord_less_nat @ M6 @ N5 )
             => ~ ( P2 @ M6 ) ) ) ) ) ).

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

% dual_order.irrefl
thf(fact_576_dual__order_Oasym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ~ ( ord_less_nat @ A @ B ) ) ).

% dual_order.asym
thf(fact_577_linorder__cases,axiom,
    ! [X: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X @ Y )
     => ( ( X != Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_cases
thf(fact_578_antisym__conv3,axiom,
    ! [Y: nat,X: nat] :
      ( ~ ( ord_less_nat @ Y @ X )
     => ( ( ~ ( ord_less_nat @ X @ Y ) )
        = ( X = Y ) ) ) ).

% antisym_conv3
thf(fact_579_less__induct,axiom,
    ! [P: nat > $o,A: nat] :
      ( ! [X2: nat] :
          ( ! [Y5: nat] :
              ( ( ord_less_nat @ Y5 @ X2 )
             => ( P @ Y5 ) )
         => ( P @ X2 ) )
     => ( P @ A ) ) ).

% less_induct
thf(fact_580_ord__less__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_581_ord__eq__less__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A = B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% ord_eq_less_trans
thf(fact_582_order_Oasym,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ( ord_less_nat @ B @ A ) ) ).

% order.asym
thf(fact_583_less__imp__neq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( X != Y ) ) ).

% less_imp_neq
thf(fact_584_gt__ex,axiom,
    ! [X: nat] :
    ? [X_12: nat] : ( ord_less_nat @ X @ X_12 ) ).

% gt_ex
thf(fact_585_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_586_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ~ ( P @ N3 )
         => ? [M4: nat] :
              ( ( ord_less_nat @ M4 @ N3 )
              & ~ ( P @ M4 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_587_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M4: nat] :
              ( ( ord_less_nat @ M4 @ N3 )
             => ( P @ M4 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

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

% less_irrefl_nat
thf(fact_589_less__not__refl3,axiom,
    ! [S: nat,T2: nat] :
      ( ( ord_less_nat @ S @ T2 )
     => ( S != T2 ) ) ).

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

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

% less_not_refl
thf(fact_592_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_593_finite__nat__set__iff__bounded,axiom,
    ( finite_finite_nat
    = ( ^ [N6: set_nat] :
        ? [M6: nat] :
        ! [X3: nat] :
          ( ( member_nat @ X3 @ N6 )
         => ( ord_less_nat @ X3 @ M6 ) ) ) ) ).

% finite_nat_set_iff_bounded
thf(fact_594_bounded__nat__set__is__finite,axiom,
    ! [N2: set_nat,N: nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ N2 )
         => ( ord_less_nat @ X2 @ N ) )
     => ( finite_finite_nat @ N2 ) ) ).

% bounded_nat_set_is_finite
thf(fact_595_mk__disjoint__insert,axiom,
    ! [A: nat,A2: set_nat] :
      ( ( member_nat @ A @ A2 )
     => ? [B6: set_nat] :
          ( ( A2
            = ( insert_nat2 @ A @ B6 ) )
          & ~ ( member_nat @ A @ B6 ) ) ) ).

% mk_disjoint_insert
thf(fact_596_mk__disjoint__insert,axiom,
    ! [A: list_nat,A2: set_list_nat] :
      ( ( member_list_nat @ A @ A2 )
     => ? [B6: set_list_nat] :
          ( ( A2
            = ( insert_list_nat2 @ A @ B6 ) )
          & ~ ( member_list_nat @ A @ B6 ) ) ) ).

% mk_disjoint_insert
thf(fact_597_insert__commute,axiom,
    ! [X: nat,Y: nat,A2: set_nat] :
      ( ( insert_nat2 @ X @ ( insert_nat2 @ Y @ A2 ) )
      = ( insert_nat2 @ Y @ ( insert_nat2 @ X @ A2 ) ) ) ).

% insert_commute
thf(fact_598_insert__commute,axiom,
    ! [X: list_nat,Y: list_nat,A2: set_list_nat] :
      ( ( insert_list_nat2 @ X @ ( insert_list_nat2 @ Y @ A2 ) )
      = ( insert_list_nat2 @ Y @ ( insert_list_nat2 @ X @ A2 ) ) ) ).

% insert_commute
thf(fact_599_insert__eq__iff,axiom,
    ! [A: nat,A2: set_nat,B: nat,B4: set_nat] :
      ( ~ ( member_nat @ A @ A2 )
     => ( ~ ( member_nat @ B @ B4 )
       => ( ( ( insert_nat2 @ A @ A2 )
            = ( insert_nat2 @ B @ B4 ) )
          = ( ( ( A = B )
             => ( A2 = B4 ) )
            & ( ( A != B )
             => ? [C4: set_nat] :
                  ( ( A2
                    = ( insert_nat2 @ B @ C4 ) )
                  & ~ ( member_nat @ B @ C4 )
                  & ( B4
                    = ( insert_nat2 @ A @ C4 ) )
                  & ~ ( member_nat @ A @ C4 ) ) ) ) ) ) ) ).

% insert_eq_iff
thf(fact_600_insert__eq__iff,axiom,
    ! [A: list_nat,A2: set_list_nat,B: list_nat,B4: set_list_nat] :
      ( ~ ( member_list_nat @ A @ A2 )
     => ( ~ ( member_list_nat @ B @ B4 )
       => ( ( ( insert_list_nat2 @ A @ A2 )
            = ( insert_list_nat2 @ B @ B4 ) )
          = ( ( ( A = B )
             => ( A2 = B4 ) )
            & ( ( A != B )
             => ? [C4: set_list_nat] :
                  ( ( A2
                    = ( insert_list_nat2 @ B @ C4 ) )
                  & ~ ( member_list_nat @ B @ C4 )
                  & ( B4
                    = ( insert_list_nat2 @ A @ C4 ) )
                  & ~ ( member_list_nat @ A @ C4 ) ) ) ) ) ) ) ).

% insert_eq_iff
thf(fact_601_insert__absorb,axiom,
    ! [A: nat,A2: set_nat] :
      ( ( member_nat @ A @ A2 )
     => ( ( insert_nat2 @ A @ A2 )
        = A2 ) ) ).

% insert_absorb
thf(fact_602_insert__absorb,axiom,
    ! [A: list_nat,A2: set_list_nat] :
      ( ( member_list_nat @ A @ A2 )
     => ( ( insert_list_nat2 @ A @ A2 )
        = A2 ) ) ).

% insert_absorb
thf(fact_603_insert__ident,axiom,
    ! [X: nat,A2: set_nat,B4: set_nat] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ~ ( member_nat @ X @ B4 )
       => ( ( ( insert_nat2 @ X @ A2 )
            = ( insert_nat2 @ X @ B4 ) )
          = ( A2 = B4 ) ) ) ) ).

% insert_ident
thf(fact_604_insert__ident,axiom,
    ! [X: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ~ ( member_list_nat @ X @ A2 )
     => ( ~ ( member_list_nat @ X @ B4 )
       => ( ( ( insert_list_nat2 @ X @ A2 )
            = ( insert_list_nat2 @ X @ B4 ) )
          = ( A2 = B4 ) ) ) ) ).

% insert_ident
thf(fact_605_Set_Oset__insert,axiom,
    ! [X: nat,A2: set_nat] :
      ( ( member_nat @ X @ A2 )
     => ~ ! [B6: set_nat] :
            ( ( A2
              = ( insert_nat2 @ X @ B6 ) )
           => ( member_nat @ X @ B6 ) ) ) ).

% Set.set_insert
thf(fact_606_Set_Oset__insert,axiom,
    ! [X: list_nat,A2: set_list_nat] :
      ( ( member_list_nat @ X @ A2 )
     => ~ ! [B6: set_list_nat] :
            ( ( A2
              = ( insert_list_nat2 @ X @ B6 ) )
           => ( member_list_nat @ X @ B6 ) ) ) ).

% Set.set_insert
thf(fact_607_insertI2,axiom,
    ! [A: nat,B4: set_nat,B: nat] :
      ( ( member_nat @ A @ B4 )
     => ( member_nat @ A @ ( insert_nat2 @ B @ B4 ) ) ) ).

% insertI2
thf(fact_608_insertI2,axiom,
    ! [A: list_nat,B4: set_list_nat,B: list_nat] :
      ( ( member_list_nat @ A @ B4 )
     => ( member_list_nat @ A @ ( insert_list_nat2 @ B @ B4 ) ) ) ).

% insertI2
thf(fact_609_insertI1,axiom,
    ! [A: nat,B4: set_nat] : ( member_nat @ A @ ( insert_nat2 @ A @ B4 ) ) ).

% insertI1
thf(fact_610_insertI1,axiom,
    ! [A: list_nat,B4: set_list_nat] : ( member_list_nat @ A @ ( insert_list_nat2 @ A @ B4 ) ) ).

% insertI1
thf(fact_611_insertE,axiom,
    ! [A: nat,B: nat,A2: set_nat] :
      ( ( member_nat @ A @ ( insert_nat2 @ B @ A2 ) )
     => ( ( A != B )
       => ( member_nat @ A @ A2 ) ) ) ).

% insertE
thf(fact_612_insertE,axiom,
    ! [A: list_nat,B: list_nat,A2: set_list_nat] :
      ( ( member_list_nat @ A @ ( insert_list_nat2 @ B @ A2 ) )
     => ( ( A != B )
       => ( member_list_nat @ A @ A2 ) ) ) ).

% insertE
thf(fact_613_finite__has__maximal2,axiom,
    ! [A2: set_list_nat,A: list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( member_list_nat @ A @ A2 )
       => ? [X2: list_nat] :
            ( ( member_list_nat @ X2 @ A2 )
            & ( ord_less_eq_list_nat @ A @ X2 )
            & ! [Xa: list_nat] :
                ( ( member_list_nat @ Xa @ A2 )
               => ( ( ord_less_eq_list_nat @ X2 @ Xa )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_614_finite__has__maximal2,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ( ord_less_eq_nat @ A @ X2 )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ X2 @ Xa )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_615_finite__has__maximal2,axiom,
    ! [A2: set_set_nat,A: set_nat] :
      ( ( finite1152437895449049373et_nat @ A2 )
     => ( ( member_set_nat @ A @ A2 )
       => ? [X2: set_nat] :
            ( ( member_set_nat @ X2 @ A2 )
            & ( ord_less_eq_set_nat @ A @ X2 )
            & ! [Xa: set_nat] :
                ( ( member_set_nat @ Xa @ A2 )
               => ( ( ord_less_eq_set_nat @ X2 @ Xa )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_616_finite__has__maximal2,axiom,
    ! [A2: set_Extended_enat,A: extended_enat] :
      ( ( finite4001608067531595151d_enat @ A2 )
     => ( ( member_Extended_enat @ A @ A2 )
       => ? [X2: extended_enat] :
            ( ( member_Extended_enat @ X2 @ A2 )
            & ( ord_le2932123472753598470d_enat @ A @ X2 )
            & ! [Xa: extended_enat] :
                ( ( member_Extended_enat @ Xa @ A2 )
               => ( ( ord_le2932123472753598470d_enat @ X2 @ Xa )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_617_finite__has__minimal2,axiom,
    ! [A2: set_list_nat,A: list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( member_list_nat @ A @ A2 )
       => ? [X2: list_nat] :
            ( ( member_list_nat @ X2 @ A2 )
            & ( ord_less_eq_list_nat @ X2 @ A )
            & ! [Xa: list_nat] :
                ( ( member_list_nat @ Xa @ A2 )
               => ( ( ord_less_eq_list_nat @ Xa @ X2 )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_618_finite__has__minimal2,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ( ord_less_eq_nat @ X2 @ A )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ Xa @ X2 )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_619_finite__has__minimal2,axiom,
    ! [A2: set_set_nat,A: set_nat] :
      ( ( finite1152437895449049373et_nat @ A2 )
     => ( ( member_set_nat @ A @ A2 )
       => ? [X2: set_nat] :
            ( ( member_set_nat @ X2 @ A2 )
            & ( ord_less_eq_set_nat @ X2 @ A )
            & ! [Xa: set_nat] :
                ( ( member_set_nat @ Xa @ A2 )
               => ( ( ord_less_eq_set_nat @ Xa @ X2 )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_620_finite__has__minimal2,axiom,
    ! [A2: set_Extended_enat,A: extended_enat] :
      ( ( finite4001608067531595151d_enat @ A2 )
     => ( ( member_Extended_enat @ A @ A2 )
       => ? [X2: extended_enat] :
            ( ( member_Extended_enat @ X2 @ A2 )
            & ( ord_le2932123472753598470d_enat @ X2 @ A )
            & ! [Xa: extended_enat] :
                ( ( member_Extended_enat @ Xa @ A2 )
               => ( ( ord_le2932123472753598470d_enat @ Xa @ X2 )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_621_leD,axiom,
    ! [Y: nat,X: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ~ ( ord_less_nat @ X @ Y ) ) ).

% leD
thf(fact_622_leD,axiom,
    ! [Y: set_nat,X: set_nat] :
      ( ( ord_less_eq_set_nat @ Y @ X )
     => ~ ( ord_less_set_nat @ X @ Y ) ) ).

% leD
thf(fact_623_leD,axiom,
    ! [Y: extended_enat,X: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ Y @ X )
     => ~ ( ord_le72135733267957522d_enat @ X @ Y ) ) ).

% leD
thf(fact_624_leI,axiom,
    ! [X: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X @ Y )
     => ( ord_less_eq_nat @ Y @ X ) ) ).

% leI
thf(fact_625_leI,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ~ ( ord_le72135733267957522d_enat @ X @ Y )
     => ( ord_le2932123472753598470d_enat @ Y @ X ) ) ).

% leI
thf(fact_626_nless__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( ord_less_nat @ A @ B ) )
      = ( ~ ( ord_less_eq_nat @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_627_nless__le,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ~ ( ord_less_set_nat @ A @ B ) )
      = ( ~ ( ord_less_eq_set_nat @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_628_nless__le,axiom,
    ! [A: extended_enat,B: extended_enat] :
      ( ( ~ ( ord_le72135733267957522d_enat @ A @ B ) )
      = ( ~ ( ord_le2932123472753598470d_enat @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_629_antisym__conv1,axiom,
    ! [X: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ X @ Y )
        = ( X = Y ) ) ) ).

% antisym_conv1
thf(fact_630_antisym__conv1,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ~ ( ord_less_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ X @ Y )
        = ( X = Y ) ) ) ).

% antisym_conv1
thf(fact_631_antisym__conv1,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ~ ( ord_le72135733267957522d_enat @ X @ Y )
     => ( ( ord_le2932123472753598470d_enat @ X @ Y )
        = ( X = Y ) ) ) ).

% antisym_conv1
thf(fact_632_antisym__conv2,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ~ ( ord_less_nat @ X @ Y ) )
        = ( X = Y ) ) ) ).

% antisym_conv2
thf(fact_633_antisym__conv2,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ~ ( ord_less_set_nat @ X @ Y ) )
        = ( X = Y ) ) ) ).

% antisym_conv2
thf(fact_634_antisym__conv2,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ X @ Y )
     => ( ( ~ ( ord_le72135733267957522d_enat @ X @ Y ) )
        = ( X = Y ) ) ) ).

% antisym_conv2
thf(fact_635_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X3: nat,Y3: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y3 )
          & ~ ( ord_less_eq_nat @ Y3 @ X3 ) ) ) ) ).

% less_le_not_le
thf(fact_636_less__le__not__le,axiom,
    ( ord_less_set_nat
    = ( ^ [X3: set_nat,Y3: set_nat] :
          ( ( ord_less_eq_set_nat @ X3 @ Y3 )
          & ~ ( ord_less_eq_set_nat @ Y3 @ X3 ) ) ) ) ).

% less_le_not_le
thf(fact_637_less__le__not__le,axiom,
    ( ord_le72135733267957522d_enat
    = ( ^ [X3: extended_enat,Y3: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ X3 @ Y3 )
          & ~ ( ord_le2932123472753598470d_enat @ Y3 @ X3 ) ) ) ) ).

% less_le_not_le
thf(fact_638_not__le__imp__less,axiom,
    ! [Y: nat,X: nat] :
      ( ~ ( ord_less_eq_nat @ Y @ X )
     => ( ord_less_nat @ X @ Y ) ) ).

% not_le_imp_less
thf(fact_639_not__le__imp__less,axiom,
    ! [Y: extended_enat,X: extended_enat] :
      ( ~ ( ord_le2932123472753598470d_enat @ Y @ X )
     => ( ord_le72135733267957522d_enat @ X @ Y ) ) ).

% not_le_imp_less
thf(fact_640_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_nat @ A3 @ B2 )
          | ( A3 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_641_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A3: set_nat,B2: set_nat] :
          ( ( ord_less_set_nat @ A3 @ B2 )
          | ( A3 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_642_order_Oorder__iff__strict,axiom,
    ( ord_le2932123472753598470d_enat
    = ( ^ [A3: extended_enat,B2: extended_enat] :
          ( ( ord_le72135733267957522d_enat @ A3 @ B2 )
          | ( A3 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_643_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A3 @ B2 )
          & ( A3 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_644_order_Ostrict__iff__order,axiom,
    ( ord_less_set_nat
    = ( ^ [A3: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ A3 @ B2 )
          & ( A3 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_645_order_Ostrict__iff__order,axiom,
    ( ord_le72135733267957522d_enat
    = ( ^ [A3: extended_enat,B2: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ A3 @ B2 )
          & ( A3 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_646_order_Ostrict__trans1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_647_order_Ostrict__trans1,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_set_nat @ B @ C )
       => ( ord_less_set_nat @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_648_order_Ostrict__trans1,axiom,
    ! [A: extended_enat,B: extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_le72135733267957522d_enat @ B @ C )
       => ( ord_le72135733267957522d_enat @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_649_order_Ostrict__trans2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_650_order_Ostrict__trans2,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_set_nat @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_651_order_Ostrict__trans2,axiom,
    ! [A: extended_enat,B: extended_enat,C: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ A @ B )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ord_le72135733267957522d_enat @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_652_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A3 @ B2 )
          & ~ ( ord_less_eq_nat @ B2 @ A3 ) ) ) ) ).

% order.strict_iff_not
thf(fact_653_order_Ostrict__iff__not,axiom,
    ( ord_less_set_nat
    = ( ^ [A3: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ A3 @ B2 )
          & ~ ( ord_less_eq_set_nat @ B2 @ A3 ) ) ) ) ).

% order.strict_iff_not
thf(fact_654_order_Ostrict__iff__not,axiom,
    ( ord_le72135733267957522d_enat
    = ( ^ [A3: extended_enat,B2: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ A3 @ B2 )
          & ~ ( ord_le2932123472753598470d_enat @ B2 @ A3 ) ) ) ) ).

% order.strict_iff_not
thf(fact_655_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( ord_less_nat @ B2 @ A3 )
          | ( A3 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_656_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [B2: set_nat,A3: set_nat] :
          ( ( ord_less_set_nat @ B2 @ A3 )
          | ( A3 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_657_dual__order_Oorder__iff__strict,axiom,
    ( ord_le2932123472753598470d_enat
    = ( ^ [B2: extended_enat,A3: extended_enat] :
          ( ( ord_le72135733267957522d_enat @ B2 @ A3 )
          | ( A3 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_658_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B2 @ A3 )
          & ( A3 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_659_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_set_nat
    = ( ^ [B2: set_nat,A3: set_nat] :
          ( ( ord_less_eq_set_nat @ B2 @ A3 )
          & ( A3 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_660_dual__order_Ostrict__iff__order,axiom,
    ( ord_le72135733267957522d_enat
    = ( ^ [B2: extended_enat,A3: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ B2 @ A3 )
          & ( A3 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_661_dual__order_Ostrict__trans1,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_662_dual__order_Ostrict__trans1,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_set_nat @ C @ B )
       => ( ord_less_set_nat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_663_dual__order_Ostrict__trans1,axiom,
    ! [B: extended_enat,A: extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ B @ A )
     => ( ( ord_le72135733267957522d_enat @ C @ B )
       => ( ord_le72135733267957522d_enat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_664_dual__order_Ostrict__trans2,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_665_dual__order_Ostrict__trans2,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ C @ B )
       => ( ord_less_set_nat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_666_dual__order_Ostrict__trans2,axiom,
    ! [B: extended_enat,A: extended_enat,C: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ B @ A )
     => ( ( ord_le2932123472753598470d_enat @ C @ B )
       => ( ord_le72135733267957522d_enat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_667_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B2 @ A3 )
          & ~ ( ord_less_eq_nat @ A3 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_668_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_set_nat
    = ( ^ [B2: set_nat,A3: set_nat] :
          ( ( ord_less_eq_set_nat @ B2 @ A3 )
          & ~ ( ord_less_eq_set_nat @ A3 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_669_dual__order_Ostrict__iff__not,axiom,
    ( ord_le72135733267957522d_enat
    = ( ^ [B2: extended_enat,A3: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ B2 @ A3 )
          & ~ ( ord_le2932123472753598470d_enat @ A3 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_670_order_Ostrict__implies__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_671_order_Ostrict__implies__order,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_set_nat @ A @ B )
     => ( ord_less_eq_set_nat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_672_order_Ostrict__implies__order,axiom,
    ! [A: extended_enat,B: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ A @ B )
     => ( ord_le2932123472753598470d_enat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_673_dual__order_Ostrict__implies__order,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ord_less_eq_nat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_674_dual__order_Ostrict__implies__order,axiom,
    ! [B: set_nat,A: set_nat] :
      ( ( ord_less_set_nat @ B @ A )
     => ( ord_less_eq_set_nat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_675_dual__order_Ostrict__implies__order,axiom,
    ! [B: extended_enat,A: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ B @ A )
     => ( ord_le2932123472753598470d_enat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_676_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X3: nat,Y3: nat] :
          ( ( ord_less_nat @ X3 @ Y3 )
          | ( X3 = Y3 ) ) ) ) ).

% order_le_less
thf(fact_677_order__le__less,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [X3: set_nat,Y3: set_nat] :
          ( ( ord_less_set_nat @ X3 @ Y3 )
          | ( X3 = Y3 ) ) ) ) ).

% order_le_less
thf(fact_678_order__le__less,axiom,
    ( ord_le2932123472753598470d_enat
    = ( ^ [X3: extended_enat,Y3: extended_enat] :
          ( ( ord_le72135733267957522d_enat @ X3 @ Y3 )
          | ( X3 = Y3 ) ) ) ) ).

% order_le_less
thf(fact_679_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X3: nat,Y3: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y3 )
          & ( X3 != Y3 ) ) ) ) ).

% order_less_le
thf(fact_680_order__less__le,axiom,
    ( ord_less_set_nat
    = ( ^ [X3: set_nat,Y3: set_nat] :
          ( ( ord_less_eq_set_nat @ X3 @ Y3 )
          & ( X3 != Y3 ) ) ) ) ).

% order_less_le
thf(fact_681_order__less__le,axiom,
    ( ord_le72135733267957522d_enat
    = ( ^ [X3: extended_enat,Y3: extended_enat] :
          ( ( ord_le2932123472753598470d_enat @ X3 @ Y3 )
          & ( X3 != Y3 ) ) ) ) ).

% order_less_le
thf(fact_682_linorder__not__le,axiom,
    ! [X: nat,Y: nat] :
      ( ( ~ ( ord_less_eq_nat @ X @ Y ) )
      = ( ord_less_nat @ Y @ X ) ) ).

% linorder_not_le
thf(fact_683_linorder__not__le,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ~ ( ord_le2932123472753598470d_enat @ X @ Y ) )
      = ( ord_le72135733267957522d_enat @ Y @ X ) ) ).

% linorder_not_le
thf(fact_684_linorder__not__less,axiom,
    ! [X: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X @ Y ) )
      = ( ord_less_eq_nat @ Y @ X ) ) ).

% linorder_not_less
thf(fact_685_linorder__not__less,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ~ ( ord_le72135733267957522d_enat @ X @ Y ) )
      = ( ord_le2932123472753598470d_enat @ Y @ X ) ) ).

% linorder_not_less
thf(fact_686_order__less__imp__le,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( ord_less_eq_nat @ X @ Y ) ) ).

% order_less_imp_le
thf(fact_687_order__less__imp__le,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_set_nat @ X @ Y )
     => ( ord_less_eq_set_nat @ X @ Y ) ) ).

% order_less_imp_le
thf(fact_688_order__less__imp__le,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ X @ Y )
     => ( ord_le2932123472753598470d_enat @ X @ Y ) ) ).

% order_less_imp_le
thf(fact_689_order__le__neq__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_690_order__le__neq__trans,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_set_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_691_order__le__neq__trans,axiom,
    ! [A: extended_enat,B: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( A != B )
       => ( ord_le72135733267957522d_enat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_692_order__neq__le__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( A != B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_693_order__neq__le__trans,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( A != B )
     => ( ( ord_less_eq_set_nat @ A @ B )
       => ( ord_less_set_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_694_order__neq__le__trans,axiom,
    ! [A: extended_enat,B: extended_enat] :
      ( ( A != B )
     => ( ( ord_le2932123472753598470d_enat @ A @ B )
       => ( ord_le72135733267957522d_enat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_695_order__le__less__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_nat @ Y @ Z )
       => ( ord_less_nat @ X @ Z ) ) ) ).

% order_le_less_trans
thf(fact_696_order__le__less__trans,axiom,
    ! [X: set_nat,Y: set_nat,Z: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_set_nat @ Y @ Z )
       => ( ord_less_set_nat @ X @ Z ) ) ) ).

% order_le_less_trans
thf(fact_697_order__le__less__trans,axiom,
    ! [X: extended_enat,Y: extended_enat,Z: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ X @ Y )
     => ( ( ord_le72135733267957522d_enat @ Y @ Z )
       => ( ord_le72135733267957522d_enat @ X @ Z ) ) ) ).

% order_le_less_trans
thf(fact_698_order__less__le__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z )
       => ( ord_less_nat @ X @ Z ) ) ) ).

% order_less_le_trans
thf(fact_699_order__less__le__trans,axiom,
    ! [X: set_nat,Y: set_nat,Z: set_nat] :
      ( ( ord_less_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ Z )
       => ( ord_less_set_nat @ X @ Z ) ) ) ).

% order_less_le_trans
thf(fact_700_order__less__le__trans,axiom,
    ! [X: extended_enat,Y: extended_enat,Z: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ X @ Y )
     => ( ( ord_le2932123472753598470d_enat @ Y @ Z )
       => ( ord_le72135733267957522d_enat @ X @ Z ) ) ) ).

% order_less_le_trans
thf(fact_701_order__le__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_702_order__le__less__subst1,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_703_order__le__less__subst1,axiom,
    ! [A: extended_enat,F: nat > extended_enat,B: nat,C: nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_le72135733267957522d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_704_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_705_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_706_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > extended_enat,C: extended_enat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_le72135733267957522d_enat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_707_order__le__less__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_708_order__le__less__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_709_order__le__less__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > extended_enat,C: extended_enat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_le72135733267957522d_enat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_710_order__le__less__subst2,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > nat,C: nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_711_order__le__less__subst2,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > set_nat,C: set_nat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_less_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_712_order__le__less__subst2,axiom,
    ! [A: extended_enat,B: extended_enat,F: extended_enat > extended_enat,C: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ A @ B )
     => ( ( ord_le72135733267957522d_enat @ ( F @ B ) @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_713_order__less__le__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_714_order__less__le__subst1,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( ord_less_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_715_order__less__le__subst1,axiom,
    ! [A: extended_enat,F: nat > extended_enat,B: nat,C: nat] :
      ( ( ord_le72135733267957522d_enat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_716_order__less__le__subst1,axiom,
    ! [A: nat,F: set_nat > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_717_order__less__le__subst1,axiom,
    ! [A: set_nat,F: set_nat > set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_718_order__less__le__subst1,axiom,
    ! [A: extended_enat,F: set_nat > extended_enat,B: set_nat,C: set_nat] :
      ( ( ord_le72135733267957522d_enat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_719_order__less__le__subst1,axiom,
    ! [A: nat,F: extended_enat > nat,B: extended_enat,C: extended_enat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_720_order__less__le__subst1,axiom,
    ! [A: set_nat,F: extended_enat > set_nat,B: extended_enat,C: extended_enat] :
      ( ( ord_less_set_nat @ A @ ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_721_order__less__le__subst1,axiom,
    ! [A: extended_enat,F: extended_enat > extended_enat,B: extended_enat,C: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ A @ ( F @ B ) )
     => ( ( ord_le2932123472753598470d_enat @ B @ C )
       => ( ! [X2: extended_enat,Y2: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ X2 @ Y2 )
             => ( ord_le2932123472753598470d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_722_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_723_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_less_set_nat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_724_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > extended_enat,C: extended_enat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_le2932123472753598470d_enat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y2: nat] :
              ( ( ord_less_nat @ X2 @ Y2 )
             => ( ord_le72135733267957522d_enat @ ( F @ X2 ) @ ( F @ Y2 ) ) )
         => ( ord_le72135733267957522d_enat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_725_linorder__le__less__linear,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
      | ( ord_less_nat @ Y @ X ) ) ).

% linorder_le_less_linear
thf(fact_726_linorder__le__less__linear,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ X @ Y )
      | ( ord_le72135733267957522d_enat @ Y @ X ) ) ).

% linorder_le_less_linear
thf(fact_727_order__le__imp__less__or__eq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_nat @ X @ Y )
        | ( X = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_728_order__le__imp__less__or__eq,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_set_nat @ X @ Y )
        | ( X = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_729_order__le__imp__less__or__eq,axiom,
    ! [X: extended_enat,Y: extended_enat] :
      ( ( ord_le2932123472753598470d_enat @ X @ Y )
     => ( ( ord_le72135733267957522d_enat @ X @ Y )
        | ( X = Y ) ) ) ).

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

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

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

% gr_implies_not_zero
thf(fact_733_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_734_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_735_insert__mono,axiom,
    ! [C2: set_list_nat,D: set_list_nat,A: list_nat] :
      ( ( ord_le6045566169113846134st_nat @ C2 @ D )
     => ( ord_le6045566169113846134st_nat @ ( insert_list_nat2 @ A @ C2 ) @ ( insert_list_nat2 @ A @ D ) ) ) ).

% insert_mono
thf(fact_736_insert__mono,axiom,
    ! [C2: set_nat,D: set_nat,A: nat] :
      ( ( ord_less_eq_set_nat @ C2 @ D )
     => ( ord_less_eq_set_nat @ ( insert_nat2 @ A @ C2 ) @ ( insert_nat2 @ A @ D ) ) ) ).

% insert_mono
thf(fact_737_subset__insert,axiom,
    ! [X: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ~ ( member_list_nat @ X @ A2 )
     => ( ( ord_le6045566169113846134st_nat @ A2 @ ( insert_list_nat2 @ X @ B4 ) )
        = ( ord_le6045566169113846134st_nat @ A2 @ B4 ) ) ) ).

% subset_insert
thf(fact_738_subset__insert,axiom,
    ! [X: nat,A2: set_nat,B4: set_nat] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ( ord_less_eq_set_nat @ A2 @ ( insert_nat2 @ X @ B4 ) )
        = ( ord_less_eq_set_nat @ A2 @ B4 ) ) ) ).

% subset_insert
thf(fact_739_subset__insertI,axiom,
    ! [B4: set_list_nat,A: list_nat] : ( ord_le6045566169113846134st_nat @ B4 @ ( insert_list_nat2 @ A @ B4 ) ) ).

% subset_insertI
thf(fact_740_subset__insertI,axiom,
    ! [B4: set_nat,A: nat] : ( ord_less_eq_set_nat @ B4 @ ( insert_nat2 @ A @ B4 ) ) ).

% subset_insertI
thf(fact_741_subset__insertI2,axiom,
    ! [A2: set_list_nat,B4: set_list_nat,B: list_nat] :
      ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
     => ( ord_le6045566169113846134st_nat @ A2 @ ( insert_list_nat2 @ B @ B4 ) ) ) ).

% subset_insertI2
thf(fact_742_subset__insertI2,axiom,
    ! [A2: set_nat,B4: set_nat,B: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ord_less_eq_set_nat @ A2 @ ( insert_nat2 @ B @ B4 ) ) ) ).

% subset_insertI2
thf(fact_743_finite__subset,axiom,
    ! [A2: set_list_nat,B4: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
     => ( ( finite8100373058378681591st_nat @ B4 )
       => ( finite8100373058378681591st_nat @ A2 ) ) ) ).

% finite_subset
thf(fact_744_finite__subset,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( finite_finite_nat @ B4 )
       => ( finite_finite_nat @ A2 ) ) ) ).

% finite_subset
thf(fact_745_infinite__super,axiom,
    ! [S2: set_list_nat,T3: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ S2 @ T3 )
     => ( ~ ( finite8100373058378681591st_nat @ S2 )
       => ~ ( finite8100373058378681591st_nat @ T3 ) ) ) ).

% infinite_super
thf(fact_746_infinite__super,axiom,
    ! [S2: set_nat,T3: set_nat] :
      ( ( ord_less_eq_set_nat @ S2 @ T3 )
     => ( ~ ( finite_finite_nat @ S2 )
       => ~ ( finite_finite_nat @ T3 ) ) ) ).

% infinite_super
thf(fact_747_rev__finite__subset,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
       => ( finite8100373058378681591st_nat @ A2 ) ) ) ).

% rev_finite_subset
thf(fact_748_rev__finite__subset,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ A2 @ B4 )
       => ( finite_finite_nat @ A2 ) ) ) ).

% rev_finite_subset
thf(fact_749_finite__nat__set__iff__bounded__le,axiom,
    ( finite_finite_nat
    = ( ^ [N6: set_nat] :
        ? [M6: nat] :
        ! [X3: nat] :
          ( ( member_nat @ X3 @ N6 )
         => ( ord_less_eq_nat @ X3 @ M6 ) ) ) ) ).

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

% bot_nat_0.extremum_strict
thf(fact_751_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

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

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

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

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

% gr_implies_not0
thf(fact_756_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N3: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N3 )
           => ( ~ ( P @ N3 )
             => ? [M4: nat] :
                  ( ( ord_less_nat @ M4 @ N3 )
                  & ~ ( P @ M4 ) ) ) )
       => ( P @ N ) ) ) ).

% infinite_descent0
thf(fact_757_insert__Diff__if,axiom,
    ! [X: nat,B4: set_nat,A2: set_nat] :
      ( ( ( member_nat @ X @ B4 )
       => ( ( minus_minus_set_nat @ ( insert_nat2 @ X @ A2 ) @ B4 )
          = ( minus_minus_set_nat @ A2 @ B4 ) ) )
      & ( ~ ( member_nat @ X @ B4 )
       => ( ( minus_minus_set_nat @ ( insert_nat2 @ X @ A2 ) @ B4 )
          = ( insert_nat2 @ X @ ( minus_minus_set_nat @ A2 @ B4 ) ) ) ) ) ).

% insert_Diff_if
thf(fact_758_insert__Diff__if,axiom,
    ! [X: list_nat,B4: set_list_nat,A2: set_list_nat] :
      ( ( ( member_list_nat @ X @ B4 )
       => ( ( minus_7954133019191499631st_nat @ ( insert_list_nat2 @ X @ A2 ) @ B4 )
          = ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) )
      & ( ~ ( member_list_nat @ X @ B4 )
       => ( ( minus_7954133019191499631st_nat @ ( insert_list_nat2 @ X @ A2 ) @ B4 )
          = ( insert_list_nat2 @ X @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) ) ) ) ).

% insert_Diff_if
thf(fact_759_not__less__less__Suc__eq,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% not_less_less_Suc_eq
thf(fact_760_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I4: nat] :
            ( ( J
              = ( suc @ I4 ) )
           => ( P @ I4 ) )
       => ( ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ J )
             => ( ( P @ ( suc @ I4 ) )
               => ( P @ I4 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_761_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I4: nat] : ( P @ I4 @ ( suc @ I4 ) )
       => ( ! [I4: nat,J3: nat,K2: nat] :
              ( ( ord_less_nat @ I4 @ J3 )
             => ( ( ord_less_nat @ J3 @ K2 )
               => ( ( P @ I4 @ J3 )
                 => ( ( P @ J3 @ K2 )
                   => ( P @ I4 @ K2 ) ) ) ) )
         => ( P @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_762_less__trans__Suc,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ J @ K )
       => ( ord_less_nat @ ( suc @ I ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_763_Suc__less__SucD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_less_SucD
thf(fact_764_less__antisym,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
       => ( M = N ) ) ) ).

% less_antisym
thf(fact_765_Suc__less__eq2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M )
      = ( ? [M7: nat] :
            ( ( M
              = ( suc @ M7 ) )
            & ( ord_less_nat @ N @ M7 ) ) ) ) ).

% Suc_less_eq2
thf(fact_766_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
           => ( P @ I3 ) ) )
      = ( ( P @ N )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
           => ( P @ I3 ) ) ) ) ).

% All_less_Suc
thf(fact_767_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_768_less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( M = N ) ) ) ).

% less_Suc_eq
thf(fact_769_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
            & ( P @ I3 ) ) )
      = ( ( P @ N )
        | ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
            & ( P @ I3 ) ) ) ) ).

% Ex_less_Suc
thf(fact_770_less__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_771_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

% less_SucE
thf(fact_772_Suc__lessI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ( suc @ M )
         != N )
       => ( ord_less_nat @ ( suc @ M ) @ N ) ) ) ).

% Suc_lessI
thf(fact_773_Suc__lessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I ) @ K )
     => ~ ! [J3: nat] :
            ( ( ord_less_nat @ I @ J3 )
           => ( K
             != ( suc @ J3 ) ) ) ) ).

% Suc_lessE
thf(fact_774_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_775_Nat_OlessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ I @ K )
     => ( ( K
         != ( suc @ I ) )
       => ~ ! [J3: nat] :
              ( ( ord_less_nat @ I @ J3 )
             => ( K
               != ( suc @ J3 ) ) ) ) ) ).

% Nat.lessE
thf(fact_776_finite__list,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ? [Xs2: list_nat] :
          ( ( set_nat2 @ Xs2 )
          = A2 ) ) ).

% finite_list
thf(fact_777_finite__list,axiom,
    ! [A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ? [Xs2: list_list_nat] :
          ( ( set_list_nat2 @ Xs2 )
          = A2 ) ) ).

% finite_list
thf(fact_778_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M6: nat,N5: nat] :
          ( ( ord_less_eq_nat @ M6 @ N5 )
          & ( M6 != N5 ) ) ) ) ).

% nat_less_le
thf(fact_779_less__imp__le__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_imp_le_nat
thf(fact_780_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M6: nat,N5: nat] :
          ( ( ord_less_nat @ M6 @ N5 )
          | ( M6 = N5 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_781_less__or__eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_nat @ M @ N )
        | ( M = N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_or_eq_imp_le
thf(fact_782_le__neq__implies__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( M != N )
       => ( ord_less_nat @ M @ N ) ) ) ).

% le_neq_implies_less
thf(fact_783_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J: nat] :
      ( ! [I4: nat,J3: nat] :
          ( ( ord_less_nat @ I4 @ J3 )
         => ( ord_less_nat @ ( F @ I4 ) @ ( F @ J3 ) ) )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_784_Diff__infinite__finite,axiom,
    ! [T3: set_nat,S2: set_nat] :
      ( ( finite_finite_nat @ T3 )
     => ( ~ ( finite_finite_nat @ S2 )
       => ~ ( finite_finite_nat @ ( minus_minus_set_nat @ S2 @ T3 ) ) ) ) ).

% Diff_infinite_finite
thf(fact_785_Diff__infinite__finite,axiom,
    ! [T3: set_list_nat,S2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ T3 )
     => ( ~ ( finite8100373058378681591st_nat @ S2 )
       => ~ ( finite8100373058378681591st_nat @ ( minus_7954133019191499631st_nat @ S2 @ T3 ) ) ) ) ).

% Diff_infinite_finite
thf(fact_786_diff__less__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ord_less_nat @ M @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ) ).

% diff_less_mono2
thf(fact_787_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_788_Khovanskii_OfinA,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( finite_finite_nat @ A2 ) ) ).

% Khovanskii.finA
thf(fact_789_Khovanskii_OfinA,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( finite8100373058378681591st_nat @ A2 ) ) ).

% Khovanskii.finA
thf(fact_790_sorted__list__of__set_Osorted__key__list__of__set__inject,axiom,
    ! [A2: set_list_nat,B4: set_list_nat] :
      ( ( ( linord2712301520579796368st_nat @ A2 )
        = ( linord2712301520579796368st_nat @ B4 ) )
     => ( ( finite8100373058378681591st_nat @ A2 )
       => ( ( finite8100373058378681591st_nat @ B4 )
         => ( A2 = B4 ) ) ) ) ).

% sorted_list_of_set.sorted_key_list_of_set_inject
thf(fact_791_sorted__list__of__set_Osorted__key__list__of__set__inject,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ( linord2614967742042102400et_nat @ A2 )
        = ( linord2614967742042102400et_nat @ B4 ) )
     => ( ( finite_finite_nat @ A2 )
       => ( ( finite_finite_nat @ B4 )
         => ( A2 = B4 ) ) ) ) ).

% sorted_list_of_set.sorted_key_list_of_set_inject
thf(fact_792_Khovanskii_OGmult__in__G,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,A: nat,N: nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_nat @ A @ G )
       => ( member_nat @ ( gmult_nat @ Addition @ Zero @ A @ N ) @ G ) ) ) ).

% Khovanskii.Gmult_in_G
thf(fact_793_Khovanskii_OGmult__in__G,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat,A: list_nat,N: nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_list_nat @ A @ G )
       => ( member_list_nat @ ( gmult_list_nat @ Addition @ Zero @ A @ N ) @ G ) ) ) ).

% Khovanskii.Gmult_in_G
thf(fact_794_finite__surj,axiom,
    ! [A2: set_nat,B4: set_list_nat,F: nat > list_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_le6045566169113846134st_nat @ B4 @ ( image_nat_list_nat @ F @ A2 ) )
       => ( finite8100373058378681591st_nat @ B4 ) ) ) ).

% finite_surj
thf(fact_795_finite__surj,axiom,
    ! [A2: set_list_nat,B4: set_list_nat,F: list_nat > list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( ord_le6045566169113846134st_nat @ B4 @ ( image_7976474329151083847st_nat @ F @ A2 ) )
       => ( finite8100373058378681591st_nat @ B4 ) ) ) ).

% finite_surj
thf(fact_796_finite__surj,axiom,
    ! [A2: set_nat,B4: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ B4 @ ( image_nat_nat @ F @ A2 ) )
       => ( finite_finite_nat @ B4 ) ) ) ).

% finite_surj
thf(fact_797_finite__surj,axiom,
    ! [A2: set_list_nat,B4: set_nat,F: list_nat > nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ B4 @ ( image_list_nat_nat @ F @ A2 ) )
       => ( finite_finite_nat @ B4 ) ) ) ).

% finite_surj
thf(fact_798_finite__subset__image,axiom,
    ! [B4: set_list_nat,F: list_nat > list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ B4 @ ( image_7976474329151083847st_nat @ F @ A2 ) )
       => ? [C3: set_list_nat] :
            ( ( ord_le6045566169113846134st_nat @ C3 @ A2 )
            & ( finite8100373058378681591st_nat @ C3 )
            & ( B4
              = ( image_7976474329151083847st_nat @ F @ C3 ) ) ) ) ) ).

% finite_subset_image
thf(fact_799_finite__subset__image,axiom,
    ! [B4: set_list_nat,F: nat > list_nat,A2: set_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ B4 @ ( image_nat_list_nat @ F @ A2 ) )
       => ? [C3: set_nat] :
            ( ( ord_less_eq_set_nat @ C3 @ A2 )
            & ( finite_finite_nat @ C3 )
            & ( B4
              = ( image_nat_list_nat @ F @ C3 ) ) ) ) ) ).

% finite_subset_image
thf(fact_800_finite__subset__image,axiom,
    ! [B4: set_nat,F: list_nat > nat,A2: set_list_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ B4 @ ( image_list_nat_nat @ F @ A2 ) )
       => ? [C3: set_list_nat] :
            ( ( ord_le6045566169113846134st_nat @ C3 @ A2 )
            & ( finite8100373058378681591st_nat @ C3 )
            & ( B4
              = ( image_list_nat_nat @ F @ C3 ) ) ) ) ) ).

% finite_subset_image
thf(fact_801_finite__subset__image,axiom,
    ! [B4: set_nat,F: nat > nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ B4 @ ( image_nat_nat @ F @ A2 ) )
       => ? [C3: set_nat] :
            ( ( ord_less_eq_set_nat @ C3 @ A2 )
            & ( finite_finite_nat @ C3 )
            & ( B4
              = ( image_nat_nat @ F @ C3 ) ) ) ) ) ).

% finite_subset_image
thf(fact_802_ex__finite__subset__image,axiom,
    ! [F: list_nat > list_nat,A2: set_list_nat,P: set_list_nat > $o] :
      ( ( ? [B5: set_list_nat] :
            ( ( finite8100373058378681591st_nat @ B5 )
            & ( ord_le6045566169113846134st_nat @ B5 @ ( image_7976474329151083847st_nat @ F @ A2 ) )
            & ( P @ B5 ) ) )
      = ( ? [B5: set_list_nat] :
            ( ( finite8100373058378681591st_nat @ B5 )
            & ( ord_le6045566169113846134st_nat @ B5 @ A2 )
            & ( P @ ( image_7976474329151083847st_nat @ F @ B5 ) ) ) ) ) ).

% ex_finite_subset_image
thf(fact_803_ex__finite__subset__image,axiom,
    ! [F: nat > list_nat,A2: set_nat,P: set_list_nat > $o] :
      ( ( ? [B5: set_list_nat] :
            ( ( finite8100373058378681591st_nat @ B5 )
            & ( ord_le6045566169113846134st_nat @ B5 @ ( image_nat_list_nat @ F @ A2 ) )
            & ( P @ B5 ) ) )
      = ( ? [B5: set_nat] :
            ( ( finite_finite_nat @ B5 )
            & ( ord_less_eq_set_nat @ B5 @ A2 )
            & ( P @ ( image_nat_list_nat @ F @ B5 ) ) ) ) ) ).

% ex_finite_subset_image
thf(fact_804_ex__finite__subset__image,axiom,
    ! [F: list_nat > nat,A2: set_list_nat,P: set_nat > $o] :
      ( ( ? [B5: set_nat] :
            ( ( finite_finite_nat @ B5 )
            & ( ord_less_eq_set_nat @ B5 @ ( image_list_nat_nat @ F @ A2 ) )
            & ( P @ B5 ) ) )
      = ( ? [B5: set_list_nat] :
            ( ( finite8100373058378681591st_nat @ B5 )
            & ( ord_le6045566169113846134st_nat @ B5 @ A2 )
            & ( P @ ( image_list_nat_nat @ F @ B5 ) ) ) ) ) ).

% ex_finite_subset_image
thf(fact_805_ex__finite__subset__image,axiom,
    ! [F: nat > nat,A2: set_nat,P: set_nat > $o] :
      ( ( ? [B5: set_nat] :
            ( ( finite_finite_nat @ B5 )
            & ( ord_less_eq_set_nat @ B5 @ ( image_nat_nat @ F @ A2 ) )
            & ( P @ B5 ) ) )
      = ( ? [B5: set_nat] :
            ( ( finite_finite_nat @ B5 )
            & ( ord_less_eq_set_nat @ B5 @ A2 )
            & ( P @ ( image_nat_nat @ F @ B5 ) ) ) ) ) ).

% ex_finite_subset_image
thf(fact_806_all__finite__subset__image,axiom,
    ! [F: list_nat > list_nat,A2: set_list_nat,P: set_list_nat > $o] :
      ( ( ! [B5: set_list_nat] :
            ( ( ( finite8100373058378681591st_nat @ B5 )
              & ( ord_le6045566169113846134st_nat @ B5 @ ( image_7976474329151083847st_nat @ F @ A2 ) ) )
           => ( P @ B5 ) ) )
      = ( ! [B5: set_list_nat] :
            ( ( ( finite8100373058378681591st_nat @ B5 )
              & ( ord_le6045566169113846134st_nat @ B5 @ A2 ) )
           => ( P @ ( image_7976474329151083847st_nat @ F @ B5 ) ) ) ) ) ).

% all_finite_subset_image
thf(fact_807_all__finite__subset__image,axiom,
    ! [F: nat > list_nat,A2: set_nat,P: set_list_nat > $o] :
      ( ( ! [B5: set_list_nat] :
            ( ( ( finite8100373058378681591st_nat @ B5 )
              & ( ord_le6045566169113846134st_nat @ B5 @ ( image_nat_list_nat @ F @ A2 ) ) )
           => ( P @ B5 ) ) )
      = ( ! [B5: set_nat] :
            ( ( ( finite_finite_nat @ B5 )
              & ( ord_less_eq_set_nat @ B5 @ A2 ) )
           => ( P @ ( image_nat_list_nat @ F @ B5 ) ) ) ) ) ).

% all_finite_subset_image
thf(fact_808_all__finite__subset__image,axiom,
    ! [F: list_nat > nat,A2: set_list_nat,P: set_nat > $o] :
      ( ( ! [B5: set_nat] :
            ( ( ( finite_finite_nat @ B5 )
              & ( ord_less_eq_set_nat @ B5 @ ( image_list_nat_nat @ F @ A2 ) ) )
           => ( P @ B5 ) ) )
      = ( ! [B5: set_list_nat] :
            ( ( ( finite8100373058378681591st_nat @ B5 )
              & ( ord_le6045566169113846134st_nat @ B5 @ A2 ) )
           => ( P @ ( image_list_nat_nat @ F @ B5 ) ) ) ) ) ).

% all_finite_subset_image
thf(fact_809_all__finite__subset__image,axiom,
    ! [F: nat > nat,A2: set_nat,P: set_nat > $o] :
      ( ( ! [B5: set_nat] :
            ( ( ( finite_finite_nat @ B5 )
              & ( ord_less_eq_set_nat @ B5 @ ( image_nat_nat @ F @ A2 ) ) )
           => ( P @ B5 ) ) )
      = ( ! [B5: set_nat] :
            ( ( ( finite_finite_nat @ B5 )
              & ( ord_less_eq_set_nat @ B5 @ A2 ) )
           => ( P @ ( image_nat_nat @ F @ B5 ) ) ) ) ) ).

% all_finite_subset_image
thf(fact_810_subset__Diff__insert,axiom,
    ! [A2: set_list_nat,B4: set_list_nat,X: list_nat,C2: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ A2 @ ( minus_7954133019191499631st_nat @ B4 @ ( insert_list_nat2 @ X @ C2 ) ) )
      = ( ( ord_le6045566169113846134st_nat @ A2 @ ( minus_7954133019191499631st_nat @ B4 @ C2 ) )
        & ~ ( member_list_nat @ X @ A2 ) ) ) ).

% subset_Diff_insert
thf(fact_811_subset__Diff__insert,axiom,
    ! [A2: set_nat,B4: set_nat,X: nat,C2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( minus_minus_set_nat @ B4 @ ( insert_nat2 @ X @ C2 ) ) )
      = ( ( ord_less_eq_set_nat @ A2 @ ( minus_minus_set_nat @ B4 @ C2 ) )
        & ~ ( member_nat @ X @ A2 ) ) ) ).

% subset_Diff_insert
thf(fact_812_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
            & ( P @ I3 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
            & ( P @ ( suc @ I3 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_813_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M6: nat] :
            ( N
            = ( suc @ M6 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_814_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
           => ( P @ I3 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
           => ( P @ ( suc @ I3 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_815_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M3: nat] :
          ( N
          = ( suc @ M3 ) ) ) ).

% gr0_implies_Suc
thf(fact_816_less__Suc__eq__0__disj,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( M = zero_zero_nat )
        | ? [J2: nat] :
            ( ( M
              = ( suc @ J2 ) )
            & ( ord_less_nat @ J2 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_817_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ! [I5: nat] :
                ( ( ord_less_nat @ I5 @ K2 )
               => ~ ( P @ I5 ) )
            & ( P @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_818_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_819_Suc__le__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_le_eq
thf(fact_820_dec__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ I )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P @ N3 )
                 => ( P @ ( suc @ N3 ) ) ) ) )
         => ( P @ J ) ) ) ) ).

% dec_induct
thf(fact_821_inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ J )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P @ ( suc @ N3 ) )
                 => ( P @ N3 ) ) ) )
         => ( P @ I ) ) ) ) ).

% inc_induct
thf(fact_822_Suc__le__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_le_lessD
thf(fact_823_le__less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% le_less_Suc_eq
thf(fact_824_less__Suc__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% less_Suc_eq_le
thf(fact_825_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N5: nat] : ( ord_less_eq_nat @ ( suc @ N5 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_826_le__imp__less__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% le_imp_less_Suc
thf(fact_827_strict__sorted__imp__sorted,axiom,
    ! [Xs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ Xs )
     => ( sorted_wrt_nat @ ord_less_eq_nat @ Xs ) ) ).

% strict_sorted_imp_sorted
thf(fact_828_strict__sorted__imp__sorted,axiom,
    ! [Xs: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le72135733267957522d_enat @ Xs )
     => ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs ) ) ).

% strict_sorted_imp_sorted
thf(fact_829_lessThan__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ K ) )
      = ( insert_nat2 @ K @ ( set_ord_lessThan_nat @ K ) ) ) ).

% lessThan_Suc
thf(fact_830_atMost__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_atMost_nat @ ( suc @ K ) )
      = ( insert_nat2 @ ( suc @ K ) @ ( set_ord_atMost_nat @ K ) ) ) ).

% atMost_Suc
thf(fact_831_diff__less,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).

% diff_less
thf(fact_832_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_833_Suc__diff__Suc,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( ( suc @ ( minus_minus_nat @ M @ ( suc @ N ) ) )
        = ( minus_minus_nat @ M @ N ) ) ) ).

% Suc_diff_Suc
thf(fact_834_diff__less__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C ) @ ( minus_minus_nat @ B @ C ) ) ) ) ).

% diff_less_mono
thf(fact_835_less__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M @ N ) ) ) ) ).

% less_diff_iff
thf(fact_836_strict__sorted__simps_I1_J,axiom,
    sorted_wrt_nat @ ord_less_nat @ nil_nat ).

% strict_sorted_simps(1)
thf(fact_837_finite__distinct__list,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ? [Xs2: list_nat] :
          ( ( ( set_nat2 @ Xs2 )
            = A2 )
          & ( distinct_nat @ Xs2 ) ) ) ).

% finite_distinct_list
thf(fact_838_finite__distinct__list,axiom,
    ! [A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ? [Xs2: list_list_nat] :
          ( ( ( set_list_nat2 @ Xs2 )
            = A2 )
          & ( distinct_list_nat @ Xs2 ) ) ) ).

% finite_distinct_list
thf(fact_839_strict__sorted__equal,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ Xs )
     => ( ( sorted_wrt_nat @ ord_less_nat @ Ys )
       => ( ( ( set_nat2 @ Ys )
            = ( set_nat2 @ Xs ) )
         => ( Ys = Xs ) ) ) ) ).

% strict_sorted_equal
thf(fact_840_sorted__list__of__set_Ostrict__sorted__key__list__of__set,axiom,
    ! [A2: set_nat] : ( sorted_wrt_nat @ ord_less_nat @ ( linord2614967742042102400et_nat @ A2 ) ) ).

% sorted_list_of_set.strict_sorted_key_list_of_set
thf(fact_841_sorted__wrt__upt,axiom,
    ! [M: nat,N: nat] : ( sorted_wrt_nat @ ord_less_nat @ ( upt @ M @ N ) ) ).

% sorted_wrt_upt
thf(fact_842_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I5: nat] :
                ( ( ord_less_eq_nat @ I5 @ K2 )
               => ~ ( P @ I5 ) )
            & ( P @ ( suc @ K2 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_843_diff__Suc__less,axiom,
    ! [N: nat,I: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_844_Iic__subset__Iio__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_set_nat @ ( set_ord_atMost_nat @ A ) @ ( set_ord_lessThan_nat @ B ) )
      = ( ord_less_nat @ A @ B ) ) ).

% Iic_subset_Iio_iff
thf(fact_845_strict__sorted__simps_I2_J,axiom,
    ! [X: nat,Ys: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ ( cons_nat @ X @ Ys ) )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Ys ) )
           => ( ord_less_nat @ X @ X3 ) )
        & ( sorted_wrt_nat @ ord_less_nat @ Ys ) ) ) ).

% strict_sorted_simps(2)
thf(fact_846_strict__sorted__iff,axiom,
    ! [L: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ L )
      = ( ( sorted_wrt_nat @ ord_less_eq_nat @ L )
        & ( distinct_nat @ L ) ) ) ).

% strict_sorted_iff
thf(fact_847_strict__sorted__iff,axiom,
    ! [L: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le72135733267957522d_enat @ L )
      = ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ L )
        & ( distin4523846830085650399d_enat @ L ) ) ) ).

% strict_sorted_iff
thf(fact_848_upt__conv__Cons,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( upt @ I @ J )
        = ( cons_nat @ I @ ( upt @ ( suc @ I ) @ J ) ) ) ) ).

% upt_conv_Cons
thf(fact_849_sum__list__augmentum,axiom,
    ! [Ns: list_nat] :
      ( ( member_nat @ ( groups4561878855575611511st_nat @ Ns ) @ ( set_nat2 @ ( augmentum @ Ns ) ) )
      = ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Ns ) ) ) ).

% sum_list_augmentum
thf(fact_850_pointwise__less__imp___092_060sigma_062,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( pointwise_less @ Xs @ Ys )
     => ( ord_less_nat @ ( groups4561878855575611511st_nat @ Xs ) @ ( groups4561878855575611511st_nat @ Ys ) ) ) ).

% pointwise_less_imp_\<sigma>
thf(fact_851_finite__nat__iff__bounded__le,axiom,
    ( finite_finite_nat
    = ( ^ [S3: set_nat] :
        ? [K3: nat] : ( ord_less_eq_set_nat @ S3 @ ( set_ord_atMost_nat @ K3 ) ) ) ) ).

% finite_nat_iff_bounded_le
thf(fact_852_finite__nat__bounded,axiom,
    ! [S2: set_nat] :
      ( ( finite_finite_nat @ S2 )
     => ? [K2: nat] : ( ord_less_eq_set_nat @ S2 @ ( set_ord_lessThan_nat @ K2 ) ) ) ).

% finite_nat_bounded
thf(fact_853_finite__nat__iff__bounded,axiom,
    ( finite_finite_nat
    = ( ^ [S3: set_nat] :
        ? [K3: nat] : ( ord_less_eq_set_nat @ S3 @ ( set_ord_lessThan_nat @ K3 ) ) ) ) ).

% finite_nat_iff_bounded
thf(fact_854_psubsetI,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( A2 != B4 )
       => ( ord_less_set_nat @ A2 @ B4 ) ) ) ).

% psubsetI
thf(fact_855_append__eq__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat,Us2: list_nat,Vs: list_nat] :
      ( ( ( ( size_size_list_nat @ Xs )
          = ( size_size_list_nat @ Ys ) )
        | ( ( size_size_list_nat @ Us2 )
          = ( size_size_list_nat @ Vs ) ) )
     => ( ( ( append_nat @ Xs @ Us2 )
          = ( append_nat @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us2 = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_856_length__augmentum,axiom,
    ! [Xs: list_nat] :
      ( ( size_size_list_nat @ ( augmentum @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_augmentum
thf(fact_857_length__list__incr,axiom,
    ! [I: nat,X: list_nat] :
      ( ( size_size_list_nat @ ( list_incr @ I @ X ) )
      = ( size_size_list_nat @ X ) ) ).

% length_list_incr
thf(fact_858_length__dementum,axiom,
    ! [Xs: list_nat] :
      ( ( size_size_list_nat @ ( dementum @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_dementum
thf(fact_859_length__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_nat ) ) ).

% length_0_conv
thf(fact_860_length__upt,axiom,
    ! [I: nat,J: nat] :
      ( ( size_size_list_nat @ ( upt @ I @ J ) )
      = ( minus_minus_nat @ J @ I ) ) ).

% length_upt
thf(fact_861_length__greater__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) )
      = ( Xs != nil_nat ) ) ).

% length_greater_0_conv
thf(fact_862_sum__list__incr,axiom,
    ! [I: nat,X: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ X ) )
     => ( ( groups4561878855575611511st_nat @ ( list_incr @ I @ X ) )
        = ( suc @ ( groups4561878855575611511st_nat @ X ) ) ) ) ).

% sum_list_incr
thf(fact_863_length__induct,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ! [Xs2: list_nat] :
          ( ! [Ys7: list_nat] :
              ( ( ord_less_nat @ ( size_size_list_nat @ Ys7 ) @ ( size_size_list_nat @ Xs2 ) )
             => ( P @ Ys7 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_864_finite__maxlen,axiom,
    ! [M2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ M2 )
     => ? [N3: nat] :
        ! [X4: list_nat] :
          ( ( member_list_nat @ X4 @ M2 )
         => ( ord_less_nat @ ( size_size_list_nat @ X4 ) @ N3 ) ) ) ).

% finite_maxlen
thf(fact_865_psubsetD,axiom,
    ! [A2: set_nat,B4: set_nat,C: nat] :
      ( ( ord_less_set_nat @ A2 @ B4 )
     => ( ( member_nat @ C @ A2 )
       => ( member_nat @ C @ B4 ) ) ) ).

% psubsetD
thf(fact_866_psubsetD,axiom,
    ! [A2: set_list_nat,B4: set_list_nat,C: list_nat] :
      ( ( ord_le1190675801316882794st_nat @ A2 @ B4 )
     => ( ( member_list_nat @ C @ A2 )
       => ( member_list_nat @ C @ B4 ) ) ) ).

% psubsetD
thf(fact_867_size__neq__size__imp__neq,axiom,
    ! [X: list_nat,Y: list_nat] :
      ( ( ( size_size_list_nat @ X )
       != ( size_size_list_nat @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_868_size__neq__size__imp__neq,axiom,
    ! [X: char,Y: char] :
      ( ( ( size_size_char @ X )
       != ( size_size_char @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_869_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_nat] :
      ( ( size_size_list_nat @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_870_neq__if__length__neq,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
       != ( size_size_list_nat @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_871_subset__iff__psubset__eq,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A5: set_nat,B5: set_nat] :
          ( ( ord_less_set_nat @ A5 @ B5 )
          | ( A5 = B5 ) ) ) ) ).

% subset_iff_psubset_eq
thf(fact_872_subset__psubset__trans,axiom,
    ! [A2: set_nat,B4: set_nat,C2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ( ord_less_set_nat @ B4 @ C2 )
       => ( ord_less_set_nat @ A2 @ C2 ) ) ) ).

% subset_psubset_trans
thf(fact_873_subset__not__subset__eq,axiom,
    ( ord_less_set_nat
    = ( ^ [A5: set_nat,B5: set_nat] :
          ( ( ord_less_eq_set_nat @ A5 @ B5 )
          & ~ ( ord_less_eq_set_nat @ B5 @ A5 ) ) ) ) ).

% subset_not_subset_eq
thf(fact_874_psubset__subset__trans,axiom,
    ! [A2: set_nat,B4: set_nat,C2: set_nat] :
      ( ( ord_less_set_nat @ A2 @ B4 )
     => ( ( ord_less_eq_set_nat @ B4 @ C2 )
       => ( ord_less_set_nat @ A2 @ C2 ) ) ) ).

% psubset_subset_trans
thf(fact_875_psubset__imp__subset,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_set_nat @ A2 @ B4 )
     => ( ord_less_eq_set_nat @ A2 @ B4 ) ) ).

% psubset_imp_subset
thf(fact_876_psubset__eq,axiom,
    ( ord_less_set_nat
    = ( ^ [A5: set_nat,B5: set_nat] :
          ( ( ord_less_eq_set_nat @ A5 @ B5 )
          & ( A5 != B5 ) ) ) ) ).

% psubset_eq
thf(fact_877_psubsetE,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_set_nat @ A2 @ B4 )
     => ~ ( ( ord_less_eq_set_nat @ A2 @ B4 )
         => ( ord_less_eq_set_nat @ B4 @ A2 ) ) ) ).

% psubsetE
thf(fact_878_not__less__Nil,axiom,
    ! [X: list_nat] :
      ~ ( ord_less_list_nat @ X @ nil_nat ) ).

% not_less_Nil
thf(fact_879_psubset__imp__ex__mem,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_set_nat @ A2 @ B4 )
     => ? [B3: nat] : ( member_nat @ B3 @ ( minus_minus_set_nat @ B4 @ A2 ) ) ) ).

% psubset_imp_ex_mem
thf(fact_880_psubset__imp__ex__mem,axiom,
    ! [A2: set_list_nat,B4: set_list_nat] :
      ( ( ord_le1190675801316882794st_nat @ A2 @ B4 )
     => ? [B3: list_nat] : ( member_list_nat @ B3 @ ( minus_7954133019191499631st_nat @ B4 @ A2 ) ) ) ).

% psubset_imp_ex_mem
thf(fact_881_in__set__product__lists__length,axiom,
    ! [Xs: list_nat,Xss2: list_list_nat] :
      ( ( member_list_nat @ Xs @ ( set_list_nat2 @ ( product_lists_nat @ Xss2 ) ) )
     => ( ( size_size_list_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Xss2 ) ) ) ).

% in_set_product_lists_length
thf(fact_882_pointwise__less__Nil,axiom,
    ! [X: list_nat] :
      ~ ( pointwise_less @ nil_nat @ X ) ).

% pointwise_less_Nil
thf(fact_883_pointwise__less__Nil2,axiom,
    ! [X: list_nat] :
      ~ ( pointwise_less @ X @ nil_nat ) ).

% pointwise_less_Nil2
thf(fact_884_pointwise__le__iff__less__equal,axiom,
    ( pointwise_le
    = ( ^ [X3: list_nat,Y3: list_nat] :
          ( ( pointwise_less @ X3 @ Y3 )
          | ( X3 = Y3 ) ) ) ) ).

% pointwise_le_iff_less_equal
thf(fact_885_pointwise__less__def,axiom,
    ( pointwise_less
    = ( ^ [X3: list_nat,Y3: list_nat] :
          ( ( pointwise_le @ X3 @ Y3 )
          & ( X3 != Y3 ) ) ) ) ).

% pointwise_less_def
thf(fact_886_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( suc @ N )
        = ( size_size_list_nat @ Xs ) )
      = ( ? [Y3: nat,Ys3: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y3 @ Ys3 ) )
            & ( ( size_size_list_nat @ Ys3 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_887_length__Suc__conv,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( suc @ N ) )
      = ( ? [Y3: nat,Ys3: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y3 @ Ys3 ) )
            & ( ( size_size_list_nat @ Ys3 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_888_list_Osize_I3_J,axiom,
    ( ( size_size_list_nat @ nil_nat )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_889_impossible__Cons,axiom,
    ! [Xs: list_nat,Ys: list_nat,X: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ ( size_size_list_nat @ Ys ) )
     => ( Xs
       != ( cons_nat @ X @ Ys ) ) ) ).

% impossible_Cons
thf(fact_890_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_nat,P: list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P @ nil_nat @ nil_nat )
       => ( ! [X2: nat,Xs2: list_nat,Y2: nat,Ys2: list_nat] :
              ( ( ( size_size_list_nat @ Xs2 )
                = ( size_size_list_nat @ Ys2 ) )
             => ( ( P @ Xs2 @ Ys2 )
               => ( P @ ( cons_nat @ X2 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_891_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,P: list_nat > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_nat @ nil_nat @ nil_nat )
         => ( ! [X2: nat,Xs2: list_nat,Y2: nat,Ys2: list_nat,Z3: nat,Zs3: list_nat] :
                ( ( ( size_size_list_nat @ Xs2 )
                  = ( size_size_list_nat @ Ys2 ) )
               => ( ( ( size_size_list_nat @ Ys2 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys2 @ Zs3 )
                   => ( P @ ( cons_nat @ X2 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_892_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ws: list_nat,P: list_nat > list_nat > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_nat @ nil_nat )
           => ( ! [X2: nat,Xs2: list_nat,Y2: nat,Ys2: list_nat,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_nat @ Ys2 ) )
                 => ( ( ( size_size_list_nat @ Ys2 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_893_Nil__less__Cons,axiom,
    ! [A: nat,X: list_nat] : ( ord_less_list_nat @ nil_nat @ ( cons_nat @ A @ X ) ) ).

% Nil_less_Cons
thf(fact_894_nths__all,axiom,
    ! [Xs: list_nat,I2: set_nat] :
      ( ! [I4: nat] :
          ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
         => ( member_nat @ I4 @ I2 ) )
     => ( ( nths_nat @ Xs @ I2 )
        = Xs ) ) ).

% nths_all
thf(fact_895_length__code,axiom,
    ( size_size_list_nat
    = ( gen_length_nat @ zero_zero_nat ) ) ).

% length_code
thf(fact_896_length__n__lists__elem,axiom,
    ! [Ys: list_nat,N: nat,Xs: list_nat] :
      ( ( member_list_nat @ Ys @ ( set_list_nat2 @ ( n_lists_nat @ N @ Xs ) ) )
     => ( ( size_size_list_nat @ Ys )
        = N ) ) ).

% length_n_lists_elem
thf(fact_897_Cons__less__Cons,axiom,
    ! [A: nat,X: list_nat,B: nat,Y: list_nat] :
      ( ( ord_less_list_nat @ ( cons_nat @ A @ X ) @ ( cons_nat @ B @ Y ) )
      = ( ( ord_less_nat @ ( size_size_list_nat @ X ) @ ( size_size_list_nat @ Y ) )
        | ( ( ( size_size_list_nat @ X )
            = ( size_size_list_nat @ Y ) )
          & ( ( ord_less_nat @ A @ B )
            | ( ( A = B )
              & ( ord_less_list_nat @ X @ Y ) ) ) ) ) ) ).

% Cons_less_Cons
thf(fact_898_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_size_list_nat @ Xs ) )
      = ( ? [X3: nat,Ys3: list_nat] :
            ( ( Xs
              = ( cons_nat @ X3 @ Ys3 ) )
            & ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Ys3 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_899_length__pos__if__in__set,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_900_length__pos__if__in__set,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_901_same__length__different,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs != Ys )
     => ( ( ( size_size_list_nat @ Xs )
          = ( size_size_list_nat @ Ys ) )
       => ? [Pre: list_nat,X2: nat,Xs3: list_nat,Y2: nat,Ys5: list_nat] :
            ( ( X2 != Y2 )
            & ( Xs
              = ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ X2 @ nil_nat ) @ Xs3 ) ) )
            & ( Ys
              = ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ Y2 @ nil_nat ) @ Ys5 ) ) ) ) ) ) ).

% same_length_different
thf(fact_902_infinite__nat__iff__unbounded__le,axiom,
    ! [S2: set_nat] :
      ( ( ~ ( finite_finite_nat @ S2 ) )
      = ( ! [M6: nat] :
          ? [N5: nat] :
            ( ( ord_less_eq_nat @ M6 @ N5 )
            & ( member_nat @ N5 @ S2 ) ) ) ) ).

% infinite_nat_iff_unbounded_le
thf(fact_903_length__Suc__conv__rev,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( suc @ N ) )
      = ( ? [Y3: nat,Ys3: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ Y3 @ nil_nat ) ) )
            & ( ( size_size_list_nat @ Ys3 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_904_Cons__le__Cons,axiom,
    ! [A: nat,X: list_nat,B: nat,Y: list_nat] :
      ( ( ord_less_eq_list_nat @ ( cons_nat @ A @ X ) @ ( cons_nat @ B @ Y ) )
      = ( ( ord_less_nat @ ( size_size_list_nat @ X ) @ ( size_size_list_nat @ Y ) )
        | ( ( ( size_size_list_nat @ X )
            = ( size_size_list_nat @ Y ) )
          & ( ( ord_less_nat @ A @ B )
            | ( ( A = B )
              & ( ord_less_eq_list_nat @ X @ Y ) ) ) ) ) ) ).

% Cons_le_Cons
thf(fact_905_minimal__elementsp_Osimps,axiom,
    ( minimal_elementsp
    = ( ^ [U2: list_nat > $o,A3: list_nat] :
        ? [X3: list_nat] :
          ( ( A3 = X3 )
          & ( U2 @ X3 )
          & ! [Y3: list_nat] :
              ( ( U2 @ Y3 )
             => ~ ( pointwise_less @ Y3 @ X3 ) ) ) ) ) ).

% minimal_elementsp.simps
thf(fact_906_minimal__elementsp_Ointros,axiom,
    ! [U3: list_nat > $o,X: list_nat] :
      ( ( U3 @ X )
     => ( ! [Y2: list_nat] :
            ( ( U3 @ Y2 )
           => ~ ( pointwise_less @ Y2 @ X ) )
       => ( minimal_elementsp @ U3 @ X ) ) ) ).

% minimal_elementsp.intros
thf(fact_907_minimal__elementsp_Ocases,axiom,
    ! [U3: list_nat > $o,A: list_nat] :
      ( ( minimal_elementsp @ U3 @ A )
     => ~ ( ( U3 @ A )
         => ~ ! [Y5: list_nat] :
                ( ( U3 @ Y5 )
               => ~ ( pointwise_less @ Y5 @ A ) ) ) ) ).

% minimal_elementsp.cases
thf(fact_908_minimal__elements_Ocases,axiom,
    ! [A: list_nat,U3: set_list_nat] :
      ( ( member_list_nat @ A @ ( minimal_elements @ U3 ) )
     => ~ ( ( member_list_nat @ A @ U3 )
         => ~ ! [Y5: list_nat] :
                ( ( member_list_nat @ Y5 @ U3 )
               => ~ ( pointwise_less @ Y5 @ A ) ) ) ) ).

% minimal_elements.cases
thf(fact_909_minimal__elements_Ointros,axiom,
    ! [X: list_nat,U3: set_list_nat] :
      ( ( member_list_nat @ X @ U3 )
     => ( ! [Y2: list_nat] :
            ( ( member_list_nat @ Y2 @ U3 )
           => ~ ( pointwise_less @ Y2 @ X ) )
       => ( member_list_nat @ X @ ( minimal_elements @ U3 ) ) ) ) ).

% minimal_elements.intros
thf(fact_910_minimal__elements__set__tuples__finite,axiom,
    ! [U3: set_list_nat,R2: nat] :
      ( ! [X2: list_nat] :
          ( ( member_list_nat @ X2 @ U3 )
         => ( ( size_size_list_nat @ X2 )
            = R2 ) )
     => ( finite8100373058378681591st_nat @ ( minimal_elements @ U3 ) ) ) ).

% minimal_elements_set_tuples_finite
thf(fact_911_minimal__elements_Osimps,axiom,
    ! [A: list_nat,U3: set_list_nat] :
      ( ( member_list_nat @ A @ ( minimal_elements @ U3 ) )
      = ( ? [X3: list_nat] :
            ( ( A = X3 )
            & ( member_list_nat @ X3 @ U3 )
            & ! [Y3: list_nat] :
                ( ( member_list_nat @ Y3 @ U3 )
               => ~ ( pointwise_less @ Y3 @ X3 ) ) ) ) ) ).

% minimal_elements.simps
thf(fact_912_length__append__singleton,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( size_size_list_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) )
      = ( suc @ ( size_size_list_nat @ Xs ) ) ) ).

% length_append_singleton
thf(fact_913_length__Cons,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( size_size_list_nat @ ( cons_nat @ X @ Xs ) )
      = ( suc @ ( size_size_list_nat @ Xs ) ) ) ).

% length_Cons
thf(fact_914_size__char__eq__0,axiom,
    ( size_size_char
    = ( ^ [C5: char] : zero_zero_nat ) ) ).

% size_char_eq_0
thf(fact_915_size_H__char__eq__0,axiom,
    ( size_char
    = ( ^ [C5: char] : zero_zero_nat ) ) ).

% size'_char_eq_0
thf(fact_916_min__pointwise__le,axiom,
    ! [U: list_nat,U3: set_list_nat] :
      ( ( member_list_nat @ U @ U3 )
     => ( ( finite8100373058378681591st_nat @ U3 )
       => ( pointwise_le @ ( min_pointwise @ ( size_size_list_nat @ U ) @ U3 ) @ U ) ) ) ).

% min_pointwise_le
thf(fact_917_max__pointwise__ge,axiom,
    ! [U: list_nat,U3: set_list_nat] :
      ( ( member_list_nat @ U @ U3 )
     => ( ( finite8100373058378681591st_nat @ U3 )
       => ( pointwise_le @ U @ ( max_pointwise @ ( size_size_list_nat @ U ) @ U3 ) ) ) ) ).

% max_pointwise_ge
thf(fact_918_finite__length__sum__set,axiom,
    ! [R2: nat,N: nat] : ( finite8100373058378681591st_nat @ ( length_sum_set @ R2 @ N ) ) ).

% finite_length_sum_set
thf(fact_919_image__Fpow__mono,axiom,
    ! [F: nat > nat,A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B4 )
     => ( ord_le6893508408891458716et_nat @ ( image_7916887816326733075et_nat @ ( image_nat_nat @ F ) @ ( finite_Fpow_nat @ A2 ) ) @ ( finite_Fpow_nat @ B4 ) ) ) ).

% image_Fpow_mono
thf(fact_920_Fpow__mono,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B4 )
     => ( ord_le6893508408891458716et_nat @ ( finite_Fpow_nat @ A2 ) @ ( finite_Fpow_nat @ B4 ) ) ) ).

% Fpow_mono
thf(fact_921_SuccI,axiom,
    ! [Kl: list_list_nat,K: list_nat,Kl2: set_list_list_nat] :
      ( ( member_list_list_nat @ ( append_list_nat @ Kl @ ( cons_list_nat @ K @ nil_list_nat ) ) @ Kl2 )
     => ( member_list_nat @ K @ ( bNF_Gr3053708287304744325st_nat @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_922_SuccI,axiom,
    ! [Kl: list_nat,K: nat,Kl2: set_list_nat] :
      ( ( member_list_nat @ ( append_nat @ Kl @ ( cons_nat @ K @ nil_nat ) ) @ Kl2 )
     => ( member_nat @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_923_SuccD,axiom,
    ! [K: list_nat,Kl2: set_list_list_nat,Kl: list_list_nat] :
      ( ( member_list_nat @ K @ ( bNF_Gr3053708287304744325st_nat @ Kl2 @ Kl ) )
     => ( member_list_list_nat @ ( append_list_nat @ Kl @ ( cons_list_nat @ K @ nil_list_nat ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_924_SuccD,axiom,
    ! [K: nat,Kl2: set_list_nat,Kl: list_nat] :
      ( ( member_nat @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ Kl ) )
     => ( member_list_nat @ ( append_nat @ Kl @ ( cons_nat @ K @ nil_nat ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_925_WFP,axiom,
    wfP_list_nat @ pointwise_less ).

% WFP
thf(fact_926_empty__Shift,axiom,
    ! [Kl2: set_list_list_nat,K: list_nat] :
      ( ( member_list_list_nat @ nil_list_nat @ Kl2 )
     => ( ( member_list_nat @ K @ ( bNF_Gr3053708287304744325st_nat @ Kl2 @ nil_list_nat ) )
       => ( member_list_list_nat @ nil_list_nat @ ( bNF_Gr9051742241863529473st_nat @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_927_empty__Shift,axiom,
    ! [Kl2: set_list_nat,K: nat] :
      ( ( member_list_nat @ nil_nat @ Kl2 )
     => ( ( member_nat @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ nil_nat ) )
       => ( member_list_nat @ nil_nat @ ( bNF_Gr1872714664788909425ft_nat @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_928_Succ__Shift,axiom,
    ! [Kl2: set_list_nat,K: nat,Kl: list_nat] :
      ( ( bNF_Gr6352880689984616693cc_nat @ ( bNF_Gr1872714664788909425ft_nat @ Kl2 @ K ) @ Kl )
      = ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ ( cons_nat @ K @ Kl ) ) ) ).

% Succ_Shift
thf(fact_929_upt__rec__numeral,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
       => ( ( upt @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
          = ( cons_nat @ ( numeral_numeral_nat @ M ) @ ( upt @ ( suc @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_nat @ N ) ) ) ) )
      & ( ~ ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
       => ( ( upt @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
          = nil_nat ) ) ) ).

% upt_rec_numeral
thf(fact_930_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_nat @ M )
        = ( numeral_numeral_nat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_931_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numera1916890842035813515d_enat @ M )
        = ( numera1916890842035813515d_enat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_932_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_933_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le2932123472753598470d_enat @ ( numera1916890842035813515d_enat @ M ) @ ( numera1916890842035813515d_enat @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_934_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_935_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le72135733267957522d_enat @ ( numera1916890842035813515d_enat @ M ) @ ( numera1916890842035813515d_enat @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_936_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_nat
     != ( numeral_numeral_nat @ N ) ) ).

% zero_neq_numeral
thf(fact_937_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_z5237406670263579293d_enat
     != ( numera1916890842035813515d_enat @ N ) ) ).

% zero_neq_numeral
thf(fact_938_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_less_numeral
thf(fact_939_zero__less__numeral,axiom,
    ! [N: num] : ( ord_le72135733267957522d_enat @ zero_z5237406670263579293d_enat @ ( numera1916890842035813515d_enat @ N ) ) ).

% zero_less_numeral
thf(fact_940_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_less_zero
thf(fact_941_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_le72135733267957522d_enat @ ( numera1916890842035813515d_enat @ N ) @ zero_z5237406670263579293d_enat ) ).

% not_numeral_less_zero
thf(fact_942_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_le_numeral
thf(fact_943_zero__le__numeral,axiom,
    ! [N: num] : ( ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ ( numera1916890842035813515d_enat @ N ) ) ).

% zero_le_numeral
thf(fact_944_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_le_zero
thf(fact_945_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_le2932123472753598470d_enat @ ( numera1916890842035813515d_enat @ N ) @ zero_z5237406670263579293d_enat ) ).

% not_numeral_le_zero
thf(fact_946_ShiftD,axiom,
    ! [Kl: list_nat,Kl2: set_list_nat,K: nat] :
      ( ( member_list_nat @ Kl @ ( bNF_Gr1872714664788909425ft_nat @ Kl2 @ K ) )
     => ( member_list_nat @ ( cons_nat @ K @ Kl ) @ Kl2 ) ) ).

% ShiftD
thf(fact_947_nat__descend__induct,axiom,
    ! [N: nat,P: nat > $o,M: nat] :
      ( ! [K2: nat] :
          ( ( ord_less_nat @ N @ K2 )
         => ( P @ K2 ) )
     => ( ! [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
           => ( ! [I5: nat] :
                  ( ( ord_less_nat @ K2 @ I5 )
                 => ( P @ I5 ) )
             => ( P @ K2 ) ) )
       => ( P @ M ) ) ) ).

% nat_descend_induct
thf(fact_948_insert__subsetI,axiom,
    ! [X: list_nat,A2: set_list_nat,X5: set_list_nat] :
      ( ( member_list_nat @ X @ A2 )
     => ( ( ord_le6045566169113846134st_nat @ X5 @ A2 )
       => ( ord_le6045566169113846134st_nat @ ( insert_list_nat2 @ X @ X5 ) @ A2 ) ) ) ).

% insert_subsetI
thf(fact_949_insert__subsetI,axiom,
    ! [X: nat,A2: set_nat,X5: set_nat] :
      ( ( member_nat @ X @ A2 )
     => ( ( ord_less_eq_set_nat @ X5 @ A2 )
       => ( ord_less_eq_set_nat @ ( insert_nat2 @ X @ X5 ) @ A2 ) ) ) ).

% insert_subsetI
thf(fact_950_enat__ord__number_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_le2932123472753598470d_enat @ ( numera1916890842035813515d_enat @ M ) @ ( numera1916890842035813515d_enat @ N ) )
      = ( ord_less_eq_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) ) ) ).

% enat_ord_number(1)
thf(fact_951_finite__indexed__bound,axiom,
    ! [A2: set_nat,P: nat > nat > $o] :
      ( ( finite_finite_nat @ A2 )
     => ( ! [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
           => ? [X_1: nat] : ( P @ X2 @ X_1 ) )
       => ? [M3: nat] :
          ! [X4: nat] :
            ( ( member_nat @ X4 @ A2 )
           => ? [K2: nat] :
                ( ( ord_less_eq_nat @ K2 @ M3 )
                & ( P @ X4 @ K2 ) ) ) ) ) ).

% finite_indexed_bound
thf(fact_952_finite__indexed__bound,axiom,
    ! [A2: set_list_nat,P: list_nat > nat > $o] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ! [X2: list_nat] :
            ( ( member_list_nat @ X2 @ A2 )
           => ? [X_1: nat] : ( P @ X2 @ X_1 ) )
       => ? [M3: nat] :
          ! [X4: list_nat] :
            ( ( member_list_nat @ X4 @ A2 )
           => ? [K2: nat] :
                ( ( ord_less_eq_nat @ K2 @ M3 )
                & ( P @ X4 @ K2 ) ) ) ) ) ).

% finite_indexed_bound
thf(fact_953_finite__indexed__bound,axiom,
    ! [A2: set_nat,P: nat > extended_enat > $o] :
      ( ( finite_finite_nat @ A2 )
     => ( ! [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
           => ? [X_1: extended_enat] : ( P @ X2 @ X_1 ) )
       => ? [M3: extended_enat] :
          ! [X4: nat] :
            ( ( member_nat @ X4 @ A2 )
           => ? [K2: extended_enat] :
                ( ( ord_le2932123472753598470d_enat @ K2 @ M3 )
                & ( P @ X4 @ K2 ) ) ) ) ) ).

% finite_indexed_bound
thf(fact_954_finite__indexed__bound,axiom,
    ! [A2: set_list_nat,P: list_nat > extended_enat > $o] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ! [X2: list_nat] :
            ( ( member_list_nat @ X2 @ A2 )
           => ? [X_1: extended_enat] : ( P @ X2 @ X_1 ) )
       => ? [M3: extended_enat] :
          ! [X4: list_nat] :
            ( ( member_list_nat @ X4 @ A2 )
           => ? [K2: extended_enat] :
                ( ( ord_le2932123472753598470d_enat @ K2 @ M3 )
                & ( P @ X4 @ K2 ) ) ) ) ) ).

% finite_indexed_bound
thf(fact_955_minf_I8_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ~ ( ord_less_eq_nat @ T2 @ X4 ) ) ).

% minf(8)
thf(fact_956_minf_I8_J,axiom,
    ! [T2: extended_enat] :
    ? [Z3: extended_enat] :
    ! [X4: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ X4 @ Z3 )
     => ~ ( ord_le2932123472753598470d_enat @ T2 @ X4 ) ) ).

% minf(8)
thf(fact_957_minf_I6_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( ord_less_eq_nat @ X4 @ T2 ) ) ).

% minf(6)
thf(fact_958_minf_I6_J,axiom,
    ! [T2: extended_enat] :
    ? [Z3: extended_enat] :
    ! [X4: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ X4 @ Z3 )
     => ( ord_le2932123472753598470d_enat @ X4 @ T2 ) ) ).

% minf(6)
thf(fact_959_pinf_I8_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ( ord_less_eq_nat @ T2 @ X4 ) ) ).

% pinf(8)
thf(fact_960_pinf_I8_J,axiom,
    ! [T2: extended_enat] :
    ? [Z3: extended_enat] :
    ! [X4: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ Z3 @ X4 )
     => ( ord_le2932123472753598470d_enat @ T2 @ X4 ) ) ).

% pinf(8)
thf(fact_961_pinf_I6_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ~ ( ord_less_eq_nat @ X4 @ T2 ) ) ).

% pinf(6)
thf(fact_962_pinf_I6_J,axiom,
    ! [T2: extended_enat] :
    ? [Z3: extended_enat] :
    ! [X4: extended_enat] :
      ( ( ord_le72135733267957522d_enat @ Z3 @ X4 )
     => ~ ( ord_le2932123472753598470d_enat @ X4 @ T2 ) ) ).

% pinf(6)
thf(fact_963_complete__interval,axiom,
    ! [A: nat,B: nat,P: nat > $o] :
      ( ( ord_less_nat @ A @ B )
     => ( ( P @ A )
       => ( ~ ( P @ B )
         => ? [C6: nat] :
              ( ( ord_less_eq_nat @ A @ C6 )
              & ( ord_less_eq_nat @ C6 @ B )
              & ! [X4: nat] :
                  ( ( ( ord_less_eq_nat @ A @ X4 )
                    & ( ord_less_nat @ X4 @ C6 ) )
                 => ( P @ X4 ) )
              & ! [D3: nat] :
                  ( ! [X2: nat] :
                      ( ( ( ord_less_eq_nat @ A @ X2 )
                        & ( ord_less_nat @ X2 @ D3 ) )
                     => ( P @ X2 ) )
                 => ( ord_less_eq_nat @ D3 @ C6 ) ) ) ) ) ) ).

% complete_interval
thf(fact_964_complete__interval,axiom,
    ! [A: extended_enat,B: extended_enat,P: extended_enat > $o] :
      ( ( ord_le72135733267957522d_enat @ A @ B )
     => ( ( P @ A )
       => ( ~ ( P @ B )
         => ? [C6: extended_enat] :
              ( ( ord_le2932123472753598470d_enat @ A @ C6 )
              & ( ord_le2932123472753598470d_enat @ C6 @ B )
              & ! [X4: extended_enat] :
                  ( ( ( ord_le2932123472753598470d_enat @ A @ X4 )
                    & ( ord_le72135733267957522d_enat @ X4 @ C6 ) )
                 => ( P @ X4 ) )
              & ! [D3: extended_enat] :
                  ( ! [X2: extended_enat] :
                      ( ( ( ord_le2932123472753598470d_enat @ A @ X2 )
                        & ( ord_le72135733267957522d_enat @ X2 @ D3 ) )
                     => ( P @ X2 ) )
                 => ( ord_le2932123472753598470d_enat @ D3 @ C6 ) ) ) ) ) ) ).

% complete_interval
thf(fact_965_verit__comp__simplify1_I3_J,axiom,
    ! [B7: nat,A6: nat] :
      ( ( ~ ( ord_less_eq_nat @ B7 @ A6 ) )
      = ( ord_less_nat @ A6 @ B7 ) ) ).

% verit_comp_simplify1(3)
thf(fact_966_verit__comp__simplify1_I3_J,axiom,
    ! [B7: extended_enat,A6: extended_enat] :
      ( ( ~ ( ord_le2932123472753598470d_enat @ B7 @ A6 ) )
      = ( ord_le72135733267957522d_enat @ A6 @ B7 ) ) ).

% verit_comp_simplify1(3)
thf(fact_967_sorted__list__of__set_Osorted__key__list__of__set__unique,axiom,
    ! [A2: set_list_nat,L: list_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( ( sorted_wrt_list_nat @ ord_less_list_nat @ L )
          & ( ( set_list_nat2 @ L )
            = A2 )
          & ( ( size_s3023201423986296836st_nat @ L )
            = ( finite_card_list_nat @ A2 ) ) )
        = ( ( linord2712301520579796368st_nat @ A2 )
          = L ) ) ) ).

% sorted_list_of_set.sorted_key_list_of_set_unique
thf(fact_968_sorted__list__of__set_Osorted__key__list__of__set__unique,axiom,
    ! [A2: set_nat,L: list_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ( sorted_wrt_nat @ ord_less_nat @ L )
          & ( ( set_nat2 @ L )
            = A2 )
          & ( ( size_size_list_nat @ L )
            = ( finite_card_nat @ A2 ) ) )
        = ( ( linord2614967742042102400et_nat @ A2 )
          = L ) ) ) ).

% sorted_list_of_set.sorted_key_list_of_set_unique
thf(fact_969_card__lessThan,axiom,
    ! [U: nat] :
      ( ( finite_card_nat @ ( set_ord_lessThan_nat @ U ) )
      = U ) ).

% card_lessThan
thf(fact_970_card__atMost,axiom,
    ! [U: nat] :
      ( ( finite_card_nat @ ( set_ord_atMost_nat @ U ) )
      = ( suc @ U ) ) ).

% card_atMost
thf(fact_971_card__greaterThanAtMost,axiom,
    ! [L: nat,U: nat] :
      ( ( finite_card_nat @ ( set_or6659071591806873216st_nat @ L @ U ) )
      = ( minus_minus_nat @ U @ L ) ) ).

% card_greaterThanAtMost
thf(fact_972_card_Oinfinite,axiom,
    ! [A2: set_nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ( ( finite_card_nat @ A2 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_973_card_Oinfinite,axiom,
    ! [A2: set_list_nat] :
      ( ~ ( finite8100373058378681591st_nat @ A2 )
     => ( ( finite_card_list_nat @ A2 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_974_sorted__list__of__set_Olength__sorted__key__list__of__set,axiom,
    ! [A2: set_nat] :
      ( ( size_size_list_nat @ ( linord2614967742042102400et_nat @ A2 ) )
      = ( finite_card_nat @ A2 ) ) ).

% sorted_list_of_set.length_sorted_key_list_of_set
thf(fact_975_card__insert__le,axiom,
    ! [A2: set_list_nat,X: list_nat] : ( ord_less_eq_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ ( insert_list_nat2 @ X @ A2 ) ) ) ).

% card_insert_le
thf(fact_976_card__insert__le,axiom,
    ! [A2: set_nat,X: nat] : ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ ( insert_nat2 @ X @ A2 ) ) ) ).

% card_insert_le
thf(fact_977_card__le__if__inj__on__rel,axiom,
    ! [B4: set_nat,A2: set_list_nat,R2: list_nat > nat > $o] :
      ( ( finite_finite_nat @ B4 )
     => ( ! [A4: list_nat] :
            ( ( member_list_nat @ A4 @ A2 )
           => ? [B8: nat] :
                ( ( member_nat @ B8 @ B4 )
                & ( R2 @ A4 @ B8 ) ) )
       => ( ! [A1: list_nat,A22: list_nat,B3: nat] :
              ( ( member_list_nat @ A1 @ A2 )
             => ( ( member_list_nat @ A22 @ A2 )
               => ( ( member_nat @ B3 @ B4 )
                 => ( ( R2 @ A1 @ B3 )
                   => ( ( R2 @ A22 @ B3 )
                     => ( A1 = A22 ) ) ) ) ) )
         => ( ord_less_eq_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_nat @ B4 ) ) ) ) ) ).

% card_le_if_inj_on_rel
thf(fact_978_card__le__if__inj__on__rel,axiom,
    ! [B4: set_nat,A2: set_nat,R2: nat > nat > $o] :
      ( ( finite_finite_nat @ B4 )
     => ( ! [A4: nat] :
            ( ( member_nat @ A4 @ A2 )
           => ? [B8: nat] :
                ( ( member_nat @ B8 @ B4 )
                & ( R2 @ A4 @ B8 ) ) )
       => ( ! [A1: nat,A22: nat,B3: nat] :
              ( ( member_nat @ A1 @ A2 )
             => ( ( member_nat @ A22 @ A2 )
               => ( ( member_nat @ B3 @ B4 )
                 => ( ( R2 @ A1 @ B3 )
                   => ( ( R2 @ A22 @ B3 )
                     => ( A1 = A22 ) ) ) ) ) )
         => ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B4 ) ) ) ) ) ).

% card_le_if_inj_on_rel
thf(fact_979_card__le__if__inj__on__rel,axiom,
    ! [B4: set_list_nat,A2: set_list_nat,R2: list_nat > list_nat > $o] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ! [A4: list_nat] :
            ( ( member_list_nat @ A4 @ A2 )
           => ? [B8: list_nat] :
                ( ( member_list_nat @ B8 @ B4 )
                & ( R2 @ A4 @ B8 ) ) )
       => ( ! [A1: list_nat,A22: list_nat,B3: list_nat] :
              ( ( member_list_nat @ A1 @ A2 )
             => ( ( member_list_nat @ A22 @ A2 )
               => ( ( member_list_nat @ B3 @ B4 )
                 => ( ( R2 @ A1 @ B3 )
                   => ( ( R2 @ A22 @ B3 )
                     => ( A1 = A22 ) ) ) ) ) )
         => ( ord_less_eq_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) ) ) ) ) ).

% card_le_if_inj_on_rel
thf(fact_980_card__le__if__inj__on__rel,axiom,
    ! [B4: set_list_nat,A2: set_nat,R2: nat > list_nat > $o] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ! [A4: nat] :
            ( ( member_nat @ A4 @ A2 )
           => ? [B8: list_nat] :
                ( ( member_list_nat @ B8 @ B4 )
                & ( R2 @ A4 @ B8 ) ) )
       => ( ! [A1: nat,A22: nat,B3: list_nat] :
              ( ( member_nat @ A1 @ A2 )
             => ( ( member_nat @ A22 @ A2 )
               => ( ( member_list_nat @ B3 @ B4 )
                 => ( ( R2 @ A1 @ B3 )
                   => ( ( R2 @ A22 @ B3 )
                     => ( A1 = A22 ) ) ) ) ) )
         => ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) ) ) ) ) ).

% card_le_if_inj_on_rel
thf(fact_981_infinite__arbitrarily__large,axiom,
    ! [A2: set_list_nat,N: nat] :
      ( ~ ( finite8100373058378681591st_nat @ A2 )
     => ? [B6: set_list_nat] :
          ( ( finite8100373058378681591st_nat @ B6 )
          & ( ( finite_card_list_nat @ B6 )
            = N )
          & ( ord_le6045566169113846134st_nat @ B6 @ A2 ) ) ) ).

% infinite_arbitrarily_large
thf(fact_982_infinite__arbitrarily__large,axiom,
    ! [A2: set_nat,N: nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ? [B6: set_nat] :
          ( ( finite_finite_nat @ B6 )
          & ( ( finite_card_nat @ B6 )
            = N )
          & ( ord_less_eq_set_nat @ B6 @ A2 ) ) ) ).

% infinite_arbitrarily_large
thf(fact_983_card__subset__eq,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
       => ( ( ( finite_card_list_nat @ A2 )
            = ( finite_card_list_nat @ B4 ) )
         => ( A2 = B4 ) ) ) ) ).

% card_subset_eq
thf(fact_984_card__subset__eq,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ A2 @ B4 )
       => ( ( ( finite_card_nat @ A2 )
            = ( finite_card_nat @ B4 ) )
         => ( A2 = B4 ) ) ) ) ).

% card_subset_eq
thf(fact_985_card__image__le,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ord_less_eq_nat @ ( finite_card_nat @ ( image_nat_nat @ F @ A2 ) ) @ ( finite_card_nat @ A2 ) ) ) ).

% card_image_le
thf(fact_986_card__image__le,axiom,
    ! [A2: set_list_nat,F: list_nat > nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ord_less_eq_nat @ ( finite_card_nat @ ( image_list_nat_nat @ F @ A2 ) ) @ ( finite_card_list_nat @ A2 ) ) ) ).

% card_image_le
thf(fact_987_finite__if__finite__subsets__card__bdd,axiom,
    ! [F2: set_list_nat,C2: nat] :
      ( ! [G3: set_list_nat] :
          ( ( ord_le6045566169113846134st_nat @ G3 @ F2 )
         => ( ( finite8100373058378681591st_nat @ G3 )
           => ( ord_less_eq_nat @ ( finite_card_list_nat @ G3 ) @ C2 ) ) )
     => ( ( finite8100373058378681591st_nat @ F2 )
        & ( ord_less_eq_nat @ ( finite_card_list_nat @ F2 ) @ C2 ) ) ) ).

% finite_if_finite_subsets_card_bdd
thf(fact_988_finite__if__finite__subsets__card__bdd,axiom,
    ! [F2: set_nat,C2: nat] :
      ( ! [G3: set_nat] :
          ( ( ord_less_eq_set_nat @ G3 @ F2 )
         => ( ( finite_finite_nat @ G3 )
           => ( ord_less_eq_nat @ ( finite_card_nat @ G3 ) @ C2 ) ) )
     => ( ( finite_finite_nat @ F2 )
        & ( ord_less_eq_nat @ ( finite_card_nat @ F2 ) @ C2 ) ) ) ).

% finite_if_finite_subsets_card_bdd
thf(fact_989_obtain__subset__with__card__n,axiom,
    ! [N: nat,S2: set_list_nat] :
      ( ( ord_less_eq_nat @ N @ ( finite_card_list_nat @ S2 ) )
     => ~ ! [T4: set_list_nat] :
            ( ( ord_le6045566169113846134st_nat @ T4 @ S2 )
           => ( ( ( finite_card_list_nat @ T4 )
                = N )
             => ~ ( finite8100373058378681591st_nat @ T4 ) ) ) ) ).

% obtain_subset_with_card_n
thf(fact_990_obtain__subset__with__card__n,axiom,
    ! [N: nat,S2: set_nat] :
      ( ( ord_less_eq_nat @ N @ ( finite_card_nat @ S2 ) )
     => ~ ! [T4: set_nat] :
            ( ( ord_less_eq_set_nat @ T4 @ S2 )
           => ( ( ( finite_card_nat @ T4 )
                = N )
             => ~ ( finite_finite_nat @ T4 ) ) ) ) ).

% obtain_subset_with_card_n
thf(fact_991_exists__subset__between,axiom,
    ! [A2: set_list_nat,N: nat,C2: set_list_nat] :
      ( ( ord_less_eq_nat @ ( finite_card_list_nat @ A2 ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( finite_card_list_nat @ C2 ) )
       => ( ( ord_le6045566169113846134st_nat @ A2 @ C2 )
         => ( ( finite8100373058378681591st_nat @ C2 )
           => ? [B6: set_list_nat] :
                ( ( ord_le6045566169113846134st_nat @ A2 @ B6 )
                & ( ord_le6045566169113846134st_nat @ B6 @ C2 )
                & ( ( finite_card_list_nat @ B6 )
                  = N ) ) ) ) ) ) ).

% exists_subset_between
thf(fact_992_exists__subset__between,axiom,
    ! [A2: set_nat,N: nat,C2: set_nat] :
      ( ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( finite_card_nat @ C2 ) )
       => ( ( ord_less_eq_set_nat @ A2 @ C2 )
         => ( ( finite_finite_nat @ C2 )
           => ? [B6: set_nat] :
                ( ( ord_less_eq_set_nat @ A2 @ B6 )
                & ( ord_less_eq_set_nat @ B6 @ C2 )
                & ( ( finite_card_nat @ B6 )
                  = N ) ) ) ) ) ) ).

% exists_subset_between
thf(fact_993_card__seteq,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
       => ( ( ord_less_eq_nat @ ( finite_card_list_nat @ B4 ) @ ( finite_card_list_nat @ A2 ) )
         => ( A2 = B4 ) ) ) ) ).

% card_seteq
thf(fact_994_card__seteq,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ A2 @ B4 )
       => ( ( ord_less_eq_nat @ ( finite_card_nat @ B4 ) @ ( finite_card_nat @ A2 ) )
         => ( A2 = B4 ) ) ) ) ).

% card_seteq
thf(fact_995_card__mono,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
       => ( ord_less_eq_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) ) ) ) ).

% card_mono
thf(fact_996_card__mono,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ A2 @ B4 )
       => ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B4 ) ) ) ) ).

% card_mono
thf(fact_997_card__ge__0__finite,axiom,
    ! [A2: set_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_nat @ A2 ) )
     => ( finite_finite_nat @ A2 ) ) ).

% card_ge_0_finite
thf(fact_998_card__ge__0__finite,axiom,
    ! [A2: set_list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_list_nat @ A2 ) )
     => ( finite8100373058378681591st_nat @ A2 ) ) ).

% card_ge_0_finite
thf(fact_999_card__le__sym__Diff,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( finite_finite_nat @ B4 )
       => ( ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B4 ) )
         => ( ord_less_eq_nat @ ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B4 ) ) @ ( finite_card_nat @ ( minus_minus_set_nat @ B4 @ A2 ) ) ) ) ) ) ).

% card_le_sym_Diff
thf(fact_1000_card__le__sym__Diff,axiom,
    ! [A2: set_list_nat,B4: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( finite8100373058378681591st_nat @ B4 )
       => ( ( ord_less_eq_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) )
         => ( ord_less_eq_nat @ ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) @ ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ B4 @ A2 ) ) ) ) ) ) ).

% card_le_sym_Diff
thf(fact_1001_card__less__sym__Diff,axiom,
    ! [A2: set_nat,B4: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( finite_finite_nat @ B4 )
       => ( ( ord_less_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B4 ) )
         => ( ord_less_nat @ ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B4 ) ) @ ( finite_card_nat @ ( minus_minus_set_nat @ B4 @ A2 ) ) ) ) ) ) ).

% card_less_sym_Diff
thf(fact_1002_card__less__sym__Diff,axiom,
    ! [A2: set_list_nat,B4: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( finite8100373058378681591st_nat @ B4 )
       => ( ( ord_less_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) )
         => ( ord_less_nat @ ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) @ ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ B4 @ A2 ) ) ) ) ) ) ).

% card_less_sym_Diff
thf(fact_1003_card__length,axiom,
    ! [Xs: list_nat] : ( ord_less_eq_nat @ ( finite_card_nat @ ( set_nat2 @ Xs ) ) @ ( size_size_list_nat @ Xs ) ) ).

% card_length
thf(fact_1004_verit__comp__simplify1_I2_J,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1005_verit__comp__simplify1_I2_J,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1006_verit__comp__simplify1_I2_J,axiom,
    ! [A: extended_enat] : ( ord_le2932123472753598470d_enat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_1007_verit__la__disequality,axiom,
    ! [A: nat,B: nat] :
      ( ( A = B )
      | ~ ( ord_less_eq_nat @ A @ B )
      | ~ ( ord_less_eq_nat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_1008_verit__la__disequality,axiom,
    ! [A: extended_enat,B: extended_enat] :
      ( ( A = B )
      | ~ ( ord_le2932123472753598470d_enat @ A @ B )
      | ~ ( ord_le2932123472753598470d_enat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_1009_distinct__card,axiom,
    ! [Xs: list_nat] :
      ( ( distinct_nat @ Xs )
     => ( ( finite_card_nat @ ( set_nat2 @ Xs ) )
        = ( size_size_list_nat @ Xs ) ) ) ).

% distinct_card
thf(fact_1010_card__distinct,axiom,
    ! [Xs: list_nat] :
      ( ( ( finite_card_nat @ ( set_nat2 @ Xs ) )
        = ( size_size_list_nat @ Xs ) )
     => ( distinct_nat @ Xs ) ) ).

% card_distinct
thf(fact_1011_surj__card__le,axiom,
    ! [A2: set_nat,B4: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ B4 @ ( image_nat_nat @ F @ A2 ) )
       => ( ord_less_eq_nat @ ( finite_card_nat @ B4 ) @ ( finite_card_nat @ A2 ) ) ) ) ).

% surj_card_le
thf(fact_1012_surj__card__le,axiom,
    ! [A2: set_list_nat,B4: set_nat,F: list_nat > nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ B4 @ ( image_list_nat_nat @ F @ A2 ) )
       => ( ord_less_eq_nat @ ( finite_card_nat @ B4 ) @ ( finite_card_list_nat @ A2 ) ) ) ) ).

% surj_card_le
thf(fact_1013_card__le__Suc__iff,axiom,
    ! [N: nat,A2: set_nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( finite_card_nat @ A2 ) )
      = ( ? [A3: nat,B5: set_nat] :
            ( ( A2
              = ( insert_nat2 @ A3 @ B5 ) )
            & ~ ( member_nat @ A3 @ B5 )
            & ( ord_less_eq_nat @ N @ ( finite_card_nat @ B5 ) )
            & ( finite_finite_nat @ B5 ) ) ) ) ).

% card_le_Suc_iff
thf(fact_1014_card__le__Suc__iff,axiom,
    ! [N: nat,A2: set_list_nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( finite_card_list_nat @ A2 ) )
      = ( ? [A3: list_nat,B5: set_list_nat] :
            ( ( A2
              = ( insert_list_nat2 @ A3 @ B5 ) )
            & ~ ( member_list_nat @ A3 @ B5 )
            & ( ord_less_eq_nat @ N @ ( finite_card_list_nat @ B5 ) )
            & ( finite8100373058378681591st_nat @ B5 ) ) ) ) ).

% card_le_Suc_iff
thf(fact_1015_card__le__Suc0__iff__eq,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X3: nat] :
              ( ( member_nat @ X3 @ A2 )
             => ! [Y3: nat] :
                  ( ( member_nat @ Y3 @ A2 )
                 => ( X3 = Y3 ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_1016_card__le__Suc0__iff__eq,axiom,
    ! [A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ( ( ord_less_eq_nat @ ( finite_card_list_nat @ A2 ) @ ( suc @ zero_zero_nat ) )
        = ( ! [X3: list_nat] :
              ( ( member_list_nat @ X3 @ A2 )
             => ! [Y3: list_nat] :
                  ( ( member_list_nat @ Y3 @ A2 )
                 => ( X3 = Y3 ) ) ) ) ) ) ).

% card_le_Suc0_iff_eq
thf(fact_1017_card__Diff__subset,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ B4 @ A2 )
       => ( ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) )
          = ( minus_minus_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) ) ) ) ) ).

% card_Diff_subset
thf(fact_1018_card__Diff__subset,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ B4 @ A2 )
       => ( ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B4 ) )
          = ( minus_minus_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B4 ) ) ) ) ) ).

% card_Diff_subset
thf(fact_1019_card__psubset,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ( ord_le6045566169113846134st_nat @ A2 @ B4 )
       => ( ( ord_less_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) )
         => ( ord_le1190675801316882794st_nat @ A2 @ B4 ) ) ) ) ).

% card_psubset
thf(fact_1020_card__psubset,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ( ord_less_eq_set_nat @ A2 @ B4 )
       => ( ( ord_less_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B4 ) )
         => ( ord_less_set_nat @ A2 @ B4 ) ) ) ) ).

% card_psubset
thf(fact_1021_diff__card__le__card__Diff,axiom,
    ! [B4: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B4 )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B4 ) ) @ ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B4 ) ) ) ) ).

% diff_card_le_card_Diff
thf(fact_1022_diff__card__le__card__Diff,axiom,
    ! [B4: set_list_nat,A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ B4 )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ ( finite_card_list_nat @ A2 ) @ ( finite_card_list_nat @ B4 ) ) @ ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) ) ) ).

% diff_card_le_card_Diff
thf(fact_1023_sorted__list__of__set_Ofinite__set__strict__sorted,axiom,
    ! [A2: set_list_nat] :
      ( ( finite8100373058378681591st_nat @ A2 )
     => ~ ! [L2: list_list_nat] :
            ( ( sorted_wrt_list_nat @ ord_less_list_nat @ L2 )
           => ( ( ( set_list_nat2 @ L2 )
                = A2 )
             => ( ( size_s3023201423986296836st_nat @ L2 )
               != ( finite_card_list_nat @ A2 ) ) ) ) ) ).

% sorted_list_of_set.finite_set_strict_sorted
thf(fact_1024_sorted__list__of__set_Ofinite__set__strict__sorted,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ~ ! [L2: list_nat] :
            ( ( sorted_wrt_nat @ ord_less_nat @ L2 )
           => ( ( ( set_nat2 @ L2 )
                = A2 )
             => ( ( size_size_list_nat @ L2 )
               != ( finite_card_nat @ A2 ) ) ) ) ) ).

% sorted_list_of_set.finite_set_strict_sorted
thf(fact_1025_Khovanskii_Ouseless__iff,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,X: list_nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( ( size_size_list_nat @ X )
          = ( finite_card_nat @ A2 ) )
       => ( ( useless_nat @ G @ Addition @ Zero @ A2 @ X )
          = ( ? [X3: list_nat] :
                ( ( member_list_nat @ X3 @ ( minimal_elements @ ( collect_list_nat @ ( useless_nat @ G @ Addition @ Zero @ A2 ) ) ) )
                & ( pointwise_le @ X3 @ X ) ) ) ) ) ) ).

% Khovanskii.useless_iff
thf(fact_1026_ex__card,axiom,
    ! [N: nat,A2: set_nat] :
      ( ( ord_less_eq_nat @ N @ ( finite_card_nat @ A2 ) )
     => ? [S4: set_nat] :
          ( ( ord_less_eq_set_nat @ S4 @ A2 )
          & ( ( finite_card_nat @ S4 )
            = N ) ) ) ).

% ex_card
thf(fact_1027_Khovanskii_Ouseless__leq__useless,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,X: list_nat,Y: list_nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( useless_nat @ G @ Addition @ Zero @ A2 @ X )
       => ( ( pointwise_le @ X @ Y )
         => ( ( ( size_size_list_nat @ X )
              = ( finite_card_nat @ A2 ) )
           => ( useless_nat @ G @ Addition @ Zero @ A2 @ Y ) ) ) ) ) ).

% Khovanskii.useless_leq_useless
thf(fact_1028_card__insert__le__m1,axiom,
    ! [N: nat,Y: set_list_nat,X: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite_card_list_nat @ Y ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite_card_list_nat @ ( insert_list_nat2 @ X @ Y ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_1029_card__insert__le__m1,axiom,
    ! [N: nat,Y: set_nat,X: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ ( finite_card_nat @ Y ) @ ( minus_minus_nat @ N @ one_one_nat ) )
       => ( ord_less_eq_nat @ ( finite_card_nat @ ( insert_nat2 @ X @ Y ) ) @ N ) ) ) ).

% card_insert_le_m1
thf(fact_1030_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_1031_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_1032_last__upt,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( last_nat @ ( upt @ I @ J ) )
        = ( minus_minus_nat @ J @ one_one_nat ) ) ) ).

% last_upt
thf(fact_1033_length__butlast,axiom,
    ! [Xs: list_nat] :
      ( ( size_size_list_nat @ ( butlast_nat @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) ) ).

% length_butlast
thf(fact_1034_Suc__diff__1,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
        = N ) ) ).

% Suc_diff_1
thf(fact_1035_card__Diff__insert,axiom,
    ! [A: list_nat,A2: set_list_nat,B4: set_list_nat] :
      ( ( member_list_nat @ A @ A2 )
     => ( ~ ( member_list_nat @ A @ B4 )
       => ( ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A2 @ ( insert_list_nat2 @ A @ B4 ) ) )
          = ( minus_minus_nat @ ( finite_card_list_nat @ ( minus_7954133019191499631st_nat @ A2 @ B4 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_1036_card__Diff__insert,axiom,
    ! [A: nat,A2: set_nat,B4: set_nat] :
      ( ( member_nat @ A @ A2 )
     => ( ~ ( member_nat @ A @ B4 )
       => ( ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ ( insert_nat2 @ A @ B4 ) ) )
          = ( minus_minus_nat @ ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B4 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_1037_diff__Suc__eq__diff__pred,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N ) ) ).

% diff_Suc_eq_diff_pred
thf(fact_1038_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_1039_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% less_numeral_extra(1)
thf(fact_1040_one__reorient,axiom,
    ! [X: nat] :
      ( ( one_one_nat = X )
      = ( X = one_one_nat ) ) ).

% one_reorient
thf(fact_1041_Khovanskii_Oalpha__in__G,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,X: list_nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( member_nat @ ( alpha_nat @ G @ Addition @ Zero @ A2 @ X ) @ G ) ) ).

% Khovanskii.alpha_in_G
thf(fact_1042_Khovanskii_Oalpha__in__G,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat,X: list_nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( member_list_nat @ ( alpha_list_nat @ G @ Addition @ Zero @ A2 @ X ) @ G ) ) ).

% Khovanskii.alpha_in_G
thf(fact_1043_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat ) ).

% not_numeral_less_one
thf(fact_1044_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_le72135733267957522d_enat @ ( numera1916890842035813515d_enat @ N ) @ one_on7984719198319812577d_enat ) ).

% not_numeral_less_one
thf(fact_1045_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_1046_le__numeral__extra_I4_J,axiom,
    ord_le2932123472753598470d_enat @ one_on7984719198319812577d_enat @ one_on7984719198319812577d_enat ).

% le_numeral_extra(4)
thf(fact_1047_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) ) ).

% one_le_numeral
thf(fact_1048_one__le__numeral,axiom,
    ! [N: num] : ( ord_le2932123472753598470d_enat @ one_on7984719198319812577d_enat @ ( numera1916890842035813515d_enat @ N ) ) ).

% one_le_numeral
thf(fact_1049_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_1050_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N3: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N3 )
             => ( ( P @ N3 )
               => ( P @ ( suc @ N3 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_1051_sorted__wrt01,axiom,
    ! [Xs: list_nat,P: nat > nat > $o] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat )
     => ( sorted_wrt_nat @ P @ Xs ) ) ).

% sorted_wrt01
thf(fact_1052_Suc__pred_H,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( N
        = ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_pred'
thf(fact_1053_Suc__diff__eq__diff__pred,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( minus_minus_nat @ M @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_diff_eq_diff_pred
thf(fact_1054_sorted01,axiom,
    ! [Xs: list_nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat )
     => ( sorted_wrt_nat @ ord_less_eq_nat @ Xs ) ) ).

% sorted01
thf(fact_1055_sorted01,axiom,
    ! [Xs: list_Extended_enat] :
      ( ( ord_less_eq_nat @ ( size_s3941691890525107288d_enat @ Xs ) @ one_one_nat )
     => ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs ) ) ).

% sorted01
thf(fact_1056_list__incr__nth__diff,axiom,
    ! [I: nat,X: list_nat,J: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ X ) )
     => ( ( ( I = J )
         => ( ( minus_minus_nat @ ( nth_nat @ ( list_incr @ J @ X ) @ I ) @ ( nth_nat @ X @ I ) )
            = one_one_nat ) )
        & ( ( I != J )
         => ( ( minus_minus_nat @ ( nth_nat @ ( list_incr @ J @ X ) @ I ) @ ( nth_nat @ X @ I ) )
            = zero_zero_nat ) ) ) ) ).

% list_incr_nth_diff
thf(fact_1057_not__one__less__zero,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_less_zero
thf(fact_1058_nth__Cons__0,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ zero_zero_nat )
      = X ) ).

% nth_Cons_0
thf(fact_1059_nth__Cons__Suc,axiom,
    ! [X: nat,Xs: list_nat,N: nat] :
      ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ ( suc @ N ) )
      = ( nth_nat @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_1060_nth__append__length,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat] :
      ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs ) )
      = X ) ).

% nth_append_length
thf(fact_1061_nth__Cons__numeral,axiom,
    ! [X: nat,Xs: list_nat,V: num] :
      ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ ( numeral_numeral_nat @ V ) )
      = ( nth_nat @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).

% nth_Cons_numeral
thf(fact_1062_nth__minus__list,axiom,
    ! [I: nat,Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ Ys ) )
       => ( ( nth_list_nat @ ( minus_3911745200923244873st_nat @ Xs @ Ys ) @ I )
          = ( minus_minus_list_nat @ ( nth_list_nat @ Xs @ I ) @ ( nth_list_nat @ Ys @ I ) ) ) ) ) ).

% nth_minus_list
thf(fact_1063_nth__minus__list,axiom,
    ! [I: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ I @ ( size_size_list_nat @ Ys ) )
       => ( ( nth_nat @ ( minus_minus_list_nat @ Xs @ Ys ) @ I )
          = ( minus_minus_nat @ ( nth_nat @ Xs @ I ) @ ( nth_nat @ Ys @ I ) ) ) ) ) ).

% nth_minus_list
thf(fact_1064_nth__Cons__pos,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
        = ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_1065_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_nat,Z2: list_nat] : ( Y4 = Z2 ) )
    = ( ^ [Xs4: list_nat,Ys3: list_nat] :
          ( ( ( size_size_list_nat @ Xs4 )
            = ( size_size_list_nat @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs4 ) )
             => ( ( nth_nat @ Xs4 @ I3 )
                = ( nth_nat @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_1066_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > nat > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X7: nat] : ( P @ I3 @ X7 ) ) )
      = ( ? [Xs4: list_nat] :
            ( ( ( size_size_list_nat @ Xs4 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_nat @ Xs4 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_1067_nth__equalityI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
           => ( ( nth_nat @ Xs @ I4 )
              = ( nth_nat @ Ys @ I4 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_1068_nth__mem,axiom,
    ! [N: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( member_list_nat @ ( nth_list_nat @ Xs @ N ) @ ( set_list_nat2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1069_nth__mem,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( member_nat @ ( nth_nat @ Xs @ N ) @ ( set_nat2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1070_list__ball__nth,axiom,
    ! [N: nat,Xs: list_nat,P: nat > $o] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
           => ( P @ X2 ) )
       => ( P @ ( nth_nat @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1071_in__set__conv__nth,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
            & ( ( nth_list_nat @ Xs @ I3 )
              = X ) ) ) ) ).

% in_set_conv_nth
thf(fact_1072_in__set__conv__nth,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
            & ( ( nth_nat @ Xs @ I3 )
              = X ) ) ) ) ).

% in_set_conv_nth
thf(fact_1073_all__nth__imp__all__set,axiom,
    ! [Xs: list_list_nat,P: list_nat > $o,X: list_nat] :
      ( ! [I4: nat] :
          ( ( ord_less_nat @ I4 @ ( size_s3023201423986296836st_nat @ Xs ) )
         => ( P @ ( nth_list_nat @ Xs @ I4 ) ) )
     => ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
       => ( P @ X ) ) ) ).

% all_nth_imp_all_set
thf(fact_1074_all__nth__imp__all__set,axiom,
    ! [Xs: list_nat,P: nat > $o,X: nat] :
      ( ! [I4: nat] :
          ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
         => ( P @ ( nth_nat @ Xs @ I4 ) ) )
     => ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
       => ( P @ X ) ) ) ).

% all_nth_imp_all_set
thf(fact_1075_all__set__conv__all__nth,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ! [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
           => ( P @ X3 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
           => ( P @ ( nth_nat @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1076_sorted__wrt__nth__less,axiom,
    ! [P: nat > nat > $o,Xs: list_nat,I: nat,J: nat] :
      ( ( sorted_wrt_nat @ P @ Xs )
     => ( ( ord_less_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
         => ( P @ ( nth_nat @ Xs @ I ) @ ( nth_nat @ Xs @ J ) ) ) ) ) ).

% sorted_wrt_nth_less
thf(fact_1077_sorted__wrt__iff__nth__less,axiom,
    ( sorted_wrt_nat
    = ( ^ [P2: nat > nat > $o,Xs4: list_nat] :
        ! [I3: nat,J2: nat] :
          ( ( ord_less_nat @ I3 @ J2 )
         => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs4 ) )
           => ( P2 @ ( nth_nat @ Xs4 @ I3 ) @ ( nth_nat @ Xs4 @ J2 ) ) ) ) ) ) ).

% sorted_wrt_iff_nth_less
thf(fact_1078_nth__eq__iff__index__eq,axiom,
    ! [Xs: list_nat,I: nat,J: nat] :
      ( ( distinct_nat @ Xs )
     => ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
         => ( ( ( nth_nat @ Xs @ I )
              = ( nth_nat @ Xs @ J ) )
            = ( I = J ) ) ) ) ) ).

% nth_eq_iff_index_eq
thf(fact_1079_distinct__conv__nth,axiom,
    ( distinct_nat
    = ( ^ [Xs4: list_nat] :
        ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs4 ) )
         => ! [J2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs4 ) )
             => ( ( I3 != J2 )
               => ( ( nth_nat @ Xs4 @ I3 )
                 != ( nth_nat @ Xs4 @ J2 ) ) ) ) ) ) ) ).

% distinct_conv_nth
thf(fact_1080_nth__butlast,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ ( butlast_nat @ Xs ) ) )
     => ( ( nth_nat @ ( butlast_nat @ Xs ) @ N )
        = ( nth_nat @ Xs @ N ) ) ) ).

% nth_butlast
thf(fact_1081_sorted__iff__nth__mono__less,axiom,
    ! [Xs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
      = ( ! [I3: nat,J2: nat] :
            ( ( ord_less_nat @ I3 @ J2 )
           => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs ) )
             => ( ord_less_eq_nat @ ( nth_nat @ Xs @ I3 ) @ ( nth_nat @ Xs @ J2 ) ) ) ) ) ) ).

% sorted_iff_nth_mono_less
thf(fact_1082_sorted__iff__nth__mono__less,axiom,
    ! [Xs: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
      = ( ! [I3: nat,J2: nat] :
            ( ( ord_less_nat @ I3 @ J2 )
           => ( ( ord_less_nat @ J2 @ ( size_s3941691890525107288d_enat @ Xs ) )
             => ( ord_le2932123472753598470d_enat @ ( nth_Extended_enat @ Xs @ I3 ) @ ( nth_Extended_enat @ Xs @ J2 ) ) ) ) ) ) ).

% sorted_iff_nth_mono_less
thf(fact_1083_nth__Cons_H,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
          = X ) )
      & ( ( N != zero_zero_nat )
       => ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
          = ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% nth_Cons'
thf(fact_1084_sum__list__mono2,axiom,
    ! [Xs: list_Extended_enat,Ys: list_Extended_enat] :
      ( ( ( size_s3941691890525107288d_enat @ Xs )
        = ( size_s3941691890525107288d_enat @ Ys ) )
     => ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s3941691890525107288d_enat @ Xs ) )
           => ( ord_le2932123472753598470d_enat @ ( nth_Extended_enat @ Xs @ I4 ) @ ( nth_Extended_enat @ Ys @ I4 ) ) )
       => ( ord_le2932123472753598470d_enat @ ( groups5145338220374282879d_enat @ Xs ) @ ( groups5145338220374282879d_enat @ Ys ) ) ) ) ).

% sum_list_mono2
thf(fact_1085_sum__list__mono2,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
           => ( ord_less_eq_nat @ ( nth_nat @ Xs @ I4 ) @ ( nth_nat @ Ys @ I4 ) ) )
       => ( ord_less_eq_nat @ ( groups4561878855575611511st_nat @ Xs ) @ ( groups4561878855575611511st_nat @ Ys ) ) ) ) ).

% sum_list_mono2
thf(fact_1086_elem__le__sum__list,axiom,
    ! [K: nat,Ns: list_Extended_enat] :
      ( ( ord_less_nat @ K @ ( size_s3941691890525107288d_enat @ Ns ) )
     => ( ord_le2932123472753598470d_enat @ ( nth_Extended_enat @ Ns @ K ) @ ( groups5145338220374282879d_enat @ Ns ) ) ) ).

% elem_le_sum_list
thf(fact_1087_elem__le__sum__list,axiom,
    ! [K: nat,Ns: list_nat] :
      ( ( ord_less_nat @ K @ ( size_size_list_nat @ Ns ) )
     => ( ord_less_eq_nat @ ( nth_nat @ Ns @ K ) @ ( groups4561878855575611511st_nat @ Ns ) ) ) ).

% elem_le_sum_list
thf(fact_1088_nth__append,axiom,
    ! [N: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ N )
          = ( nth_nat @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ N )
          = ( nth_nat @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_1089_distinct__Ex1,axiom,
    ! [Xs: list_list_nat,X: list_nat] :
      ( ( distinct_list_nat @ Xs )
     => ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
       => ? [X2: nat] :
            ( ( ord_less_nat @ X2 @ ( size_s3023201423986296836st_nat @ Xs ) )
            & ( ( nth_list_nat @ Xs @ X2 )
              = X )
            & ! [Y5: nat] :
                ( ( ( ord_less_nat @ Y5 @ ( size_s3023201423986296836st_nat @ Xs ) )
                  & ( ( nth_list_nat @ Xs @ Y5 )
                    = X ) )
               => ( Y5 = X2 ) ) ) ) ) ).

% distinct_Ex1
thf(fact_1090_distinct__Ex1,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( distinct_nat @ Xs )
     => ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
       => ? [X2: nat] :
            ( ( ord_less_nat @ X2 @ ( size_size_list_nat @ Xs ) )
            & ( ( nth_nat @ Xs @ X2 )
              = X )
            & ! [Y5: nat] :
                ( ( ( ord_less_nat @ Y5 @ ( size_size_list_nat @ Xs ) )
                  & ( ( nth_nat @ Xs @ Y5 )
                    = X ) )
               => ( Y5 = X2 ) ) ) ) ) ).

% distinct_Ex1
thf(fact_1091_pointwise__le__iff__nth,axiom,
    ( pointwise_le
    = ( ^ [X3: list_nat,Y3: list_nat] :
          ( ( ( size_size_list_nat @ X3 )
            = ( size_size_list_nat @ Y3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ X3 ) )
             => ( ord_less_eq_nat @ ( nth_nat @ X3 @ I3 ) @ ( nth_nat @ Y3 @ I3 ) ) ) ) ) ) ).

% pointwise_le_iff_nth
thf(fact_1092_Khovanskii_Onth__aA__in__G,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat,I: nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( ( ord_less_nat @ I @ ( finite_card_list_nat @ A2 ) )
       => ( member_list_nat @ ( nth_list_nat @ ( aA_list_nat @ A2 ) @ I ) @ G ) ) ) ).

% Khovanskii.nth_aA_in_G
thf(fact_1093_Khovanskii_Onth__aA__in__G,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,I: nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( ord_less_nat @ I @ ( finite_card_nat @ A2 ) )
       => ( member_nat @ ( nth_nat @ ( aA_nat @ A2 ) @ I ) @ G ) ) ) ).

% Khovanskii.nth_aA_in_G
thf(fact_1094_sorted__wrt__less__idx,axiom,
    ! [Ns: list_nat,I: nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ Ns )
     => ( ( ord_less_nat @ I @ ( size_size_list_nat @ Ns ) )
       => ( ord_less_eq_nat @ I @ ( nth_nat @ Ns @ I ) ) ) ) ).

% sorted_wrt_less_idx
thf(fact_1095_pointwise__less__iff2,axiom,
    ( pointwise_less
    = ( ^ [X3: list_nat,Y3: list_nat] :
          ( ( pointwise_le @ X3 @ Y3 )
          & ? [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_size_list_nat @ X3 ) )
              & ( ord_less_nat @ ( nth_nat @ X3 @ K3 ) @ ( nth_nat @ Y3 @ K3 ) ) ) ) ) ) ).

% pointwise_less_iff2
thf(fact_1096_nth__equal__first__eq,axiom,
    ! [X: list_nat,Xs: list_list_nat,N: nat] :
      ( ~ ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ( ( nth_list_nat @ ( cons_list_nat @ X @ Xs ) @ N )
            = X )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1097_nth__equal__first__eq,axiom,
    ! [X: nat,Xs: list_nat,N: nat] :
      ( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
            = X )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1098_sorted__iff__nth__Suc,axiom,
    ! [Xs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ ( suc @ I3 ) @ ( size_size_list_nat @ Xs ) )
           => ( ord_less_eq_nat @ ( nth_nat @ Xs @ I3 ) @ ( nth_nat @ Xs @ ( suc @ I3 ) ) ) ) ) ) ).

% sorted_iff_nth_Suc
thf(fact_1099_sorted__iff__nth__Suc,axiom,
    ! [Xs: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ ( suc @ I3 ) @ ( size_s3941691890525107288d_enat @ Xs ) )
           => ( ord_le2932123472753598470d_enat @ ( nth_Extended_enat @ Xs @ I3 ) @ ( nth_Extended_enat @ Xs @ ( suc @ I3 ) ) ) ) ) ) ).

% sorted_iff_nth_Suc
thf(fact_1100_sorted__nth__mono,axiom,
    ! [Xs: list_nat,I: nat,J: nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
         => ( ord_less_eq_nat @ ( nth_nat @ Xs @ I ) @ ( nth_nat @ Xs @ J ) ) ) ) ) ).

% sorted_nth_mono
thf(fact_1101_sorted__nth__mono,axiom,
    ! [Xs: list_Extended_enat,I: nat,J: nat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s3941691890525107288d_enat @ Xs ) )
         => ( ord_le2932123472753598470d_enat @ ( nth_Extended_enat @ Xs @ I ) @ ( nth_Extended_enat @ Xs @ J ) ) ) ) ) ).

% sorted_nth_mono
thf(fact_1102_sorted__iff__nth__mono,axiom,
    ! [Xs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ Xs )
      = ( ! [I3: nat,J2: nat] :
            ( ( ord_less_eq_nat @ I3 @ J2 )
           => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs ) )
             => ( ord_less_eq_nat @ ( nth_nat @ Xs @ I3 ) @ ( nth_nat @ Xs @ J2 ) ) ) ) ) ) ).

% sorted_iff_nth_mono
thf(fact_1103_sorted__iff__nth__mono,axiom,
    ! [Xs: list_Extended_enat] :
      ( ( sorted143172755617435219d_enat @ ord_le2932123472753598470d_enat @ Xs )
      = ( ! [I3: nat,J2: nat] :
            ( ( ord_less_eq_nat @ I3 @ J2 )
           => ( ( ord_less_nat @ J2 @ ( size_s3941691890525107288d_enat @ Xs ) )
             => ( ord_le2932123472753598470d_enat @ ( nth_Extended_enat @ Xs @ I3 ) @ ( nth_Extended_enat @ Xs @ J2 ) ) ) ) ) ) ).

% sorted_iff_nth_mono
thf(fact_1104_nth__non__equal__first__eq,axiom,
    ! [X: nat,Y: nat,Xs: list_nat,N: nat] :
      ( ( X != Y )
     => ( ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
          = Y )
        = ( ( ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) )
            = Y )
          & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ) ).

% nth_non_equal_first_eq
thf(fact_1105_last__conv__nth,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( last_nat @ Xs )
        = ( nth_nat @ Xs @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) ) ) ) ).

% last_conv_nth
thf(fact_1106_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_1107_not__one__le__zero,axiom,
    ~ ( ord_less_eq_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_le_zero
thf(fact_1108_not__one__le__zero,axiom,
    ~ ( ord_le2932123472753598470d_enat @ one_on7984719198319812577d_enat @ zero_z5237406670263579293d_enat ) ).

% not_one_le_zero
thf(fact_1109_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_1110_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ one_on7984719198319812577d_enat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_1111_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one_class.zero_le_one
thf(fact_1112_zero__less__one__class_Ozero__le__one,axiom,
    ord_le2932123472753598470d_enat @ zero_z5237406670263579293d_enat @ one_on7984719198319812577d_enat ).

% zero_less_one_class.zero_le_one
thf(fact_1113_zero__less__one,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one
thf(fact_1114_list__incr__def,axiom,
    ( list_incr
    = ( ^ [I3: nat,X3: list_nat] : ( list_update_nat @ X3 @ I3 @ ( suc @ ( nth_nat @ X3 @ I3 ) ) ) ) ) ).

% list_incr_def
thf(fact_1115_Khovanskii_Onth__le__list__incr,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,I: nat,X: list_nat,A: nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( ord_less_nat @ I @ ( finite_card_nat @ A2 ) )
       => ( ord_less_eq_nat @ ( nth_nat @ X @ I ) @ ( nth_nat @ ( list_incr @ ( counta4844910239362777137on_nat @ A2 @ A ) @ X ) @ I ) ) ) ) ).

% Khovanskii.nth_le_list_incr
thf(fact_1116_list__update__overwrite,axiom,
    ! [Xs: list_nat,I: nat,X: nat,Y: nat] :
      ( ( list_update_nat @ ( list_update_nat @ Xs @ I @ X ) @ I @ Y )
      = ( list_update_nat @ Xs @ I @ Y ) ) ).

% list_update_overwrite
thf(fact_1117_list__update__nonempty,axiom,
    ! [Xs: list_nat,K: nat,X: nat] :
      ( ( ( list_update_nat @ Xs @ K @ X )
        = nil_nat )
      = ( Xs = nil_nat ) ) ).

% list_update_nonempty
thf(fact_1118_length__list__update,axiom,
    ! [Xs: list_nat,I: nat,X: nat] :
      ( ( size_size_list_nat @ ( list_update_nat @ Xs @ I @ X ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_list_update
thf(fact_1119_list__update__id,axiom,
    ! [Xs: list_nat,I: nat] :
      ( ( list_update_nat @ Xs @ I @ ( nth_nat @ Xs @ I ) )
      = Xs ) ).

% list_update_id
thf(fact_1120_nth__list__update__neq,axiom,
    ! [I: nat,J: nat,Xs: list_nat,X: nat] :
      ( ( I != J )
     => ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ J )
        = ( nth_nat @ Xs @ J ) ) ) ).

% nth_list_update_neq
thf(fact_1121_list__update__beyond,axiom,
    ! [Xs: list_nat,I: nat,X: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ I )
     => ( ( list_update_nat @ Xs @ I @ X )
        = Xs ) ) ).

% list_update_beyond
thf(fact_1122_list__update__length,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat,Y: nat] :
      ( ( list_update_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs ) @ Y )
      = ( append_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) ) ).

% list_update_length
thf(fact_1123_nth__list__update__eq,axiom,
    ! [I: nat,Xs: list_nat,X: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ I )
        = X ) ) ).

% nth_list_update_eq
thf(fact_1124_set__swap,axiom,
    ! [I: nat,Xs: list_nat,J: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
       => ( ( set_nat2 @ ( list_update_nat @ ( list_update_nat @ Xs @ I @ ( nth_nat @ Xs @ J ) ) @ J @ ( nth_nat @ Xs @ I ) ) )
          = ( set_nat2 @ Xs ) ) ) ) ).

% set_swap
thf(fact_1125_distinct__swap,axiom,
    ! [I: nat,Xs: list_nat,J: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
       => ( ( distinct_nat @ ( list_update_nat @ ( list_update_nat @ Xs @ I @ ( nth_nat @ Xs @ J ) ) @ J @ ( nth_nat @ Xs @ I ) ) )
          = ( distinct_nat @ Xs ) ) ) ) ).

% distinct_swap
thf(fact_1126_list__update__code_I2_J,axiom,
    ! [X: nat,Xs: list_nat,Y: nat] :
      ( ( list_update_nat @ ( cons_nat @ X @ Xs ) @ zero_zero_nat @ Y )
      = ( cons_nat @ Y @ Xs ) ) ).

% list_update_code(2)
thf(fact_1127_list__update__code_I3_J,axiom,
    ! [X: nat,Xs: list_nat,I: nat,Y: nat] :
      ( ( list_update_nat @ ( cons_nat @ X @ Xs ) @ ( suc @ I ) @ Y )
      = ( cons_nat @ X @ ( list_update_nat @ Xs @ I @ Y ) ) ) ).

% list_update_code(3)
thf(fact_1128_list__update__code_I1_J,axiom,
    ! [I: nat,Y: nat] :
      ( ( list_update_nat @ nil_nat @ I @ Y )
      = nil_nat ) ).

% list_update_code(1)
thf(fact_1129_list__update_Osimps_I1_J,axiom,
    ! [I: nat,V: nat] :
      ( ( list_update_nat @ nil_nat @ I @ V )
      = nil_nat ) ).

% list_update.simps(1)
thf(fact_1130_list__update__swap,axiom,
    ! [I: nat,I6: nat,Xs: list_nat,X: nat,X8: nat] :
      ( ( I != I6 )
     => ( ( list_update_nat @ ( list_update_nat @ Xs @ I @ X ) @ I6 @ X8 )
        = ( list_update_nat @ ( list_update_nat @ Xs @ I6 @ X8 ) @ I @ X ) ) ) ).

% list_update_swap
thf(fact_1131_set__update__subsetI,axiom,
    ! [Xs: list_list_nat,A2: set_list_nat,X: list_nat,I: nat] :
      ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A2 )
     => ( ( member_list_nat @ X @ A2 )
       => ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ ( list_update_list_nat @ Xs @ I @ X ) ) @ A2 ) ) ) ).

% set_update_subsetI
thf(fact_1132_set__update__subsetI,axiom,
    ! [Xs: list_nat,A2: set_nat,X: nat,I: nat] :
      ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A2 )
     => ( ( member_nat @ X @ A2 )
       => ( ord_less_eq_set_nat @ ( set_nat2 @ ( list_update_nat @ Xs @ I @ X ) ) @ A2 ) ) ) ).

% set_update_subsetI
thf(fact_1133_set__update__subset__insert,axiom,
    ! [Xs: list_list_nat,I: nat,X: list_nat] : ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ ( list_update_list_nat @ Xs @ I @ X ) ) @ ( insert_list_nat2 @ X @ ( set_list_nat2 @ Xs ) ) ) ).

% set_update_subset_insert
thf(fact_1134_set__update__subset__insert,axiom,
    ! [Xs: list_nat,I: nat,X: nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ ( list_update_nat @ Xs @ I @ X ) ) @ ( insert_nat2 @ X @ ( set_nat2 @ Xs ) ) ) ).

% set_update_subset_insert
thf(fact_1135_set__update__memI,axiom,
    ! [N: nat,Xs: list_list_nat,X: list_nat] :
      ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( member_list_nat @ X @ ( set_list_nat2 @ ( list_update_list_nat @ Xs @ N @ X ) ) ) ) ).

% set_update_memI
thf(fact_1136_set__update__memI,axiom,
    ! [N: nat,Xs: list_nat,X: nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( member_nat @ X @ ( set_nat2 @ ( list_update_nat @ Xs @ N @ X ) ) ) ) ).

% set_update_memI
thf(fact_1137_list__update__append1,axiom,
    ! [I: nat,Xs: list_nat,Ys: list_nat,X: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ I @ X )
        = ( append_nat @ ( list_update_nat @ Xs @ I @ X ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_1138_list__update__same__conv,axiom,
    ! [I: nat,Xs: list_nat,X: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( ( list_update_nat @ Xs @ I @ X )
          = Xs )
        = ( ( nth_nat @ Xs @ I )
          = X ) ) ) ).

% list_update_same_conv
thf(fact_1139_nth__list__update,axiom,
    ! [I: nat,Xs: list_nat,J: nat,X: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( ( I = J )
         => ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ J )
            = X ) )
        & ( ( I != J )
         => ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ J )
            = ( nth_nat @ Xs @ J ) ) ) ) ) ).

% nth_list_update
thf(fact_1140_list__update__append,axiom,
    ! [N: nat,Xs: list_nat,Ys: list_nat,X: nat] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ N @ X )
          = ( append_nat @ ( list_update_nat @ Xs @ N @ X ) @ Ys ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ N @ X )
          = ( append_nat @ Xs @ ( list_update_nat @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) @ X ) ) ) ) ) ).

% list_update_append
thf(fact_1141_Khovanskii_Oidx__less__cardA,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat,A: list_nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_list_nat @ A @ A2 )
       => ( ord_less_nat @ ( counta9103016383634126529st_nat @ A2 @ A ) @ ( finite_card_list_nat @ A2 ) ) ) ) ).

% Khovanskii.idx_less_cardA
thf(fact_1142_Khovanskii_Oidx__less__cardA,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,A: nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ( ord_less_nat @ ( counta4844910239362777137on_nat @ A2 @ A ) @ ( finite_card_nat @ A2 ) ) ) ) ).

% Khovanskii.idx_less_cardA
thf(fact_1143_butlast__list__update,axiom,
    ! [K: nat,Xs: list_nat,X: nat] :
      ( ( ( K
          = ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) )
       => ( ( butlast_nat @ ( list_update_nat @ Xs @ K @ X ) )
          = ( butlast_nat @ Xs ) ) )
      & ( ( K
         != ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) )
       => ( ( butlast_nat @ ( list_update_nat @ Xs @ K @ X ) )
          = ( list_update_nat @ ( butlast_nat @ Xs ) @ K @ X ) ) ) ) ).

% butlast_list_update
thf(fact_1144_Khovanskii_OaA__idx__eq,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,A: nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ( ( nth_nat @ ( aA_nat @ A2 ) @ ( counta4844910239362777137on_nat @ A2 @ A ) )
          = A ) ) ) ).

% Khovanskii.aA_idx_eq
thf(fact_1145_Khovanskii_OaA__idx__eq,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat,A: list_nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_list_nat @ A @ A2 )
       => ( ( nth_list_nat @ ( aA_list_nat @ A2 ) @ ( counta9103016383634126529st_nat @ A2 @ A ) )
          = A ) ) ) ).

% Khovanskii.aA_idx_eq
thf(fact_1146_last__list__update,axiom,
    ! [Xs: list_nat,K: nat,X: nat] :
      ( ( Xs != nil_nat )
     => ( ( ( K
            = ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) )
         => ( ( last_nat @ ( list_update_nat @ Xs @ K @ X ) )
            = X ) )
        & ( ( K
           != ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) )
         => ( ( last_nat @ ( list_update_nat @ Xs @ K @ X ) )
            = ( last_nat @ Xs ) ) ) ) ) ).

% last_list_update
thf(fact_1147_Khovanskii_Oalpha__list__incr,axiom,
    ! [G: set_list_nat,Addition: list_nat > list_nat > list_nat,Zero: list_nat,A2: set_list_nat,A: list_nat,X: list_nat,N: nat] :
      ( ( khovanskii_list_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_list_nat @ A @ A2 )
       => ( ( member_list_nat @ X @ ( length_sum_set @ ( finite_card_list_nat @ A2 ) @ N ) )
         => ( ( alpha_list_nat @ G @ Addition @ Zero @ A2 @ ( list_incr @ ( counta9103016383634126529st_nat @ A2 @ A ) @ X ) )
            = ( Addition @ A @ ( alpha_list_nat @ G @ Addition @ Zero @ A2 @ X ) ) ) ) ) ) ).

% Khovanskii.alpha_list_incr
thf(fact_1148_Khovanskii_Oalpha__list__incr,axiom,
    ! [G: set_nat,Addition: nat > nat > nat,Zero: nat,A2: set_nat,A: nat,X: list_nat,N: nat] :
      ( ( khovanskii_nat @ G @ Addition @ Zero @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ( ( member_list_nat @ X @ ( length_sum_set @ ( finite_card_nat @ A2 ) @ N ) )
         => ( ( alpha_nat @ G @ Addition @ Zero @ A2 @ ( list_incr @ ( counta4844910239362777137on_nat @ A2 @ A ) @ X ) )
            = ( Addition @ A @ ( alpha_nat @ G @ Addition @ Zero @ A2 @ X ) ) ) ) ) ) ).

% Khovanskii.alpha_list_incr
thf(fact_1149_set__update__distinct,axiom,
    ! [Xs: list_nat,N: nat,X: nat] :
      ( ( distinct_nat @ Xs )
     => ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( set_nat2 @ ( list_update_nat @ Xs @ N @ X ) )
          = ( insert_nat2 @ X @ ( minus_minus_set_nat @ ( set_nat2 @ Xs ) @ ( insert_nat2 @ ( nth_nat @ Xs @ N ) @ bot_bot_set_nat ) ) ) ) ) ) ).

% set_update_distinct
thf(fact_1150_set__update__distinct,axiom,
    ! [Xs: list_list_nat,N: nat,X: list_nat] :
      ( ( distinct_list_nat @ Xs )
     => ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ( set_list_nat2 @ ( list_update_list_nat @ Xs @ N @ X ) )
          = ( insert_list_nat2 @ X @ ( minus_7954133019191499631st_nat @ ( set_list_nat2 @ Xs ) @ ( insert_list_nat2 @ ( nth_list_nat @ Xs @ N ) @ bot_bot_set_list_nat ) ) ) ) ) ) ).

% set_update_distinct
thf(fact_1151_nth__sorted__list__of__set__greaterThanAtMost,axiom,
    ! [N: nat,J: nat,I: nat] :
      ( ( ord_less_nat @ N @ ( minus_minus_nat @ J @ I ) )
     => ( ( nth_nat @ ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ I @ J ) ) @ N )
        = ( suc @ ( plus_plus_nat @ I @ N ) ) ) ) ).

% nth_sorted_list_of_set_greaterThanAtMost
thf(fact_1152_add__left__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_1153_add__right__cancel,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_1154_empty__iff,axiom,
    ! [C: nat] :
      ~ ( member_nat @ C @ bot_bot_set_nat ) ).

% empty_iff
thf(fact_1155_empty__iff,axiom,
    ! [C: list_nat] :
      ~ ( member_list_nat @ C @ bot_bot_set_list_nat ) ).

% empty_iff
thf(fact_1156_all__not__in__conv,axiom,
    ! [A2: set_nat] :
      ( ( ! [X3: nat] :
            ~ ( member_nat @ X3 @ A2 ) )
      = ( A2 = bot_bot_set_nat ) ) ).

% all_not_in_conv
thf(fact_1157_all__not__in__conv,axiom,
    ! [A2: set_list_nat] :
      ( ( ! [X3: list_nat] :
            ~ ( member_list_nat @ X3 @ A2 ) )
      = ( A2 = bot_bot_set_list_nat ) ) ).

% all_not_in_conv
thf(fact_1158_Collect__empty__eq,axiom,
    ! [P: nat > $o] :
      ( ( ( collect_nat @ P )
        = bot_bot_set_nat )
      = ( ! [X3: nat] :
            ~ ( P @ X3 ) ) ) ).

% Collect_empty_eq
thf(fact_1159_Collect__empty__eq,axiom,
    ! [P: list_nat > $o] :
      ( ( ( collect_list_nat @ P )
        = bot_bot_set_list_nat )
      = ( ! [X3: list_nat] :
            ~ ( P @ X3 ) ) ) ).

% Collect_empty_eq
thf(fact_1160_empty__Collect__eq,axiom,
    ! [P: nat > $o] :
      ( ( bot_bot_set_nat
        = ( collect_nat @ P ) )
      = ( ! [X3: nat] :
            ~ ( P @ X3 ) ) ) ).

% empty_Collect_eq
thf(fact_1161_empty__Collect__eq,axiom,
    ! [P: list_nat > $o] :
      ( ( bot_bot_set_list_nat
        = ( collect_list_nat @ P ) )
      = ( ! [X3: list_nat] :
            ~ ( P @ X3 ) ) ) ).

% empty_Collect_eq
thf(fact_1162_add__le__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_1163_add__le__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_1164_add_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.right_neutral
thf(fact_1165_add__cancel__left__left,axiom,
    ! [B: nat,A: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_left
thf(fact_1166_add__cancel__left__right,axiom,
    ! [A: nat,B: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_right
thf(fact_1167_add__cancel__right__left,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ B @ A ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_left
thf(fact_1168_add__cancel__right__right,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ A @ B ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_right
thf(fact_1169_add__eq__0__iff__both__eq__0,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( plus_plus_nat @ X @ Y )
        = zero_zero_nat )
      = ( ( X = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% add_eq_0_iff_both_eq_0
thf(fact_1170_zero__eq__add__iff__both__eq__0,axiom,
    ! [X: nat,Y: nat] :
      ( ( zero_zero_nat
        = ( plus_plus_nat @ X @ Y ) )
      = ( ( X = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% zero_eq_add_iff_both_eq_0
thf(fact_1171_add__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% add_0
thf(fact_1172_add__less__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_1173_add__less__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_1174_add__numeral__left,axiom,
    ! [V: num,W2: num,Z: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ ( numeral_numeral_nat @ W2 ) @ Z ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ W2 ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_1175_add__numeral__left,axiom,
    ! [V: num,W2: num,Z: extended_enat] :
      ( ( plus_p3455044024723400733d_enat @ ( numera1916890842035813515d_enat @ V ) @ ( plus_p3455044024723400733d_enat @ ( numera1916890842035813515d_enat @ W2 ) @ Z ) )
      = ( plus_p3455044024723400733d_enat @ ( numera1916890842035813515d_enat @ ( plus_plus_num @ V @ W2 ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_1176_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_1177_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_p3455044024723400733d_enat @ ( numera1916890842035813515d_enat @ M ) @ ( numera1916890842035813515d_enat @ N ) )
      = ( numera1916890842035813515d_enat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_1178_add__diff__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_1179_add__diff__cancel__left_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_1180_add__diff__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_1181_add__diff__cancel__right_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_1182_image__is__empty,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( ( image_nat_nat @ F @ A2 )
        = bot_bot_set_nat )
      = ( A2 = bot_bot_set_nat ) ) ).

% image_is_empty
thf(fact_1183_image__is__empty,axiom,
    ! [F: list_nat > nat,A2: set_list_nat] :
      ( ( ( image_list_nat_nat @ F @ A2 )
        = bot_bot_set_nat )
      = ( A2 = bot_bot_set_list_nat ) ) ).

% image_is_empty
thf(fact_1184_image__is__empty,axiom,
    ! [F: nat > list_nat,A2: set_nat] :
      ( ( ( image_nat_list_nat @ F @ A2 )
        = bot_bot_set_list_nat )
      = ( A2 = bot_bot_set_nat ) ) ).

% image_is_empty
thf(fact_1185_image__is__empty,axiom,
    ! [F: list_nat > list_nat,A2: set_list_nat] :
      ( ( ( image_7976474329151083847st_nat @ F @ A2 )
        = bot_bot_set_list_nat )
      = ( A2 = bot_bot_set_list_nat ) ) ).

% image_is_empty
thf(fact_1186_empty__is__image,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( bot_bot_set_nat
        = ( image_nat_nat @ F @ A2 ) )
      = ( A2 = bot_bot_set_nat ) ) ).

% empty_is_image
thf(fact_1187_empty__is__image,axiom,
    ! [F: list_nat > nat,A2: set_list_nat] :
      ( ( bot_bot_set_nat
        = ( image_list_nat_nat @ F @ A2 ) )
      = ( A2 = bot_bot_set_list_nat ) ) ).

% empty_is_image
thf(fact_1188_empty__is__image,axiom,
    ! [F: nat > list_nat,A2: set_nat] :
      ( ( bot_bot_set_list_nat
        = ( image_nat_list_nat @ F @ A2 ) )
      = ( A2 = bot_bot_set_nat ) ) ).

% empty_is_image
thf(fact_1189_empty__is__image,axiom,
    ! [F: list_nat > list_nat,A2: set_list_nat] :
      ( ( bot_bot_set_list_nat
        = ( image_7976474329151083847st_nat @ F @ A2 ) )
      = ( A2 = bot_bot_set_list_nat ) ) ).

% empty_is_image
thf(fact_1190_image__empty,axiom,
    ! [F: nat > nat] :
      ( ( image_nat_nat @ F @ bot_bot_set_nat )
      = bot_bot_set_nat ) ).

% image_empty
thf(fact_1191_image__empty,axiom,
    ! [F: nat > list_nat] :
      ( ( image_nat_list_nat @ F @ bot_bot_set_nat )
      = bot_bot_set_list_nat ) ).

% image_empty
thf(fact_1192_image__empty,axiom,
    ! [F: list_nat > nat] :
      ( ( image_list_nat_nat @ F @ bot_bot_set_list_nat )
      = bot_bot_set_nat ) ).

% image_empty
thf(fact_1193_image__empty,axiom,
    ! [F: list_nat > list_nat] :
      ( ( image_7976474329151083847st_nat @ F @ bot_bot_set_list_nat )
      = bot_bot_set_list_nat ) ).

% image_empty
thf(fact_1194_empty__subsetI,axiom,
    ! [A2: set_list_nat] : ( ord_le6045566169113846134st_nat @ bot_bot_set_list_nat @ A2 ) ).

% empty_subsetI
thf(fact_1195_empty__subsetI,axiom,
    ! [A2: set_nat] : ( ord_less_eq_set_nat @ bot_bot_set_nat @ A2 ) ).

% empty_subsetI
thf(fact_1196_subset__empty,axiom,
    ! [A2: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ A2 @ bot_bot_set_list_nat )
      = ( A2 = bot_bot_set_list_nat ) ) ).

% subset_empty
thf(fact_1197_subset__empty,axiom,
    ! [A2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ bot_bot_set_nat )
      = ( A2 = bot_bot_set_nat ) ) ).

% subset_empty
thf(fact_1198_singletonI,axiom,
    ! [A: nat] : ( member_nat @ A @ ( insert_nat2 @ A @ bot_bot_set_nat ) ) ).

% singletonI
thf(fact_1199_singletonI,axiom,
    ! [A: list_nat] : ( member_list_nat @ A @ ( insert_list_nat2 @ A @ bot_bot_set_list_nat ) ) ).

% singletonI
thf(fact_1200_Diff__cancel,axiom,
    ! [A2: set_nat] :
      ( ( minus_minus_set_nat @ A2 @ A2 )
      = bot_bot_set_nat ) ).

% Diff_cancel
thf(fact_1201_Diff__cancel,axiom,
    ! [A2: set_list_nat] :
      ( ( minus_7954133019191499631st_nat @ A2 @ A2 )
      = bot_bot_set_list_nat ) ).

% Diff_cancel
thf(fact_1202_empty__Diff,axiom,
    ! [A2: set_nat] :
      ( ( minus_minus_set_nat @ bot_bot_set_nat @ A2 )
      = bot_bot_set_nat ) ).

% empty_Diff
thf(fact_1203_empty__Diff,axiom,
    ! [A2: set_list_nat] :
      ( ( minus_7954133019191499631st_nat @ bot_bot_set_list_nat @ A2 )
      = bot_bot_set_list_nat ) ).

% empty_Diff
thf(fact_1204_Diff__empty,axiom,
    ! [A2: set_nat] :
      ( ( minus_minus_set_nat @ A2 @ bot_bot_set_nat )
      = A2 ) ).

% Diff_empty
thf(fact_1205_Diff__empty,axiom,
    ! [A2: set_list_nat] :
      ( ( minus_7954133019191499631st_nat @ A2 @ bot_bot_set_list_nat )
      = A2 ) ).

% Diff_empty
thf(fact_1206_add__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_1207_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_1208_add__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ M @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc_right
thf(fact_1209_nat__add__left__cancel__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_1210_nat__add__left__cancel__less,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_1211_diff__diff__left,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ I @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_1212_lessThan__0,axiom,
    ( ( set_ord_lessThan_nat @ zero_zero_nat )
    = bot_bot_set_nat ) ).

% lessThan_0
thf(fact_1213_Pow__singleton__iff,axiom,
    ! [X5: set_nat,Y6: set_nat] :
      ( ( ( pow_nat @ X5 )
        = ( insert_set_nat @ Y6 @ bot_bot_set_set_nat ) )
      = ( ( X5 = bot_bot_set_nat )
        & ( Y6 = bot_bot_set_nat ) ) ) ).

% Pow_singleton_iff
thf(fact_1214_Pow__singleton__iff,axiom,
    ! [X5: set_list_nat,Y6: set_list_nat] :
      ( ( ( pow_list_nat @ X5 )
        = ( insert_set_list_nat @ Y6 @ bot_bo3886227569956363488st_nat ) )
      = ( ( X5 = bot_bot_set_list_nat )
        & ( Y6 = bot_bot_set_list_nat ) ) ) ).

% Pow_singleton_iff
thf(fact_1215_Pow__empty,axiom,
    ( ( pow_nat @ bot_bot_set_nat )
    = ( insert_set_nat @ bot_bot_set_nat @ bot_bot_set_set_nat ) ) ).

% Pow_empty
thf(fact_1216_Pow__empty,axiom,
    ( ( pow_list_nat @ bot_bot_set_list_nat )
    = ( insert_set_list_nat @ bot_bot_set_list_nat @ bot_bo3886227569956363488st_nat ) ) ).

% Pow_empty
thf(fact_1217_nths__empty,axiom,
    ! [Xs: list_nat] :
      ( ( nths_nat @ Xs @ bot_bot_set_nat )
      = nil_nat ) ).

% nths_empty
thf(fact_1218_le__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel2
thf(fact_1219_le__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel1
thf(fact_1220_add__le__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel2
thf(fact_1221_add__le__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel1
thf(fact_1222_add__less__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel1
thf(fact_1223_add__less__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel2
thf(fact_1224_less__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel1
thf(fact_1225_less__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel2
thf(fact_1226_le__add__diff__inverse2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_1227_le__add__diff__inverse,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_1228_diff__add__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_1229_image__add__0,axiom,
    ! [S2: set_nat] :
      ( ( image_nat_nat @ ( plus_plus_nat @ zero_zero_nat ) @ S2 )
      = S2 ) ).

% image_add_0
thf(fact_1230_singleton__insert__inj__eq,axiom,
    ! [B: list_nat,A: list_nat,A2: set_list_nat] :
      ( ( ( insert_list_nat2 @ B @ bot_bot_set_list_nat )
        = ( insert_list_nat2 @ A @ A2 ) )
      = ( ( A = B )
        & ( ord_le6045566169113846134st_nat @ A2 @ ( insert_list_nat2 @ B @ bot_bot_set_list_nat ) ) ) ) ).

% singleton_insert_inj_eq
thf(fact_1231_singleton__insert__inj__eq,axiom,
    ! [B: nat,A: nat,A2: set_nat] :
      ( ( ( insert_nat2 @ B @ bot_bot_set_nat )
        = ( insert_nat2 @ A @ A2 ) )
      = ( ( A = B )
        & ( ord_less_eq_set_nat @ A2 @ ( insert_nat2 @ B @ bot_bot_set_nat ) ) ) ) ).

% singleton_insert_inj_eq
thf(fact_1232_singleton__insert__inj__eq_H,axiom,
    ! [A: list_nat,A2: set_list_nat,B: list_nat] :
      ( ( ( insert_list_nat2 @ A @ A2 )
        = ( insert_list_nat2 @ B @ bot_bot_set_list_nat ) )
      = ( ( A = B )
        & ( ord_le6045566169113846134st_nat @ A2 @ ( insert_list_nat2 @ B @ bot_bot_set_list_nat ) ) ) ) ).

% singleton_insert_inj_eq'
thf(fact_1233_singleton__insert__inj__eq_H,axiom,
    ! [A: nat,A2: set_nat,B: nat] :
      ( ( ( insert_nat2 @ A @ A2 )
        = ( insert_nat2 @ B @ bot_bot_set_nat ) )
      = ( ( A = B )
        & ( ord_less_eq_set_nat @ A2 @ ( insert_nat2 @ B @ bot_bot_set_nat ) ) ) ) ).

% singleton_insert_inj_eq'
thf(fact_1234_card_Oempty,axiom,
    ( ( finite_card_nat @ bot_bot_set_nat )
    = zero_zero_nat ) ).

% card.empty
thf(fact_1235_card_Oempty,axiom,
    ( ( finite_card_list_nat @ bot_bot_set_list_nat )
    = zero_zero_nat ) ).

% card.empty
thf(fact_1236_add__gr__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_1237_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.diff_diff_right
thf(fact_1238_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_1239_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_1240_atMost__0,axiom,
    ( ( set_ord_atMost_nat @ zero_zero_nat )
    = ( insert_nat2 @ zero_zero_nat @ bot_bot_set_nat ) ) ).

% atMost_0
thf(fact_1241_length__sum__set__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( length_sum_set @ zero_zero_nat @ N )
          = ( insert_list_nat2 @ nil_nat @ bot_bot_set_list_nat ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( length_sum_set @ zero_zero_nat @ N )
          = bot_bot_set_list_nat ) ) ) ).

% length_sum_set_Nil
thf(fact_1242_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J @ K ) ) @ I )
        = ( minus_minus_nat @ ( suc @ J ) @ ( plus_plus_nat @ K @ I ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_1243_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( suc @ ( minus_minus_nat @ J @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ ( suc @ J ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_1244_length__sum__set__Suc,axiom,
    ! [K: nat,Ks: list_nat,R2: nat,N: nat] :
      ( ( member_list_nat @ ( cons_nat @ K @ Ks ) @ ( length_sum_set @ ( suc @ R2 ) @ N ) )
      = ( ? [M6: nat] :
            ( ( member_list_nat @ Ks @ ( length_sum_set @ R2 @ M6 ) )
            & ( N
              = ( plus_plus_nat @ M6 @ K ) ) ) ) ) ).

% length_sum_set_Suc
thf(fact_1245_nth__upt,axiom,
    ! [I: nat,K: nat,J: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J )
     => ( ( nth_nat @ ( upt @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ K ) ) ) ).

% nth_upt
thf(fact_1246_less__imp__add__positive,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ? [K2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K2 )
          & ( ( plus_plus_nat @ I @ K2 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_1247_add__lessD1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

% add_lessD1
thf(fact_1248_add__less__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_less_mono
thf(fact_1249_not__add__less1,axiom,
    ! [I: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ I ) ).

% not_add_less1
thf(fact_1250_not__add__less2,axiom,
    ! [J: nat,I: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I ) @ I ) ).

% not_add_less2
thf(fact_1251_add__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_1252_trans__less__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_1253_trans__less__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_less_add2
thf(fact_1254_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M @ L )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% less_add_eq_less
thf(fact_1255_less__imp__Suc__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ? [K2: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M @ K2 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_1256_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M6: nat,N5: nat] :
        ? [K3: nat] :
          ( N5
          = ( suc @ ( plus_plus_nat @ M6 @ K3 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_1257_less__add__Suc2,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M @ I ) ) ) ).

% less_add_Suc2
thf(fact_1258_less__add__Suc1,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M ) ) ) ).

% less_add_Suc1
thf(fact_1259_less__natE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ~ ! [Q3: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M @ Q3 ) ) ) ) ).

% less_natE
thf(fact_1260_add__diff__inverse__nat,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
        = M ) ) ).

% add_diff_inverse_nat
thf(fact_1261_less__diff__conv,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_1262_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M3: nat,N3: nat] :
          ( ( ord_less_nat @ M3 @ N3 )
         => ( ord_less_nat @ ( F @ M3 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_1263_add__leE,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_1264_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1

% Helper facts (5)
thf(help_If_2_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X: list_nat,Y: list_nat] :
      ( ( if_list_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X: list_nat,Y: list_nat] :
      ( ( if_list_nat @ $true @ X @ Y )
      = X ) ).

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

thf(help_If_2_1_If_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J_T,axiom,
    ! [X: list_list_nat,Y: list_list_nat] :
      ( ( if_list_list_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J_T,axiom,
    ! [X: list_list_nat,Y: list_list_nat] :
      ( ( if_list_list_nat @ $true @ X @ Y )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( ( groups4561878855575611511st_nat @ ( dementum @ ( append_nat @ xs @ ( cons_nat @ n @ nil_nat ) ) ) )
    = n ) ).

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