TPTP Problem File: SLH0508^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    : Undirected_Graph_Theory/0017_Bipartite_Graphs/prob_00256_009284__13307740_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1426 ( 631 unt; 156 typ;   0 def)
%            Number of atoms       : 3231 (1560 equ;   0 cnn)
%            Maximal formula atoms :    7 (   2 avg)
%            Number of connectives : 10805 ( 402   ~;  57   |; 220   &;8674   @)
%                                         (   0 <=>;1452  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   6 avg)
%            Number of types       :   18 (  17 usr)
%            Number of type conns  :  385 ( 385   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  142 ( 139 usr;  28 con; 0-4 aty)
%            Number of variables   : 3012 (  52   ^;2828   !; 132   ?;3012   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 14:33:53.490
%------------------------------------------------------------------------------
% Could-be-implicit typings (17)
thf(ty_n_t__List__Olist_It__List__Olist_It__Set__Oset_Itf__a_J_J_J,type,
    list_list_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_Itf__a_J_J_J,type,
    set_set_list_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Set__Oset_Itf__a_J_J_J,type,
    set_list_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_It__Set__Oset_Itf__a_J_J_J,type,
    list_set_set_a: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_Itf__a_J_J,type,
    list_list_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    set_list_a: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    list_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    set_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Num__Onum_J,type,
    set_num: $tType ).

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

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

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

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

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

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

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

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

% Explicit typings (139)
thf(sy_c_Bipartite__Graphs_Oall__bi__edges_001tf__a,type,
    bipart6446775273385655766dges_a: set_a > set_a > set_set_a ).

thf(sy_c_Bipartite__Graphs_Obipartite__graph_001tf__a,type,
    bipart3645081245927496438raph_a: set_a > set_set_a > set_a > set_a > $o ).

thf(sy_c_Bipartite__Graphs_Obipartite__graph_Ois__bicomplete_001tf__a,type,
    bipart1400899026515230908lete_a: set_set_a > set_a > set_a > $o ).

thf(sy_c_Disjoint__Sets_Opartition__on_001tf__a,type,
    disjoi6812529866258094733n_on_a: set_a > set_set_a > $o ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_Itf__a_J,type,
    finite_card_list_a: set_list_a > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_Itf__a_J,type,
    finite_card_set_a: set_set_a > nat ).

thf(sy_c_Finite__Set_Ocard_001tf__a,type,
    finite_card_a: set_a > nat ).

thf(sy_c_Finite__Set_Ofinite_001t__Int__Oint,type,
    finite_finite_int: set_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    finite1971793804006318733_set_a: set_list_set_a > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__List__Olist_Itf__a_J,type,
    finite_finite_list_a: set_list_a > $o ).

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

thf(sy_c_Finite__Set_Ofinite_001t__Num__Onum,type,
    finite_finite_num: set_num > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    finite5282473924520328461list_a: set_set_list_a > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Set__Oset_Itf__a_J,type,
    finite_finite_set_a: set_set_a > $o ).

thf(sy_c_Finite__Set_Ofinite_001tf__a,type,
    finite_finite_a: set_a > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Int__Oint,type,
    minus_minus_int: int > int > int ).

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_Itf__a_J_J,type,
    minus_646659088055828811list_a: set_list_a > set_list_a > set_list_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    minus_5736297505244876581_set_a: set_set_a > set_set_a > set_set_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_Itf__a_J,type,
    minus_minus_set_a: set_a > set_a > set_a ).

thf(sy_c_Groups_Oone__class_Oone_001t__Int__Oint,type,
    one_one_int: int ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Int__Oint,type,
    plus_plus_int: int > int > int ).

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_Otimes__class_Otimes_001t__Nat__Onat,type,
    times_times_nat: nat > nat > nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Int__Oint,type,
    zero_zero_int: int ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

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

thf(sy_c_List_Oappend_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    append_set_set_a: list_set_set_a > list_set_set_a > list_set_set_a ).

thf(sy_c_List_Oappend_001t__Set__Oset_Itf__a_J,type,
    append_set_a: list_set_a > list_set_a > list_set_a ).

thf(sy_c_List_Oappend_001tf__a,type,
    append_a: list_a > list_a > list_a ).

thf(sy_c_List_Odistinct_001t__Set__Oset_Itf__a_J,type,
    distinct_set_a: list_set_a > $o ).

thf(sy_c_List_Odistinct_001tf__a,type,
    distinct_a: list_a > $o ).

thf(sy_c_List_Odrop_001t__Set__Oset_Itf__a_J,type,
    drop_set_a: nat > list_set_a > list_set_a ).

thf(sy_c_List_Odrop_001tf__a,type,
    drop_a: nat > list_a > list_a ).

thf(sy_c_List_Olast_001t__Set__Oset_Itf__a_J,type,
    last_set_a: list_set_a > set_a ).

thf(sy_c_List_Olast_001tf__a,type,
    last_a: list_a > a ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    cons_list_set_a: list_set_a > list_list_set_a > list_list_set_a ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__a_J,type,
    cons_list_a: list_a > list_list_a > list_list_a ).

thf(sy_c_List_Olist_OCons_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    cons_set_set_a: set_set_a > list_set_set_a > list_set_set_a ).

thf(sy_c_List_Olist_OCons_001t__Set__Oset_Itf__a_J,type,
    cons_set_a: set_a > list_set_a > list_set_a ).

thf(sy_c_List_Olist_OCons_001tf__a,type,
    cons_a: a > list_a > list_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    nil_list_set_a: list_list_set_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__a_J,type,
    nil_list_a: list_list_a ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    nil_set_set_a: list_set_set_a ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_Itf__a_J,type,
    nil_set_a: list_set_a ).

thf(sy_c_List_Olist_ONil_001tf__a,type,
    nil_a: list_a ).

thf(sy_c_List_Olist_Ohd_001t__Set__Oset_Itf__a_J,type,
    hd_set_a: list_set_a > set_a ).

thf(sy_c_List_Olist_Ohd_001tf__a,type,
    hd_a: list_a > a ).

thf(sy_c_List_Olist_Otl_001t__Set__Oset_Itf__a_J,type,
    tl_set_a: list_set_a > list_set_a ).

thf(sy_c_List_Olist_Otl_001tf__a,type,
    tl_a: list_a > list_a ).

thf(sy_c_List_Onth_001t__Set__Oset_Itf__a_J,type,
    nth_set_a: list_set_a > nat > set_a ).

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

thf(sy_c_List_Otake_001t__Set__Oset_Itf__a_J,type,
    take_set_a: nat > list_set_a > list_set_a ).

thf(sy_c_List_Otake_001tf__a,type,
    take_a: nat > list_a > list_a ).

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

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    size_size_list_set_a: list_set_a > nat ).

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

thf(sy_c_Nat_Osize__class_Osize_001t__Num__Onum,type,
    size_size_num: num > nat ).

thf(sy_c_Num_Onum_OBit0,type,
    bit0: num > num ).

thf(sy_c_Num_Onum_OBit1,type,
    bit1: num > num ).

thf(sy_c_Num_Onum_OOne,type,
    one: num ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Int__Oint,type,
    numeral_numeral_int: num > int ).

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__Int__Oint_J,type,
    bot_bot_set_int: set_int ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    bot_bot_set_list_a: set_list_a ).

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__Num__Onum_J,type,
    bot_bot_set_num: set_num ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Set__Oset_It__List__Olist_Itf__a_J_J_J,type,
    bot_bo3186585308812441520list_a: set_set_list_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    bot_bot_set_set_a: set_set_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_Itf__a_J,type,
    bot_bot_set_a: set_a ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
    ord_less_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Num__Onum,type,
    ord_less_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    ord_less_set_list_a: set_list_a > set_list_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    ord_less_set_set_a: set_set_a > set_set_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_Itf__a_J,type,
    ord_less_set_a: set_a > set_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Int__Oint,type,
    ord_less_eq_int: int > int > $o ).

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

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    ord_le8861187494160871172list_a: set_list_a > set_list_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    ord_le3724670747650509150_set_a: set_set_a > set_set_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_Itf__a_J,type,
    ord_less_eq_set_a: set_a > set_a > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Int__Oint,type,
    dvd_dvd_int: int > int > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Nat__Onat,type,
    dvd_dvd_nat: nat > nat > $o ).

thf(sy_c_Set_OCollect_001t__List__Olist_Itf__a_J,type,
    collect_list_a: ( list_a > $o ) > set_list_a ).

thf(sy_c_Set_OCollect_001t__Set__Oset_Itf__a_J,type,
    collect_set_a: ( set_a > $o ) > set_set_a ).

thf(sy_c_Set_OCollect_001tf__a,type,
    collect_a: ( a > $o ) > set_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_Itf__a_J,type,
    insert_list_a: list_a > set_list_a > set_list_a ).

thf(sy_c_Set_Oinsert_001t__Set__Oset_Itf__a_J,type,
    insert_set_a: set_a > set_set_a > set_set_a ).

thf(sy_c_Set_Oinsert_001tf__a,type,
    insert_a: a > set_a > set_a ).

thf(sy_c_Undirected__Graph__Basics_Ograph__system_Oedge__adj_001tf__a,type,
    undire4022703626023482010_adj_a: set_set_a > set_a > set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Ograph__system_Oincident_001tf__a,type,
    undire1521409233611534436dent_a: a > set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Ograph__system_Oincident__edges_001tf__a,type,
    undire3231912044278729248dges_a: set_set_a > a > set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Osgraph_Ocomplement__edges_001tf__a,type,
    undire4625228487420481630dges_a: set_a > set_set_a > set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Odegree_001tf__a,type,
    undire8867928226783802224gree_a: set_set_a > a > nat ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Ohas__loop_001tf__a,type,
    undire3617971648856834880loop_a: set_set_a > a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Oincident__loops_001tf__a,type,
    undire4753905205749729249oops_a: set_set_a > a > set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Oincident__sedges_001tf__a,type,
    undire1270416042309875431dges_a: set_set_a > a > set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Ois__edge__between_001tf__a,type,
    undire8544646567961481629ween_a: set_a > set_a > set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Ois__isolated__vertex_001tf__a,type,
    undire8931668460104145173rtex_a: set_a > set_set_a > a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Ois__loop_001tf__a,type,
    undire2905028936066782638loop_a: set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Ois__sedge_001tf__a,type,
    undire4917966558017083288edge_a: set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Oneighborhood_001tf__a,type,
    undire8504279938402040014hood_a: set_a > set_set_a > a > set_a ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Oneighbors__ss_001tf__a,type,
    undire401937927514038589s_ss_a: set_set_a > a > set_a > set_a ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Overt__adj_001tf__a,type,
    undire397441198561214472_adj_a: set_set_a > a > a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ocycles_001tf__a,type,
    undire2685670433559799090cles_a: set_a > set_set_a > set_list_a ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ogen__paths_001tf__a,type,
    undire6235733737954427521aths_a: set_a > set_set_a > set_list_a ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ois__closed__walk_001tf__a,type,
    undire3370724456595283424walk_a: set_a > set_set_a > list_a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ois__cycle_001tf__a,type,
    undire2407311113669455967ycle_a: set_a > set_set_a > list_a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ois__gen__path_001tf__a,type,
    undire3562951555376170320path_a: set_a > set_set_a > list_a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ois__open__walk_001tf__a,type,
    undire2427028224930250914walk_a: set_a > set_set_a > list_a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ois__path_001tf__a,type,
    undire427332500224447920path_a: set_a > set_set_a > list_a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ois__trail_001tf__a,type,
    undire7142031287334043199rail_a: set_a > set_set_a > list_a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Ois__walk_001tf__a,type,
    undire6133010728901294956walk_a: set_a > set_set_a > list_a > $o ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Opaths_001tf__a,type,
    undire1387732426225024653aths_a: set_a > set_set_a > set_list_a ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Owalk__edges_001t__Set__Oset_Itf__a_J,type,
    undire6234387080713648494_set_a: list_set_a > list_set_set_a ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Owalk__edges_001tf__a,type,
    undire7337870655677353998dges_a: list_a > list_set_a ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Owalk__length_001t__Set__Oset_Itf__a_J,type,
    undire4424681683220949296_set_a: list_set_a > nat ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Owalk__length_001tf__a,type,
    undire8849074589633906640ngth_a: list_a > nat ).

thf(sy_c_Undirected__Graph__Walks_Oulgraph_Owalks_001tf__a,type,
    undire3736599831911450577alks_a: set_a > set_set_a > set_list_a ).

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

thf(sy_c_member_001t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    member_list_set_a: list_set_a > set_list_set_a > $o ).

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

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

thf(sy_c_member_001t__Num__Onum,type,
    member_num: num > set_num > $o ).

thf(sy_c_member_001t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    member_set_list_a: set_list_a > set_set_list_a > $o ).

thf(sy_c_member_001t__Set__Oset_Itf__a_J,type,
    member_set_a: set_a > set_set_a > $o ).

thf(sy_c_member_001tf__a,type,
    member_a: a > set_a > $o ).

thf(sy_v_X,type,
    x: set_a ).

thf(sy_v_Y,type,
    y: set_a ).

thf(sy_v_edges,type,
    edges: set_set_a ).

thf(sy_v_n____,type,
    n: nat ).

thf(sy_v_vertices,type,
    vertices: set_a ).

thf(sy_v_w,type,
    w: list_a ).

thf(sy_v_w1____,type,
    w1: list_a ).

thf(sy_v_w2____,type,
    w2: list_a ).

thf(sy_v_wa____,type,
    wa: list_a ).

% Relevant facts (1266)
thf(fact_0_step_Oprems_I1_J,axiom,
    undire6133010728901294956walk_a @ vertices @ edges @ wa ).

% step.prems(1)
thf(fact_1_ne,axiom,
    w1 != nil_a ).

% ne
thf(fact_2_step_Oprems_I2_J,axiom,
    member_a @ ( hd_a @ wa ) @ x ).

% step.prems(2)
thf(fact_3_w1n,axiom,
    ( ( size_size_list_a @ w1 )
    = n ) ).

% w1n
thf(fact_4_step_Oprems_I3_J,axiom,
    member_a @ ( last_a @ wa ) @ x ).

% step.prems(3)
thf(fact_5__092_060open_062w_A_B_A_In_A_N_A1_J_A_092_060in_062_AX_092_060close_062,axiom,
    member_a @ ( nth_a @ wa @ ( minus_minus_nat @ n @ one_one_nat ) ) @ x ).

% \<open>w ! (n - 1) \<in> X\<close>
thf(fact_6_assms_I3_J,axiom,
    member_a @ ( last_a @ w ) @ x ).

% assms(3)
thf(fact_7_assms_I2_J,axiom,
    member_a @ ( hd_a @ w ) @ x ).

% assms(2)
thf(fact_8__092_060open_062w1_A_092_060noteq_062_A_091_093_A_092_060Longrightarrow_062_Alast_Aw1_A_061_Aw1_A_B_A_Ilength_Aw1_A_N_A1_J_092_060close_062,axiom,
    ( ( w1 != nil_a )
   => ( ( last_a @ w1 )
      = ( nth_a @ w1 @ ( minus_minus_nat @ ( size_size_list_a @ w1 ) @ one_one_nat ) ) ) ) ).

% \<open>w1 \<noteq> [] \<Longrightarrow> last w1 = w1 ! (length w1 - 1)\<close>
thf(fact_9_False,axiom,
    n != zero_zero_nat ).

% False
thf(fact_10_hdw1,axiom,
    member_a @ ( hd_a @ w1 ) @ x ).

% hdw1
thf(fact_11_step_Ohyps_I2_J,axiom,
    ( ( plus_plus_nat @ n @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = ( size_size_list_a @ wa ) ) ).

% step.hyps(2)
thf(fact_12_X__not__empty,axiom,
    x != bot_bot_set_a ).

% X_not_empty
thf(fact_13_w1,axiom,
    ( w1
    = ( take_a @ n @ wa ) ) ).

% w1
thf(fact_14_w1__walk,axiom,
    undire6133010728901294956walk_a @ vertices @ edges @ w1 ).

% w1_walk
thf(fact_15_weq,axiom,
    ( wa
    = ( append_a @ w1 @ w2 ) ) ).

% weq
thf(fact_16_is__walk__wf__last,axiom,
    ! [Xs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
     => ( member_a @ ( last_a @ Xs ) @ vertices ) ) ).

% is_walk_wf_last
thf(fact_17_X__verts__not__adj,axiom,
    ! [X1: a,X2: a] :
      ( ( member_a @ X1 @ x )
     => ( ( member_a @ X2 @ x )
       => ~ ( undire397441198561214472_adj_a @ edges @ X1 @ X2 ) ) ) ).

% X_verts_not_adj
thf(fact_18_partitions__ss_I1_J,axiom,
    ord_less_eq_set_a @ x @ vertices ).

% partitions_ss(1)
thf(fact_19__092_060open_062last_Aw_A_061_Aw_A_B_A_In_A_L_A1_J_092_060close_062,axiom,
    ( ( last_a @ wa )
    = ( nth_a @ wa @ ( plus_plus_nat @ n @ one_one_nat ) ) ) ).

% \<open>last w = w ! (n + 1)\<close>
thf(fact_20_IH,axiom,
    ! [W: list_a] :
      ( ( n
        = ( size_size_list_a @ W ) )
     => ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
       => ( ( member_a @ ( hd_a @ W ) @ x )
         => ( ( member_a @ ( last_a @ W ) @ x )
           => ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( undire8849074589633906640ngth_a @ W ) ) ) ) ) ) ).

% IH
thf(fact_21_incident__def,axiom,
    undire1521409233611534436dent_a = member_a ).

% incident_def
thf(fact_22_hd__Nil__eq__last,axiom,
    ( ( hd_a @ nil_a )
    = ( last_a @ nil_a ) ) ).

% hd_Nil_eq_last
thf(fact_23_hd__Nil__eq__last,axiom,
    ( ( hd_set_a @ nil_set_a )
    = ( last_set_a @ nil_set_a ) ) ).

% hd_Nil_eq_last
thf(fact_24_empty__not__edge,axiom,
    ~ ( member_set_a @ bot_bot_set_a @ edges ) ).

% empty_not_edge
thf(fact_25_vert__adj__sym,axiom,
    ! [V1: a,V2: a] :
      ( ( undire397441198561214472_adj_a @ edges @ V1 @ V2 )
      = ( undire397441198561214472_adj_a @ edges @ V2 @ V1 ) ) ).

% vert_adj_sym
thf(fact_26_assms_I1_J,axiom,
    undire6133010728901294956walk_a @ vertices @ edges @ w ).

% assms(1)
thf(fact_27_vert__adj__edge__iff2,axiom,
    ! [V1: a,V2: a] :
      ( ( V1 != V2 )
     => ( ( undire397441198561214472_adj_a @ edges @ V1 @ V2 )
        = ( ? [X: set_a] :
              ( ( member_set_a @ X @ edges )
              & ( undire1521409233611534436dent_a @ V1 @ X )
              & ( undire1521409233611534436dent_a @ V2 @ X ) ) ) ) ) ).

% vert_adj_edge_iff2
thf(fact_28_wellformed,axiom,
    ! [E: set_a] :
      ( ( member_set_a @ E @ edges )
     => ( ord_less_eq_set_a @ E @ vertices ) ) ).

% wellformed
thf(fact_29_vert__adj__imp__inV,axiom,
    ! [V1: a,V2: a] :
      ( ( undire397441198561214472_adj_a @ edges @ V1 @ V2 )
     => ( ( member_a @ V1 @ vertices )
        & ( member_a @ V2 @ vertices ) ) ) ).

% vert_adj_imp_inV
thf(fact_30_incident__edge__in__wf,axiom,
    ! [E: set_a,V: a] :
      ( ( member_set_a @ E @ edges )
     => ( ( undire1521409233611534436dent_a @ V @ E )
       => ( member_a @ V @ vertices ) ) ) ).

% incident_edge_in_wf
thf(fact_31_walk__length__conv,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P: list_a] : ( minus_minus_nat @ ( size_size_list_a @ P ) @ one_one_nat ) ) ) ).

% walk_length_conv
thf(fact_32_append_Oassoc,axiom,
    ! [A: list_a,B: list_a,C: list_a] :
      ( ( append_a @ ( append_a @ A @ B ) @ C )
      = ( append_a @ A @ ( append_a @ B @ C ) ) ) ).

% append.assoc
thf(fact_33_append_Oassoc,axiom,
    ! [A: list_set_a,B: list_set_a,C: list_set_a] :
      ( ( append_set_a @ ( append_set_a @ A @ B ) @ C )
      = ( append_set_a @ A @ ( append_set_a @ B @ C ) ) ) ).

% append.assoc
thf(fact_34_append__assoc,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_a] :
      ( ( append_a @ ( append_a @ Xs @ Ys ) @ Zs )
      = ( append_a @ Xs @ ( append_a @ Ys @ Zs ) ) ) ).

% append_assoc
thf(fact_35_append__assoc,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,Zs: list_set_a] :
      ( ( append_set_a @ ( append_set_a @ Xs @ Ys ) @ Zs )
      = ( append_set_a @ Xs @ ( append_set_a @ Ys @ Zs ) ) ) ).

% append_assoc
thf(fact_36_append__same__eq,axiom,
    ! [Ys: list_a,Xs: list_a,Zs: list_a] :
      ( ( ( append_a @ Ys @ Xs )
        = ( append_a @ Zs @ Xs ) )
      = ( Ys = Zs ) ) ).

% append_same_eq
thf(fact_37_append__same__eq,axiom,
    ! [Ys: list_set_a,Xs: list_set_a,Zs: list_set_a] :
      ( ( ( append_set_a @ Ys @ Xs )
        = ( append_set_a @ Zs @ Xs ) )
      = ( Ys = Zs ) ) ).

% append_same_eq
thf(fact_38_same__append__eq,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_a] :
      ( ( ( append_a @ Xs @ Ys )
        = ( append_a @ Xs @ Zs ) )
      = ( Ys = Zs ) ) ).

% same_append_eq
thf(fact_39_same__append__eq,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,Zs: list_set_a] :
      ( ( ( append_set_a @ Xs @ Ys )
        = ( append_set_a @ Xs @ Zs ) )
      = ( Ys = Zs ) ) ).

% same_append_eq
thf(fact_40_is__walk__not__empty2,axiom,
    ~ ( undire6133010728901294956walk_a @ vertices @ edges @ nil_a ) ).

% is_walk_not_empty2
thf(fact_41_is__walk__not__empty,axiom,
    ! [Xs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
     => ( Xs != nil_a ) ) ).

% is_walk_not_empty
thf(fact_42_is__walk__wf__hd,axiom,
    ! [Xs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
     => ( member_a @ ( hd_a @ Xs ) @ vertices ) ) ).

% is_walk_wf_hd
thf(fact_43_walk__length__app,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( Xs != nil_a )
     => ( ( Ys != nil_a )
       => ( ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys ) )
          = ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys ) ) @ one_one_nat ) ) ) ) ).

% walk_length_app
thf(fact_44__092_060open_062length_Aw2_A_061_A2_092_060close_062,axiom,
    ( ( size_size_list_a @ w2 )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% \<open>length w2 = 2\<close>
thf(fact_45_append_Oright__neutral,axiom,
    ! [A: list_a] :
      ( ( append_a @ A @ nil_a )
      = A ) ).

% append.right_neutral
thf(fact_46_append_Oright__neutral,axiom,
    ! [A: list_set_a] :
      ( ( append_set_a @ A @ nil_set_a )
      = A ) ).

% append.right_neutral
thf(fact_47_append__Nil2,axiom,
    ! [Xs: list_a] :
      ( ( append_a @ Xs @ nil_a )
      = Xs ) ).

% append_Nil2
thf(fact_48_append__Nil2,axiom,
    ! [Xs: list_set_a] :
      ( ( append_set_a @ Xs @ nil_set_a )
      = Xs ) ).

% append_Nil2
thf(fact_49_append__self__conv,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( append_a @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_a ) ) ).

% append_self_conv
thf(fact_50_append__self__conv,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ( append_set_a @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_set_a ) ) ).

% append_self_conv
thf(fact_51_self__append__conv,axiom,
    ! [Y: list_a,Ys: list_a] :
      ( ( Y
        = ( append_a @ Y @ Ys ) )
      = ( Ys = nil_a ) ) ).

% self_append_conv
thf(fact_52_self__append__conv,axiom,
    ! [Y: list_set_a,Ys: list_set_a] :
      ( ( Y
        = ( append_set_a @ Y @ Ys ) )
      = ( Ys = nil_set_a ) ) ).

% self_append_conv
thf(fact_53_append__self__conv2,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( append_a @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_a ) ) ).

% append_self_conv2
thf(fact_54_append__self__conv2,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ( append_set_a @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_set_a ) ) ).

% append_self_conv2
thf(fact_55_mem__Collect__eq,axiom,
    ! [A: a,P2: a > $o] :
      ( ( member_a @ A @ ( collect_a @ P2 ) )
      = ( P2 @ A ) ) ).

% mem_Collect_eq
thf(fact_56_mem__Collect__eq,axiom,
    ! [A: set_a,P2: set_a > $o] :
      ( ( member_set_a @ A @ ( collect_set_a @ P2 ) )
      = ( P2 @ A ) ) ).

% mem_Collect_eq
thf(fact_57_mem__Collect__eq,axiom,
    ! [A: list_a,P2: list_a > $o] :
      ( ( member_list_a @ A @ ( collect_list_a @ P2 ) )
      = ( P2 @ A ) ) ).

% mem_Collect_eq
thf(fact_58_Collect__mem__eq,axiom,
    ! [A2: set_a] :
      ( ( collect_a
        @ ^ [X: a] : ( member_a @ X @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_59_Collect__mem__eq,axiom,
    ! [A2: set_set_a] :
      ( ( collect_set_a
        @ ^ [X: set_a] : ( member_set_a @ X @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_60_Collect__mem__eq,axiom,
    ! [A2: set_list_a] :
      ( ( collect_list_a
        @ ^ [X: list_a] : ( member_list_a @ X @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_61_self__append__conv2,axiom,
    ! [Y: list_a,Xs: list_a] :
      ( ( Y
        = ( append_a @ Xs @ Y ) )
      = ( Xs = nil_a ) ) ).

% self_append_conv2
thf(fact_62_self__append__conv2,axiom,
    ! [Y: list_set_a,Xs: list_set_a] :
      ( ( Y
        = ( append_set_a @ Xs @ Y ) )
      = ( Xs = nil_set_a ) ) ).

% self_append_conv2
thf(fact_63_Nil__is__append__conv,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( nil_a
        = ( append_a @ Xs @ Ys ) )
      = ( ( Xs = nil_a )
        & ( Ys = nil_a ) ) ) ).

% Nil_is_append_conv
thf(fact_64_Nil__is__append__conv,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( nil_set_a
        = ( append_set_a @ Xs @ Ys ) )
      = ( ( Xs = nil_set_a )
        & ( Ys = nil_set_a ) ) ) ).

% Nil_is_append_conv
thf(fact_65_append__is__Nil__conv,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( append_a @ Xs @ Ys )
        = nil_a )
      = ( ( Xs = nil_a )
        & ( Ys = nil_a ) ) ) ).

% append_is_Nil_conv
thf(fact_66_append__is__Nil__conv,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ( append_set_a @ Xs @ Ys )
        = nil_set_a )
      = ( ( Xs = nil_set_a )
        & ( Ys = nil_set_a ) ) ) ).

% append_is_Nil_conv
thf(fact_67_append__eq__append__conv,axiom,
    ! [Xs: list_a,Ys: list_a,Us: list_a,Vs: list_a] :
      ( ( ( ( size_size_list_a @ Xs )
          = ( size_size_list_a @ Ys ) )
        | ( ( size_size_list_a @ Us )
          = ( size_size_list_a @ Vs ) ) )
     => ( ( ( append_a @ Xs @ Us )
          = ( append_a @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_68_append__eq__append__conv,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,Us: list_set_a,Vs: list_set_a] :
      ( ( ( ( size_size_list_set_a @ Xs )
          = ( size_size_list_set_a @ Ys ) )
        | ( ( size_size_list_set_a @ Us )
          = ( size_size_list_set_a @ Vs ) ) )
     => ( ( ( append_set_a @ Xs @ Us )
          = ( append_set_a @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_69_length__0__conv,axiom,
    ! [Xs: list_a] :
      ( ( ( size_size_list_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_a ) ) ).

% length_0_conv
thf(fact_70_length__0__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( ( size_size_list_set_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_set_a ) ) ).

% length_0_conv
thf(fact_71_length__append,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( size_size_list_a @ ( append_a @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_size_list_a @ Xs ) @ ( size_size_list_a @ Ys ) ) ) ).

% length_append
thf(fact_72_length__append,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( size_size_list_set_a @ ( append_set_a @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_size_list_set_a @ Xs ) @ ( size_size_list_set_a @ Ys ) ) ) ).

% length_append
thf(fact_73_take0,axiom,
    ( ( take_a @ zero_zero_nat )
    = ( ^ [Xs2: list_a] : nil_a ) ) ).

% take0
thf(fact_74_take0,axiom,
    ( ( take_set_a @ zero_zero_nat )
    = ( ^ [Xs2: list_set_a] : nil_set_a ) ) ).

% take0
thf(fact_75_take__eq__Nil,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ( take_a @ N @ Xs )
        = nil_a )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_a ) ) ) ).

% take_eq_Nil
thf(fact_76_take__eq__Nil,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ( take_set_a @ N @ Xs )
        = nil_set_a )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_set_a ) ) ) ).

% take_eq_Nil
thf(fact_77_take__eq__Nil2,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( nil_a
        = ( take_a @ N @ Xs ) )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_a ) ) ) ).

% take_eq_Nil2
thf(fact_78_take__eq__Nil2,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( nil_set_a
        = ( take_set_a @ N @ Xs ) )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_set_a ) ) ) ).

% take_eq_Nil2
thf(fact_79_hd__append2,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( Xs != nil_a )
     => ( ( hd_a @ ( append_a @ Xs @ Ys ) )
        = ( hd_a @ Xs ) ) ) ).

% hd_append2
thf(fact_80_hd__append2,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( ( hd_set_a @ ( append_set_a @ Xs @ Ys ) )
        = ( hd_set_a @ Xs ) ) ) ).

% hd_append2
thf(fact_81_last__appendR,axiom,
    ! [Ys: list_a,Xs: list_a] :
      ( ( Ys != nil_a )
     => ( ( last_a @ ( append_a @ Xs @ Ys ) )
        = ( last_a @ Ys ) ) ) ).

% last_appendR
thf(fact_82_last__appendR,axiom,
    ! [Ys: list_set_a,Xs: list_set_a] :
      ( ( Ys != nil_set_a )
     => ( ( last_set_a @ ( append_set_a @ Xs @ Ys ) )
        = ( last_set_a @ Ys ) ) ) ).

% last_appendR
thf(fact_83_last__appendL,axiom,
    ! [Ys: list_a,Xs: list_a] :
      ( ( Ys = nil_a )
     => ( ( last_a @ ( append_a @ Xs @ Ys ) )
        = ( last_a @ Xs ) ) ) ).

% last_appendL
thf(fact_84_last__appendL,axiom,
    ! [Ys: list_set_a,Xs: list_set_a] :
      ( ( Ys = nil_set_a )
     => ( ( last_set_a @ ( append_set_a @ Xs @ Ys ) )
        = ( last_set_a @ Xs ) ) ) ).

% last_appendL
thf(fact_85_nth__append__length__plus,axiom,
    ! [Xs: list_a,Ys: list_a,N: nat] :
      ( ( nth_a @ ( append_a @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_size_list_a @ Xs ) @ N ) )
      = ( nth_a @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_86_nth__append__length__plus,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,N: nat] :
      ( ( nth_set_a @ ( append_set_a @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_size_list_set_a @ Xs ) @ N ) )
      = ( nth_set_a @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_87_take__append,axiom,
    ! [N: nat,Xs: list_a,Ys: list_a] :
      ( ( take_a @ N @ ( append_a @ Xs @ Ys ) )
      = ( append_a @ ( take_a @ N @ Xs ) @ ( take_a @ ( minus_minus_nat @ N @ ( size_size_list_a @ Xs ) ) @ Ys ) ) ) ).

% take_append
thf(fact_88_take__append,axiom,
    ! [N: nat,Xs: list_set_a,Ys: list_set_a] :
      ( ( take_set_a @ N @ ( append_set_a @ Xs @ Ys ) )
      = ( append_set_a @ ( take_set_a @ N @ Xs ) @ ( take_set_a @ ( minus_minus_nat @ N @ ( size_size_list_set_a @ Xs ) ) @ Ys ) ) ) ).

% take_append
thf(fact_89_w2,axiom,
    ( w2
    = ( drop_a @ n @ wa ) ) ).

% w2
thf(fact_90_edge__adj__inE,axiom,
    ! [E1: set_a,E2: set_a] :
      ( ( undire4022703626023482010_adj_a @ edges @ E1 @ E2 )
     => ( ( member_set_a @ E1 @ edges )
        & ( member_set_a @ E2 @ edges ) ) ) ).

% edge_adj_inE
thf(fact_91_edge__adjacent__alt__def,axiom,
    ! [E1: set_a,E2: set_a] :
      ( ( member_set_a @ E1 @ edges )
     => ( ( member_set_a @ E2 @ edges )
       => ( ? [X3: a] :
              ( ( member_a @ X3 @ vertices )
              & ( member_a @ X3 @ E1 )
              & ( member_a @ X3 @ E2 ) )
         => ( undire4022703626023482010_adj_a @ edges @ E1 @ E2 ) ) ) ) ).

% edge_adjacent_alt_def
thf(fact_92_list_Osize_I3_J,axiom,
    ( ( size_size_list_a @ nil_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_93_list_Osize_I3_J,axiom,
    ( ( size_size_list_set_a @ nil_set_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_94_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_a @ N @ nil_a )
      = nil_a ) ).

% take_Nil
thf(fact_95_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_set_a @ N @ nil_set_a )
      = nil_set_a ) ).

% take_Nil
thf(fact_96_append__Nil,axiom,
    ! [Ys: list_a] :
      ( ( append_a @ nil_a @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_97_append__Nil,axiom,
    ! [Ys: list_set_a] :
      ( ( append_set_a @ nil_set_a @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_98_append_Oleft__neutral,axiom,
    ! [A: list_a] :
      ( ( append_a @ nil_a @ A )
      = A ) ).

% append.left_neutral
thf(fact_99_append_Oleft__neutral,axiom,
    ! [A: list_set_a] :
      ( ( append_set_a @ nil_set_a @ A )
      = A ) ).

% append.left_neutral
thf(fact_100_take__0,axiom,
    ! [Xs: list_a] :
      ( ( take_a @ zero_zero_nat @ Xs )
      = nil_a ) ).

% take_0
thf(fact_101_take__0,axiom,
    ! [Xs: list_set_a] :
      ( ( take_set_a @ zero_zero_nat @ Xs )
      = nil_set_a ) ).

% take_0
thf(fact_102_hd__append,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( Xs = nil_a )
       => ( ( hd_a @ ( append_a @ Xs @ Ys ) )
          = ( hd_a @ Ys ) ) )
      & ( ( Xs != nil_a )
       => ( ( hd_a @ ( append_a @ Xs @ Ys ) )
          = ( hd_a @ Xs ) ) ) ) ).

% hd_append
thf(fact_103_hd__append,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ( Xs = nil_set_a )
       => ( ( hd_set_a @ ( append_set_a @ Xs @ Ys ) )
          = ( hd_set_a @ Ys ) ) )
      & ( ( Xs != nil_set_a )
       => ( ( hd_set_a @ ( append_set_a @ Xs @ Ys ) )
          = ( hd_set_a @ Xs ) ) ) ) ).

% hd_append
thf(fact_104_hd__conv__nth,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ( ( hd_a @ Xs )
        = ( nth_a @ Xs @ zero_zero_nat ) ) ) ).

% hd_conv_nth
thf(fact_105_hd__conv__nth,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( ( hd_set_a @ Xs )
        = ( nth_set_a @ Xs @ zero_zero_nat ) ) ) ).

% hd_conv_nth
thf(fact_106_eq__Nil__appendI,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_a @ nil_a @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_107_eq__Nil__appendI,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_set_a @ nil_set_a @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_108_take__equalityI,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ! [I: nat] :
          ( ( take_a @ I @ Xs )
          = ( take_a @ I @ Ys ) )
     => ( Xs = Ys ) ) ).

% take_equalityI
thf(fact_109_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs3: list_a] :
      ( ( size_size_list_a @ Xs3 )
      = N ) ).

% Ex_list_of_length
thf(fact_110_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs3: list_set_a] :
      ( ( size_size_list_set_a @ Xs3 )
      = N ) ).

% Ex_list_of_length
thf(fact_111_append__eq__appendI,axiom,
    ! [Xs: list_a,Xs1: list_a,Zs: list_a,Ys: list_a,Us: list_a] :
      ( ( ( append_a @ Xs @ Xs1 )
        = Zs )
     => ( ( Ys
          = ( append_a @ Xs1 @ Us ) )
       => ( ( append_a @ Xs @ Ys )
          = ( append_a @ Zs @ Us ) ) ) ) ).

% append_eq_appendI
thf(fact_112_append__eq__appendI,axiom,
    ! [Xs: list_set_a,Xs1: list_set_a,Zs: list_set_a,Ys: list_set_a,Us: list_set_a] :
      ( ( ( append_set_a @ Xs @ Xs1 )
        = Zs )
     => ( ( Ys
          = ( append_set_a @ Xs1 @ Us ) )
       => ( ( append_set_a @ Xs @ Ys )
          = ( append_set_a @ Zs @ Us ) ) ) ) ).

% append_eq_appendI
thf(fact_113_neq__if__length__neq,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( size_size_list_a @ Xs )
       != ( size_size_list_a @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_114_neq__if__length__neq,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ( size_size_list_set_a @ Xs )
       != ( size_size_list_set_a @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_115_longest__common__prefix,axiom,
    ! [Xs: list_a,Ys: list_a] :
    ? [Ps: list_a,Xs4: list_a,Ys2: list_a] :
      ( ( Xs
        = ( append_a @ Ps @ Xs4 ) )
      & ( Ys
        = ( append_a @ Ps @ Ys2 ) )
      & ( ( Xs4 = nil_a )
        | ( Ys2 = nil_a )
        | ( ( hd_a @ Xs4 )
         != ( hd_a @ Ys2 ) ) ) ) ).

% longest_common_prefix
thf(fact_116_longest__common__prefix,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
    ? [Ps: list_set_a,Xs4: list_set_a,Ys2: list_set_a] :
      ( ( Xs
        = ( append_set_a @ Ps @ Xs4 ) )
      & ( Ys
        = ( append_set_a @ Ps @ Ys2 ) )
      & ( ( Xs4 = nil_set_a )
        | ( Ys2 = nil_set_a )
        | ( ( hd_set_a @ Xs4 )
         != ( hd_set_a @ Ys2 ) ) ) ) ).

% longest_common_prefix
thf(fact_117_append__eq__append__conv2,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_a,Ts: list_a] :
      ( ( ( append_a @ Xs @ Ys )
        = ( append_a @ Zs @ Ts ) )
      = ( ? [Us2: list_a] :
            ( ( ( Xs
                = ( append_a @ Zs @ Us2 ) )
              & ( ( append_a @ Us2 @ Ys )
                = Ts ) )
            | ( ( ( append_a @ Xs @ Us2 )
                = Zs )
              & ( Ys
                = ( append_a @ Us2 @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_118_append__eq__append__conv2,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,Zs: list_set_a,Ts: list_set_a] :
      ( ( ( append_set_a @ Xs @ Ys )
        = ( append_set_a @ Zs @ Ts ) )
      = ( ? [Us2: list_set_a] :
            ( ( ( Xs
                = ( append_set_a @ Zs @ Us2 ) )
              & ( ( append_set_a @ Us2 @ Ys )
                = Ts ) )
            | ( ( ( append_set_a @ Xs @ Us2 )
                = Zs )
              & ( Ys
                = ( append_set_a @ Us2 @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_119_longest__common__suffix,axiom,
    ! [Xs: list_a,Ys: list_a] :
    ? [Ss: list_a,Xs4: list_a,Ys2: list_a] :
      ( ( Xs
        = ( append_a @ Xs4 @ Ss ) )
      & ( Ys
        = ( append_a @ Ys2 @ Ss ) )
      & ( ( Xs4 = nil_a )
        | ( Ys2 = nil_a )
        | ( ( last_a @ Xs4 )
         != ( last_a @ Ys2 ) ) ) ) ).

% longest_common_suffix
thf(fact_120_longest__common__suffix,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
    ? [Ss: list_set_a,Xs4: list_set_a,Ys2: list_set_a] :
      ( ( Xs
        = ( append_set_a @ Xs4 @ Ss ) )
      & ( Ys
        = ( append_set_a @ Ys2 @ Ss ) )
      & ( ( Xs4 = nil_set_a )
        | ( Ys2 = nil_set_a )
        | ( ( last_set_a @ Xs4 )
         != ( last_set_a @ Ys2 ) ) ) ) ).

% longest_common_suffix
thf(fact_121_last__append,axiom,
    ! [Ys: list_a,Xs: list_a] :
      ( ( ( Ys = nil_a )
       => ( ( last_a @ ( append_a @ Xs @ Ys ) )
          = ( last_a @ Xs ) ) )
      & ( ( Ys != nil_a )
       => ( ( last_a @ ( append_a @ Xs @ Ys ) )
          = ( last_a @ Ys ) ) ) ) ).

% last_append
thf(fact_122_last__append,axiom,
    ! [Ys: list_set_a,Xs: list_set_a] :
      ( ( ( Ys = nil_set_a )
       => ( ( last_set_a @ ( append_set_a @ Xs @ Ys ) )
          = ( last_set_a @ Xs ) ) )
      & ( ( Ys != nil_set_a )
       => ( ( last_set_a @ ( append_set_a @ Xs @ Ys ) )
          = ( last_set_a @ Ys ) ) ) ) ).

% last_append
thf(fact_123_last__conv__nth,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ( ( last_a @ Xs )
        = ( nth_a @ Xs @ ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ one_one_nat ) ) ) ) ).

% last_conv_nth
thf(fact_124_last__conv__nth,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( ( last_set_a @ Xs )
        = ( nth_set_a @ Xs @ ( minus_minus_nat @ ( size_size_list_set_a @ Xs ) @ one_one_nat ) ) ) ) ).

% last_conv_nth
thf(fact_125_is__open__walk__def,axiom,
    ! [Xs: list_a] :
      ( ( undire2427028224930250914walk_a @ vertices @ edges @ Xs )
      = ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
        & ( ( hd_a @ Xs )
         != ( last_a @ Xs ) ) ) ) ).

% is_open_walk_def
thf(fact_126_is__closed__walk__def,axiom,
    ! [Xs: list_a] :
      ( ( undire3370724456595283424walk_a @ vertices @ edges @ Xs )
      = ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
        & ( ( hd_a @ Xs )
          = ( last_a @ Xs ) ) ) ) ).

% is_closed_walk_def
thf(fact_127_is__isolated__vertex__edge,axiom,
    ! [V: a,E: set_a] :
      ( ( undire8931668460104145173rtex_a @ vertices @ edges @ V )
     => ( ( member_set_a @ E @ edges )
       => ~ ( undire1521409233611534436dent_a @ V @ E ) ) ) ).

% is_isolated_vertex_edge
thf(fact_128_is__isolated__vertex__def,axiom,
    ! [V: a] :
      ( ( undire8931668460104145173rtex_a @ vertices @ edges @ V )
      = ( ( member_a @ V @ vertices )
        & ! [X: a] :
            ( ( member_a @ X @ vertices )
           => ~ ( undire397441198561214472_adj_a @ edges @ X @ V ) ) ) ) ).

% is_isolated_vertex_def
thf(fact_129_even__diff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_int @ A @ B ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) ) ) ).

% even_diff
thf(fact_130_even__plus__one__iff,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ one_one_nat ) )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_plus_one_iff
thf(fact_131_even__plus__one__iff,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ one_one_int ) )
      = ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) ) ).

% even_plus_one_iff
thf(fact_132_odd__add,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ B ) ) )
      = ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) )
       != ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) ) ) ).

% odd_add
thf(fact_133_odd__add,axiom,
    ! [A: int,B: int] :
      ( ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) ) )
      = ( ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
       != ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) ) ) ).

% odd_add
thf(fact_134_even__add,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ B ) )
      = ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
        = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B ) ) ) ).

% even_add
thf(fact_135_even__add,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) )
      = ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
        = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) ) ).

% even_add
thf(fact_136_one__add__one,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_137_one__add__one,axiom,
    ( ( plus_plus_int @ one_one_int @ one_one_int )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_138_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_139_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ N ) @ one_one_int )
      = ( numeral_numeral_int @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_140_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_141_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_142_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_nat @ M )
        = ( numeral_numeral_nat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_143_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_int @ M )
        = ( numeral_numeral_int @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_144_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_145_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_146_drop0,axiom,
    ( ( drop_a @ zero_zero_nat )
    = ( ^ [X: list_a] : X ) ) ).

% drop0
thf(fact_147_drop__drop,axiom,
    ! [N: nat,M: nat,Xs: list_a] :
      ( ( drop_a @ N @ ( drop_a @ M @ Xs ) )
      = ( drop_a @ ( plus_plus_nat @ N @ M ) @ Xs ) ) ).

% drop_drop
thf(fact_148__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062w1_Aw2_O_A_092_060lbrakk_062w_A_061_Aw1_A_064_Aw2_059_Aw1_A_061_Atake_An_Aw_059_Aw2_A_061_Adrop_An_Aw_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
    ~ ! [W1: list_a,W2: list_a] :
        ( ( wa
          = ( append_a @ W1 @ W2 ) )
       => ( ( W1
            = ( take_a @ n @ wa ) )
         => ( W2
           != ( drop_a @ n @ wa ) ) ) ) ).

% \<open>\<And>thesis. (\<And>w1 w2. \<lbrakk>w = w1 @ w2; w1 = take n w; w2 = drop n w\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_149_diff__numeral__special_I9_J,axiom,
    ( ( minus_minus_int @ one_one_int @ one_one_int )
    = zero_zero_int ) ).

% diff_numeral_special(9)
thf(fact_150_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_nat
        = ( numeral_numeral_nat @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_151_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_int
        = ( numeral_numeral_int @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_152_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_nat @ N )
        = one_one_nat )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_153_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_int @ N )
        = one_one_int )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_154_add__numeral__left,axiom,
    ! [V: num,W: num,Z: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ ( numeral_numeral_nat @ W ) @ Z ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_155_add__numeral__left,axiom,
    ! [V: num,W: num,Z: int] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ ( numeral_numeral_int @ W ) @ Z ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_156_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_157_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_158_length__drop,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( size_size_list_a @ ( drop_a @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ N ) ) ).

% length_drop
thf(fact_159_length__drop,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( size_size_list_set_a @ ( drop_set_a @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_set_a @ Xs ) @ N ) ) ).

% length_drop
thf(fact_160_append__take__drop__id,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( append_a @ ( take_a @ N @ Xs ) @ ( drop_a @ N @ Xs ) )
      = Xs ) ).

% append_take_drop_id
thf(fact_161_append__take__drop__id,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( append_set_a @ ( take_set_a @ N @ Xs ) @ ( drop_set_a @ N @ Xs ) )
      = Xs ) ).

% append_take_drop_id
thf(fact_162_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_163_numeral__le__one__iff,axiom,
    ! [N: num] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ one_one_int )
      = ( ord_less_eq_num @ N @ one ) ) ).

% numeral_le_one_iff
thf(fact_164_drop__append,axiom,
    ! [N: nat,Xs: list_a,Ys: list_a] :
      ( ( drop_a @ N @ ( append_a @ Xs @ Ys ) )
      = ( append_a @ ( drop_a @ N @ Xs ) @ ( drop_a @ ( minus_minus_nat @ N @ ( size_size_list_a @ Xs ) ) @ Ys ) ) ) ).

% drop_append
thf(fact_165_drop__append,axiom,
    ! [N: nat,Xs: list_set_a,Ys: list_set_a] :
      ( ( drop_set_a @ N @ ( append_set_a @ Xs @ Ys ) )
      = ( append_set_a @ ( drop_set_a @ N @ Xs ) @ ( drop_set_a @ ( minus_minus_nat @ N @ ( size_size_list_set_a @ Xs ) ) @ Ys ) ) ) ).

% drop_append
thf(fact_166_even__diff__iff,axiom,
    ! [K: int,L: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_int @ K @ L ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ L ) ) ) ).

% even_diff_iff
thf(fact_167_add__One__commute,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ N )
      = ( plus_plus_num @ N @ one ) ) ).

% add_One_commute
thf(fact_168_drop__0,axiom,
    ! [Xs: list_a] :
      ( ( drop_a @ zero_zero_nat @ Xs )
      = Xs ) ).

% drop_0
thf(fact_169_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_a @ N @ nil_a )
      = nil_a ) ).

% drop_Nil
thf(fact_170_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_set_a @ N @ nil_set_a )
      = nil_set_a ) ).

% drop_Nil
thf(fact_171_take__drop,axiom,
    ! [N: nat,M: nat,Xs: list_a] :
      ( ( take_a @ N @ ( drop_a @ M @ Xs ) )
      = ( drop_a @ M @ ( take_a @ ( plus_plus_nat @ N @ M ) @ Xs ) ) ) ).

% take_drop
thf(fact_172_drop__take,axiom,
    ! [N: nat,M: nat,Xs: list_a] :
      ( ( drop_a @ N @ ( take_a @ M @ Xs ) )
      = ( take_a @ ( minus_minus_nat @ M @ N ) @ ( drop_a @ N @ Xs ) ) ) ).

% drop_take
thf(fact_173_take__add,axiom,
    ! [I2: nat,J: nat,Xs: list_a] :
      ( ( take_a @ ( plus_plus_nat @ I2 @ J ) @ Xs )
      = ( append_a @ ( take_a @ I2 @ Xs ) @ ( take_a @ J @ ( drop_a @ I2 @ Xs ) ) ) ) ).

% take_add
thf(fact_174_take__add,axiom,
    ! [I2: nat,J: nat,Xs: list_set_a] :
      ( ( take_set_a @ ( plus_plus_nat @ I2 @ J ) @ Xs )
      = ( append_set_a @ ( take_set_a @ I2 @ Xs ) @ ( take_set_a @ J @ ( drop_set_a @ I2 @ Xs ) ) ) ) ).

% take_add
thf(fact_175_append__eq__conv__conj,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_a] :
      ( ( ( append_a @ Xs @ Ys )
        = Zs )
      = ( ( Xs
          = ( take_a @ ( size_size_list_a @ Xs ) @ Zs ) )
        & ( Ys
          = ( drop_a @ ( size_size_list_a @ Xs ) @ Zs ) ) ) ) ).

% append_eq_conv_conj
thf(fact_176_append__eq__conv__conj,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,Zs: list_set_a] :
      ( ( ( append_set_a @ Xs @ Ys )
        = Zs )
      = ( ( Xs
          = ( take_set_a @ ( size_size_list_set_a @ Xs ) @ Zs ) )
        & ( Ys
          = ( drop_set_a @ ( size_size_list_set_a @ Xs ) @ Zs ) ) ) ) ).

% append_eq_conv_conj
thf(fact_177_is__num__normalize_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_178_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_179_le__numeral__extra_I3_J,axiom,
    ord_less_eq_int @ zero_zero_int @ zero_zero_int ).

% le_numeral_extra(3)
thf(fact_180_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_nat
     != ( numeral_numeral_nat @ N ) ) ).

% zero_neq_numeral
thf(fact_181_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_int
     != ( numeral_numeral_int @ N ) ) ).

% zero_neq_numeral
thf(fact_182_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_183_le__numeral__extra_I4_J,axiom,
    ord_less_eq_int @ one_one_int @ one_one_int ).

% le_numeral_extra(4)
thf(fact_184_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_le_zero
thf(fact_185_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ zero_zero_int ) ).

% not_numeral_le_zero
thf(fact_186_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_le_numeral
thf(fact_187_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_int @ zero_zero_int @ ( numeral_numeral_int @ N ) ) ).

% zero_le_numeral
thf(fact_188_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) ) ).

% one_le_numeral
thf(fact_189_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_int @ one_one_int @ ( numeral_numeral_int @ N ) ) ).

% one_le_numeral
thf(fact_190_one__plus__numeral__commute,axiom,
    ! [X4: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ X4 ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ X4 ) @ one_one_nat ) ) ).

% one_plus_numeral_commute
thf(fact_191_one__plus__numeral__commute,axiom,
    ! [X4: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ X4 ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ X4 ) @ one_one_int ) ) ).

% one_plus_numeral_commute
thf(fact_192_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) ) ).

% numeral_Bit0
thf(fact_193_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit0 @ N ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_Bit0
thf(fact_194_numeral__One,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numeral_One
thf(fact_195_numeral__One,axiom,
    ( ( numeral_numeral_int @ one )
    = one_one_int ) ).

% numeral_One
thf(fact_196_numerals_I1_J,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numerals(1)
thf(fact_197_even__numeral,axiom,
    ! [N: num] : ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ ( bit0 @ N ) ) ) ).

% even_numeral
thf(fact_198_even__numeral,axiom,
    ! [N: num] : ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) ).

% even_numeral
thf(fact_199_even__zero,axiom,
    dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ zero_zero_nat ).

% even_zero
thf(fact_200_even__zero,axiom,
    dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ zero_zero_int ).

% even_zero
thf(fact_201_odd__even__add,axiom,
    ! [A: nat,B: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A )
     => ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
       => ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% odd_even_add
thf(fact_202_odd__even__add,axiom,
    ! [A: int,B: int] :
      ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A )
     => ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B )
       => ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ A @ B ) ) ) ) ).

% odd_even_add
thf(fact_203_odd__one,axiom,
    ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ one_one_nat ) ).

% odd_one
thf(fact_204_odd__one,axiom,
    ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ one_one_int ) ).

% odd_one
thf(fact_205_nat__1__add__1,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% nat_1_add_1
thf(fact_206_nat__induct2,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ( P2 @ zero_zero_nat )
     => ( ( P2 @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( P2 @ N2 )
             => ( P2 @ ( plus_plus_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
         => ( P2 @ N ) ) ) ) ).

% nat_induct2
thf(fact_207_semiring__norm_I2_J,axiom,
    ( ( plus_plus_num @ one @ one )
    = ( bit0 @ one ) ) ).

% semiring_norm(2)
thf(fact_208_iso__vertex__empty__neighborhood,axiom,
    ! [V: a] :
      ( ( undire8931668460104145173rtex_a @ vertices @ edges @ V )
     => ( ( undire8504279938402040014hood_a @ vertices @ edges @ V )
        = bot_bot_set_a ) ) ).

% iso_vertex_empty_neighborhood
thf(fact_209_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_210_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_211_le__add__diff__inverse2,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_212_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_213_le__add__diff__inverse,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( plus_plus_int @ B @ ( minus_minus_int @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_214_diff__ge__0__iff__ge,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_eq_int @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_215_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ A @ A ) )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_216_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ A ) @ zero_zero_int )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_217_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_218_le__add__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( ord_less_eq_int @ zero_zero_int @ B ) ) ).

% le_add_same_cancel2
thf(fact_219_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_220_le__add__same__cancel1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( ord_less_eq_int @ zero_zero_int @ B ) ) ).

% le_add_same_cancel1
thf(fact_221_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_222_add__left__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_223_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_224_add__right__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_225_walk__length__app__ineq,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys ) ) @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys ) ) )
      & ( ord_less_eq_nat @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys ) ) @ one_one_nat ) ) ) ).

% walk_length_app_ineq
thf(fact_226_semiring__norm_I87_J,axiom,
    ! [M: num,N: num] :
      ( ( ( bit0 @ M )
        = ( bit0 @ N ) )
      = ( M = N ) ) ).

% semiring_norm(87)
thf(fact_227_le__zero__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_zero_eq
thf(fact_228_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_229_add__le__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_230_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_231_add__le__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_232_add_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.right_neutral
thf(fact_233_add_Oright__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% add.right_neutral
thf(fact_234_double__zero__sym,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( plus_plus_int @ A @ A ) )
      = ( A = zero_zero_int ) ) ).

% double_zero_sym
thf(fact_235_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_236_add__cancel__left__left,axiom,
    ! [B: int,A: int] :
      ( ( ( plus_plus_int @ B @ A )
        = A )
      = ( B = zero_zero_int ) ) ).

% add_cancel_left_left
thf(fact_237_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_238_add__cancel__left__right,axiom,
    ! [A: int,B: int] :
      ( ( ( plus_plus_int @ A @ B )
        = A )
      = ( B = zero_zero_int ) ) ).

% add_cancel_left_right
thf(fact_239_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_240_add__cancel__right__left,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( plus_plus_int @ B @ A ) )
      = ( B = zero_zero_int ) ) ).

% add_cancel_right_left
thf(fact_241_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_242_add__cancel__right__right,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( plus_plus_int @ A @ B ) )
      = ( B = zero_zero_int ) ) ).

% add_cancel_right_right
thf(fact_243_add__eq__0__iff__both__eq__0,axiom,
    ! [X4: nat,Y: nat] :
      ( ( ( plus_plus_nat @ X4 @ Y )
        = zero_zero_nat )
      = ( ( X4 = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% add_eq_0_iff_both_eq_0
thf(fact_244_zero__eq__add__iff__both__eq__0,axiom,
    ! [X4: nat,Y: nat] :
      ( ( zero_zero_nat
        = ( plus_plus_nat @ X4 @ Y ) )
      = ( ( X4 = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% zero_eq_add_iff_both_eq_0
thf(fact_245_add__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% add_0
thf(fact_246_add__0,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% add_0
thf(fact_247_diff__self,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ A )
      = zero_zero_int ) ).

% diff_self
thf(fact_248_diff__0__right,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ zero_zero_int )
      = A ) ).

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

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

% diff_zero
thf(fact_251_diff__zero,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ zero_zero_int )
      = A ) ).

% diff_zero
thf(fact_252_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_253_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ A )
      = zero_zero_int ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_254_add__diff__cancel,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_255_diff__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_256_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_257_add__diff__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_258_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_259_add__diff__cancel__left_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_260_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_261_add__diff__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_262_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_263_add__diff__cancel__right_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_264_dvd__0__right,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ zero_zero_nat ) ).

% dvd_0_right
thf(fact_265_dvd__0__right,axiom,
    ! [A: int] : ( dvd_dvd_int @ A @ zero_zero_int ) ).

% dvd_0_right
thf(fact_266_dvd__0__left__iff,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
      = ( A = zero_zero_nat ) ) ).

% dvd_0_left_iff
thf(fact_267_dvd__0__left__iff,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ zero_zero_int @ A )
      = ( A = zero_zero_int ) ) ).

% dvd_0_left_iff
thf(fact_268_semiring__norm_I85_J,axiom,
    ! [M: num] :
      ( ( bit0 @ M )
     != one ) ).

% semiring_norm(85)
thf(fact_269_semiring__norm_I83_J,axiom,
    ! [N: num] :
      ( one
     != ( bit0 @ N ) ) ).

% semiring_norm(83)
thf(fact_270_dvd__add__triv__left__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( dvd_dvd_nat @ A @ B ) ) ).

% dvd_add_triv_left_iff
thf(fact_271_dvd__add__triv__left__iff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( dvd_dvd_int @ A @ B ) ) ).

% dvd_add_triv_left_iff
thf(fact_272_dvd__add__triv__right__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( dvd_dvd_nat @ A @ B ) ) ).

% dvd_add_triv_right_iff
thf(fact_273_dvd__add__triv__right__iff,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( dvd_dvd_int @ A @ B ) ) ).

% dvd_add_triv_right_iff
thf(fact_274_take__all,axiom,
    ! [Xs: list_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N )
     => ( ( take_a @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_275_take__all,axiom,
    ! [Xs: list_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs ) @ N )
     => ( ( take_set_a @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_276_take__all__iff,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ( take_a @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_277_take__all__iff,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ( take_set_a @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_278_semiring__norm_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( bit0 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(6)
thf(fact_279_semiring__norm_I71_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(71)
thf(fact_280_semiring__norm_I68_J,axiom,
    ! [N: num] : ( ord_less_eq_num @ one @ N ) ).

% semiring_norm(68)
thf(fact_281_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_282_add__le__same__cancel1,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% add_le_same_cancel1
thf(fact_283_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_284_add__le__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% add_le_same_cancel2
thf(fact_285_drop__all,axiom,
    ! [Xs: list_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N )
     => ( ( drop_a @ N @ Xs )
        = nil_a ) ) ).

% drop_all
thf(fact_286_drop__all,axiom,
    ! [Xs: list_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs ) @ N )
     => ( ( drop_set_a @ N @ Xs )
        = nil_set_a ) ) ).

% drop_all
thf(fact_287_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ( drop_a @ N @ Xs )
        = nil_a )
      = ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_288_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ( drop_set_a @ N @ Xs )
        = nil_set_a )
      = ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_289_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( nil_a
        = ( drop_a @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_290_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( nil_set_a
        = ( drop_set_a @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_291_semiring__norm_I69_J,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_num @ ( bit0 @ M ) @ one ) ).

% semiring_norm(69)
thf(fact_292_nth__drop,axiom,
    ! [N: nat,Xs: list_a,I2: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_size_list_a @ Xs ) )
     => ( ( nth_a @ ( drop_a @ N @ Xs ) @ I2 )
        = ( nth_a @ Xs @ ( plus_plus_nat @ N @ I2 ) ) ) ) ).

% nth_drop
thf(fact_293_nth__drop,axiom,
    ! [N: nat,Xs: list_set_a,I2: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_size_list_set_a @ Xs ) )
     => ( ( nth_set_a @ ( drop_set_a @ N @ Xs ) @ I2 )
        = ( nth_set_a @ Xs @ ( plus_plus_nat @ N @ I2 ) ) ) ) ).

% nth_drop
thf(fact_294_le__num__One__iff,axiom,
    ! [X4: num] :
      ( ( ord_less_eq_num @ X4 @ one )
      = ( X4 = one ) ) ).

% le_num_One_iff
thf(fact_295_zero__reorient,axiom,
    ! [X4: nat] :
      ( ( zero_zero_nat = X4 )
      = ( X4 = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_296_zero__reorient,axiom,
    ! [X4: int] :
      ( ( zero_zero_int = X4 )
      = ( X4 = zero_zero_int ) ) ).

% zero_reorient
thf(fact_297_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_298_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_299_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( I2 = J )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I2 @ K )
        = ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_300_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( I2 = J )
        & ( K = L ) )
     => ( ( plus_plus_int @ I2 @ K )
        = ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_301_group__cancel_Oadd1,axiom,
    ! [A2: nat,K: nat,A: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ K @ A ) )
     => ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_302_group__cancel_Oadd1,axiom,
    ! [A2: int,K: int,A: int,B: int] :
      ( ( A2
        = ( plus_plus_int @ K @ A ) )
     => ( ( plus_plus_int @ A2 @ B )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_303_group__cancel_Oadd2,axiom,
    ! [B2: nat,K: nat,B: nat,A: nat] :
      ( ( B2
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B2 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_304_group__cancel_Oadd2,axiom,
    ! [B2: int,K: int,B: int,A: int] :
      ( ( B2
        = ( plus_plus_int @ K @ B ) )
     => ( ( plus_plus_int @ A @ B2 )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_305_add_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_306_add_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.assoc
thf(fact_307_add_Oleft__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_308_add_Oright__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_309_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A3: nat,B3: nat] : ( plus_plus_nat @ B3 @ A3 ) ) ) ).

% add.commute
thf(fact_310_add_Ocommute,axiom,
    ( plus_plus_int
    = ( ^ [A3: int,B3: int] : ( plus_plus_int @ B3 @ A3 ) ) ) ).

% add.commute
thf(fact_311_add_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.left_commute
thf(fact_312_add_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( plus_plus_int @ B @ ( plus_plus_int @ A @ C ) )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.left_commute
thf(fact_313_add__left__imp__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_314_add__left__imp__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_315_add__right__imp__eq,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_316_add__right__imp__eq,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_317_one__reorient,axiom,
    ! [X4: nat] :
      ( ( one_one_nat = X4 )
      = ( X4 = one_one_nat ) ) ).

% one_reorient
thf(fact_318_one__reorient,axiom,
    ! [X4: int] :
      ( ( one_one_int = X4 )
      = ( X4 = one_one_int ) ) ).

% one_reorient
thf(fact_319_diff__eq__diff__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_320_cancel__ab__semigroup__add__class_Odiff__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 ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_321_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B )
      = ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_322_dvd__refl,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ A ) ).

% dvd_refl
thf(fact_323_dvd__refl,axiom,
    ! [A: int] : ( dvd_dvd_int @ A @ A ) ).

% dvd_refl
thf(fact_324_dvd__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ C )
       => ( dvd_dvd_nat @ A @ C ) ) ) ).

% dvd_trans
thf(fact_325_dvd__trans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ B @ C )
       => ( dvd_dvd_int @ A @ C ) ) ) ).

% dvd_trans
thf(fact_326_append__eq__append__conv__if,axiom,
    ! [Xs_1: list_a,Xs_2: list_a,Ys_1: list_a,Ys_2: list_a] :
      ( ( ( append_a @ Xs_1 @ Xs_2 )
        = ( append_a @ Ys_1 @ Ys_2 ) )
      = ( ( ( ord_less_eq_nat @ ( size_size_list_a @ Xs_1 ) @ ( size_size_list_a @ Ys_1 ) )
         => ( ( Xs_1
              = ( take_a @ ( size_size_list_a @ Xs_1 ) @ Ys_1 ) )
            & ( Xs_2
              = ( append_a @ ( drop_a @ ( size_size_list_a @ Xs_1 ) @ Ys_1 ) @ Ys_2 ) ) ) )
        & ( ~ ( ord_less_eq_nat @ ( size_size_list_a @ Xs_1 ) @ ( size_size_list_a @ Ys_1 ) )
         => ( ( ( take_a @ ( size_size_list_a @ Ys_1 ) @ Xs_1 )
              = Ys_1 )
            & ( ( append_a @ ( drop_a @ ( size_size_list_a @ Ys_1 ) @ Xs_1 ) @ Xs_2 )
              = Ys_2 ) ) ) ) ) ).

% append_eq_append_conv_if
thf(fact_327_append__eq__append__conv__if,axiom,
    ! [Xs_1: list_set_a,Xs_2: list_set_a,Ys_1: list_set_a,Ys_2: list_set_a] :
      ( ( ( append_set_a @ Xs_1 @ Xs_2 )
        = ( append_set_a @ Ys_1 @ Ys_2 ) )
      = ( ( ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs_1 ) @ ( size_size_list_set_a @ Ys_1 ) )
         => ( ( Xs_1
              = ( take_set_a @ ( size_size_list_set_a @ Xs_1 ) @ Ys_1 ) )
            & ( Xs_2
              = ( append_set_a @ ( drop_set_a @ ( size_size_list_set_a @ Xs_1 ) @ Ys_1 ) @ Ys_2 ) ) ) )
        & ( ~ ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs_1 ) @ ( size_size_list_set_a @ Ys_1 ) )
         => ( ( ( take_set_a @ ( size_size_list_set_a @ Ys_1 ) @ Xs_1 )
              = Ys_1 )
            & ( ( append_set_a @ ( drop_set_a @ ( size_size_list_set_a @ Ys_1 ) @ Xs_1 ) @ Xs_2 )
              = Ys_2 ) ) ) ) ) ).

% append_eq_append_conv_if
thf(fact_328_zero__le,axiom,
    ! [X4: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X4 ) ).

% zero_le
thf(fact_329_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I2 @ J )
        & ( K = L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_330_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I2 @ J )
        & ( K = L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_331_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( I2 = J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_332_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( I2 = J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_333_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I2 @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_334_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I2 @ J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_335_add__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_mono
thf(fact_336_add__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_mono
thf(fact_337_add__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_left_mono
thf(fact_338_add__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) ) ) ).

% add_left_mono
thf(fact_339_less__eqE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ~ ! [C2: nat] :
            ( B
           != ( plus_plus_nat @ A @ C2 ) ) ) ).

% less_eqE
thf(fact_340_add__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_right_mono
thf(fact_341_add__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) ) ) ).

% add_right_mono
thf(fact_342_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B3: nat] :
        ? [C3: nat] :
          ( B3
          = ( plus_plus_nat @ A3 @ C3 ) ) ) ) ).

% le_iff_add
thf(fact_343_add__le__imp__le__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_imp_le_left
thf(fact_344_add__le__imp__le__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
     => ( ord_less_eq_int @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_345_add__le__imp__le__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_imp_le_right
thf(fact_346_add__le__imp__le__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
     => ( ord_less_eq_int @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_347_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_348_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_349_add_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.comm_neutral
thf(fact_350_add_Ocomm__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% add.comm_neutral
thf(fact_351_add_Ogroup__left__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% add.group_left_neutral
thf(fact_352_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_353_zero__neq__one,axiom,
    zero_zero_int != one_one_int ).

% zero_neq_one
thf(fact_354_diff__mono,axiom,
    ! [A: int,B: int,D: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ D @ C )
       => ( ord_less_eq_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ D ) ) ) ) ).

% diff_mono
thf(fact_355_diff__left__mono,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ord_less_eq_int @ ( minus_minus_int @ C @ A ) @ ( minus_minus_int @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_356_diff__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_357_diff__eq__diff__less__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( ord_less_eq_int @ A @ B )
        = ( ord_less_eq_int @ C @ D ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_358_eq__iff__diff__eq__0,axiom,
    ( ( ^ [Y2: int,Z2: int] : ( Y2 = Z2 ) )
    = ( ^ [A3: int,B3: int] :
          ( ( minus_minus_int @ A3 @ B3 )
          = zero_zero_int ) ) ) ).

% eq_iff_diff_eq_0
thf(fact_359_group__cancel_Osub1,axiom,
    ! [A2: int,K: int,A: int,B: int] :
      ( ( A2
        = ( plus_plus_int @ K @ A ) )
     => ( ( minus_minus_int @ A2 @ B )
        = ( plus_plus_int @ K @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_360_diff__eq__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( minus_minus_int @ A @ B )
        = C )
      = ( A
        = ( plus_plus_int @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_361_eq__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( A
        = ( minus_minus_int @ C @ B ) )
      = ( ( plus_plus_int @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_362_add__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_363_diff__diff__eq2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_364_diff__add__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_365_diff__add__eq__diff__diff__swap,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_366_add__implies__diff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ( plus_plus_nat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_nat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_367_add__implies__diff,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ( plus_plus_int @ C @ B )
        = A )
     => ( C
        = ( minus_minus_int @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_368_diff__diff__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
      = ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_369_diff__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_370_dvd__0__left,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
     => ( A = zero_zero_nat ) ) ).

% dvd_0_left
thf(fact_371_dvd__0__left,axiom,
    ! [A: int] :
      ( ( dvd_dvd_int @ zero_zero_int @ A )
     => ( A = zero_zero_int ) ) ).

% dvd_0_left
thf(fact_372_dvd__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ A @ C )
       => ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ) ).

% dvd_add
thf(fact_373_dvd__add,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ A @ C )
       => ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ C ) ) ) ) ).

% dvd_add
thf(fact_374_dvd__add__left__iff,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( dvd_dvd_nat @ A @ B ) ) ) ).

% dvd_add_left_iff
thf(fact_375_dvd__add__left__iff,axiom,
    ! [A: int,C: int,B: int] :
      ( ( dvd_dvd_int @ A @ C )
     => ( ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( dvd_dvd_int @ A @ B ) ) ) ).

% dvd_add_left_iff
thf(fact_376_dvd__add__right__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( dvd_dvd_nat @ A @ C ) ) ) ).

% dvd_add_right_iff
thf(fact_377_dvd__add__right__iff,axiom,
    ! [A: int,B: int,C: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( dvd_dvd_int @ A @ C ) ) ) ).

% dvd_add_right_iff
thf(fact_378_one__dvd,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ one_one_nat @ A ) ).

% one_dvd
thf(fact_379_one__dvd,axiom,
    ! [A: int] : ( dvd_dvd_int @ one_one_int @ A ) ).

% one_dvd
thf(fact_380_unit__imp__dvd,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ one_one_nat )
     => ( dvd_dvd_nat @ B @ A ) ) ).

% unit_imp_dvd
thf(fact_381_unit__imp__dvd,axiom,
    ! [B: int,A: int] :
      ( ( dvd_dvd_int @ B @ one_one_int )
     => ( dvd_dvd_int @ B @ A ) ) ).

% unit_imp_dvd
thf(fact_382_dvd__unit__imp__unit,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ one_one_nat )
       => ( dvd_dvd_nat @ A @ one_one_nat ) ) ) ).

% dvd_unit_imp_unit
thf(fact_383_dvd__unit__imp__unit,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ B @ one_one_int )
       => ( dvd_dvd_int @ A @ one_one_int ) ) ) ).

% dvd_unit_imp_unit
thf(fact_384_dvd__diff,axiom,
    ! [X4: int,Y: int,Z: int] :
      ( ( dvd_dvd_int @ X4 @ Y )
     => ( ( dvd_dvd_int @ X4 @ Z )
       => ( dvd_dvd_int @ X4 @ ( minus_minus_int @ Y @ Z ) ) ) ) ).

% dvd_diff
thf(fact_385_add__decreasing,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_386_add__decreasing,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ C @ B )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_387_add__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_388_add__increasing,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_eq_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_389_add__decreasing2,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ C @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_390_add__decreasing2,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ C @ zero_zero_int )
     => ( ( ord_less_eq_int @ A @ B )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_391_add__increasing2,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_392_add__increasing2,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( ord_less_eq_int @ B @ A )
       => ( ord_less_eq_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_393_add__nonneg__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_394_add__nonneg__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_395_add__nonpos__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_nonpos
thf(fact_396_add__nonpos__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_nonpos_nonpos
thf(fact_397_add__nonneg__eq__0__iff,axiom,
    ! [X4: nat,Y: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X4 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y )
       => ( ( ( plus_plus_nat @ X4 @ Y )
            = zero_zero_nat )
          = ( ( X4 = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_398_add__nonneg__eq__0__iff,axiom,
    ! [X4: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X4 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ( ( plus_plus_int @ X4 @ Y )
            = zero_zero_int )
          = ( ( X4 = zero_zero_int )
            & ( Y = zero_zero_int ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_399_add__nonpos__eq__0__iff,axiom,
    ! [X4: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X4 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X4 @ Y )
            = zero_zero_nat )
          = ( ( X4 = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_400_add__nonpos__eq__0__iff,axiom,
    ! [X4: int,Y: int] :
      ( ( ord_less_eq_int @ X4 @ zero_zero_int )
     => ( ( ord_less_eq_int @ Y @ zero_zero_int )
       => ( ( ( plus_plus_int @ X4 @ Y )
            = zero_zero_int )
          = ( ( X4 = zero_zero_int )
            & ( Y = zero_zero_int ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_401_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_402_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_int @ zero_zero_int @ one_one_int ).

% zero_less_one_class.zero_le_one
thf(fact_403_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_404_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_int @ zero_zero_int @ one_one_int ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_405_not__one__le__zero,axiom,
    ~ ( ord_less_eq_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_le_zero
thf(fact_406_not__one__le__zero,axiom,
    ~ ( ord_less_eq_int @ one_one_int @ zero_zero_int ) ).

% not_one_le_zero
thf(fact_407_le__iff__diff__le__0,axiom,
    ( ord_less_eq_int
    = ( ^ [A3: int,B3: int] : ( ord_less_eq_int @ ( minus_minus_int @ A3 @ B3 ) @ zero_zero_int ) ) ) ).

% le_iff_diff_le_0
thf(fact_408_diff__le__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( ord_less_eq_int @ A @ ( plus_plus_int @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_409_le__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( minus_minus_int @ C @ B ) )
      = ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_410_add__le__imp__le__diff,axiom,
    ! [I2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ N )
     => ( ord_less_eq_nat @ I2 @ ( minus_minus_nat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_411_add__le__imp__le__diff,axiom,
    ! [I2: int,K: int,N: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I2 @ K ) @ N )
     => ( ord_less_eq_int @ I2 @ ( minus_minus_int @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_412_ordered__cancel__comm__monoid__diff__class_Odiff__add,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ A )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add
thf(fact_413_add__le__add__imp__diff__le,axiom,
    ! [I2: nat,K: nat,N: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_414_add__le__add__imp__diff__le,axiom,
    ! [I2: int,K: int,N: int,J: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I2 @ K ) @ N )
     => ( ( ord_less_eq_int @ N @ ( plus_plus_int @ J @ K ) )
       => ( ( ord_less_eq_int @ ( plus_plus_int @ I2 @ K ) @ N )
         => ( ( ord_less_eq_int @ N @ ( plus_plus_int @ J @ K ) )
           => ( ord_less_eq_int @ ( minus_minus_int @ N @ K ) @ J ) ) ) ) ) ).

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

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

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_417_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_418_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A )
        = ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_419_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C )
        = ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_420_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A )
        = ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_421_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_diff_right
thf(fact_422_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ A @ ( minus_minus_nat @ B @ A ) )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_423_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ( ( minus_minus_nat @ B @ A )
            = C )
          = ( B
            = ( plus_plus_nat @ C @ A ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_424_not__is__unit__0,axiom,
    ~ ( dvd_dvd_nat @ zero_zero_nat @ one_one_nat ) ).

% not_is_unit_0
thf(fact_425_not__is__unit__0,axiom,
    ~ ( dvd_dvd_int @ zero_zero_int @ one_one_int ) ).

% not_is_unit_0
thf(fact_426_is__walk__take,axiom,
    ! [W: list_a,N: nat] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ord_less_eq_nat @ N @ ( size_size_list_a @ W ) )
         => ( undire6133010728901294956walk_a @ vertices @ edges @ ( take_a @ N @ W ) ) ) ) ) ).

% is_walk_take
thf(fact_427_is__isolated__vertex__no__loop,axiom,
    ! [V: a] :
      ( ( undire8931668460104145173rtex_a @ vertices @ edges @ V )
     => ~ ( undire3617971648856834880loop_a @ edges @ V ) ) ).

% is_isolated_vertex_no_loop
thf(fact_428_is__isolated__vertex__degree0,axiom,
    ! [V: a] :
      ( ( undire8931668460104145173rtex_a @ vertices @ edges @ V )
     => ( ( undire8867928226783802224gree_a @ edges @ V )
        = zero_zero_nat ) ) ).

% is_isolated_vertex_degree0
thf(fact_429_is__path__walk,axiom,
    ! [Xs: list_a] :
      ( ( undire427332500224447920path_a @ vertices @ edges @ Xs )
     => ( undire6133010728901294956walk_a @ vertices @ edges @ Xs ) ) ).

% is_path_walk
thf(fact_430_is__walk__drop,axiom,
    ! [W: list_a,N: nat] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
     => ( ( ord_less_nat @ N @ ( size_size_list_a @ W ) )
       => ( undire6133010728901294956walk_a @ vertices @ edges @ ( drop_a @ N @ W ) ) ) ) ).

% is_walk_drop
thf(fact_431_is__walk__tl,axiom,
    ! [Xs: list_a] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( size_size_list_a @ Xs ) )
     => ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
       => ( undire6133010728901294956walk_a @ vertices @ edges @ ( tl_a @ Xs ) ) ) ) ).

% is_walk_tl
thf(fact_432_comp__sgraph_Owalk__length__app,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( ( Ys != nil_set_a )
       => ( ( undire4424681683220949296_set_a @ ( append_set_a @ Xs @ Ys ) )
          = ( plus_plus_nat @ ( plus_plus_nat @ ( undire4424681683220949296_set_a @ Xs ) @ ( undire4424681683220949296_set_a @ Ys ) ) @ one_one_nat ) ) ) ) ).

% comp_sgraph.walk_length_app
thf(fact_433_comp__sgraph_Owalk__length__app,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( Xs != nil_a )
     => ( ( Ys != nil_a )
       => ( ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys ) )
          = ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys ) ) @ one_one_nat ) ) ) ) ).

% comp_sgraph.walk_length_app
thf(fact_434_nat__dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ one_one_nat )
      = ( M = one_one_nat ) ) ).

% nat_dvd_1_iff_1
thf(fact_435_is__walk__decomp,axiom,
    ! [Xs: list_a,Y: a,Ys: list_a,Zs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ ( append_a @ Ys @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) )
     => ( undire6133010728901294956walk_a @ vertices @ edges @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) ).

% is_walk_decomp
thf(fact_436_walk__edges_Ocases,axiom,
    ! [X4: list_a] :
      ( ( X4 != nil_a )
     => ( ! [X5: a] :
            ( X4
           != ( cons_a @ X5 @ nil_a ) )
       => ~ ! [X5: a,Y3: a,Ys3: list_a] :
              ( X4
             != ( cons_a @ X5 @ ( cons_a @ Y3 @ Ys3 ) ) ) ) ) ).

% walk_edges.cases
thf(fact_437_no__loops,axiom,
    ! [V: a] :
      ( ( member_a @ V @ vertices )
     => ~ ( undire3617971648856834880loop_a @ edges @ V ) ) ).

% no_loops
thf(fact_438_has__loop__in__verts,axiom,
    ! [V: a] :
      ( ( undire3617971648856834880loop_a @ edges @ V )
     => ( member_a @ V @ vertices ) ) ).

% has_loop_in_verts
thf(fact_439_list_Oinject,axiom,
    ! [X21: a,X22: list_a,Y21: a,Y22: list_a] :
      ( ( ( cons_a @ X21 @ X22 )
        = ( cons_a @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_440_list_Oinject,axiom,
    ! [X21: set_a,X22: list_set_a,Y21: set_a,Y22: list_set_a] :
      ( ( ( cons_set_a @ X21 @ X22 )
        = ( cons_set_a @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_441_is__walk__singleton,axiom,
    ! [U: a] :
      ( ( member_a @ U @ vertices )
     => ( undire6133010728901294956walk_a @ vertices @ edges @ ( cons_a @ U @ nil_a ) ) ) ).

% is_walk_singleton
thf(fact_442_is__walk__drop__hd,axiom,
    ! [Ys: list_a,Y: a] :
      ( ( Ys != nil_a )
     => ( ( undire6133010728901294956walk_a @ vertices @ edges @ ( cons_a @ Y @ Ys ) )
       => ( undire6133010728901294956walk_a @ vertices @ edges @ Ys ) ) ) ).

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

% not_gr_zero
thf(fact_444_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_445_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_446_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_447_add__less__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( ord_less_int @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_448_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_449_add__less__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( ord_less_int @ A @ B ) ) ).

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

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

% neq0_conv
thf(fact_452_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_453_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

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

% bot_nat_0.extremum
thf(fact_455_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_456_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_457_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_458_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

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

% diff_0_eq_0
thf(fact_460_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_461_diff__diff__cancel,axiom,
    ! [I2: nat,N: nat] :
      ( ( ord_less_eq_nat @ I2 @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I2 ) )
        = I2 ) ) ).

% diff_diff_cancel
thf(fact_462_diff__diff__left,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I2 @ J ) @ K )
      = ( minus_minus_nat @ I2 @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_463_is__walk__append,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
     => ( ( undire6133010728901294956walk_a @ vertices @ edges @ Ys )
       => ( ( ( last_a @ Xs )
            = ( hd_a @ Ys ) )
         => ( undire6133010728901294956walk_a @ vertices @ edges @ ( append_a @ Xs @ ( tl_a @ Ys ) ) ) ) ) ) ).

% is_walk_append
thf(fact_464_zero__less__double__add__iff__zero__less__single__add,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ A ) )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% zero_less_double_add_iff_zero_less_single_add
thf(fact_465_double__add__less__zero__iff__single__add__less__zero,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ A ) @ zero_zero_int )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% double_add_less_zero_iff_single_add_less_zero
thf(fact_466_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_467_less__add__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( ord_less_int @ zero_zero_int @ B ) ) ).

% less_add_same_cancel2
thf(fact_468_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_469_less__add__same__cancel1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( ord_less_int @ zero_zero_int @ B ) ) ).

% less_add_same_cancel1
thf(fact_470_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_471_add__less__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% add_less_same_cancel2
thf(fact_472_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_473_add__less__same__cancel1,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% add_less_same_cancel1
thf(fact_474_diff__gt__0__iff__gt,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_int @ B @ A ) ) ).

% diff_gt_0_iff_gt
thf(fact_475_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_476_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_477_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_478_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_479_append1__eq__conv,axiom,
    ! [Xs: list_a,X4: a,Ys: list_a,Y: a] :
      ( ( ( append_a @ Xs @ ( cons_a @ X4 @ nil_a ) )
        = ( append_a @ Ys @ ( cons_a @ Y @ nil_a ) ) )
      = ( ( Xs = Ys )
        & ( X4 = Y ) ) ) ).

% append1_eq_conv
thf(fact_480_append1__eq__conv,axiom,
    ! [Xs: list_set_a,X4: set_a,Ys: list_set_a,Y: set_a] :
      ( ( ( append_set_a @ Xs @ ( cons_set_a @ X4 @ nil_set_a ) )
        = ( append_set_a @ Ys @ ( cons_set_a @ Y @ nil_set_a ) ) )
      = ( ( Xs = Ys )
        & ( X4 = Y ) ) ) ).

% append1_eq_conv
thf(fact_481_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_482_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I2 @ K ) @ J ) ) ) ).

% Nat.diff_diff_right
thf(fact_483_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I2 )
        = ( minus_minus_nat @ ( plus_plus_nat @ J @ I2 ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_484_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I2 @ J ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_485_nth__Cons__0,axiom,
    ! [X4: a,Xs: list_a] :
      ( ( nth_a @ ( cons_a @ X4 @ Xs ) @ zero_zero_nat )
      = X4 ) ).

% nth_Cons_0
thf(fact_486_nth__Cons__0,axiom,
    ! [X4: set_a,Xs: list_set_a] :
      ( ( nth_set_a @ ( cons_set_a @ X4 @ Xs ) @ zero_zero_nat )
      = X4 ) ).

% nth_Cons_0
thf(fact_487_tl__append2,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( Xs != nil_a )
     => ( ( tl_a @ ( append_a @ Xs @ Ys ) )
        = ( append_a @ ( tl_a @ Xs ) @ Ys ) ) ) ).

% tl_append2
thf(fact_488_tl__append2,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( ( tl_set_a @ ( append_set_a @ Xs @ Ys ) )
        = ( append_set_a @ ( tl_set_a @ Xs ) @ Ys ) ) ) ).

% tl_append2
thf(fact_489_nth__take,axiom,
    ! [I2: nat,N: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ I2 @ N )
     => ( ( nth_set_a @ ( take_set_a @ N @ Xs ) @ I2 )
        = ( nth_set_a @ Xs @ I2 ) ) ) ).

% nth_take
thf(fact_490_nth__take,axiom,
    ! [I2: nat,N: nat,Xs: list_a] :
      ( ( ord_less_nat @ I2 @ N )
     => ( ( nth_a @ ( take_a @ N @ Xs ) @ I2 )
        = ( nth_a @ Xs @ I2 ) ) ) ).

% nth_take
thf(fact_491_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_492_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_493_length__greater__0__conv,axiom,
    ! [Xs: list_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_a @ Xs ) )
      = ( Xs != nil_a ) ) ).

% length_greater_0_conv
thf(fact_494_length__greater__0__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_set_a @ Xs ) )
      = ( Xs != nil_set_a ) ) ).

% length_greater_0_conv
thf(fact_495_nth__append__length,axiom,
    ! [Xs: list_a,X4: a,Ys: list_a] :
      ( ( nth_a @ ( append_a @ Xs @ ( cons_a @ X4 @ Ys ) ) @ ( size_size_list_a @ Xs ) )
      = X4 ) ).

% nth_append_length
thf(fact_496_nth__append__length,axiom,
    ! [Xs: list_set_a,X4: set_a,Ys: list_set_a] :
      ( ( nth_set_a @ ( append_set_a @ Xs @ ( cons_set_a @ X4 @ Ys ) ) @ ( size_size_list_set_a @ Xs ) )
      = X4 ) ).

% nth_append_length
thf(fact_497_last__snoc,axiom,
    ! [Xs: list_a,X4: a] :
      ( ( last_a @ ( append_a @ Xs @ ( cons_a @ X4 @ nil_a ) ) )
      = X4 ) ).

% last_snoc
thf(fact_498_last__snoc,axiom,
    ! [Xs: list_set_a,X4: set_a] :
      ( ( last_set_a @ ( append_set_a @ Xs @ ( cons_set_a @ X4 @ nil_set_a ) ) )
      = X4 ) ).

% last_snoc
thf(fact_499_length__tl,axiom,
    ! [Xs: list_a] :
      ( ( size_size_list_a @ ( tl_a @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ one_one_nat ) ) ).

% length_tl
thf(fact_500_length__tl,axiom,
    ! [Xs: list_set_a] :
      ( ( size_size_list_set_a @ ( tl_set_a @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_set_a @ Xs ) @ one_one_nat ) ) ).

% length_tl
thf(fact_501_hd__take,axiom,
    ! [J: nat,Xs: list_a] :
      ( ( ord_less_nat @ zero_zero_nat @ J )
     => ( ( hd_a @ ( take_a @ J @ Xs ) )
        = ( hd_a @ Xs ) ) ) ).

% hd_take
thf(fact_502_hd__Cons__tl,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ( ( cons_a @ ( hd_a @ Xs ) @ ( tl_a @ Xs ) )
        = Xs ) ) ).

% hd_Cons_tl
thf(fact_503_hd__Cons__tl,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( ( cons_set_a @ ( hd_set_a @ Xs ) @ ( tl_set_a @ Xs ) )
        = Xs ) ) ).

% hd_Cons_tl
thf(fact_504_list_Ocollapse,axiom,
    ! [List: list_a] :
      ( ( List != nil_a )
     => ( ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) )
        = List ) ) ).

% list.collapse
thf(fact_505_list_Ocollapse,axiom,
    ! [List: list_set_a] :
      ( ( List != nil_set_a )
     => ( ( cons_set_a @ ( hd_set_a @ List ) @ ( tl_set_a @ List ) )
        = List ) ) ).

% list.collapse
thf(fact_506_last__drop,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
     => ( ( last_a @ ( drop_a @ N @ Xs ) )
        = ( last_a @ Xs ) ) ) ).

% last_drop
thf(fact_507_last__drop,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
     => ( ( last_set_a @ ( drop_set_a @ N @ Xs ) )
        = ( last_set_a @ Xs ) ) ) ).

% last_drop
thf(fact_508_nth__Cons__numeral,axiom,
    ! [X4: a,Xs: list_a,V: num] :
      ( ( nth_a @ ( cons_a @ X4 @ Xs ) @ ( numeral_numeral_nat @ V ) )
      = ( nth_a @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).

% nth_Cons_numeral
thf(fact_509_nth__Cons__numeral,axiom,
    ! [X4: set_a,Xs: list_set_a,V: num] :
      ( ( nth_set_a @ ( cons_set_a @ X4 @ Xs ) @ ( numeral_numeral_nat @ V ) )
      = ( nth_set_a @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).

% nth_Cons_numeral
thf(fact_510_take__Cons__numeral,axiom,
    ! [V: num,X4: a,Xs: list_a] :
      ( ( take_a @ ( numeral_numeral_nat @ V ) @ ( cons_a @ X4 @ Xs ) )
      = ( cons_a @ X4 @ ( take_a @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ) ).

% take_Cons_numeral
thf(fact_511_take__Cons__numeral,axiom,
    ! [V: num,X4: set_a,Xs: list_set_a] :
      ( ( take_set_a @ ( numeral_numeral_nat @ V ) @ ( cons_set_a @ X4 @ Xs ) )
      = ( cons_set_a @ X4 @ ( take_set_a @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ) ).

% take_Cons_numeral
thf(fact_512_drop__Cons__numeral,axiom,
    ! [V: num,X4: a,Xs: list_a] :
      ( ( drop_a @ ( numeral_numeral_nat @ V ) @ ( cons_a @ X4 @ Xs ) )
      = ( drop_a @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ).

% drop_Cons_numeral
thf(fact_513_drop__Cons__numeral,axiom,
    ! [V: num,X4: set_a,Xs: list_set_a] :
      ( ( drop_set_a @ ( numeral_numeral_nat @ V ) @ ( cons_set_a @ X4 @ Xs ) )
      = ( drop_set_a @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ).

% drop_Cons_numeral
thf(fact_514_degree__none,axiom,
    ! [V: a] :
      ( ~ ( member_a @ V @ vertices )
     => ( ( undire8867928226783802224gree_a @ edges @ V )
        = zero_zero_nat ) ) ).

% degree_none
thf(fact_515_nth__Cons__pos,axiom,
    ! [N: nat,X4: a,Xs: list_a] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nth_a @ ( cons_a @ X4 @ Xs ) @ N )
        = ( nth_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_516_nth__Cons__pos,axiom,
    ! [N: nat,X4: set_a,Xs: list_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nth_set_a @ ( cons_set_a @ X4 @ Xs ) @ N )
        = ( nth_set_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_517_even__diff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% even_diff_nat
thf(fact_518_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M2: nat,N2: nat] :
          ( ( ord_less_nat @ M2 @ N2 )
         => ( ord_less_nat @ ( F @ M2 ) @ ( F @ N2 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_519_linorder__neqE__linordered__idom,axiom,
    ! [X4: int,Y: int] :
      ( ( X4 != Y )
     => ( ~ ( ord_less_int @ X4 @ Y )
       => ( ord_less_int @ Y @ X4 ) ) ) ).

% linorder_neqE_linordered_idom
thf(fact_520_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I2: nat,J: nat] :
      ( ! [I: nat,J2: nat] :
          ( ( ord_less_nat @ I @ J2 )
         => ( ord_less_nat @ ( F @ I ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I2 @ J )
       => ( ord_less_eq_nat @ ( F @ I2 ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_521_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_522_Nat_Oex__has__greatest__nat,axiom,
    ! [P2: nat > $o,K: nat,B: nat] :
      ( ( P2 @ K )
     => ( ! [Y3: nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ? [X5: nat] :
            ( ( P2 @ X5 )
            & ! [Y4: nat] :
                ( ( P2 @ Y4 )
               => ( ord_less_eq_nat @ Y4 @ X5 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_523_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_524_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M3: nat,N3: nat] :
          ( ( ord_less_nat @ M3 @ N3 )
          | ( M3 = N3 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_525_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_526_ex__least__nat__le,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ( P2 @ N )
     => ( ~ ( P2 @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K2 )
               => ~ ( P2 @ I3 ) )
            & ( P2 @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_527_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_528_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M3: nat,N3: nat] :
          ( ( ord_less_eq_nat @ M3 @ N3 )
          & ( M3 != N3 ) ) ) ) ).

% nat_less_le
thf(fact_529_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_530_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_531_le__trans,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I2 @ K ) ) ) ).

% le_trans
thf(fact_532_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_533_comp__sgraph_Owalk__edges_Ocases,axiom,
    ! [X4: list_a] :
      ( ( X4 != nil_a )
     => ( ! [X5: a] :
            ( X4
           != ( cons_a @ X5 @ nil_a ) )
       => ~ ! [X5: a,Y3: a,Ys3: list_a] :
              ( X4
             != ( cons_a @ X5 @ ( cons_a @ Y3 @ Ys3 ) ) ) ) ) ).

% comp_sgraph.walk_edges.cases
thf(fact_534_comp__sgraph_Owalk__edges_Ocases,axiom,
    ! [X4: list_set_a] :
      ( ( X4 != nil_set_a )
     => ( ! [X5: set_a] :
            ( X4
           != ( cons_set_a @ X5 @ nil_set_a ) )
       => ~ ! [X5: set_a,Y3: set_a,Ys3: list_set_a] :
              ( X4
             != ( cons_set_a @ X5 @ ( cons_set_a @ Y3 @ Ys3 ) ) ) ) ) ).

% comp_sgraph.walk_edges.cases
thf(fact_535_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_536_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

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

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

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

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

% gr_implies_not0
thf(fact_541_infinite__descent0,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ( P2 @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ~ ( P2 @ N2 )
             => ? [M4: nat] :
                  ( ( ord_less_nat @ M4 @ N2 )
                  & ~ ( P2 @ M4 ) ) ) )
       => ( P2 @ N ) ) ) ).

% infinite_descent0
thf(fact_542_add__lessD1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I2 @ J ) @ K )
     => ( ord_less_nat @ I2 @ K ) ) ).

% add_lessD1
thf(fact_543_add__less__mono,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_less_mono
thf(fact_544_not__add__less1,axiom,
    ! [I2: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I2 @ J ) @ I2 ) ).

% not_add_less1
thf(fact_545_not__add__less2,axiom,
    ! [J: nat,I2: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I2 ) @ I2 ) ).

% not_add_less2
thf(fact_546_add__less__mono1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_547_trans__less__add1,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ord_less_nat @ I2 @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_548_trans__less__add2,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ord_less_nat @ I2 @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_less_add2
thf(fact_549_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_550_list_Osel_I3_J,axiom,
    ! [X21: a,X22: list_a] :
      ( ( tl_a @ ( cons_a @ X21 @ X22 ) )
      = X22 ) ).

% list.sel(3)
thf(fact_551_list_Osel_I3_J,axiom,
    ! [X21: set_a,X22: list_set_a] :
      ( ( tl_set_a @ ( cons_set_a @ X21 @ X22 ) )
      = X22 ) ).

% list.sel(3)
thf(fact_552_not__Cons__self2,axiom,
    ! [X4: a,Xs: list_a] :
      ( ( cons_a @ X4 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_553_not__Cons__self2,axiom,
    ! [X4: set_a,Xs: list_set_a] :
      ( ( cons_set_a @ X4 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_554_linorder__neqE__nat,axiom,
    ! [X4: nat,Y: nat] :
      ( ( X4 != Y )
     => ( ~ ( ord_less_nat @ X4 @ Y )
       => ( ord_less_nat @ Y @ X4 ) ) ) ).

% linorder_neqE_nat
thf(fact_555_infinite__descent,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ~ ( P2 @ N2 )
         => ? [M4: nat] :
              ( ( ord_less_nat @ M4 @ N2 )
              & ~ ( P2 @ M4 ) ) )
     => ( P2 @ N ) ) ).

% infinite_descent
thf(fact_556_nat__less__induct,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M4: nat] :
              ( ( ord_less_nat @ M4 @ N2 )
             => ( P2 @ M4 ) )
         => ( P2 @ N2 ) )
     => ( P2 @ N ) ) ).

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

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

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

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

% less_not_refl
thf(fact_561_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_562_ulgraph_Ois__path_Ocong,axiom,
    undire427332500224447920path_a = undire427332500224447920path_a ).

% ulgraph.is_path.cong
thf(fact_563_transpose_Ocases,axiom,
    ! [X4: list_list_a] :
      ( ( X4 != nil_list_a )
     => ( ! [Xss: list_list_a] :
            ( X4
           != ( cons_list_a @ nil_a @ Xss ) )
       => ~ ! [X5: a,Xs3: list_a,Xss: list_list_a] :
              ( X4
             != ( cons_list_a @ ( cons_a @ X5 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_564_transpose_Ocases,axiom,
    ! [X4: list_list_set_a] :
      ( ( X4 != nil_list_set_a )
     => ( ! [Xss: list_list_set_a] :
            ( X4
           != ( cons_list_set_a @ nil_set_a @ Xss ) )
       => ~ ! [X5: set_a,Xs3: list_set_a,Xss: list_list_set_a] :
              ( X4
             != ( cons_list_set_a @ ( cons_set_a @ X5 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_565_Nil__tl,axiom,
    ! [Xs: list_a] :
      ( ( nil_a
        = ( tl_a @ Xs ) )
      = ( ( Xs = nil_a )
        | ? [X: a] :
            ( Xs
            = ( cons_a @ X @ nil_a ) ) ) ) ).

% Nil_tl
thf(fact_566_Nil__tl,axiom,
    ! [Xs: list_set_a] :
      ( ( nil_set_a
        = ( tl_set_a @ Xs ) )
      = ( ( Xs = nil_set_a )
        | ? [X: set_a] :
            ( Xs
            = ( cons_set_a @ X @ nil_set_a ) ) ) ) ).

% Nil_tl
thf(fact_567_tl__Nil,axiom,
    ! [Xs: list_a] :
      ( ( ( tl_a @ Xs )
        = nil_a )
      = ( ( Xs = nil_a )
        | ? [X: a] :
            ( Xs
            = ( cons_a @ X @ nil_a ) ) ) ) ).

% tl_Nil
thf(fact_568_tl__Nil,axiom,
    ! [Xs: list_set_a] :
      ( ( ( tl_set_a @ Xs )
        = nil_set_a )
      = ( ( Xs = nil_set_a )
        | ? [X: set_a] :
            ( Xs
            = ( cons_set_a @ X @ nil_set_a ) ) ) ) ).

% tl_Nil
thf(fact_569_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_570_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_571_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_572_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_573_list_Oexhaust__sel,axiom,
    ! [List: list_a] :
      ( ( List != nil_a )
     => ( List
        = ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) ) ) ) ).

% list.exhaust_sel
thf(fact_574_list_Oexhaust__sel,axiom,
    ! [List: list_set_a] :
      ( ( List != nil_set_a )
     => ( List
        = ( cons_set_a @ ( hd_set_a @ List ) @ ( tl_set_a @ List ) ) ) ) ).

% list.exhaust_sel
thf(fact_575_list_Osel_I2_J,axiom,
    ( ( tl_a @ nil_a )
    = nil_a ) ).

% list.sel(2)
thf(fact_576_list_Osel_I2_J,axiom,
    ( ( tl_set_a @ nil_set_a )
    = nil_set_a ) ).

% list.sel(2)
thf(fact_577_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

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

% less_numeral_extra(3)
thf(fact_579_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_580_gr__implies__not__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

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

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

% gr_zeroI
thf(fact_583_add__less__imp__less__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_584_add__less__imp__less__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_585_add__less__imp__less__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_586_add__less__imp__less__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_587_add__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_588_add__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_589_add__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_590_add__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_591_add__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_592_add__strict__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_593_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I2 @ J )
        & ( K = L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_594_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I2 @ J )
        & ( K = L ) )
     => ( ord_less_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_595_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( I2 = J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_596_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( I2 = J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_597_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I2 @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_598_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I2 @ J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_599_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_600_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ one_one_int ) ).

% less_numeral_extra(4)
thf(fact_601_list__nonempty__induct,axiom,
    ! [Xs: list_a,P2: list_a > $o] :
      ( ( Xs != nil_a )
     => ( ! [X5: a] : ( P2 @ ( cons_a @ X5 @ nil_a ) )
       => ( ! [X5: a,Xs3: list_a] :
              ( ( Xs3 != nil_a )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( cons_a @ X5 @ Xs3 ) ) ) )
         => ( P2 @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_602_list__nonempty__induct,axiom,
    ! [Xs: list_set_a,P2: list_set_a > $o] :
      ( ( Xs != nil_set_a )
     => ( ! [X5: set_a] : ( P2 @ ( cons_set_a @ X5 @ nil_set_a ) )
       => ( ! [X5: set_a,Xs3: list_set_a] :
              ( ( Xs3 != nil_set_a )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) ) ) )
         => ( P2 @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_603_list__induct2_H,axiom,
    ! [P2: list_a > list_a > $o,Xs: list_a,Ys: list_a] :
      ( ( P2 @ nil_a @ nil_a )
     => ( ! [X5: a,Xs3: list_a] : ( P2 @ ( cons_a @ X5 @ Xs3 ) @ nil_a )
       => ( ! [Y3: a,Ys3: list_a] : ( P2 @ nil_a @ ( cons_a @ Y3 @ Ys3 ) )
         => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a] :
                ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
           => ( P2 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_604_list__induct2_H,axiom,
    ! [P2: list_a > list_set_a > $o,Xs: list_a,Ys: list_set_a] :
      ( ( P2 @ nil_a @ nil_set_a )
     => ( ! [X5: a,Xs3: list_a] : ( P2 @ ( cons_a @ X5 @ Xs3 ) @ nil_set_a )
       => ( ! [Y3: set_a,Ys3: list_set_a] : ( P2 @ nil_a @ ( cons_set_a @ Y3 @ Ys3 ) )
         => ( ! [X5: a,Xs3: list_a,Y3: set_a,Ys3: list_set_a] :
                ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) ) )
           => ( P2 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_605_list__induct2_H,axiom,
    ! [P2: list_set_a > list_a > $o,Xs: list_set_a,Ys: list_a] :
      ( ( P2 @ nil_set_a @ nil_a )
     => ( ! [X5: set_a,Xs3: list_set_a] : ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ nil_a )
       => ( ! [Y3: a,Ys3: list_a] : ( P2 @ nil_set_a @ ( cons_a @ Y3 @ Ys3 ) )
         => ( ! [X5: set_a,Xs3: list_set_a,Y3: a,Ys3: list_a] :
                ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
           => ( P2 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_606_list__induct2_H,axiom,
    ! [P2: list_set_a > list_set_a > $o,Xs: list_set_a,Ys: list_set_a] :
      ( ( P2 @ nil_set_a @ nil_set_a )
     => ( ! [X5: set_a,Xs3: list_set_a] : ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ nil_set_a )
       => ( ! [Y3: set_a,Ys3: list_set_a] : ( P2 @ nil_set_a @ ( cons_set_a @ Y3 @ Ys3 ) )
         => ( ! [X5: set_a,Xs3: list_set_a,Y3: set_a,Ys3: list_set_a] :
                ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) ) )
           => ( P2 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_607_neq__Nil__conv,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
      = ( ? [Y5: a,Ys4: list_a] :
            ( Xs
            = ( cons_a @ Y5 @ Ys4 ) ) ) ) ).

% neq_Nil_conv
thf(fact_608_neq__Nil__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
      = ( ? [Y5: set_a,Ys4: list_set_a] :
            ( Xs
            = ( cons_set_a @ Y5 @ Ys4 ) ) ) ) ).

% neq_Nil_conv
thf(fact_609_min__list_Ocases,axiom,
    ! [X4: list_set_a] :
      ( ! [X5: set_a,Xs3: list_set_a] :
          ( X4
         != ( cons_set_a @ X5 @ Xs3 ) )
     => ( X4 = nil_set_a ) ) ).

% min_list.cases
thf(fact_610_list_Oexhaust,axiom,
    ! [Y: list_a] :
      ( ( Y != nil_a )
     => ~ ! [X212: a,X222: list_a] :
            ( Y
           != ( cons_a @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_611_list_Oexhaust,axiom,
    ! [Y: list_set_a] :
      ( ( Y != nil_set_a )
     => ~ ! [X212: set_a,X222: list_set_a] :
            ( Y
           != ( cons_set_a @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_612_list_OdiscI,axiom,
    ! [List: list_a,X21: a,X22: list_a] :
      ( ( List
        = ( cons_a @ X21 @ X22 ) )
     => ( List != nil_a ) ) ).

% list.discI
thf(fact_613_list_OdiscI,axiom,
    ! [List: list_set_a,X21: set_a,X22: list_set_a] :
      ( ( List
        = ( cons_set_a @ X21 @ X22 ) )
     => ( List != nil_set_a ) ) ).

% list.discI
thf(fact_614_list_Odistinct_I1_J,axiom,
    ! [X21: a,X22: list_a] :
      ( nil_a
     != ( cons_a @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_615_list_Odistinct_I1_J,axiom,
    ! [X21: set_a,X22: list_set_a] :
      ( nil_set_a
     != ( cons_set_a @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_616_diff__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_617_diff__strict__left__mono,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ord_less_int @ ( minus_minus_int @ C @ A ) @ ( minus_minus_int @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_618_diff__eq__diff__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( ord_less_int @ A @ B )
        = ( ord_less_int @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_619_diff__strict__mono,axiom,
    ! [A: int,B: int,D: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ D @ C )
       => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_620_impossible__Cons,axiom,
    ! [Xs: list_a,Ys: list_a,X4: a] :
      ( ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ ( size_size_list_a @ Ys ) )
     => ( Xs
       != ( cons_a @ X4 @ Ys ) ) ) ).

% impossible_Cons
thf(fact_621_impossible__Cons,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,X4: set_a] :
      ( ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs ) @ ( size_size_list_set_a @ Ys ) )
     => ( Xs
       != ( cons_set_a @ X4 @ Ys ) ) ) ).

% impossible_Cons
thf(fact_622_Cons__eq__appendI,axiom,
    ! [X4: a,Xs1: list_a,Ys: list_a,Xs: list_a,Zs: list_a] :
      ( ( ( cons_a @ X4 @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_a @ Xs1 @ Zs ) )
       => ( ( cons_a @ X4 @ Xs )
          = ( append_a @ Ys @ Zs ) ) ) ) ).

% Cons_eq_appendI
thf(fact_623_Cons__eq__appendI,axiom,
    ! [X4: set_a,Xs1: list_set_a,Ys: list_set_a,Xs: list_set_a,Zs: list_set_a] :
      ( ( ( cons_set_a @ X4 @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_set_a @ Xs1 @ Zs ) )
       => ( ( cons_set_a @ X4 @ Xs )
          = ( append_set_a @ Ys @ Zs ) ) ) ) ).

% Cons_eq_appendI
thf(fact_624_append__Cons,axiom,
    ! [X4: a,Xs: list_a,Ys: list_a] :
      ( ( append_a @ ( cons_a @ X4 @ Xs ) @ Ys )
      = ( cons_a @ X4 @ ( append_a @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_625_append__Cons,axiom,
    ! [X4: set_a,Xs: list_set_a,Ys: list_set_a] :
      ( ( append_set_a @ ( cons_set_a @ X4 @ Xs ) @ Ys )
      = ( cons_set_a @ X4 @ ( append_set_a @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_626_tl__drop,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( tl_a @ ( drop_a @ N @ Xs ) )
      = ( drop_a @ N @ ( tl_a @ Xs ) ) ) ).

% tl_drop
thf(fact_627_length__induct,axiom,
    ! [P2: list_a > $o,Xs: list_a] :
      ( ! [Xs3: list_a] :
          ( ! [Ys5: list_a] :
              ( ( ord_less_nat @ ( size_size_list_a @ Ys5 ) @ ( size_size_list_a @ Xs3 ) )
             => ( P2 @ Ys5 ) )
         => ( P2 @ Xs3 ) )
     => ( P2 @ Xs ) ) ).

% length_induct
thf(fact_628_length__induct,axiom,
    ! [P2: list_set_a > $o,Xs: list_set_a] :
      ( ! [Xs3: list_set_a] :
          ( ! [Ys5: list_set_a] :
              ( ( ord_less_nat @ ( size_size_list_set_a @ Ys5 ) @ ( size_size_list_set_a @ Xs3 ) )
             => ( P2 @ Ys5 ) )
         => ( P2 @ Xs3 ) )
     => ( P2 @ Xs ) ) ).

% length_induct
thf(fact_629_list_Osel_I1_J,axiom,
    ! [X21: a,X22: list_a] :
      ( ( hd_a @ ( cons_a @ X21 @ X22 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_630_list_Osel_I1_J,axiom,
    ! [X21: set_a,X22: list_set_a] :
      ( ( hd_set_a @ ( cons_set_a @ X21 @ X22 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_631_less__imp__add__positive,axiom,
    ! [I2: nat,J: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ? [K2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K2 )
          & ( ( plus_plus_nat @ I2 @ K2 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_632_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_633_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_634_less__diff__conv,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_635_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I2 )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I2 @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_636_nat__dvd__not__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ~ ( dvd_dvd_nat @ N @ M ) ) ) ).

% nat_dvd_not_less
thf(fact_637_dvd__imp__le,axiom,
    ! [K: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat @ K @ N ) ) ) ).

% dvd_imp_le
thf(fact_638_dvd__minus__self,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) )
      = ( ( ord_less_nat @ N @ M )
        | ( dvd_dvd_nat @ M @ N ) ) ) ).

% dvd_minus_self
thf(fact_639_tl__append__if,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( Xs = nil_a )
       => ( ( tl_a @ ( append_a @ Xs @ Ys ) )
          = ( tl_a @ Ys ) ) )
      & ( ( Xs != nil_a )
       => ( ( tl_a @ ( append_a @ Xs @ Ys ) )
          = ( append_a @ ( tl_a @ Xs ) @ Ys ) ) ) ) ).

% tl_append_if
thf(fact_640_tl__append__if,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ( Xs = nil_set_a )
       => ( ( tl_set_a @ ( append_set_a @ Xs @ Ys ) )
          = ( tl_set_a @ Ys ) ) )
      & ( ( Xs != nil_set_a )
       => ( ( tl_set_a @ ( append_set_a @ Xs @ Ys ) )
          = ( append_set_a @ ( tl_set_a @ Xs ) @ Ys ) ) ) ) ).

% tl_append_if
thf(fact_641_nth__non__equal__first__eq,axiom,
    ! [X4: a,Y: a,Xs: list_a,N: nat] :
      ( ( X4 != Y )
     => ( ( ( nth_a @ ( cons_a @ X4 @ Xs ) @ N )
          = Y )
        = ( ( ( nth_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) )
            = Y )
          & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ) ).

% nth_non_equal_first_eq
thf(fact_642_nth__non__equal__first__eq,axiom,
    ! [X4: set_a,Y: set_a,Xs: list_set_a,N: nat] :
      ( ( X4 != Y )
     => ( ( ( nth_set_a @ ( cons_set_a @ X4 @ Xs ) @ N )
          = Y )
        = ( ( ( nth_set_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) )
            = Y )
          & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ) ).

% nth_non_equal_first_eq
thf(fact_643_add__less__le__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_644_add__less__le__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_645_add__le__less__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_646_add__le__less__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_647_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I2 @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_648_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I2 @ J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_649_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I2 @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_650_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I2: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I2 @ J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I2 @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_651_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_less_zero
thf(fact_652_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ zero_zero_int ) ).

% not_numeral_less_zero
thf(fact_653_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_less_numeral
thf(fact_654_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_int @ zero_zero_int @ ( numeral_numeral_int @ N ) ) ).

% zero_less_numeral
thf(fact_655_pos__add__strict,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_656_pos__add__strict,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_657_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ! [C2: nat] :
            ( ( B
              = ( plus_plus_nat @ A @ C2 ) )
           => ( C2 = zero_zero_nat ) ) ) ).

% canonically_ordered_monoid_add_class.lessE
thf(fact_658_add__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_659_add__pos__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_660_add__neg__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_neg
thf(fact_661_add__neg__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_neg_neg
thf(fact_662_add__less__zeroD,axiom,
    ! [X4: int,Y: int] :
      ( ( ord_less_int @ ( plus_plus_int @ X4 @ Y ) @ zero_zero_int )
     => ( ( ord_less_int @ X4 @ zero_zero_int )
        | ( ord_less_int @ Y @ zero_zero_int ) ) ) ).

% add_less_zeroD
thf(fact_663_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% less_numeral_extra(1)
thf(fact_664_less__numeral__extra_I1_J,axiom,
    ord_less_int @ zero_zero_int @ one_one_int ).

% less_numeral_extra(1)
thf(fact_665_not__one__less__zero,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_less_zero
thf(fact_666_not__one__less__zero,axiom,
    ~ ( ord_less_int @ one_one_int @ zero_zero_int ) ).

% not_one_less_zero
thf(fact_667_zero__less__one,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one
thf(fact_668_zero__less__one,axiom,
    ord_less_int @ zero_zero_int @ one_one_int ).

% zero_less_one
thf(fact_669_less__iff__diff__less__0,axiom,
    ( ord_less_int
    = ( ^ [A3: int,B3: int] : ( ord_less_int @ ( minus_minus_int @ A3 @ B3 ) @ zero_zero_int ) ) ) ).

% less_iff_diff_less_0
thf(fact_670_list_Oexpand,axiom,
    ! [List: list_a,List2: list_a] :
      ( ( ( List = nil_a )
        = ( List2 = nil_a ) )
     => ( ( ( List != nil_a )
         => ( ( List2 != nil_a )
           => ( ( ( hd_a @ List )
                = ( hd_a @ List2 ) )
              & ( ( tl_a @ List )
                = ( tl_a @ List2 ) ) ) ) )
       => ( List = List2 ) ) ) ).

% list.expand
thf(fact_671_list_Oexpand,axiom,
    ! [List: list_set_a,List2: list_set_a] :
      ( ( ( List = nil_set_a )
        = ( List2 = nil_set_a ) )
     => ( ( ( List != nil_set_a )
         => ( ( List2 != nil_set_a )
           => ( ( ( hd_set_a @ List )
                = ( hd_set_a @ List2 ) )
              & ( ( tl_set_a @ List )
                = ( tl_set_a @ List2 ) ) ) ) )
       => ( List = List2 ) ) ) ).

% list.expand
thf(fact_672_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat ) ).

% not_numeral_less_one
thf(fact_673_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ).

% not_numeral_less_one
thf(fact_674_add__mono1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( plus_plus_nat @ B @ one_one_nat ) ) ) ).

% add_mono1
thf(fact_675_add__mono1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ one_one_int ) @ ( plus_plus_int @ B @ one_one_int ) ) ) ).

% add_mono1
thf(fact_676_less__add__one,axiom,
    ! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).

% less_add_one
thf(fact_677_less__add__one,axiom,
    ! [A: int] : ( ord_less_int @ A @ ( plus_plus_int @ A @ one_one_int ) ) ).

% less_add_one
thf(fact_678_last__tl,axiom,
    ! [Xs: list_a] :
      ( ( ( Xs = nil_a )
        | ( ( tl_a @ Xs )
         != nil_a ) )
     => ( ( last_a @ ( tl_a @ Xs ) )
        = ( last_a @ Xs ) ) ) ).

% last_tl
thf(fact_679_last__tl,axiom,
    ! [Xs: list_set_a] :
      ( ( ( Xs = nil_set_a )
        | ( ( tl_set_a @ Xs )
         != nil_set_a ) )
     => ( ( last_set_a @ ( tl_set_a @ Xs ) )
        = ( last_set_a @ Xs ) ) ) ).

% last_tl
thf(fact_680_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ~ ( ord_less_nat @ A @ B )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_681_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: int,B: int] :
      ( ~ ( ord_less_int @ A @ B )
     => ( ( plus_plus_int @ B @ ( minus_minus_int @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_682_less__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ A @ ( minus_minus_int @ C @ B ) )
      = ( ord_less_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_683_diff__less__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( ord_less_int @ A @ ( plus_plus_int @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_684_list__induct4,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_a,Ws: list_a,P2: list_a > list_a > list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P2 @ nil_a @ nil_a @ nil_a @ nil_a )
           => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a,Z3: a,Zs2: list_a,W3: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs3 )
                    = ( size_size_list_a @ Ys3 ) )
                 => ( ( ( size_size_list_a @ Ys3 )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_685_list__induct4,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_a,Ws: list_set_a,P2: list_a > list_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P2 @ nil_a @ nil_a @ nil_a @ nil_set_a )
           => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a,Z3: a,Zs2: list_a,W3: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_a @ Xs3 )
                    = ( size_size_list_a @ Ys3 ) )
                 => ( ( ( size_size_list_a @ Ys3 )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_686_list__induct4,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_set_a,Ws: list_a,P2: list_a > list_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P2 @ nil_a @ nil_a @ nil_set_a @ nil_a )
           => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a,Z3: set_a,Zs2: list_set_a,W3: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs3 )
                    = ( size_size_list_a @ Ys3 ) )
                 => ( ( ( size_size_list_a @ Ys3 )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_687_list__induct4,axiom,
    ! [Xs: list_a,Ys: list_set_a,Zs: list_a,Ws: list_a,P2: list_a > list_set_a > list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( ( size_size_list_set_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P2 @ nil_a @ nil_set_a @ nil_a @ nil_a )
           => ( ! [X5: a,Xs3: list_a,Y3: set_a,Ys3: list_set_a,Z3: a,Zs2: list_a,W3: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs3 )
                    = ( size_size_list_set_a @ Ys3 ) )
                 => ( ( ( size_size_list_set_a @ Ys3 )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_688_list__induct4,axiom,
    ! [Xs: list_set_a,Ys: list_a,Zs: list_a,Ws: list_a,P2: list_set_a > list_a > list_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P2 @ nil_set_a @ nil_a @ nil_a @ nil_a )
           => ( ! [X5: set_a,Xs3: list_set_a,Y3: a,Ys3: list_a,Z3: a,Zs2: list_a,W3: a,Ws2: list_a] :
                  ( ( ( size_size_list_set_a @ Xs3 )
                    = ( size_size_list_a @ Ys3 ) )
                 => ( ( ( size_size_list_a @ Ys3 )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_689_list__induct4,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_set_a,Ws: list_set_a,P2: list_a > list_a > list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P2 @ nil_a @ nil_a @ nil_set_a @ nil_set_a )
           => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a,Z3: set_a,Zs2: list_set_a,W3: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_a @ Xs3 )
                    = ( size_size_list_a @ Ys3 ) )
                 => ( ( ( size_size_list_a @ Ys3 )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_690_list__induct4,axiom,
    ! [Xs: list_a,Ys: list_set_a,Zs: list_a,Ws: list_set_a,P2: list_a > list_set_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( ( size_size_list_set_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P2 @ nil_a @ nil_set_a @ nil_a @ nil_set_a )
           => ( ! [X5: a,Xs3: list_a,Y3: set_a,Ys3: list_set_a,Z3: a,Zs2: list_a,W3: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_a @ Xs3 )
                    = ( size_size_list_set_a @ Ys3 ) )
                 => ( ( ( size_size_list_set_a @ Ys3 )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_691_list__induct4,axiom,
    ! [Xs: list_a,Ys: list_set_a,Zs: list_set_a,Ws: list_a,P2: list_a > list_set_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( ( size_size_list_set_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P2 @ nil_a @ nil_set_a @ nil_set_a @ nil_a )
           => ( ! [X5: a,Xs3: list_a,Y3: set_a,Ys3: list_set_a,Z3: set_a,Zs2: list_set_a,W3: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs3 )
                    = ( size_size_list_set_a @ Ys3 ) )
                 => ( ( ( size_size_list_set_a @ Ys3 )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_692_list__induct4,axiom,
    ! [Xs: list_set_a,Ys: list_a,Zs: list_a,Ws: list_set_a,P2: list_set_a > list_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P2 @ nil_set_a @ nil_a @ nil_a @ nil_set_a )
           => ( ! [X5: set_a,Xs3: list_set_a,Y3: a,Ys3: list_a,Z3: a,Zs2: list_a,W3: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_set_a @ Xs3 )
                    = ( size_size_list_a @ Ys3 ) )
                 => ( ( ( size_size_list_a @ Ys3 )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_693_list__induct4,axiom,
    ! [Xs: list_set_a,Ys: list_a,Zs: list_set_a,Ws: list_a,P2: list_set_a > list_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P2 @ nil_set_a @ nil_a @ nil_set_a @ nil_a )
           => ( ! [X5: set_a,Xs3: list_set_a,Y3: a,Ys3: list_a,Z3: set_a,Zs2: list_set_a,W3: a,Ws2: list_a] :
                  ( ( ( size_size_list_set_a @ Xs3 )
                    = ( size_size_list_a @ Ys3 ) )
                 => ( ( ( size_size_list_a @ Ys3 )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P2 @ Xs3 @ Ys3 @ Zs2 @ Ws2 )
                       => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_a @ W3 @ Ws2 ) ) ) ) ) )
             => ( P2 @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_694_list__induct3,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_a,P2: list_a > list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( P2 @ nil_a @ nil_a @ nil_a )
         => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_a @ Xs3 )
                  = ( size_size_list_a @ Ys3 ) )
               => ( ( ( size_size_list_a @ Ys3 )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_695_list__induct3,axiom,
    ! [Xs: list_a,Ys: list_a,Zs: list_set_a,P2: list_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P2 @ nil_a @ nil_a @ nil_set_a )
         => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_a @ Xs3 )
                  = ( size_size_list_a @ Ys3 ) )
               => ( ( ( size_size_list_a @ Ys3 )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_696_list__induct3,axiom,
    ! [Xs: list_a,Ys: list_set_a,Zs: list_a,P2: list_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( ( size_size_list_set_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( P2 @ nil_a @ nil_set_a @ nil_a )
         => ( ! [X5: a,Xs3: list_a,Y3: set_a,Ys3: list_set_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_a @ Xs3 )
                  = ( size_size_list_set_a @ Ys3 ) )
               => ( ( ( size_size_list_set_a @ Ys3 )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_697_list__induct3,axiom,
    ! [Xs: list_a,Ys: list_set_a,Zs: list_set_a,P2: list_a > list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( ( size_size_list_set_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P2 @ nil_a @ nil_set_a @ nil_set_a )
         => ( ! [X5: a,Xs3: list_a,Y3: set_a,Ys3: list_set_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_a @ Xs3 )
                  = ( size_size_list_set_a @ Ys3 ) )
               => ( ( ( size_size_list_set_a @ Ys3 )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_698_list__induct3,axiom,
    ! [Xs: list_set_a,Ys: list_a,Zs: list_a,P2: list_set_a > list_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( P2 @ nil_set_a @ nil_a @ nil_a )
         => ( ! [X5: set_a,Xs3: list_set_a,Y3: a,Ys3: list_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_set_a @ Xs3 )
                  = ( size_size_list_a @ Ys3 ) )
               => ( ( ( size_size_list_a @ Ys3 )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_699_list__induct3,axiom,
    ! [Xs: list_set_a,Ys: list_a,Zs: list_set_a,P2: list_set_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( ( size_size_list_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P2 @ nil_set_a @ nil_a @ nil_set_a )
         => ( ! [X5: set_a,Xs3: list_set_a,Y3: a,Ys3: list_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_set_a @ Xs3 )
                  = ( size_size_list_a @ Ys3 ) )
               => ( ( ( size_size_list_a @ Ys3 )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_700_list__induct3,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,Zs: list_a,P2: list_set_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( ( size_size_list_set_a @ Ys )
          = ( size_size_list_a @ Zs ) )
       => ( ( P2 @ nil_set_a @ nil_set_a @ nil_a )
         => ( ! [X5: set_a,Xs3: list_set_a,Y3: set_a,Ys3: list_set_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_set_a @ Xs3 )
                  = ( size_size_list_set_a @ Ys3 ) )
               => ( ( ( size_size_list_set_a @ Ys3 )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_701_list__induct3,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,Zs: list_set_a,P2: list_set_a > list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( ( size_size_list_set_a @ Ys )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P2 @ nil_set_a @ nil_set_a @ nil_set_a )
         => ( ! [X5: set_a,Xs3: list_set_a,Y3: set_a,Ys3: list_set_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_set_a @ Xs3 )
                  = ( size_size_list_set_a @ Ys3 ) )
               => ( ( ( size_size_list_set_a @ Ys3 )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P2 @ Xs3 @ Ys3 @ Zs2 )
                   => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P2 @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_702_list__induct2,axiom,
    ! [Xs: list_a,Ys: list_a,P2: list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( P2 @ nil_a @ nil_a )
       => ( ! [X5: a,Xs3: list_a,Y3: a,Ys3: list_a] :
              ( ( ( size_size_list_a @ Xs3 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) )
         => ( P2 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_703_list__induct2,axiom,
    ! [Xs: list_a,Ys: list_set_a,P2: list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( P2 @ nil_a @ nil_set_a )
       => ( ! [X5: a,Xs3: list_a,Y3: set_a,Ys3: list_set_a] :
              ( ( ( size_size_list_a @ Xs3 )
                = ( size_size_list_set_a @ Ys3 ) )
             => ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) ) ) )
         => ( P2 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_704_list__induct2,axiom,
    ! [Xs: list_set_a,Ys: list_a,P2: list_set_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ( P2 @ nil_set_a @ nil_a )
       => ( ! [X5: set_a,Xs3: list_set_a,Y3: a,Ys3: list_a] :
              ( ( ( size_size_list_set_a @ Xs3 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) )
         => ( P2 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_705_list__induct2,axiom,
    ! [Xs: list_set_a,Ys: list_set_a,P2: list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ( P2 @ nil_set_a @ nil_set_a )
       => ( ! [X5: set_a,Xs3: list_set_a,Y3: set_a,Ys3: list_set_a] :
              ( ( ( size_size_list_set_a @ Xs3 )
                = ( size_size_list_set_a @ Ys3 ) )
             => ( ( P2 @ Xs3 @ Ys3 )
               => ( P2 @ ( cons_set_a @ X5 @ Xs3 ) @ ( cons_set_a @ Y3 @ Ys3 ) ) ) )
         => ( P2 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_706_rev__nonempty__induct,axiom,
    ! [Xs: list_a,P2: list_a > $o] :
      ( ( Xs != nil_a )
     => ( ! [X5: a] : ( P2 @ ( cons_a @ X5 @ nil_a ) )
       => ( ! [X5: a,Xs3: list_a] :
              ( ( Xs3 != nil_a )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( append_a @ Xs3 @ ( cons_a @ X5 @ nil_a ) ) ) ) )
         => ( P2 @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_707_rev__nonempty__induct,axiom,
    ! [Xs: list_set_a,P2: list_set_a > $o] :
      ( ( Xs != nil_set_a )
     => ( ! [X5: set_a] : ( P2 @ ( cons_set_a @ X5 @ nil_set_a ) )
       => ( ! [X5: set_a,Xs3: list_set_a] :
              ( ( Xs3 != nil_set_a )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( append_set_a @ Xs3 @ ( cons_set_a @ X5 @ nil_set_a ) ) ) ) )
         => ( P2 @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_708_append__eq__Cons__conv,axiom,
    ! [Ys: list_a,Zs: list_a,X4: a,Xs: list_a] :
      ( ( ( append_a @ Ys @ Zs )
        = ( cons_a @ X4 @ Xs ) )
      = ( ( ( Ys = nil_a )
          & ( Zs
            = ( cons_a @ X4 @ Xs ) ) )
        | ? [Ys6: list_a] :
            ( ( Ys
              = ( cons_a @ X4 @ Ys6 ) )
            & ( ( append_a @ Ys6 @ Zs )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_709_append__eq__Cons__conv,axiom,
    ! [Ys: list_set_a,Zs: list_set_a,X4: set_a,Xs: list_set_a] :
      ( ( ( append_set_a @ Ys @ Zs )
        = ( cons_set_a @ X4 @ Xs ) )
      = ( ( ( Ys = nil_set_a )
          & ( Zs
            = ( cons_set_a @ X4 @ Xs ) ) )
        | ? [Ys6: list_set_a] :
            ( ( Ys
              = ( cons_set_a @ X4 @ Ys6 ) )
            & ( ( append_set_a @ Ys6 @ Zs )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_710_Cons__eq__append__conv,axiom,
    ! [X4: a,Xs: list_a,Ys: list_a,Zs: list_a] :
      ( ( ( cons_a @ X4 @ Xs )
        = ( append_a @ Ys @ Zs ) )
      = ( ( ( Ys = nil_a )
          & ( ( cons_a @ X4 @ Xs )
            = Zs ) )
        | ? [Ys6: list_a] :
            ( ( ( cons_a @ X4 @ Ys6 )
              = Ys )
            & ( Xs
              = ( append_a @ Ys6 @ Zs ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_711_Cons__eq__append__conv,axiom,
    ! [X4: set_a,Xs: list_set_a,Ys: list_set_a,Zs: list_set_a] :
      ( ( ( cons_set_a @ X4 @ Xs )
        = ( append_set_a @ Ys @ Zs ) )
      = ( ( ( Ys = nil_set_a )
          & ( ( cons_set_a @ X4 @ Xs )
            = Zs ) )
        | ? [Ys6: list_set_a] :
            ( ( ( cons_set_a @ X4 @ Ys6 )
              = Ys )
            & ( Xs
              = ( append_set_a @ Ys6 @ Zs ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_712_rev__exhaust,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ~ ! [Ys3: list_a,Y3: a] :
            ( Xs
           != ( append_a @ Ys3 @ ( cons_a @ Y3 @ nil_a ) ) ) ) ).

% rev_exhaust
thf(fact_713_rev__exhaust,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
     => ~ ! [Ys3: list_set_a,Y3: set_a] :
            ( Xs
           != ( append_set_a @ Ys3 @ ( cons_set_a @ Y3 @ nil_set_a ) ) ) ) ).

% rev_exhaust
thf(fact_714_rev__induct,axiom,
    ! [P2: list_a > $o,Xs: list_a] :
      ( ( P2 @ nil_a )
     => ( ! [X5: a,Xs3: list_a] :
            ( ( P2 @ Xs3 )
           => ( P2 @ ( append_a @ Xs3 @ ( cons_a @ X5 @ nil_a ) ) ) )
       => ( P2 @ Xs ) ) ) ).

% rev_induct
thf(fact_715_rev__induct,axiom,
    ! [P2: list_set_a > $o,Xs: list_set_a] :
      ( ( P2 @ nil_set_a )
     => ( ! [X5: set_a,Xs3: list_set_a] :
            ( ( P2 @ Xs3 )
           => ( P2 @ ( append_set_a @ Xs3 @ ( cons_set_a @ X5 @ nil_set_a ) ) ) )
       => ( P2 @ Xs ) ) ) ).

% rev_induct
thf(fact_716_nat__diff__split__asm,axiom,
    ! [P2: nat > $o,A: nat,B: nat] :
      ( ( P2 @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P2 @ zero_zero_nat ) )
            | ? [D2: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D2 ) )
                & ~ ( P2 @ D2 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_717_nat__diff__split,axiom,
    ! [P2: nat > $o,A: nat,B: nat] :
      ( ( P2 @ ( minus_minus_nat @ A @ B ) )
      = ( ( ( ord_less_nat @ A @ B )
         => ( P2 @ zero_zero_nat ) )
        & ! [D2: nat] :
            ( ( A
              = ( plus_plus_nat @ B @ D2 ) )
           => ( P2 @ D2 ) ) ) ) ).

% nat_diff_split
thf(fact_718_last_Osimps,axiom,
    ! [Xs: list_a,X4: a] :
      ( ( ( Xs = nil_a )
       => ( ( last_a @ ( cons_a @ X4 @ Xs ) )
          = X4 ) )
      & ( ( Xs != nil_a )
       => ( ( last_a @ ( cons_a @ X4 @ Xs ) )
          = ( last_a @ Xs ) ) ) ) ).

% last.simps
thf(fact_719_last_Osimps,axiom,
    ! [Xs: list_set_a,X4: set_a] :
      ( ( ( Xs = nil_set_a )
       => ( ( last_set_a @ ( cons_set_a @ X4 @ Xs ) )
          = X4 ) )
      & ( ( Xs != nil_set_a )
       => ( ( last_set_a @ ( cons_set_a @ X4 @ Xs ) )
          = ( last_set_a @ Xs ) ) ) ) ).

% last.simps
thf(fact_720_last__ConsL,axiom,
    ! [Xs: list_a,X4: a] :
      ( ( Xs = nil_a )
     => ( ( last_a @ ( cons_a @ X4 @ Xs ) )
        = X4 ) ) ).

% last_ConsL
thf(fact_721_last__ConsL,axiom,
    ! [Xs: list_set_a,X4: set_a] :
      ( ( Xs = nil_set_a )
     => ( ( last_set_a @ ( cons_set_a @ X4 @ Xs ) )
        = X4 ) ) ).

% last_ConsL
thf(fact_722_last__ConsR,axiom,
    ! [Xs: list_a,X4: a] :
      ( ( Xs != nil_a )
     => ( ( last_a @ ( cons_a @ X4 @ Xs ) )
        = ( last_a @ Xs ) ) ) ).

% last_ConsR
thf(fact_723_last__ConsR,axiom,
    ! [Xs: list_set_a,X4: set_a] :
      ( ( Xs != nil_set_a )
     => ( ( last_set_a @ ( cons_set_a @ X4 @ Xs ) )
        = ( last_set_a @ Xs ) ) ) ).

% last_ConsR
thf(fact_724_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y2: list_a,Z2: list_a] : ( Y2 = Z2 ) )
    = ( ^ [Xs2: list_a,Ys4: list_a] :
          ( ( ( size_size_list_a @ Xs2 )
            = ( size_size_list_a @ Ys4 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_size_list_a @ Xs2 ) )
             => ( ( nth_a @ Xs2 @ I4 )
                = ( nth_a @ Ys4 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_725_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y2: list_set_a,Z2: list_set_a] : ( Y2 = Z2 ) )
    = ( ^ [Xs2: list_set_a,Ys4: list_set_a] :
          ( ( ( size_size_list_set_a @ Xs2 )
            = ( size_size_list_set_a @ Ys4 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_size_list_set_a @ Xs2 ) )
             => ( ( nth_set_a @ Xs2 @ I4 )
                = ( nth_set_a @ Ys4 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_726_Skolem__list__nth,axiom,
    ! [K: nat,P2: nat > a > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X6: a] : ( P2 @ I4 @ X6 ) ) )
      = ( ? [Xs2: list_a] :
            ( ( ( size_size_list_a @ Xs2 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P2 @ I4 @ ( nth_a @ Xs2 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_727_Skolem__list__nth,axiom,
    ! [K: nat,P2: nat > set_a > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X6: set_a] : ( P2 @ I4 @ X6 ) ) )
      = ( ? [Xs2: list_set_a] :
            ( ( ( size_size_list_set_a @ Xs2 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P2 @ I4 @ ( nth_set_a @ Xs2 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_728_nth__equalityI,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys ) )
     => ( ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_size_list_a @ Xs ) )
           => ( ( nth_a @ Xs @ I )
              = ( nth_a @ Ys @ I ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_729_nth__equalityI,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys ) )
     => ( ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_size_list_set_a @ Xs ) )
           => ( ( nth_set_a @ Xs @ I )
              = ( nth_set_a @ Ys @ I ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_730_nth__via__drop,axiom,
    ! [N: nat,Xs: list_a,Y: a,Ys: list_a] :
      ( ( ( drop_a @ N @ Xs )
        = ( cons_a @ Y @ Ys ) )
     => ( ( nth_a @ Xs @ N )
        = Y ) ) ).

% nth_via_drop
thf(fact_731_nth__via__drop,axiom,
    ! [N: nat,Xs: list_set_a,Y: set_a,Ys: list_set_a] :
      ( ( ( drop_set_a @ N @ Xs )
        = ( cons_set_a @ Y @ Ys ) )
     => ( ( nth_set_a @ Xs @ N )
        = Y ) ) ).

% nth_via_drop
thf(fact_732_add__strict__increasing2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_733_add__strict__increasing2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_734_add__strict__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_735_add__strict__increasing,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_736_add__pos__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_737_add__pos__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_738_add__nonpos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_neg
thf(fact_739_add__nonpos__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_nonpos_neg
thf(fact_740_add__nonneg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_741_add__nonneg__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_742_add__neg__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_nonpos
thf(fact_743_add__neg__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_neg_nonpos
thf(fact_744_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_745_zero__less__two,axiom,
    ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ one_one_int ) ).

% zero_less_two
thf(fact_746_tl__take,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( tl_a @ ( take_a @ N @ Xs ) )
      = ( take_a @ ( minus_minus_nat @ N @ one_one_nat ) @ ( tl_a @ Xs ) ) ) ).

% tl_take
thf(fact_747_same__length__different,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( Xs != Ys )
     => ( ( ( size_size_list_a @ Xs )
          = ( size_size_list_a @ Ys ) )
       => ? [Pre: list_a,X5: a,Xs4: list_a,Y3: a,Ys2: list_a] :
            ( ( X5 != Y3 )
            & ( Xs
              = ( append_a @ Pre @ ( append_a @ ( cons_a @ X5 @ nil_a ) @ Xs4 ) ) )
            & ( Ys
              = ( append_a @ Pre @ ( append_a @ ( cons_a @ Y3 @ nil_a ) @ Ys2 ) ) ) ) ) ) ).

% same_length_different
thf(fact_748_same__length__different,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( Xs != Ys )
     => ( ( ( size_size_list_set_a @ Xs )
          = ( size_size_list_set_a @ Ys ) )
       => ? [Pre: list_set_a,X5: set_a,Xs4: list_set_a,Y3: set_a,Ys2: list_set_a] :
            ( ( X5 != Y3 )
            & ( Xs
              = ( append_set_a @ Pre @ ( append_set_a @ ( cons_set_a @ X5 @ nil_set_a ) @ Xs4 ) ) )
            & ( Ys
              = ( append_set_a @ Pre @ ( append_set_a @ ( cons_set_a @ Y3 @ nil_set_a ) @ Ys2 ) ) ) ) ) ) ).

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

% le_0_eq
thf(fact_750_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_751_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_752_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_753_size__neq__size__imp__neq,axiom,
    ! [X4: list_a,Y: list_a] :
      ( ( ( size_size_list_a @ X4 )
       != ( size_size_list_a @ Y ) )
     => ( X4 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_754_size__neq__size__imp__neq,axiom,
    ! [X4: list_set_a,Y: list_set_a] :
      ( ( ( size_size_list_set_a @ X4 )
       != ( size_size_list_set_a @ Y ) )
     => ( X4 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_755_size__neq__size__imp__neq,axiom,
    ! [X4: num,Y: num] :
      ( ( ( size_size_num @ X4 )
       != ( size_size_num @ Y ) )
     => ( X4 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_756_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M3: nat,N3: nat] :
        ? [K3: nat] :
          ( N3
          = ( plus_plus_nat @ M3 @ K3 ) ) ) ) ).

% nat_le_iff_add
thf(fact_757_trans__le__add2,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ I2 @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_le_add2
thf(fact_758_trans__le__add1,axiom,
    ! [I2: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ I2 @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_le_add1
thf(fact_759_add__le__mono1,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_le_mono1
thf(fact_760_add__le__mono,axiom,
    ! [I2: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_le_mono
thf(fact_761_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N2: nat] :
          ( L
          = ( plus_plus_nat @ K @ N2 ) ) ) ).

% le_Suc_ex
thf(fact_762_add__leD2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_763_add__leD1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% add_leD1
thf(fact_764_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

% le_add2
thf(fact_765_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1
thf(fact_766_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_767_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_a,Ys: list_a] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_a @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_a @ Ys ) )
       => ( ! [I: nat] :
              ( ( ord_less_nat @ I @ K )
             => ( ( nth_a @ Xs @ I )
                = ( nth_a @ Ys @ I ) ) )
         => ( ( take_a @ K @ Xs )
            = ( take_a @ K @ Ys ) ) ) ) ) ).

% nth_take_lemma
thf(fact_768_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_set_a,Ys: list_set_a] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_set_a @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_set_a @ Ys ) )
       => ( ! [I: nat] :
              ( ( ord_less_nat @ I @ K )
             => ( ( nth_set_a @ Xs @ I )
                = ( nth_set_a @ Ys @ I ) ) )
         => ( ( take_set_a @ K @ Xs )
            = ( take_set_a @ K @ Ys ) ) ) ) ) ).

% nth_take_lemma
thf(fact_769_diff__commute,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I2 @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I2 @ K ) @ J ) ) ).

% diff_commute
thf(fact_770_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_771_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_772_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_773_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_774_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_775_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_776_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_777_dvd__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ N )
     => ( ( dvd_dvd_nat @ N @ M )
       => ( M = N ) ) ) ).

% dvd_antisym
thf(fact_778_ulgraph_Ois__walk_Ocong,axiom,
    undire6133010728901294956walk_a = undire6133010728901294956walk_a ).

% ulgraph.is_walk.cong
thf(fact_779_nth__Cons_H,axiom,
    ! [N: nat,X4: a,Xs: list_a] :
      ( ( ( N = zero_zero_nat )
       => ( ( nth_a @ ( cons_a @ X4 @ Xs ) @ N )
          = X4 ) )
      & ( ( N != zero_zero_nat )
       => ( ( nth_a @ ( cons_a @ X4 @ Xs ) @ N )
          = ( nth_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% nth_Cons'
thf(fact_780_nth__Cons_H,axiom,
    ! [N: nat,X4: set_a,Xs: list_set_a] :
      ( ( ( N = zero_zero_nat )
       => ( ( nth_set_a @ ( cons_set_a @ X4 @ Xs ) @ N )
          = X4 ) )
      & ( ( N != zero_zero_nat )
       => ( ( nth_set_a @ ( cons_set_a @ X4 @ Xs ) @ N )
          = ( nth_set_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% nth_Cons'
thf(fact_781_drop__Cons_H,axiom,
    ! [N: nat,X4: a,Xs: list_a] :
      ( ( ( N = zero_zero_nat )
       => ( ( drop_a @ N @ ( cons_a @ X4 @ Xs ) )
          = ( cons_a @ X4 @ Xs ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( drop_a @ N @ ( cons_a @ X4 @ Xs ) )
          = ( drop_a @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ).

% drop_Cons'
thf(fact_782_drop__Cons_H,axiom,
    ! [N: nat,X4: set_a,Xs: list_set_a] :
      ( ( ( N = zero_zero_nat )
       => ( ( drop_set_a @ N @ ( cons_set_a @ X4 @ Xs ) )
          = ( cons_set_a @ X4 @ Xs ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( drop_set_a @ N @ ( cons_set_a @ X4 @ Xs ) )
          = ( drop_set_a @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ).

% drop_Cons'
thf(fact_783_nth__append,axiom,
    ! [N: nat,Xs: list_a,Ys: list_a] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
       => ( ( nth_a @ ( append_a @ Xs @ Ys ) @ N )
          = ( nth_a @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
       => ( ( nth_a @ ( append_a @ Xs @ Ys ) @ N )
          = ( nth_a @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_784_nth__append,axiom,
    ! [N: nat,Xs: list_set_a,Ys: list_set_a] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
       => ( ( nth_set_a @ ( append_set_a @ Xs @ Ys ) @ N )
          = ( nth_set_a @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
       => ( ( nth_set_a @ ( append_set_a @ Xs @ Ys ) @ N )
          = ( nth_set_a @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_set_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_785_hd__drop__conv__nth,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
     => ( ( hd_a @ ( drop_a @ N @ Xs ) )
        = ( nth_a @ Xs @ N ) ) ) ).

% hd_drop_conv_nth
thf(fact_786_hd__drop__conv__nth,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
     => ( ( hd_set_a @ ( drop_set_a @ N @ Xs ) )
        = ( nth_set_a @ Xs @ N ) ) ) ).

% hd_drop_conv_nth
thf(fact_787_ulgraph_Ois__closed__walk_Ocong,axiom,
    undire3370724456595283424walk_a = undire3370724456595283424walk_a ).

% ulgraph.is_closed_walk.cong
thf(fact_788_ulgraph_Ois__open__walk_Ocong,axiom,
    undire2427028224930250914walk_a = undire2427028224930250914walk_a ).

% ulgraph.is_open_walk.cong
thf(fact_789_take__Cons_H,axiom,
    ! [N: nat,X4: a,Xs: list_a] :
      ( ( ( N = zero_zero_nat )
       => ( ( take_a @ N @ ( cons_a @ X4 @ Xs ) )
          = nil_a ) )
      & ( ( N != zero_zero_nat )
       => ( ( take_a @ N @ ( cons_a @ X4 @ Xs ) )
          = ( cons_a @ X4 @ ( take_a @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ) ).

% take_Cons'
thf(fact_790_take__Cons_H,axiom,
    ! [N: nat,X4: set_a,Xs: list_set_a] :
      ( ( ( N = zero_zero_nat )
       => ( ( take_set_a @ N @ ( cons_set_a @ X4 @ Xs ) )
          = nil_set_a ) )
      & ( ( N != zero_zero_nat )
       => ( ( take_set_a @ N @ ( cons_set_a @ X4 @ Xs ) )
          = ( cons_set_a @ X4 @ ( take_set_a @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ) ).

% take_Cons'
thf(fact_791_odd__pos,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% odd_pos
thf(fact_792_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_793_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_794_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_795_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_796_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_797_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_798_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_799_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_800_Nat_Ole__imp__diff__is__add,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ( minus_minus_nat @ J @ I2 )
          = K )
        = ( J
          = ( plus_plus_nat @ K @ I2 ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_801_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J @ I2 ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I2 ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_802_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I2 @ J ) @ K )
        = ( plus_plus_nat @ I2 @ ( minus_minus_nat @ J @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_803_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_eq_nat @ I2 @ ( minus_minus_nat @ J @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I2 @ K ) @ J ) ) ) ).

% Nat.le_diff_conv2
thf(fact_804_le__diff__conv,axiom,
    ! [J: nat,K: nat,I2: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J @ K ) @ I2 )
      = ( ord_less_eq_nat @ J @ ( plus_plus_nat @ I2 @ K ) ) ) ).

% le_diff_conv
thf(fact_805_dvd__diff__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ M )
     => ( ( dvd_dvd_nat @ K @ N )
       => ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% dvd_diff_nat
thf(fact_806_less__eq__dvd__minus,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( dvd_dvd_nat @ M @ N )
        = ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) ) ) ) ).

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

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

% dvd_diffD
thf(fact_809_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_810_comp__sgraph_Owalk__length__conv,axiom,
    ( undire4424681683220949296_set_a
    = ( ^ [P: list_set_a] : ( minus_minus_nat @ ( size_size_list_set_a @ P ) @ one_one_nat ) ) ) ).

% comp_sgraph.walk_length_conv
thf(fact_811_comp__sgraph_Owalk__length__conv,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P: list_a] : ( minus_minus_nat @ ( size_size_list_a @ P ) @ one_one_nat ) ) ) ).

% comp_sgraph.walk_length_conv
thf(fact_812_comp__sgraph_Owalk__length__app__ineq,axiom,
    ! [Xs: list_set_a,Ys: list_set_a] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( undire4424681683220949296_set_a @ Xs ) @ ( undire4424681683220949296_set_a @ Ys ) ) @ ( undire4424681683220949296_set_a @ ( append_set_a @ Xs @ Ys ) ) )
      & ( ord_less_eq_nat @ ( undire4424681683220949296_set_a @ ( append_set_a @ Xs @ Ys ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( undire4424681683220949296_set_a @ Xs ) @ ( undire4424681683220949296_set_a @ Ys ) ) @ one_one_nat ) ) ) ).

% comp_sgraph.walk_length_app_ineq
thf(fact_813_comp__sgraph_Owalk__length__app__ineq,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys ) ) @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys ) ) )
      & ( ord_less_eq_nat @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys ) ) @ one_one_nat ) ) ) ).

% comp_sgraph.walk_length_app_ineq
thf(fact_814_degree0__neighborhood__empt__iff,axiom,
    ! [V: a] :
      ( ( finite_finite_set_a @ edges )
     => ( ( ( undire8867928226783802224gree_a @ edges @ V )
          = zero_zero_nat )
        = ( ( undire8504279938402040014hood_a @ vertices @ edges @ V )
          = bot_bot_set_a ) ) ) ).

% degree0_neighborhood_empt_iff
thf(fact_815_is__gen__path__trivial,axiom,
    ! [X4: a] :
      ( ( member_a @ X4 @ vertices )
     => ( undire3562951555376170320path_a @ vertices @ edges @ ( cons_a @ X4 @ nil_a ) ) ) ).

% is_gen_path_trivial
thf(fact_816_edge__size,axiom,
    ! [E: set_a] :
      ( ( member_set_a @ E @ edges )
     => ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_a @ E ) )
        & ( ord_less_eq_nat @ ( finite_card_a @ E ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% edge_size
thf(fact_817_is__path__gen__path,axiom,
    ! [P3: list_a] :
      ( ( undire427332500224447920path_a @ vertices @ edges @ P3 )
     => ( undire3562951555376170320path_a @ vertices @ edges @ P3 ) ) ).

% is_path_gen_path
thf(fact_818_walk__edges__index,axiom,
    ! [I2: nat,W: list_a] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I2 )
     => ( ( ord_less_nat @ I2 @ ( undire8849074589633906640ngth_a @ W ) )
       => ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
         => ( member_set_a @ ( nth_set_a @ ( undire7337870655677353998dges_a @ W ) @ I2 ) @ edges ) ) ) ) ).

% walk_edges_index
thf(fact_819_is__walk__hd__tl,axiom,
    ! [Y: a,Ys: list_a,X4: a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ ( cons_a @ Y @ Ys ) )
     => ( ( member_set_a @ ( insert_a @ X4 @ ( insert_a @ Y @ bot_bot_set_a ) ) @ edges )
       => ( undire6133010728901294956walk_a @ vertices @ edges @ ( cons_a @ X4 @ ( cons_a @ Y @ Ys ) ) ) ) ) ).

% is_walk_hd_tl
thf(fact_820_walk__edges_Osimps_I1_J,axiom,
    ( ( undire7337870655677353998dges_a @ nil_a )
    = nil_set_a ) ).

% walk_edges.simps(1)
thf(fact_821_walk__length__def,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P: list_a] : ( size_size_list_set_a @ ( undire7337870655677353998dges_a @ P ) ) ) ) ).

% walk_length_def
thf(fact_822_walk__edges_Osimps_I2_J,axiom,
    ! [X4: a] :
      ( ( undire7337870655677353998dges_a @ ( cons_a @ X4 @ nil_a ) )
      = nil_set_a ) ).

% walk_edges.simps(2)
thf(fact_823_singleton__not__edge,axiom,
    ! [X4: a] :
      ~ ( member_set_a @ ( insert_a @ X4 @ bot_bot_set_a ) @ edges ) ).

% singleton_not_edge
thf(fact_824_walk__edges_Osimps_I3_J,axiom,
    ! [X4: a,Y: a,Ys: list_a] :
      ( ( undire7337870655677353998dges_a @ ( cons_a @ X4 @ ( cons_a @ Y @ Ys ) ) )
      = ( cons_set_a @ ( insert_a @ X4 @ ( insert_a @ Y @ bot_bot_set_a ) ) @ ( undire7337870655677353998dges_a @ ( cons_a @ Y @ Ys ) ) ) ) ).

% walk_edges.simps(3)
thf(fact_825_not__vert__adj,axiom,
    ! [V: a,U: a] :
      ( ~ ( undire397441198561214472_adj_a @ edges @ V @ U )
     => ~ ( member_set_a @ ( insert_a @ V @ ( insert_a @ U @ bot_bot_set_a ) ) @ edges ) ) ).

% not_vert_adj
thf(fact_826_vert__adj__def,axiom,
    ! [V1: a,V2: a] :
      ( ( undire397441198561214472_adj_a @ edges @ V1 @ V2 )
      = ( member_set_a @ ( insert_a @ V1 @ ( insert_a @ V2 @ bot_bot_set_a ) ) @ edges ) ) ).

% vert_adj_def
thf(fact_827_has__loop__def,axiom,
    ! [V: a] :
      ( ( undire3617971648856834880loop_a @ edges @ V )
      = ( member_set_a @ ( insert_a @ V @ bot_bot_set_a ) @ edges ) ) ).

% has_loop_def
thf(fact_828_wellformed__alt__fst,axiom,
    ! [X4: a,Y: a] :
      ( ( member_set_a @ ( insert_a @ X4 @ ( insert_a @ Y @ bot_bot_set_a ) ) @ edges )
     => ( member_a @ X4 @ vertices ) ) ).

% wellformed_alt_fst
thf(fact_829_wellformed__alt__snd,axiom,
    ! [X4: a,Y: a] :
      ( ( member_set_a @ ( insert_a @ X4 @ ( insert_a @ Y @ bot_bot_set_a ) ) @ edges )
     => ( member_a @ Y @ vertices ) ) ).

% wellformed_alt_snd
thf(fact_830_is__edge__between__def,axiom,
    ( undire8544646567961481629ween_a
    = ( ^ [X6: set_a,Y6: set_a,E3: set_a] :
        ? [X: a,Y5: a] :
          ( ( E3
            = ( insert_a @ X @ ( insert_a @ Y5 @ bot_bot_set_a ) ) )
          & ( member_a @ X @ X6 )
          & ( member_a @ Y5 @ Y6 ) ) ) ) ).

% is_edge_between_def
thf(fact_831_two__edges,axiom,
    ! [E: set_a] :
      ( ( member_set_a @ E @ edges )
     => ( ( finite_card_a @ E )
        = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% two_edges
thf(fact_832_walk__edges_Oelims,axiom,
    ! [X4: list_a,Y: list_set_a] :
      ( ( ( undire7337870655677353998dges_a @ X4 )
        = Y )
     => ( ( ( X4 = nil_a )
         => ( Y != nil_set_a ) )
       => ( ( ? [X5: a] :
                ( X4
                = ( cons_a @ X5 @ nil_a ) )
           => ( Y != nil_set_a ) )
         => ~ ! [X5: a,Y3: a,Ys3: list_a] :
                ( ( X4
                  = ( cons_a @ X5 @ ( cons_a @ Y3 @ Ys3 ) ) )
               => ( Y
                 != ( cons_set_a @ ( insert_a @ X5 @ ( insert_a @ Y3 @ bot_bot_set_a ) ) @ ( undire7337870655677353998dges_a @ ( cons_a @ Y3 @ Ys3 ) ) ) ) ) ) ) ) ).

% walk_edges.elims
thf(fact_833_card1__incident__imp__vert,axiom,
    ! [V: a,E: set_a] :
      ( ( ( undire1521409233611534436dent_a @ V @ E )
        & ( ( finite_card_a @ E )
          = one_one_nat ) )
     => ( E
        = ( insert_a @ V @ bot_bot_set_a ) ) ) ).

% card1_incident_imp_vert
thf(fact_834_vert__adj__inc__edge__iff,axiom,
    ! [V1: a,V2: a] :
      ( ( undire397441198561214472_adj_a @ edges @ V1 @ V2 )
      = ( ( undire1521409233611534436dent_a @ V1 @ ( insert_a @ V1 @ ( insert_a @ V2 @ bot_bot_set_a ) ) )
        & ( undire1521409233611534436dent_a @ V2 @ ( insert_a @ V1 @ ( insert_a @ V2 @ bot_bot_set_a ) ) )
        & ( member_set_a @ ( insert_a @ V1 @ ( insert_a @ V2 @ bot_bot_set_a ) ) @ edges ) ) ) ).

% vert_adj_inc_edge_iff
thf(fact_835_alt__edge__size,axiom,
    ! [E: set_a] :
      ( ( member_set_a @ E @ edges )
     => ( ( ( finite_card_a @ E )
          = one_one_nat )
        | ( ( finite_card_a @ E )
          = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% alt_edge_size
thf(fact_836_alt__deg__neighborhood,axiom,
    ! [V: a] :
      ( ( undire8867928226783802224gree_a @ edges @ V )
      = ( finite_card_a @ ( undire8504279938402040014hood_a @ vertices @ edges @ V ) ) ) ).

% alt_deg_neighborhood
thf(fact_837_walk__edges__app,axiom,
    ! [Xs: list_a,Y: a,X4: a] :
      ( ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( cons_a @ Y @ ( cons_a @ X4 @ nil_a ) ) ) )
      = ( append_set_a @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( cons_a @ Y @ nil_a ) ) ) @ ( cons_set_a @ ( insert_a @ Y @ ( insert_a @ X4 @ bot_bot_set_a ) ) @ nil_set_a ) ) ) ).

% walk_edges_app
thf(fact_838_walk__edges__singleton__app,axiom,
    ! [Ys: list_a,X4: a] :
      ( ( Ys != nil_a )
     => ( ( undire7337870655677353998dges_a @ ( append_a @ ( cons_a @ X4 @ nil_a ) @ Ys ) )
        = ( cons_set_a @ ( insert_a @ X4 @ ( insert_a @ ( hd_a @ Ys ) @ bot_bot_set_a ) ) @ ( undire7337870655677353998dges_a @ Ys ) ) ) ) ).

% walk_edges_singleton_app
thf(fact_839_semiring__norm_I78_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(78)
thf(fact_840_semiring__norm_I75_J,axiom,
    ! [M: num] :
      ~ ( ord_less_num @ M @ one ) ).

% semiring_norm(75)
thf(fact_841_semiring__norm_I76_J,axiom,
    ! [N: num] : ( ord_less_num @ one @ ( bit0 @ N ) ) ).

% semiring_norm(76)
thf(fact_842_is__complement__edge__iff,axiom,
    ! [E: set_a] :
      ( ( ord_less_eq_set_a @ E @ vertices )
     => ( ( member_set_a @ E @ ( undire4625228487420481630dges_a @ vertices @ edges ) )
        = ( ~ ( member_set_a @ E @ edges )
          & ( ( finite_card_a @ E )
            = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% is_complement_edge_iff
thf(fact_843_ulgraph_Ois__gen__path_Ocong,axiom,
    undire3562951555376170320path_a = undire3562951555376170320path_a ).

% ulgraph.is_gen_path.cong
thf(fact_844_comp__sgraph_Owalk__edges_Osimps_I3_J,axiom,
    ! [X4: set_a,Y: set_a,Ys: list_set_a] :
      ( ( undire6234387080713648494_set_a @ ( cons_set_a @ X4 @ ( cons_set_a @ Y @ Ys ) ) )
      = ( cons_set_set_a @ ( insert_set_a @ X4 @ ( insert_set_a @ Y @ bot_bot_set_set_a ) ) @ ( undire6234387080713648494_set_a @ ( cons_set_a @ Y @ Ys ) ) ) ) ).

% comp_sgraph.walk_edges.simps(3)
thf(fact_845_comp__sgraph_Owalk__edges_Osimps_I3_J,axiom,
    ! [X4: a,Y: a,Ys: list_a] :
      ( ( undire7337870655677353998dges_a @ ( cons_a @ X4 @ ( cons_a @ Y @ Ys ) ) )
      = ( cons_set_a @ ( insert_a @ X4 @ ( insert_a @ Y @ bot_bot_set_a ) ) @ ( undire7337870655677353998dges_a @ ( cons_a @ Y @ Ys ) ) ) ) ).

% comp_sgraph.walk_edges.simps(3)
thf(fact_846_comp__sgraph_Owalk__edges_Osimps_I1_J,axiom,
    ( ( undire6234387080713648494_set_a @ nil_set_a )
    = nil_set_set_a ) ).

% comp_sgraph.walk_edges.simps(1)
thf(fact_847_comp__sgraph_Owalk__edges_Osimps_I1_J,axiom,
    ( ( undire7337870655677353998dges_a @ nil_a )
    = nil_set_a ) ).

% comp_sgraph.walk_edges.simps(1)
thf(fact_848_comp__sgraph_Owalk__length__def,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P: list_a] : ( size_size_list_set_a @ ( undire7337870655677353998dges_a @ P ) ) ) ) ).

% comp_sgraph.walk_length_def
thf(fact_849_comp__sgraph_Owalk__edges_Oelims,axiom,
    ! [X4: list_set_a,Y: list_set_set_a] :
      ( ( ( undire6234387080713648494_set_a @ X4 )
        = Y )
     => ( ( ( X4 = nil_set_a )
         => ( Y != nil_set_set_a ) )
       => ( ( ? [X5: set_a] :
                ( X4
                = ( cons_set_a @ X5 @ nil_set_a ) )
           => ( Y != nil_set_set_a ) )
         => ~ ! [X5: set_a,Y3: set_a,Ys3: list_set_a] :
                ( ( X4
                  = ( cons_set_a @ X5 @ ( cons_set_a @ Y3 @ Ys3 ) ) )
               => ( Y
                 != ( cons_set_set_a @ ( insert_set_a @ X5 @ ( insert_set_a @ Y3 @ bot_bot_set_set_a ) ) @ ( undire6234387080713648494_set_a @ ( cons_set_a @ Y3 @ Ys3 ) ) ) ) ) ) ) ) ).

% comp_sgraph.walk_edges.elims
thf(fact_850_comp__sgraph_Owalk__edges_Oelims,axiom,
    ! [X4: list_a,Y: list_set_a] :
      ( ( ( undire7337870655677353998dges_a @ X4 )
        = Y )
     => ( ( ( X4 = nil_a )
         => ( Y != nil_set_a ) )
       => ( ( ? [X5: a] :
                ( X4
                = ( cons_a @ X5 @ nil_a ) )
           => ( Y != nil_set_a ) )
         => ~ ! [X5: a,Y3: a,Ys3: list_a] :
                ( ( X4
                  = ( cons_a @ X5 @ ( cons_a @ Y3 @ Ys3 ) ) )
               => ( Y
                 != ( cons_set_a @ ( insert_a @ X5 @ ( insert_a @ Y3 @ bot_bot_set_a ) ) @ ( undire7337870655677353998dges_a @ ( cons_a @ Y3 @ Ys3 ) ) ) ) ) ) ) ) ).

% comp_sgraph.walk_edges.elims
thf(fact_851_comp__sgraph_Owalk__edges__app,axiom,
    ! [Xs: list_set_a,Y: set_a,X4: set_a] :
      ( ( undire6234387080713648494_set_a @ ( append_set_a @ Xs @ ( cons_set_a @ Y @ ( cons_set_a @ X4 @ nil_set_a ) ) ) )
      = ( append_set_set_a @ ( undire6234387080713648494_set_a @ ( append_set_a @ Xs @ ( cons_set_a @ Y @ nil_set_a ) ) ) @ ( cons_set_set_a @ ( insert_set_a @ Y @ ( insert_set_a @ X4 @ bot_bot_set_set_a ) ) @ nil_set_set_a ) ) ) ).

% comp_sgraph.walk_edges_app
thf(fact_852_comp__sgraph_Owalk__edges__app,axiom,
    ! [Xs: list_a,Y: a,X4: a] :
      ( ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( cons_a @ Y @ ( cons_a @ X4 @ nil_a ) ) ) )
      = ( append_set_a @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( cons_a @ Y @ nil_a ) ) ) @ ( cons_set_a @ ( insert_a @ Y @ ( insert_a @ X4 @ bot_bot_set_a ) ) @ nil_set_a ) ) ) ).

% comp_sgraph.walk_edges_app
thf(fact_853_comp__sgraph_Owalk__edges_Osimps_I2_J,axiom,
    ! [X4: set_a] :
      ( ( undire6234387080713648494_set_a @ ( cons_set_a @ X4 @ nil_set_a ) )
      = nil_set_set_a ) ).

% comp_sgraph.walk_edges.simps(2)
thf(fact_854_comp__sgraph_Owalk__edges_Osimps_I2_J,axiom,
    ! [X4: a] :
      ( ( undire7337870655677353998dges_a @ ( cons_a @ X4 @ nil_a ) )
      = nil_set_a ) ).

% comp_sgraph.walk_edges.simps(2)
thf(fact_855_comp__sgraph_Owalk__edges__singleton__app,axiom,
    ! [Ys: list_set_a,X4: set_a] :
      ( ( Ys != nil_set_a )
     => ( ( undire6234387080713648494_set_a @ ( append_set_a @ ( cons_set_a @ X4 @ nil_set_a ) @ Ys ) )
        = ( cons_set_set_a @ ( insert_set_a @ X4 @ ( insert_set_a @ ( hd_set_a @ Ys ) @ bot_bot_set_set_a ) ) @ ( undire6234387080713648494_set_a @ Ys ) ) ) ) ).

% comp_sgraph.walk_edges_singleton_app
thf(fact_856_comp__sgraph_Owalk__edges__singleton__app,axiom,
    ! [Ys: list_a,X4: a] :
      ( ( Ys != nil_a )
     => ( ( undire7337870655677353998dges_a @ ( append_a @ ( cons_a @ X4 @ nil_a ) @ Ys ) )
        = ( cons_set_a @ ( insert_a @ X4 @ ( insert_a @ ( hd_a @ Ys ) @ bot_bot_set_a ) ) @ ( undire7337870655677353998dges_a @ Ys ) ) ) ) ).

% comp_sgraph.walk_edges_singleton_app
thf(fact_857_num_Osize_I4_J,axiom,
    ( ( size_size_num @ one )
    = zero_zero_nat ) ).

% num.size(4)
thf(fact_858_odd__card__imp__not__empty,axiom,
    ! [A2: set_a] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( finite_card_a @ A2 ) )
     => ( A2 != bot_bot_set_a ) ) ).

% odd_card_imp_not_empty
thf(fact_859_odd__card__imp__not__empty,axiom,
    ! [A2: set_set_a] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( finite_card_set_a @ A2 ) )
     => ( A2 != bot_bot_set_set_a ) ) ).

% odd_card_imp_not_empty
thf(fact_860_is__sedge__def,axiom,
    ( undire4917966558017083288edge_a
    = ( ^ [E3: set_a] :
          ( ( finite_card_a @ E3 )
          = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% is_sedge_def
thf(fact_861_is__cycle__alt__gen__path,axiom,
    ! [Xs: list_a] :
      ( ( undire2407311113669455967ycle_a @ vertices @ edges @ Xs )
      = ( ( undire3562951555376170320path_a @ vertices @ edges @ Xs )
        & ( ord_less_eq_nat @ one_one_nat @ ( undire8849074589633906640ngth_a @ Xs ) )
        & ( ( hd_a @ Xs )
          = ( last_a @ Xs ) ) ) ) ).

% is_cycle_alt_gen_path
thf(fact_862_is__gen__path__path,axiom,
    ! [P3: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P3 )
     => ( ( ord_less_nat @ zero_zero_nat @ ( undire8849074589633906640ngth_a @ P3 ) )
       => ( ~ ( undire2407311113669455967ycle_a @ vertices @ edges @ P3 )
         => ( undire427332500224447920path_a @ vertices @ edges @ P3 ) ) ) ) ).

% is_gen_path_path
thf(fact_863_is__walk__index,axiom,
    ! [I2: nat,W: list_a] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I2 )
     => ( ( ord_less_nat @ ( suc @ I2 ) @ ( size_size_list_a @ W ) )
       => ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
         => ( member_set_a @ ( insert_a @ ( nth_a @ W @ I2 ) @ ( insert_a @ ( nth_a @ W @ ( plus_plus_nat @ I2 @ one_one_nat ) ) @ bot_bot_set_a ) ) @ edges ) ) ) ) ).

% is_walk_index
thf(fact_864_nat_Oinject,axiom,
    ! [X2: nat,Y23: nat] :
      ( ( ( suc @ X2 )
        = ( suc @ Y23 ) )
      = ( X2 = Y23 ) ) ).

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

% old.nat.inject
thf(fact_866_is__gen__path__cycle,axiom,
    ! [P3: list_a] :
      ( ( undire2407311113669455967ycle_a @ vertices @ edges @ P3 )
     => ( undire3562951555376170320path_a @ vertices @ edges @ P3 ) ) ).

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

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

% Suc_mono
thf(fact_869_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_870_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_871_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_872_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_873_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_874_is__gen__path__options,axiom,
    ! [P3: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P3 )
      = ( ( undire2407311113669455967ycle_a @ vertices @ edges @ P3 )
        | ( undire427332500224447920path_a @ vertices @ edges @ P3 )
        | ? [X: a] :
            ( ( member_a @ X @ vertices )
            & ( P3
              = ( cons_a @ X @ nil_a ) ) ) ) ) ).

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

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

% less_Suc0
thf(fact_877_dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ ( suc @ zero_zero_nat ) )
      = ( M
        = ( suc @ zero_zero_nat ) ) ) ).

% dvd_1_iff_1
thf(fact_878_dvd__1__left,axiom,
    ! [K: nat] : ( dvd_dvd_nat @ ( suc @ zero_zero_nat ) @ K ) ).

% dvd_1_left
thf(fact_879_nth__Cons__Suc,axiom,
    ! [X4: a,Xs: list_a,N: nat] :
      ( ( nth_a @ ( cons_a @ X4 @ Xs ) @ ( suc @ N ) )
      = ( nth_a @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_880_nth__Cons__Suc,axiom,
    ! [X4: set_a,Xs: list_set_a,N: nat] :
      ( ( nth_set_a @ ( cons_set_a @ X4 @ Xs ) @ ( suc @ N ) )
      = ( nth_set_a @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_881_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_882_take__Suc__Cons,axiom,
    ! [N: nat,X4: a,Xs: list_a] :
      ( ( take_a @ ( suc @ N ) @ ( cons_a @ X4 @ Xs ) )
      = ( cons_a @ X4 @ ( take_a @ N @ Xs ) ) ) ).

% take_Suc_Cons
thf(fact_883_take__Suc__Cons,axiom,
    ! [N: nat,X4: set_a,Xs: list_set_a] :
      ( ( take_set_a @ ( suc @ N ) @ ( cons_set_a @ X4 @ Xs ) )
      = ( cons_set_a @ X4 @ ( take_set_a @ N @ Xs ) ) ) ).

% take_Suc_Cons
thf(fact_884_drop__Suc__Cons,axiom,
    ! [N: nat,X4: a,Xs: list_a] :
      ( ( drop_a @ ( suc @ N ) @ ( cons_a @ X4 @ Xs ) )
      = ( drop_a @ N @ Xs ) ) ).

% drop_Suc_Cons
thf(fact_885_drop__Suc__Cons,axiom,
    ! [N: nat,X4: set_a,Xs: list_set_a] :
      ( ( drop_set_a @ ( suc @ N ) @ ( cons_set_a @ X4 @ Xs ) )
      = ( drop_set_a @ N @ Xs ) ) ).

% drop_Suc_Cons
thf(fact_886_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_887_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J @ K ) ) @ I2 )
        = ( minus_minus_nat @ ( suc @ J ) @ ( plus_plus_nat @ K @ I2 ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_888_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J: nat,I2: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I2 @ ( suc @ ( minus_minus_nat @ J @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I2 @ K ) @ ( suc @ J ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_889_Suc__numeral,axiom,
    ! [N: num] :
      ( ( suc @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ N @ one ) ) ) ).

% Suc_numeral
thf(fact_890_add__2__eq__Suc_H,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc'
thf(fact_891_add__2__eq__Suc,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc
thf(fact_892_Suc__1,axiom,
    ( ( suc @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% Suc_1
thf(fact_893_even__Suc__Suc__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ ( suc @ N ) ) )
      = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% even_Suc_Suc_iff
thf(fact_894_even__Suc,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( suc @ N ) )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% even_Suc
thf(fact_895_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_896_odd__Suc__minus__one,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% odd_Suc_minus_one
thf(fact_897_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M2: nat] :
          ( N
          = ( suc @ M2 ) ) ) ).

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

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

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

% Suc_neq_Zero
thf(fact_901_zero__induct,axiom,
    ! [P2: nat > $o,K: nat] :
      ( ( P2 @ K )
     => ( ! [N2: nat] :
            ( ( P2 @ ( suc @ N2 ) )
           => ( P2 @ N2 ) )
       => ( P2 @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_902_diff__induct,axiom,
    ! [P2: nat > nat > $o,M: nat,N: nat] :
      ( ! [X5: nat] : ( P2 @ X5 @ zero_zero_nat )
     => ( ! [Y3: nat] : ( P2 @ zero_zero_nat @ ( suc @ Y3 ) )
       => ( ! [X5: nat,Y3: nat] :
              ( ( P2 @ X5 @ Y3 )
             => ( P2 @ ( suc @ X5 ) @ ( suc @ Y3 ) ) )
         => ( P2 @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_903_nat__induct,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ( P2 @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( P2 @ N2 )
           => ( P2 @ ( suc @ N2 ) ) )
       => ( P2 @ N ) ) ) ).

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

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

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

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

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

% nat.distinct(1)
thf(fact_909_Nat_OlessE,axiom,
    ! [I2: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ K )
     => ( ( K
         != ( suc @ I2 ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I2 @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_910_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_911_Suc__lessE,axiom,
    ! [I2: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I2 ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I2 @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_912_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_913_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

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

% less_SucI
thf(fact_915_Ex__less__Suc,axiom,
    ! [N: nat,P2: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P2 @ I4 ) ) )
      = ( ( P2 @ N )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P2 @ I4 ) ) ) ) ).

% Ex_less_Suc
thf(fact_916_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_917_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_918_All__less__Suc,axiom,
    ! [N: nat,P2: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P2 @ I4 ) ) )
      = ( ( P2 @ N )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P2 @ I4 ) ) ) ) ).

% All_less_Suc
thf(fact_919_Suc__less__eq2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M )
      = ( ? [M5: nat] :
            ( ( M
              = ( suc @ M5 ) )
            & ( ord_less_nat @ N @ M5 ) ) ) ) ).

% Suc_less_eq2
thf(fact_920_less__antisym,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
       => ( M = N ) ) ) ).

% less_antisym
thf(fact_921_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_922_less__trans__Suc,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ( ord_less_nat @ J @ K )
       => ( ord_less_nat @ ( suc @ I2 ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_923_less__Suc__induct,axiom,
    ! [I2: nat,J: nat,P2: nat > nat > $o] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ! [I: nat] : ( P2 @ I @ ( suc @ I ) )
       => ( ! [I: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P2 @ I @ J2 )
                 => ( ( P2 @ J2 @ K2 )
                   => ( P2 @ I @ K2 ) ) ) ) )
         => ( P2 @ I2 @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_924_strict__inc__induct,axiom,
    ! [I2: nat,J: nat,P2: nat > $o] :
      ( ( ord_less_nat @ I2 @ J )
     => ( ! [I: nat] :
            ( ( J
              = ( suc @ I ) )
           => ( P2 @ I ) )
       => ( ! [I: nat] :
              ( ( ord_less_nat @ I @ J )
             => ( ( P2 @ ( suc @ I ) )
               => ( P2 @ I ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% strict_inc_induct
thf(fact_925_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_926_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_leD
thf(fact_927_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_928_le__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_929_Suc__le__D,axiom,
    ! [N: nat,M6: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M6 )
     => ? [M2: nat] :
          ( M6
          = ( suc @ M2 ) ) ) ).

% Suc_le_D
thf(fact_930_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_931_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_932_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_933_full__nat__induct,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M4: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M4 ) @ N2 )
             => ( P2 @ M4 ) )
         => ( P2 @ N2 ) )
     => ( P2 @ N ) ) ).

% full_nat_induct
thf(fact_934_nat__induct__at__least,axiom,
    ! [M: nat,N: nat,P2: nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( P2 @ M )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ M @ N2 )
             => ( ( P2 @ N2 )
               => ( P2 @ ( suc @ N2 ) ) ) )
         => ( P2 @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_935_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X5: nat] : ( R @ X5 @ X5 )
       => ( ! [X5: nat,Y3: nat,Z3: nat] :
              ( ( R @ X5 @ Y3 )
             => ( ( R @ Y3 @ Z3 )
               => ( R @ X5 @ Z3 ) ) )
         => ( ! [N2: nat] : ( R @ N2 @ ( suc @ N2 ) )
           => ( R @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_936_add__Suc__shift,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_937_add__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc
thf(fact_938_nat__arith_Osuc1,axiom,
    ! [A2: nat,K: nat,A: nat] :
      ( ( A2
        = ( plus_plus_nat @ K @ A ) )
     => ( ( suc @ A2 )
        = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).

% nat_arith.suc1
thf(fact_939_zero__induct__lemma,axiom,
    ! [P2: nat > $o,K: nat,I2: nat] :
      ( ( P2 @ K )
     => ( ! [N2: nat] :
            ( ( P2 @ ( suc @ N2 ) )
           => ( P2 @ N2 ) )
       => ( P2 @ ( minus_minus_nat @ K @ I2 ) ) ) ) ).

% zero_induct_lemma
thf(fact_940_ulgraph_Ois__cycle_Ocong,axiom,
    undire2407311113669455967ycle_a = undire2407311113669455967ycle_a ).

% ulgraph.is_cycle.cong
thf(fact_941_Suc__inject,axiom,
    ! [X4: nat,Y: nat] :
      ( ( ( suc @ X4 )
        = ( suc @ Y ) )
     => ( X4 = Y ) ) ).

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

% n_not_Suc_n
thf(fact_943_lift__Suc__mono__le,axiom,
    ! [F: nat > set_a,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_set_a @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_a @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_944_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_945_lift__Suc__mono__le,axiom,
    ! [F: nat > num,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_num @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_946_lift__Suc__mono__le,axiom,
    ! [F: nat > int,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_int @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_947_lift__Suc__mono__le,axiom,
    ! [F: nat > set_list_a,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_le8861187494160871172list_a @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_le8861187494160871172list_a @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_948_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_a,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_set_a @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_a @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

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

% lift_Suc_antimono_le
thf(fact_950_lift__Suc__antimono__le,axiom,
    ! [F: nat > num,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_num @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_num @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_951_lift__Suc__antimono__le,axiom,
    ! [F: nat > int,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_int @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_int @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_952_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_list_a,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_le8861187494160871172list_a @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_le8861187494160871172list_a @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_953_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_954_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > num,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_num @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_955_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > int,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_int @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_956_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N4 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_957_lift__Suc__mono__less,axiom,
    ! [F: nat > num,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N4 )
       => ( ord_less_num @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_958_lift__Suc__mono__less,axiom,
    ! [F: nat > int,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N4 )
       => ( ord_less_int @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_959_less__Suc__eq__0__disj,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( M = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M
              = ( suc @ J3 ) )
            & ( ord_less_nat @ J3 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_960_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M2: nat] :
          ( N
          = ( suc @ M2 ) ) ) ).

% gr0_implies_Suc
thf(fact_961_All__less__Suc2,axiom,
    ! [N: nat,P2: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P2 @ I4 ) ) )
      = ( ( P2 @ zero_zero_nat )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P2 @ ( suc @ I4 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_962_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M3: nat] :
            ( N
            = ( suc @ M3 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_963_Ex__less__Suc2,axiom,
    ! [N: nat,P2: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P2 @ I4 ) ) )
      = ( ( P2 @ zero_zero_nat )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P2 @ ( suc @ I4 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_964_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_965_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N3: nat] : ( ord_less_eq_nat @ ( suc @ N3 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_966_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_967_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_968_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_969_inc__induct,axiom,
    ! [I2: nat,J: nat,P2: nat > $o] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( P2 @ J )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I2 @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P2 @ ( suc @ N2 ) )
                 => ( P2 @ N2 ) ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% inc_induct
thf(fact_970_dec__induct,axiom,
    ! [I2: nat,J: nat,P2: nat > $o] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( P2 @ I2 )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I2 @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P2 @ N2 )
                 => ( P2 @ ( suc @ N2 ) ) ) ) )
         => ( P2 @ J ) ) ) ) ).

% dec_induct
thf(fact_971_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_972_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_973_one__is__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M @ N ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_974_add__is__1,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_975_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ( suc @ N )
        = ( size_size_list_a @ Xs ) )
      = ( ? [Y5: a,Ys4: list_a] :
            ( ( Xs
              = ( cons_a @ Y5 @ Ys4 ) )
            & ( ( size_size_list_a @ Ys4 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_976_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ( suc @ N )
        = ( size_size_list_set_a @ Xs ) )
      = ( ? [Y5: set_a,Ys4: list_set_a] :
            ( ( Xs
              = ( cons_set_a @ Y5 @ Ys4 ) )
            & ( ( size_size_list_set_a @ Ys4 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_977_length__Suc__conv,axiom,
    ! [Xs: list_a,N: nat] :
      ( ( ( size_size_list_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y5: a,Ys4: list_a] :
            ( ( Xs
              = ( cons_a @ Y5 @ Ys4 ) )
            & ( ( size_size_list_a @ Ys4 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_978_length__Suc__conv,axiom,
    ! [Xs: list_set_a,N: nat] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y5: set_a,Ys4: list_set_a] :
            ( ( Xs
              = ( cons_set_a @ Y5 @ Ys4 ) )
            & ( ( size_size_list_set_a @ Ys4 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_979_less__natE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ~ ! [Q: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M @ Q ) ) ) ) ).

% less_natE
thf(fact_980_less__add__Suc1,axiom,
    ! [I2: nat,M: nat] : ( ord_less_nat @ I2 @ ( suc @ ( plus_plus_nat @ I2 @ M ) ) ) ).

% less_add_Suc1
thf(fact_981_less__add__Suc2,axiom,
    ! [I2: nat,M: nat] : ( ord_less_nat @ I2 @ ( suc @ ( plus_plus_nat @ M @ I2 ) ) ) ).

% less_add_Suc2
thf(fact_982_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M3: nat,N3: nat] :
        ? [K3: nat] :
          ( N3
          = ( suc @ ( plus_plus_nat @ M3 @ K3 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_983_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_984_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_985_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_986_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_987_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_988_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_989_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_990_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N3: nat] : ( plus_plus_nat @ N3 @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_991_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_992_take__tl,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( take_a @ N @ ( tl_a @ Xs ) )
      = ( tl_a @ ( take_a @ ( suc @ N ) @ Xs ) ) ) ).

% take_tl
thf(fact_993_drop__Suc,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( drop_a @ ( suc @ N ) @ Xs )
      = ( drop_a @ N @ ( tl_a @ Xs ) ) ) ).

% drop_Suc
thf(fact_994_numeral__1__eq__Suc__0,axiom,
    ( ( numeral_numeral_nat @ one )
    = ( suc @ zero_zero_nat ) ) ).

% numeral_1_eq_Suc_0
thf(fact_995_num_Osize_I5_J,axiom,
    ! [X2: num] :
      ( ( size_size_num @ ( bit0 @ X2 ) )
      = ( plus_plus_nat @ ( size_size_num @ X2 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(5)
thf(fact_996_ex__least__nat__less,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ( P2 @ N )
     => ( ~ ( P2 @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I3: nat] :
                ( ( ord_less_eq_nat @ I3 @ K2 )
               => ~ ( P2 @ I3 ) )
            & ( P2 @ ( suc @ K2 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_997_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_size_list_a @ Xs ) )
      = ( ? [X: a,Ys4: list_a] :
            ( ( Xs
              = ( cons_a @ X @ Ys4 ) )
            & ( ord_less_eq_nat @ N @ ( size_size_list_a @ Ys4 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_998_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_size_list_set_a @ Xs ) )
      = ( ? [X: set_a,Ys4: list_set_a] :
            ( ( Xs
              = ( cons_set_a @ X @ Ys4 ) )
            & ( ord_less_eq_nat @ N @ ( size_size_list_set_a @ Ys4 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_999_diff__Suc__less,axiom,
    ! [N: nat,I2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I2 ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_1000_nat__induct__non__zero,axiom,
    ! [N: nat,P2: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P2 @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( ( P2 @ N2 )
               => ( P2 @ ( suc @ N2 ) ) ) )
         => ( P2 @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_1001_numeral__2__eq__2,axiom,
    ( ( numeral_numeral_nat @ ( bit0 @ one ) )
    = ( suc @ ( suc @ zero_zero_nat ) ) ) ).

% numeral_2_eq_2
thf(fact_1002_list_Osize_I4_J,axiom,
    ! [X21: a,X22: list_a] :
      ( ( size_size_list_a @ ( cons_a @ X21 @ X22 ) )
      = ( plus_plus_nat @ ( size_size_list_a @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_1003_list_Osize_I4_J,axiom,
    ! [X21: set_a,X22: list_set_a] :
      ( ( size_size_list_set_a @ ( cons_set_a @ X21 @ X22 ) )
      = ( plus_plus_nat @ ( size_size_list_set_a @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_1004_length__Suc__conv__rev,axiom,
    ! [Xs: list_a,N: nat] :
      ( ( ( size_size_list_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y5: a,Ys4: list_a] :
            ( ( Xs
              = ( append_a @ Ys4 @ ( cons_a @ Y5 @ nil_a ) ) )
            & ( ( size_size_list_a @ Ys4 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1005_length__Suc__conv__rev,axiom,
    ! [Xs: list_set_a,N: nat] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y5: set_a,Ys4: list_set_a] :
            ( ( Xs
              = ( append_set_a @ Ys4 @ ( cons_set_a @ Y5 @ nil_set_a ) ) )
            & ( ( size_size_list_set_a @ Ys4 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1006_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_1007_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_1008_add__eq__if,axiom,
    ( plus_plus_nat
    = ( ^ [M3: nat,N3: nat] : ( if_nat @ ( M3 = zero_zero_nat ) @ N3 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M3 @ one_one_nat ) @ N3 ) ) ) ) ) ).

% add_eq_if
thf(fact_1009_Suc__nat__number__of__add,axiom,
    ! [V: num,N: nat] :
      ( ( suc @ ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ one ) ) @ N ) ) ).

% Suc_nat_number_of_add
thf(fact_1010_nth__tl,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_a @ ( tl_a @ Xs ) ) )
     => ( ( nth_a @ ( tl_a @ Xs ) @ N )
        = ( nth_a @ Xs @ ( suc @ N ) ) ) ) ).

% nth_tl
thf(fact_1011_nth__tl,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_set_a @ ( tl_set_a @ Xs ) ) )
     => ( ( nth_set_a @ ( tl_set_a @ Xs ) @ N )
        = ( nth_set_a @ Xs @ ( suc @ N ) ) ) ) ).

% nth_tl
thf(fact_1012_less__2__cases__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases_iff
thf(fact_1013_less__2__cases,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
     => ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases
thf(fact_1014_Cons__nth__drop__Suc,axiom,
    ! [I2: nat,Xs: list_a] :
      ( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs ) )
     => ( ( cons_a @ ( nth_a @ Xs @ I2 ) @ ( drop_a @ ( suc @ I2 ) @ Xs ) )
        = ( drop_a @ I2 @ Xs ) ) ) ).

% Cons_nth_drop_Suc
thf(fact_1015_Cons__nth__drop__Suc,axiom,
    ! [I2: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ I2 @ ( size_size_list_set_a @ Xs ) )
     => ( ( cons_set_a @ ( nth_set_a @ Xs @ I2 ) @ ( drop_set_a @ ( suc @ I2 ) @ Xs ) )
        = ( drop_set_a @ I2 @ Xs ) ) ) ).

% Cons_nth_drop_Suc
thf(fact_1016_take__Suc,axiom,
    ! [Xs: list_a,N: nat] :
      ( ( Xs != nil_a )
     => ( ( take_a @ ( suc @ N ) @ Xs )
        = ( cons_a @ ( hd_a @ Xs ) @ ( take_a @ N @ ( tl_a @ Xs ) ) ) ) ) ).

% take_Suc
thf(fact_1017_take__Suc,axiom,
    ! [Xs: list_set_a,N: nat] :
      ( ( Xs != nil_set_a )
     => ( ( take_set_a @ ( suc @ N ) @ Xs )
        = ( cons_set_a @ ( hd_set_a @ Xs ) @ ( take_set_a @ N @ ( tl_set_a @ Xs ) ) ) ) ) ).

% take_Suc
thf(fact_1018_take__Suc__conv__app__nth,axiom,
    ! [I2: nat,Xs: list_a] :
      ( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs ) )
     => ( ( take_a @ ( suc @ I2 ) @ Xs )
        = ( append_a @ ( take_a @ I2 @ Xs ) @ ( cons_a @ ( nth_a @ Xs @ I2 ) @ nil_a ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_1019_take__Suc__conv__app__nth,axiom,
    ! [I2: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ I2 @ ( size_size_list_set_a @ Xs ) )
     => ( ( take_set_a @ ( suc @ I2 ) @ Xs )
        = ( append_set_a @ ( take_set_a @ I2 @ Xs ) @ ( cons_set_a @ ( nth_set_a @ Xs @ I2 ) @ nil_set_a ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_1020_id__take__nth__drop,axiom,
    ! [I2: nat,Xs: list_a] :
      ( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs ) )
     => ( Xs
        = ( append_a @ ( take_a @ I2 @ Xs ) @ ( cons_a @ ( nth_a @ Xs @ I2 ) @ ( drop_a @ ( suc @ I2 ) @ Xs ) ) ) ) ) ).

% id_take_nth_drop
thf(fact_1021_id__take__nth__drop,axiom,
    ! [I2: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ I2 @ ( size_size_list_set_a @ Xs ) )
     => ( Xs
        = ( append_set_a @ ( take_set_a @ I2 @ Xs ) @ ( cons_set_a @ ( nth_set_a @ Xs @ I2 ) @ ( drop_set_a @ ( suc @ I2 ) @ Xs ) ) ) ) ) ).

% id_take_nth_drop
thf(fact_1022_take__hd__drop,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
     => ( ( append_a @ ( take_a @ N @ Xs ) @ ( cons_a @ ( hd_a @ ( drop_a @ N @ Xs ) ) @ nil_a ) )
        = ( take_a @ ( suc @ N ) @ Xs ) ) ) ).

% take_hd_drop
thf(fact_1023_take__hd__drop,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
     => ( ( append_set_a @ ( take_set_a @ N @ Xs ) @ ( cons_set_a @ ( hd_set_a @ ( drop_set_a @ N @ Xs ) ) @ nil_set_a ) )
        = ( take_set_a @ ( suc @ N ) @ Xs ) ) ) ).

% take_hd_drop
thf(fact_1024_card__Diff__insert,axiom,
    ! [A: list_a,A2: set_list_a,B2: set_list_a] :
      ( ( member_list_a @ A @ A2 )
     => ( ~ ( member_list_a @ A @ B2 )
       => ( ( finite_card_list_a @ ( minus_646659088055828811list_a @ A2 @ ( insert_list_a @ A @ B2 ) ) )
          = ( minus_minus_nat @ ( finite_card_list_a @ ( minus_646659088055828811list_a @ A2 @ B2 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_1025_card__Diff__insert,axiom,
    ! [A: a,A2: set_a,B2: set_a] :
      ( ( member_a @ A @ A2 )
     => ( ~ ( member_a @ A @ B2 )
       => ( ( finite_card_a @ ( minus_minus_set_a @ A2 @ ( insert_a @ A @ B2 ) ) )
          = ( minus_minus_nat @ ( finite_card_a @ ( minus_minus_set_a @ A2 @ B2 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_1026_card__Diff__insert,axiom,
    ! [A: set_a,A2: set_set_a,B2: set_set_a] :
      ( ( member_set_a @ A @ A2 )
     => ( ~ ( member_set_a @ A @ B2 )
       => ( ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ ( insert_set_a @ A @ B2 ) ) )
          = ( minus_minus_nat @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) ) @ one_one_nat ) ) ) ) ).

% card_Diff_insert
thf(fact_1027_card__insert__disjoint,axiom,
    ! [A2: set_list_a,X4: list_a] :
      ( ( finite_finite_list_a @ A2 )
     => ( ~ ( member_list_a @ X4 @ A2 )
       => ( ( finite_card_list_a @ ( insert_list_a @ X4 @ A2 ) )
          = ( suc @ ( finite_card_list_a @ A2 ) ) ) ) ) ).

% card_insert_disjoint
thf(fact_1028_card__insert__disjoint,axiom,
    ! [A2: set_a,X4: a] :
      ( ( finite_finite_a @ A2 )
     => ( ~ ( member_a @ X4 @ A2 )
       => ( ( finite_card_a @ ( insert_a @ X4 @ A2 ) )
          = ( suc @ ( finite_card_a @ A2 ) ) ) ) ) ).

% card_insert_disjoint
thf(fact_1029_card__insert__disjoint,axiom,
    ! [A2: set_set_a,X4: set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ~ ( member_set_a @ X4 @ A2 )
       => ( ( finite_card_set_a @ ( insert_set_a @ X4 @ A2 ) )
          = ( suc @ ( finite_card_set_a @ A2 ) ) ) ) ) ).

% card_insert_disjoint
thf(fact_1030_card__0__eq,axiom,
    ! [A2: set_a] :
      ( ( finite_finite_a @ A2 )
     => ( ( ( finite_card_a @ A2 )
          = zero_zero_nat )
        = ( A2 = bot_bot_set_a ) ) ) ).

% card_0_eq
thf(fact_1031_card__0__eq,axiom,
    ! [A2: set_set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( ( finite_card_set_a @ A2 )
          = zero_zero_nat )
        = ( A2 = bot_bot_set_set_a ) ) ) ).

% card_0_eq
thf(fact_1032_finite__insert,axiom,
    ! [A: a,A2: set_a] :
      ( ( finite_finite_a @ ( insert_a @ A @ A2 ) )
      = ( finite_finite_a @ A2 ) ) ).

% finite_insert
thf(fact_1033_finite__insert,axiom,
    ! [A: set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ ( insert_set_a @ A @ A2 ) )
      = ( finite_finite_set_a @ A2 ) ) ).

% finite_insert
thf(fact_1034_finite__Diff2,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( finite_finite_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) )
        = ( finite_finite_set_a @ A2 ) ) ) ).

% finite_Diff2
thf(fact_1035_finite__Diff,axiom,
    ! [A2: set_set_a,B2: set_set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( finite_finite_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) ) ) ).

% finite_Diff
thf(fact_1036_card_Oempty,axiom,
    ( ( finite_card_a @ bot_bot_set_a )
    = zero_zero_nat ) ).

% card.empty
thf(fact_1037_card_Oempty,axiom,
    ( ( finite_card_set_a @ bot_bot_set_set_a )
    = zero_zero_nat ) ).

% card.empty
thf(fact_1038_card_Oinfinite,axiom,
    ! [A2: set_a] :
      ( ~ ( finite_finite_a @ A2 )
     => ( ( finite_card_a @ A2 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_1039_card_Oinfinite,axiom,
    ! [A2: set_set_a] :
      ( ~ ( finite_finite_set_a @ A2 )
     => ( ( finite_card_set_a @ A2 )
        = zero_zero_nat ) ) ).

% card.infinite
thf(fact_1040_finite__Diff__insert,axiom,
    ! [A2: set_a,A: a,B2: set_a] :
      ( ( finite_finite_a @ ( minus_minus_set_a @ A2 @ ( insert_a @ A @ B2 ) ) )
      = ( finite_finite_a @ ( minus_minus_set_a @ A2 @ B2 ) ) ) ).

% finite_Diff_insert
thf(fact_1041_finite__Diff__insert,axiom,
    ! [A2: set_set_a,A: set_a,B2: set_set_a] :
      ( ( finite_finite_set_a @ ( minus_5736297505244876581_set_a @ A2 @ ( insert_set_a @ A @ B2 ) ) )
      = ( finite_finite_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) ) ) ).

% finite_Diff_insert
thf(fact_1042_finite__maxlen,axiom,
    ! [M7: set_list_a] :
      ( ( finite_finite_list_a @ M7 )
     => ? [N2: nat] :
        ! [X3: list_a] :
          ( ( member_list_a @ X3 @ M7 )
         => ( ord_less_nat @ ( size_size_list_a @ X3 ) @ N2 ) ) ) ).

% finite_maxlen
thf(fact_1043_finite__maxlen,axiom,
    ! [M7: set_list_set_a] :
      ( ( finite1971793804006318733_set_a @ M7 )
     => ? [N2: nat] :
        ! [X3: list_set_a] :
          ( ( member_list_set_a @ X3 @ M7 )
         => ( ord_less_nat @ ( size_size_list_set_a @ X3 ) @ N2 ) ) ) ).

% finite_maxlen
thf(fact_1044_finite__psubset__induct,axiom,
    ! [A2: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ A2 )
     => ( ! [A4: set_set_a] :
            ( ( finite_finite_set_a @ A4 )
           => ( ! [B4: set_set_a] :
                  ( ( ord_less_set_set_a @ B4 @ A4 )
                 => ( P2 @ B4 ) )
             => ( P2 @ A4 ) ) )
       => ( P2 @ A2 ) ) ) ).

% finite_psubset_induct
thf(fact_1045_Diff__infinite__finite,axiom,
    ! [T2: set_set_a,S2: set_set_a] :
      ( ( finite_finite_set_a @ T2 )
     => ( ~ ( finite_finite_set_a @ S2 )
       => ~ ( finite_finite_set_a @ ( minus_5736297505244876581_set_a @ S2 @ T2 ) ) ) ) ).

% Diff_infinite_finite
thf(fact_1046_finite__has__maximal2,axiom,
    ! [A2: set_set_a,A: set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( member_set_a @ A @ A2 )
       => ? [X5: set_a] :
            ( ( member_set_a @ X5 @ A2 )
            & ( ord_less_eq_set_a @ A @ X5 )
            & ! [Xa: set_a] :
                ( ( member_set_a @ Xa @ A2 )
               => ( ( ord_less_eq_set_a @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

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

% finite_has_maximal2
thf(fact_1048_finite__has__maximal2,axiom,
    ! [A2: set_num,A: num] :
      ( ( finite_finite_num @ A2 )
     => ( ( member_num @ A @ A2 )
       => ? [X5: num] :
            ( ( member_num @ X5 @ A2 )
            & ( ord_less_eq_num @ A @ X5 )
            & ! [Xa: num] :
                ( ( member_num @ Xa @ A2 )
               => ( ( ord_less_eq_num @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_1049_finite__has__maximal2,axiom,
    ! [A2: set_int,A: int] :
      ( ( finite_finite_int @ A2 )
     => ( ( member_int @ A @ A2 )
       => ? [X5: int] :
            ( ( member_int @ X5 @ A2 )
            & ( ord_less_eq_int @ A @ X5 )
            & ! [Xa: int] :
                ( ( member_int @ Xa @ A2 )
               => ( ( ord_less_eq_int @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_1050_finite__has__maximal2,axiom,
    ! [A2: set_set_list_a,A: set_list_a] :
      ( ( finite5282473924520328461list_a @ A2 )
     => ( ( member_set_list_a @ A @ A2 )
       => ? [X5: set_list_a] :
            ( ( member_set_list_a @ X5 @ A2 )
            & ( ord_le8861187494160871172list_a @ A @ X5 )
            & ! [Xa: set_list_a] :
                ( ( member_set_list_a @ Xa @ A2 )
               => ( ( ord_le8861187494160871172list_a @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_1051_finite__has__minimal2,axiom,
    ! [A2: set_set_a,A: set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( member_set_a @ A @ A2 )
       => ? [X5: set_a] :
            ( ( member_set_a @ X5 @ A2 )
            & ( ord_less_eq_set_a @ X5 @ A )
            & ! [Xa: set_a] :
                ( ( member_set_a @ Xa @ A2 )
               => ( ( ord_less_eq_set_a @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

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

% finite_has_minimal2
thf(fact_1053_finite__has__minimal2,axiom,
    ! [A2: set_num,A: num] :
      ( ( finite_finite_num @ A2 )
     => ( ( member_num @ A @ A2 )
       => ? [X5: num] :
            ( ( member_num @ X5 @ A2 )
            & ( ord_less_eq_num @ X5 @ A )
            & ! [Xa: num] :
                ( ( member_num @ Xa @ A2 )
               => ( ( ord_less_eq_num @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_1054_finite__has__minimal2,axiom,
    ! [A2: set_int,A: int] :
      ( ( finite_finite_int @ A2 )
     => ( ( member_int @ A @ A2 )
       => ? [X5: int] :
            ( ( member_int @ X5 @ A2 )
            & ( ord_less_eq_int @ X5 @ A )
            & ! [Xa: int] :
                ( ( member_int @ Xa @ A2 )
               => ( ( ord_less_eq_int @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_1055_finite__has__minimal2,axiom,
    ! [A2: set_set_list_a,A: set_list_a] :
      ( ( finite5282473924520328461list_a @ A2 )
     => ( ( member_set_list_a @ A @ A2 )
       => ? [X5: set_list_a] :
            ( ( member_set_list_a @ X5 @ A2 )
            & ( ord_le8861187494160871172list_a @ X5 @ A )
            & ! [Xa: set_list_a] :
                ( ( member_set_list_a @ Xa @ A2 )
               => ( ( ord_le8861187494160871172list_a @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_1056_infinite__imp__nonempty,axiom,
    ! [S2: set_a] :
      ( ~ ( finite_finite_a @ S2 )
     => ( S2 != bot_bot_set_a ) ) ).

% infinite_imp_nonempty
thf(fact_1057_infinite__imp__nonempty,axiom,
    ! [S2: set_set_a] :
      ( ~ ( finite_finite_set_a @ S2 )
     => ( S2 != bot_bot_set_set_a ) ) ).

% infinite_imp_nonempty
thf(fact_1058_finite_OemptyI,axiom,
    finite_finite_a @ bot_bot_set_a ).

% finite.emptyI
thf(fact_1059_finite_OemptyI,axiom,
    finite_finite_set_a @ bot_bot_set_set_a ).

% finite.emptyI
thf(fact_1060_finite__subset,axiom,
    ! [A2: set_set_a,B2: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B2 )
     => ( ( finite_finite_set_a @ B2 )
       => ( finite_finite_set_a @ A2 ) ) ) ).

% finite_subset
thf(fact_1061_finite__subset,axiom,
    ! [A2: set_a,B2: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ B2 )
     => ( ( finite_finite_a @ B2 )
       => ( finite_finite_a @ A2 ) ) ) ).

% finite_subset
thf(fact_1062_finite__subset,axiom,
    ! [A2: set_list_a,B2: set_list_a] :
      ( ( ord_le8861187494160871172list_a @ A2 @ B2 )
     => ( ( finite_finite_list_a @ B2 )
       => ( finite_finite_list_a @ A2 ) ) ) ).

% finite_subset
thf(fact_1063_infinite__super,axiom,
    ! [S2: set_set_a,T2: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ S2 @ T2 )
     => ( ~ ( finite_finite_set_a @ S2 )
       => ~ ( finite_finite_set_a @ T2 ) ) ) ).

% infinite_super
thf(fact_1064_infinite__super,axiom,
    ! [S2: set_a,T2: set_a] :
      ( ( ord_less_eq_set_a @ S2 @ T2 )
     => ( ~ ( finite_finite_a @ S2 )
       => ~ ( finite_finite_a @ T2 ) ) ) ).

% infinite_super
thf(fact_1065_infinite__super,axiom,
    ! [S2: set_list_a,T2: set_list_a] :
      ( ( ord_le8861187494160871172list_a @ S2 @ T2 )
     => ( ~ ( finite_finite_list_a @ S2 )
       => ~ ( finite_finite_list_a @ T2 ) ) ) ).

% infinite_super
thf(fact_1066_rev__finite__subset,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( ord_le3724670747650509150_set_a @ A2 @ B2 )
       => ( finite_finite_set_a @ A2 ) ) ) ).

% rev_finite_subset
thf(fact_1067_rev__finite__subset,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ( ord_less_eq_set_a @ A2 @ B2 )
       => ( finite_finite_a @ A2 ) ) ) ).

% rev_finite_subset
thf(fact_1068_rev__finite__subset,axiom,
    ! [B2: set_list_a,A2: set_list_a] :
      ( ( finite_finite_list_a @ B2 )
     => ( ( ord_le8861187494160871172list_a @ A2 @ B2 )
       => ( finite_finite_list_a @ A2 ) ) ) ).

% rev_finite_subset
thf(fact_1069_finite_OinsertI,axiom,
    ! [A2: set_a,A: a] :
      ( ( finite_finite_a @ A2 )
     => ( finite_finite_a @ ( insert_a @ A @ A2 ) ) ) ).

% finite.insertI
thf(fact_1070_finite_OinsertI,axiom,
    ! [A2: set_set_a,A: set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( finite_finite_set_a @ ( insert_set_a @ A @ A2 ) ) ) ).

% finite.insertI
thf(fact_1071_finite__has__maximal,axiom,
    ! [A2: set_set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( A2 != bot_bot_set_set_a )
       => ? [X5: set_a] :
            ( ( member_set_a @ X5 @ A2 )
            & ! [Xa: set_a] :
                ( ( member_set_a @ Xa @ A2 )
               => ( ( ord_less_eq_set_a @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal
thf(fact_1072_finite__has__maximal,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ? [X5: nat] :
            ( ( member_nat @ X5 @ A2 )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal
thf(fact_1073_finite__has__maximal,axiom,
    ! [A2: set_num] :
      ( ( finite_finite_num @ A2 )
     => ( ( A2 != bot_bot_set_num )
       => ? [X5: num] :
            ( ( member_num @ X5 @ A2 )
            & ! [Xa: num] :
                ( ( member_num @ Xa @ A2 )
               => ( ( ord_less_eq_num @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal
thf(fact_1074_finite__has__maximal,axiom,
    ! [A2: set_int] :
      ( ( finite_finite_int @ A2 )
     => ( ( A2 != bot_bot_set_int )
       => ? [X5: int] :
            ( ( member_int @ X5 @ A2 )
            & ! [Xa: int] :
                ( ( member_int @ Xa @ A2 )
               => ( ( ord_less_eq_int @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal
thf(fact_1075_finite__has__maximal,axiom,
    ! [A2: set_set_list_a] :
      ( ( finite5282473924520328461list_a @ A2 )
     => ( ( A2 != bot_bo3186585308812441520list_a )
       => ? [X5: set_list_a] :
            ( ( member_set_list_a @ X5 @ A2 )
            & ! [Xa: set_list_a] :
                ( ( member_set_list_a @ Xa @ A2 )
               => ( ( ord_le8861187494160871172list_a @ X5 @ Xa )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_maximal
thf(fact_1076_finite__has__minimal,axiom,
    ! [A2: set_set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( A2 != bot_bot_set_set_a )
       => ? [X5: set_a] :
            ( ( member_set_a @ X5 @ A2 )
            & ! [Xa: set_a] :
                ( ( member_set_a @ Xa @ A2 )
               => ( ( ord_less_eq_set_a @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal
thf(fact_1077_finite__has__minimal,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ? [X5: nat] :
            ( ( member_nat @ X5 @ A2 )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal
thf(fact_1078_finite__has__minimal,axiom,
    ! [A2: set_num] :
      ( ( finite_finite_num @ A2 )
     => ( ( A2 != bot_bot_set_num )
       => ? [X5: num] :
            ( ( member_num @ X5 @ A2 )
            & ! [Xa: num] :
                ( ( member_num @ Xa @ A2 )
               => ( ( ord_less_eq_num @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal
thf(fact_1079_finite__has__minimal,axiom,
    ! [A2: set_int] :
      ( ( finite_finite_int @ A2 )
     => ( ( A2 != bot_bot_set_int )
       => ? [X5: int] :
            ( ( member_int @ X5 @ A2 )
            & ! [Xa: int] :
                ( ( member_int @ Xa @ A2 )
               => ( ( ord_less_eq_int @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal
thf(fact_1080_finite__has__minimal,axiom,
    ! [A2: set_set_list_a] :
      ( ( finite5282473924520328461list_a @ A2 )
     => ( ( A2 != bot_bo3186585308812441520list_a )
       => ? [X5: set_list_a] :
            ( ( member_set_list_a @ X5 @ A2 )
            & ! [Xa: set_list_a] :
                ( ( member_set_list_a @ Xa @ A2 )
               => ( ( ord_le8861187494160871172list_a @ Xa @ X5 )
                 => ( X5 = Xa ) ) ) ) ) ) ).

% finite_has_minimal
thf(fact_1081_finite__induct__select,axiom,
    ! [S2: set_a,P2: set_a > $o] :
      ( ( finite_finite_a @ S2 )
     => ( ( P2 @ bot_bot_set_a )
       => ( ! [T3: set_a] :
              ( ( ord_less_set_a @ T3 @ S2 )
             => ( ( P2 @ T3 )
               => ? [X3: a] :
                    ( ( member_a @ X3 @ ( minus_minus_set_a @ S2 @ T3 ) )
                    & ( P2 @ ( insert_a @ X3 @ T3 ) ) ) ) )
         => ( P2 @ S2 ) ) ) ) ).

% finite_induct_select
thf(fact_1082_finite__induct__select,axiom,
    ! [S2: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ S2 )
     => ( ( P2 @ bot_bot_set_set_a )
       => ( ! [T3: set_set_a] :
              ( ( ord_less_set_set_a @ T3 @ S2 )
             => ( ( P2 @ T3 )
               => ? [X3: set_a] :
                    ( ( member_set_a @ X3 @ ( minus_5736297505244876581_set_a @ S2 @ T3 ) )
                    & ( P2 @ ( insert_set_a @ X3 @ T3 ) ) ) ) )
         => ( P2 @ S2 ) ) ) ) ).

% finite_induct_select
thf(fact_1083_infinite__finite__induct,axiom,
    ! [P2: set_list_a > $o,A2: set_list_a] :
      ( ! [A4: set_list_a] :
          ( ~ ( finite_finite_list_a @ A4 )
         => ( P2 @ A4 ) )
     => ( ( P2 @ bot_bot_set_list_a )
       => ( ! [X5: list_a,F2: set_list_a] :
              ( ( finite_finite_list_a @ F2 )
             => ( ~ ( member_list_a @ X5 @ F2 )
               => ( ( P2 @ F2 )
                 => ( P2 @ ( insert_list_a @ X5 @ F2 ) ) ) ) )
         => ( P2 @ A2 ) ) ) ) ).

% infinite_finite_induct
thf(fact_1084_infinite__finite__induct,axiom,
    ! [P2: set_a > $o,A2: set_a] :
      ( ! [A4: set_a] :
          ( ~ ( finite_finite_a @ A4 )
         => ( P2 @ A4 ) )
     => ( ( P2 @ bot_bot_set_a )
       => ( ! [X5: a,F2: set_a] :
              ( ( finite_finite_a @ F2 )
             => ( ~ ( member_a @ X5 @ F2 )
               => ( ( P2 @ F2 )
                 => ( P2 @ ( insert_a @ X5 @ F2 ) ) ) ) )
         => ( P2 @ A2 ) ) ) ) ).

% infinite_finite_induct
thf(fact_1085_infinite__finite__induct,axiom,
    ! [P2: set_set_a > $o,A2: set_set_a] :
      ( ! [A4: set_set_a] :
          ( ~ ( finite_finite_set_a @ A4 )
         => ( P2 @ A4 ) )
     => ( ( P2 @ bot_bot_set_set_a )
       => ( ! [X5: set_a,F2: set_set_a] :
              ( ( finite_finite_set_a @ F2 )
             => ( ~ ( member_set_a @ X5 @ F2 )
               => ( ( P2 @ F2 )
                 => ( P2 @ ( insert_set_a @ X5 @ F2 ) ) ) ) )
         => ( P2 @ A2 ) ) ) ) ).

% infinite_finite_induct
thf(fact_1086_finite__ne__induct,axiom,
    ! [F3: set_list_a,P2: set_list_a > $o] :
      ( ( finite_finite_list_a @ F3 )
     => ( ( F3 != bot_bot_set_list_a )
       => ( ! [X5: list_a] : ( P2 @ ( insert_list_a @ X5 @ bot_bot_set_list_a ) )
         => ( ! [X5: list_a,F2: set_list_a] :
                ( ( finite_finite_list_a @ F2 )
               => ( ( F2 != bot_bot_set_list_a )
                 => ( ~ ( member_list_a @ X5 @ F2 )
                   => ( ( P2 @ F2 )
                     => ( P2 @ ( insert_list_a @ X5 @ F2 ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_ne_induct
thf(fact_1087_finite__ne__induct,axiom,
    ! [F3: set_a,P2: set_a > $o] :
      ( ( finite_finite_a @ F3 )
     => ( ( F3 != bot_bot_set_a )
       => ( ! [X5: a] : ( P2 @ ( insert_a @ X5 @ bot_bot_set_a ) )
         => ( ! [X5: a,F2: set_a] :
                ( ( finite_finite_a @ F2 )
               => ( ( F2 != bot_bot_set_a )
                 => ( ~ ( member_a @ X5 @ F2 )
                   => ( ( P2 @ F2 )
                     => ( P2 @ ( insert_a @ X5 @ F2 ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_ne_induct
thf(fact_1088_finite__ne__induct,axiom,
    ! [F3: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ F3 )
     => ( ( F3 != bot_bot_set_set_a )
       => ( ! [X5: set_a] : ( P2 @ ( insert_set_a @ X5 @ bot_bot_set_set_a ) )
         => ( ! [X5: set_a,F2: set_set_a] :
                ( ( finite_finite_set_a @ F2 )
               => ( ( F2 != bot_bot_set_set_a )
                 => ( ~ ( member_set_a @ X5 @ F2 )
                   => ( ( P2 @ F2 )
                     => ( P2 @ ( insert_set_a @ X5 @ F2 ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_ne_induct
thf(fact_1089_finite__induct,axiom,
    ! [F3: set_list_a,P2: set_list_a > $o] :
      ( ( finite_finite_list_a @ F3 )
     => ( ( P2 @ bot_bot_set_list_a )
       => ( ! [X5: list_a,F2: set_list_a] :
              ( ( finite_finite_list_a @ F2 )
             => ( ~ ( member_list_a @ X5 @ F2 )
               => ( ( P2 @ F2 )
                 => ( P2 @ ( insert_list_a @ X5 @ F2 ) ) ) ) )
         => ( P2 @ F3 ) ) ) ) ).

% finite_induct
thf(fact_1090_finite__induct,axiom,
    ! [F3: set_a,P2: set_a > $o] :
      ( ( finite_finite_a @ F3 )
     => ( ( P2 @ bot_bot_set_a )
       => ( ! [X5: a,F2: set_a] :
              ( ( finite_finite_a @ F2 )
             => ( ~ ( member_a @ X5 @ F2 )
               => ( ( P2 @ F2 )
                 => ( P2 @ ( insert_a @ X5 @ F2 ) ) ) ) )
         => ( P2 @ F3 ) ) ) ) ).

% finite_induct
thf(fact_1091_finite__induct,axiom,
    ! [F3: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ F3 )
     => ( ( P2 @ bot_bot_set_set_a )
       => ( ! [X5: set_a,F2: set_set_a] :
              ( ( finite_finite_set_a @ F2 )
             => ( ~ ( member_set_a @ X5 @ F2 )
               => ( ( P2 @ F2 )
                 => ( P2 @ ( insert_set_a @ X5 @ F2 ) ) ) ) )
         => ( P2 @ F3 ) ) ) ) ).

% finite_induct
thf(fact_1092_finite_Osimps,axiom,
    ( finite_finite_a
    = ( ^ [A3: set_a] :
          ( ( A3 = bot_bot_set_a )
          | ? [A5: set_a,B3: a] :
              ( ( A3
                = ( insert_a @ B3 @ A5 ) )
              & ( finite_finite_a @ A5 ) ) ) ) ) ).

% finite.simps
thf(fact_1093_finite_Osimps,axiom,
    ( finite_finite_set_a
    = ( ^ [A3: set_set_a] :
          ( ( A3 = bot_bot_set_set_a )
          | ? [A5: set_set_a,B3: set_a] :
              ( ( A3
                = ( insert_set_a @ B3 @ A5 ) )
              & ( finite_finite_set_a @ A5 ) ) ) ) ) ).

% finite.simps
thf(fact_1094_finite_Ocases,axiom,
    ! [A: set_a] :
      ( ( finite_finite_a @ A )
     => ( ( A != bot_bot_set_a )
       => ~ ! [A4: set_a] :
              ( ? [A6: a] :
                  ( A
                  = ( insert_a @ A6 @ A4 ) )
             => ~ ( finite_finite_a @ A4 ) ) ) ) ).

% finite.cases
thf(fact_1095_finite_Ocases,axiom,
    ! [A: set_set_a] :
      ( ( finite_finite_set_a @ A )
     => ( ( A != bot_bot_set_set_a )
       => ~ ! [A4: set_set_a] :
              ( ? [A6: set_a] :
                  ( A
                  = ( insert_set_a @ A6 @ A4 ) )
             => ~ ( finite_finite_set_a @ A4 ) ) ) ) ).

% finite.cases
thf(fact_1096_finite__empty__induct,axiom,
    ! [A2: set_list_a,P2: set_list_a > $o] :
      ( ( finite_finite_list_a @ A2 )
     => ( ( P2 @ A2 )
       => ( ! [A6: list_a,A4: set_list_a] :
              ( ( finite_finite_list_a @ A4 )
             => ( ( member_list_a @ A6 @ A4 )
               => ( ( P2 @ A4 )
                 => ( P2 @ ( minus_646659088055828811list_a @ A4 @ ( insert_list_a @ A6 @ bot_bot_set_list_a ) ) ) ) ) )
         => ( P2 @ bot_bot_set_list_a ) ) ) ) ).

% finite_empty_induct
thf(fact_1097_finite__empty__induct,axiom,
    ! [A2: set_a,P2: set_a > $o] :
      ( ( finite_finite_a @ A2 )
     => ( ( P2 @ A2 )
       => ( ! [A6: a,A4: set_a] :
              ( ( finite_finite_a @ A4 )
             => ( ( member_a @ A6 @ A4 )
               => ( ( P2 @ A4 )
                 => ( P2 @ ( minus_minus_set_a @ A4 @ ( insert_a @ A6 @ bot_bot_set_a ) ) ) ) ) )
         => ( P2 @ bot_bot_set_a ) ) ) ) ).

% finite_empty_induct
thf(fact_1098_finite__empty__induct,axiom,
    ! [A2: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( P2 @ A2 )
       => ( ! [A6: set_a,A4: set_set_a] :
              ( ( finite_finite_set_a @ A4 )
             => ( ( member_set_a @ A6 @ A4 )
               => ( ( P2 @ A4 )
                 => ( P2 @ ( minus_5736297505244876581_set_a @ A4 @ ( insert_set_a @ A6 @ bot_bot_set_set_a ) ) ) ) ) )
         => ( P2 @ bot_bot_set_set_a ) ) ) ) ).

% finite_empty_induct
thf(fact_1099_infinite__coinduct,axiom,
    ! [X7: set_a > $o,A2: set_a] :
      ( ( X7 @ A2 )
     => ( ! [A4: set_a] :
            ( ( X7 @ A4 )
           => ? [X3: a] :
                ( ( member_a @ X3 @ A4 )
                & ( ( X7 @ ( minus_minus_set_a @ A4 @ ( insert_a @ X3 @ bot_bot_set_a ) ) )
                  | ~ ( finite_finite_a @ ( minus_minus_set_a @ A4 @ ( insert_a @ X3 @ bot_bot_set_a ) ) ) ) ) )
       => ~ ( finite_finite_a @ A2 ) ) ) ).

% infinite_coinduct
thf(fact_1100_infinite__coinduct,axiom,
    ! [X7: set_set_a > $o,A2: set_set_a] :
      ( ( X7 @ A2 )
     => ( ! [A4: set_set_a] :
            ( ( X7 @ A4 )
           => ? [X3: set_a] :
                ( ( member_set_a @ X3 @ A4 )
                & ( ( X7 @ ( minus_5736297505244876581_set_a @ A4 @ ( insert_set_a @ X3 @ bot_bot_set_set_a ) ) )
                  | ~ ( finite_finite_set_a @ ( minus_5736297505244876581_set_a @ A4 @ ( insert_set_a @ X3 @ bot_bot_set_set_a ) ) ) ) ) )
       => ~ ( finite_finite_set_a @ A2 ) ) ) ).

% infinite_coinduct
thf(fact_1101_infinite__remove,axiom,
    ! [S2: set_a,A: a] :
      ( ~ ( finite_finite_a @ S2 )
     => ~ ( finite_finite_a @ ( minus_minus_set_a @ S2 @ ( insert_a @ A @ bot_bot_set_a ) ) ) ) ).

% infinite_remove
thf(fact_1102_infinite__remove,axiom,
    ! [S2: set_set_a,A: set_a] :
      ( ~ ( finite_finite_set_a @ S2 )
     => ~ ( finite_finite_set_a @ ( minus_5736297505244876581_set_a @ S2 @ ( insert_set_a @ A @ bot_bot_set_set_a ) ) ) ) ).

% infinite_remove
thf(fact_1103_infinite__arbitrarily__large,axiom,
    ! [A2: set_set_a,N: nat] :
      ( ~ ( finite_finite_set_a @ A2 )
     => ? [B5: set_set_a] :
          ( ( finite_finite_set_a @ B5 )
          & ( ( finite_card_set_a @ B5 )
            = N )
          & ( ord_le3724670747650509150_set_a @ B5 @ A2 ) ) ) ).

% infinite_arbitrarily_large
thf(fact_1104_infinite__arbitrarily__large,axiom,
    ! [A2: set_a,N: nat] :
      ( ~ ( finite_finite_a @ A2 )
     => ? [B5: set_a] :
          ( ( finite_finite_a @ B5 )
          & ( ( finite_card_a @ B5 )
            = N )
          & ( ord_less_eq_set_a @ B5 @ A2 ) ) ) ).

% infinite_arbitrarily_large
thf(fact_1105_infinite__arbitrarily__large,axiom,
    ! [A2: set_list_a,N: nat] :
      ( ~ ( finite_finite_list_a @ A2 )
     => ? [B5: set_list_a] :
          ( ( finite_finite_list_a @ B5 )
          & ( ( finite_card_list_a @ B5 )
            = N )
          & ( ord_le8861187494160871172list_a @ B5 @ A2 ) ) ) ).

% infinite_arbitrarily_large
thf(fact_1106_card__subset__eq,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( ord_le3724670747650509150_set_a @ A2 @ B2 )
       => ( ( ( finite_card_set_a @ A2 )
            = ( finite_card_set_a @ B2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_subset_eq
thf(fact_1107_card__subset__eq,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ( ord_less_eq_set_a @ A2 @ B2 )
       => ( ( ( finite_card_a @ A2 )
            = ( finite_card_a @ B2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_subset_eq
thf(fact_1108_card__subset__eq,axiom,
    ! [B2: set_list_a,A2: set_list_a] :
      ( ( finite_finite_list_a @ B2 )
     => ( ( ord_le8861187494160871172list_a @ A2 @ B2 )
       => ( ( ( finite_card_list_a @ A2 )
            = ( finite_card_list_a @ B2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_subset_eq
thf(fact_1109_card__less__sym__Diff,axiom,
    ! [A2: set_a,B2: set_a] :
      ( ( finite_finite_a @ A2 )
     => ( ( finite_finite_a @ B2 )
       => ( ( ord_less_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ B2 ) )
         => ( ord_less_nat @ ( finite_card_a @ ( minus_minus_set_a @ A2 @ B2 ) ) @ ( finite_card_a @ ( minus_minus_set_a @ B2 @ A2 ) ) ) ) ) ) ).

% card_less_sym_Diff
thf(fact_1110_card__less__sym__Diff,axiom,
    ! [A2: set_set_a,B2: set_set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( finite_finite_set_a @ B2 )
       => ( ( ord_less_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ B2 ) )
         => ( ord_less_nat @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) ) @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ B2 @ A2 ) ) ) ) ) ) ).

% card_less_sym_Diff
thf(fact_1111_psubset__card__mono,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ( ord_less_set_a @ A2 @ B2 )
       => ( ord_less_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ B2 ) ) ) ) ).

% psubset_card_mono
thf(fact_1112_psubset__card__mono,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( ord_less_set_set_a @ A2 @ B2 )
       => ( ord_less_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ B2 ) ) ) ) ).

% psubset_card_mono
thf(fact_1113_card__le__sym__Diff,axiom,
    ! [A2: set_a,B2: set_a] :
      ( ( finite_finite_a @ A2 )
     => ( ( finite_finite_a @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ B2 ) )
         => ( ord_less_eq_nat @ ( finite_card_a @ ( minus_minus_set_a @ A2 @ B2 ) ) @ ( finite_card_a @ ( minus_minus_set_a @ B2 @ A2 ) ) ) ) ) ) ).

% card_le_sym_Diff
thf(fact_1114_card__le__sym__Diff,axiom,
    ! [A2: set_set_a,B2: set_set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( finite_finite_set_a @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ B2 ) )
         => ( ord_less_eq_nat @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) ) @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ B2 @ A2 ) ) ) ) ) ) ).

% card_le_sym_Diff
thf(fact_1115_card__insert__le,axiom,
    ! [A2: set_a,X4: a] : ( ord_less_eq_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ ( insert_a @ X4 @ A2 ) ) ) ).

% card_insert_le
thf(fact_1116_card__insert__le,axiom,
    ! [A2: set_set_a,X4: set_a] : ( ord_less_eq_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ ( insert_set_a @ X4 @ A2 ) ) ) ).

% card_insert_le
thf(fact_1117_remove__induct,axiom,
    ! [P2: set_set_a > $o,B2: set_set_a] :
      ( ( P2 @ bot_bot_set_set_a )
     => ( ( ~ ( finite_finite_set_a @ B2 )
         => ( P2 @ B2 ) )
       => ( ! [A4: set_set_a] :
              ( ( finite_finite_set_a @ A4 )
             => ( ( A4 != bot_bot_set_set_a )
               => ( ( ord_le3724670747650509150_set_a @ A4 @ B2 )
                 => ( ! [X3: set_a] :
                        ( ( member_set_a @ X3 @ A4 )
                       => ( P2 @ ( minus_5736297505244876581_set_a @ A4 @ ( insert_set_a @ X3 @ bot_bot_set_set_a ) ) ) )
                   => ( P2 @ A4 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% remove_induct
thf(fact_1118_remove__induct,axiom,
    ! [P2: set_a > $o,B2: set_a] :
      ( ( P2 @ bot_bot_set_a )
     => ( ( ~ ( finite_finite_a @ B2 )
         => ( P2 @ B2 ) )
       => ( ! [A4: set_a] :
              ( ( finite_finite_a @ A4 )
             => ( ( A4 != bot_bot_set_a )
               => ( ( ord_less_eq_set_a @ A4 @ B2 )
                 => ( ! [X3: a] :
                        ( ( member_a @ X3 @ A4 )
                       => ( P2 @ ( minus_minus_set_a @ A4 @ ( insert_a @ X3 @ bot_bot_set_a ) ) ) )
                   => ( P2 @ A4 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% remove_induct
thf(fact_1119_remove__induct,axiom,
    ! [P2: set_list_a > $o,B2: set_list_a] :
      ( ( P2 @ bot_bot_set_list_a )
     => ( ( ~ ( finite_finite_list_a @ B2 )
         => ( P2 @ B2 ) )
       => ( ! [A4: set_list_a] :
              ( ( finite_finite_list_a @ A4 )
             => ( ( A4 != bot_bot_set_list_a )
               => ( ( ord_le8861187494160871172list_a @ A4 @ B2 )
                 => ( ! [X3: list_a] :
                        ( ( member_list_a @ X3 @ A4 )
                       => ( P2 @ ( minus_646659088055828811list_a @ A4 @ ( insert_list_a @ X3 @ bot_bot_set_list_a ) ) ) )
                   => ( P2 @ A4 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% remove_induct
thf(fact_1120_finite__remove__induct,axiom,
    ! [B2: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( P2 @ bot_bot_set_set_a )
       => ( ! [A4: set_set_a] :
              ( ( finite_finite_set_a @ A4 )
             => ( ( A4 != bot_bot_set_set_a )
               => ( ( ord_le3724670747650509150_set_a @ A4 @ B2 )
                 => ( ! [X3: set_a] :
                        ( ( member_set_a @ X3 @ A4 )
                       => ( P2 @ ( minus_5736297505244876581_set_a @ A4 @ ( insert_set_a @ X3 @ bot_bot_set_set_a ) ) ) )
                   => ( P2 @ A4 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% finite_remove_induct
thf(fact_1121_finite__remove__induct,axiom,
    ! [B2: set_a,P2: set_a > $o] :
      ( ( finite_finite_a @ B2 )
     => ( ( P2 @ bot_bot_set_a )
       => ( ! [A4: set_a] :
              ( ( finite_finite_a @ A4 )
             => ( ( A4 != bot_bot_set_a )
               => ( ( ord_less_eq_set_a @ A4 @ B2 )
                 => ( ! [X3: a] :
                        ( ( member_a @ X3 @ A4 )
                       => ( P2 @ ( minus_minus_set_a @ A4 @ ( insert_a @ X3 @ bot_bot_set_a ) ) ) )
                   => ( P2 @ A4 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% finite_remove_induct
thf(fact_1122_finite__remove__induct,axiom,
    ! [B2: set_list_a,P2: set_list_a > $o] :
      ( ( finite_finite_list_a @ B2 )
     => ( ( P2 @ bot_bot_set_list_a )
       => ( ! [A4: set_list_a] :
              ( ( finite_finite_list_a @ A4 )
             => ( ( A4 != bot_bot_set_list_a )
               => ( ( ord_le8861187494160871172list_a @ A4 @ B2 )
                 => ( ! [X3: list_a] :
                        ( ( member_list_a @ X3 @ A4 )
                       => ( P2 @ ( minus_646659088055828811list_a @ A4 @ ( insert_list_a @ X3 @ bot_bot_set_list_a ) ) ) )
                   => ( P2 @ A4 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% finite_remove_induct
thf(fact_1123_finite__subset__induct_H,axiom,
    ! [F3: set_set_a,A2: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ F3 )
     => ( ( ord_le3724670747650509150_set_a @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_set_a )
         => ( ! [A6: set_a,F2: set_set_a] :
                ( ( finite_finite_set_a @ F2 )
               => ( ( member_set_a @ A6 @ A2 )
                 => ( ( ord_le3724670747650509150_set_a @ F2 @ A2 )
                   => ( ~ ( member_set_a @ A6 @ F2 )
                     => ( ( P2 @ F2 )
                       => ( P2 @ ( insert_set_a @ A6 @ F2 ) ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct'
thf(fact_1124_finite__subset__induct_H,axiom,
    ! [F3: set_a,A2: set_a,P2: set_a > $o] :
      ( ( finite_finite_a @ F3 )
     => ( ( ord_less_eq_set_a @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_a )
         => ( ! [A6: a,F2: set_a] :
                ( ( finite_finite_a @ F2 )
               => ( ( member_a @ A6 @ A2 )
                 => ( ( ord_less_eq_set_a @ F2 @ A2 )
                   => ( ~ ( member_a @ A6 @ F2 )
                     => ( ( P2 @ F2 )
                       => ( P2 @ ( insert_a @ A6 @ F2 ) ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct'
thf(fact_1125_finite__subset__induct_H,axiom,
    ! [F3: set_list_a,A2: set_list_a,P2: set_list_a > $o] :
      ( ( finite_finite_list_a @ F3 )
     => ( ( ord_le8861187494160871172list_a @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_list_a )
         => ( ! [A6: list_a,F2: set_list_a] :
                ( ( finite_finite_list_a @ F2 )
               => ( ( member_list_a @ A6 @ A2 )
                 => ( ( ord_le8861187494160871172list_a @ F2 @ A2 )
                   => ( ~ ( member_list_a @ A6 @ F2 )
                     => ( ( P2 @ F2 )
                       => ( P2 @ ( insert_list_a @ A6 @ F2 ) ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct'
thf(fact_1126_finite__subset__induct,axiom,
    ! [F3: set_set_a,A2: set_set_a,P2: set_set_a > $o] :
      ( ( finite_finite_set_a @ F3 )
     => ( ( ord_le3724670747650509150_set_a @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_set_a )
         => ( ! [A6: set_a,F2: set_set_a] :
                ( ( finite_finite_set_a @ F2 )
               => ( ( member_set_a @ A6 @ A2 )
                 => ( ~ ( member_set_a @ A6 @ F2 )
                   => ( ( P2 @ F2 )
                     => ( P2 @ ( insert_set_a @ A6 @ F2 ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct
thf(fact_1127_finite__subset__induct,axiom,
    ! [F3: set_a,A2: set_a,P2: set_a > $o] :
      ( ( finite_finite_a @ F3 )
     => ( ( ord_less_eq_set_a @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_a )
         => ( ! [A6: a,F2: set_a] :
                ( ( finite_finite_a @ F2 )
               => ( ( member_a @ A6 @ A2 )
                 => ( ~ ( member_a @ A6 @ F2 )
                   => ( ( P2 @ F2 )
                     => ( P2 @ ( insert_a @ A6 @ F2 ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct
thf(fact_1128_finite__subset__induct,axiom,
    ! [F3: set_list_a,A2: set_list_a,P2: set_list_a > $o] :
      ( ( finite_finite_list_a @ F3 )
     => ( ( ord_le8861187494160871172list_a @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_list_a )
         => ( ! [A6: list_a,F2: set_list_a] :
                ( ( finite_finite_list_a @ F2 )
               => ( ( member_list_a @ A6 @ A2 )
                 => ( ~ ( member_list_a @ A6 @ F2 )
                   => ( ( P2 @ F2 )
                     => ( P2 @ ( insert_list_a @ A6 @ F2 ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct
thf(fact_1129_card__eq__0__iff,axiom,
    ! [A2: set_a] :
      ( ( ( finite_card_a @ A2 )
        = zero_zero_nat )
      = ( ( A2 = bot_bot_set_a )
        | ~ ( finite_finite_a @ A2 ) ) ) ).

% card_eq_0_iff
thf(fact_1130_card__eq__0__iff,axiom,
    ! [A2: set_set_a] :
      ( ( ( finite_card_set_a @ A2 )
        = zero_zero_nat )
      = ( ( A2 = bot_bot_set_set_a )
        | ~ ( finite_finite_set_a @ A2 ) ) ) ).

% card_eq_0_iff
thf(fact_1131_card__psubset,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( ord_le3724670747650509150_set_a @ A2 @ B2 )
       => ( ( ord_less_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ B2 ) )
         => ( ord_less_set_set_a @ A2 @ B2 ) ) ) ) ).

% card_psubset
thf(fact_1132_card__psubset,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ( ord_less_eq_set_a @ A2 @ B2 )
       => ( ( ord_less_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ B2 ) )
         => ( ord_less_set_a @ A2 @ B2 ) ) ) ) ).

% card_psubset
thf(fact_1133_card__psubset,axiom,
    ! [B2: set_list_a,A2: set_list_a] :
      ( ( finite_finite_list_a @ B2 )
     => ( ( ord_le8861187494160871172list_a @ A2 @ B2 )
       => ( ( ord_less_nat @ ( finite_card_list_a @ A2 ) @ ( finite_card_list_a @ B2 ) )
         => ( ord_less_set_list_a @ A2 @ B2 ) ) ) ) ).

% card_psubset
thf(fact_1134_card__insert__if,axiom,
    ! [A2: set_list_a,X4: list_a] :
      ( ( finite_finite_list_a @ A2 )
     => ( ( ( member_list_a @ X4 @ A2 )
         => ( ( finite_card_list_a @ ( insert_list_a @ X4 @ A2 ) )
            = ( finite_card_list_a @ A2 ) ) )
        & ( ~ ( member_list_a @ X4 @ A2 )
         => ( ( finite_card_list_a @ ( insert_list_a @ X4 @ A2 ) )
            = ( suc @ ( finite_card_list_a @ A2 ) ) ) ) ) ) ).

% card_insert_if
thf(fact_1135_card__insert__if,axiom,
    ! [A2: set_a,X4: a] :
      ( ( finite_finite_a @ A2 )
     => ( ( ( member_a @ X4 @ A2 )
         => ( ( finite_card_a @ ( insert_a @ X4 @ A2 ) )
            = ( finite_card_a @ A2 ) ) )
        & ( ~ ( member_a @ X4 @ A2 )
         => ( ( finite_card_a @ ( insert_a @ X4 @ A2 ) )
            = ( suc @ ( finite_card_a @ A2 ) ) ) ) ) ) ).

% card_insert_if
thf(fact_1136_card__insert__if,axiom,
    ! [A2: set_set_a,X4: set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( ( member_set_a @ X4 @ A2 )
         => ( ( finite_card_set_a @ ( insert_set_a @ X4 @ A2 ) )
            = ( finite_card_set_a @ A2 ) ) )
        & ( ~ ( member_set_a @ X4 @ A2 )
         => ( ( finite_card_set_a @ ( insert_set_a @ X4 @ A2 ) )
            = ( suc @ ( finite_card_set_a @ A2 ) ) ) ) ) ) ).

% card_insert_if
thf(fact_1137_card__Suc__eq__finite,axiom,
    ! [A2: set_list_a,K: nat] :
      ( ( ( finite_card_list_a @ A2 )
        = ( suc @ K ) )
      = ( ? [B3: list_a,B6: set_list_a] :
            ( ( A2
              = ( insert_list_a @ B3 @ B6 ) )
            & ~ ( member_list_a @ B3 @ B6 )
            & ( ( finite_card_list_a @ B6 )
              = K )
            & ( finite_finite_list_a @ B6 ) ) ) ) ).

% card_Suc_eq_finite
thf(fact_1138_card__Suc__eq__finite,axiom,
    ! [A2: set_a,K: nat] :
      ( ( ( finite_card_a @ A2 )
        = ( suc @ K ) )
      = ( ? [B3: a,B6: set_a] :
            ( ( A2
              = ( insert_a @ B3 @ B6 ) )
            & ~ ( member_a @ B3 @ B6 )
            & ( ( finite_card_a @ B6 )
              = K )
            & ( finite_finite_a @ B6 ) ) ) ) ).

% card_Suc_eq_finite
thf(fact_1139_card__Suc__eq__finite,axiom,
    ! [A2: set_set_a,K: nat] :
      ( ( ( finite_card_set_a @ A2 )
        = ( suc @ K ) )
      = ( ? [B3: set_a,B6: set_set_a] :
            ( ( A2
              = ( insert_set_a @ B3 @ B6 ) )
            & ~ ( member_set_a @ B3 @ B6 )
            & ( ( finite_card_set_a @ B6 )
              = K )
            & ( finite_finite_set_a @ B6 ) ) ) ) ).

% card_Suc_eq_finite
thf(fact_1140_card__ge__0__finite,axiom,
    ! [A2: set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_a @ A2 ) )
     => ( finite_finite_a @ A2 ) ) ).

% card_ge_0_finite
thf(fact_1141_card__ge__0__finite,axiom,
    ! [A2: set_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( finite_card_set_a @ A2 ) )
     => ( finite_finite_set_a @ A2 ) ) ).

% card_ge_0_finite
thf(fact_1142_finite__if__finite__subsets__card__bdd,axiom,
    ! [F3: set_set_a,C4: nat] :
      ( ! [G: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ G @ F3 )
         => ( ( finite_finite_set_a @ G )
           => ( ord_less_eq_nat @ ( finite_card_set_a @ G ) @ C4 ) ) )
     => ( ( finite_finite_set_a @ F3 )
        & ( ord_less_eq_nat @ ( finite_card_set_a @ F3 ) @ C4 ) ) ) ).

% finite_if_finite_subsets_card_bdd
thf(fact_1143_finite__if__finite__subsets__card__bdd,axiom,
    ! [F3: set_a,C4: nat] :
      ( ! [G: set_a] :
          ( ( ord_less_eq_set_a @ G @ F3 )
         => ( ( finite_finite_a @ G )
           => ( ord_less_eq_nat @ ( finite_card_a @ G ) @ C4 ) ) )
     => ( ( finite_finite_a @ F3 )
        & ( ord_less_eq_nat @ ( finite_card_a @ F3 ) @ C4 ) ) ) ).

% finite_if_finite_subsets_card_bdd
thf(fact_1144_finite__if__finite__subsets__card__bdd,axiom,
    ! [F3: set_list_a,C4: nat] :
      ( ! [G: set_list_a] :
          ( ( ord_le8861187494160871172list_a @ G @ F3 )
         => ( ( finite_finite_list_a @ G )
           => ( ord_less_eq_nat @ ( finite_card_list_a @ G ) @ C4 ) ) )
     => ( ( finite_finite_list_a @ F3 )
        & ( ord_less_eq_nat @ ( finite_card_list_a @ F3 ) @ C4 ) ) ) ).

% finite_if_finite_subsets_card_bdd
thf(fact_1145_obtain__subset__with__card__n,axiom,
    ! [N: nat,S2: set_set_a] :
      ( ( ord_less_eq_nat @ N @ ( finite_card_set_a @ S2 ) )
     => ~ ! [T3: set_set_a] :
            ( ( ord_le3724670747650509150_set_a @ T3 @ S2 )
           => ( ( ( finite_card_set_a @ T3 )
                = N )
             => ~ ( finite_finite_set_a @ T3 ) ) ) ) ).

% obtain_subset_with_card_n
thf(fact_1146_obtain__subset__with__card__n,axiom,
    ! [N: nat,S2: set_a] :
      ( ( ord_less_eq_nat @ N @ ( finite_card_a @ S2 ) )
     => ~ ! [T3: set_a] :
            ( ( ord_less_eq_set_a @ T3 @ S2 )
           => ( ( ( finite_card_a @ T3 )
                = N )
             => ~ ( finite_finite_a @ T3 ) ) ) ) ).

% obtain_subset_with_card_n
thf(fact_1147_obtain__subset__with__card__n,axiom,
    ! [N: nat,S2: set_list_a] :
      ( ( ord_less_eq_nat @ N @ ( finite_card_list_a @ S2 ) )
     => ~ ! [T3: set_list_a] :
            ( ( ord_le8861187494160871172list_a @ T3 @ S2 )
           => ( ( ( finite_card_list_a @ T3 )
                = N )
             => ~ ( finite_finite_list_a @ T3 ) ) ) ) ).

% obtain_subset_with_card_n
thf(fact_1148_exists__subset__between,axiom,
    ! [A2: set_set_a,N: nat,C4: set_set_a] :
      ( ( ord_less_eq_nat @ ( finite_card_set_a @ A2 ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( finite_card_set_a @ C4 ) )
       => ( ( ord_le3724670747650509150_set_a @ A2 @ C4 )
         => ( ( finite_finite_set_a @ C4 )
           => ? [B5: set_set_a] :
                ( ( ord_le3724670747650509150_set_a @ A2 @ B5 )
                & ( ord_le3724670747650509150_set_a @ B5 @ C4 )
                & ( ( finite_card_set_a @ B5 )
                  = N ) ) ) ) ) ) ).

% exists_subset_between
thf(fact_1149_exists__subset__between,axiom,
    ! [A2: set_a,N: nat,C4: set_a] :
      ( ( ord_less_eq_nat @ ( finite_card_a @ A2 ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( finite_card_a @ C4 ) )
       => ( ( ord_less_eq_set_a @ A2 @ C4 )
         => ( ( finite_finite_a @ C4 )
           => ? [B5: set_a] :
                ( ( ord_less_eq_set_a @ A2 @ B5 )
                & ( ord_less_eq_set_a @ B5 @ C4 )
                & ( ( finite_card_a @ B5 )
                  = N ) ) ) ) ) ) ).

% exists_subset_between
thf(fact_1150_exists__subset__between,axiom,
    ! [A2: set_list_a,N: nat,C4: set_list_a] :
      ( ( ord_less_eq_nat @ ( finite_card_list_a @ A2 ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( finite_card_list_a @ C4 ) )
       => ( ( ord_le8861187494160871172list_a @ A2 @ C4 )
         => ( ( finite_finite_list_a @ C4 )
           => ? [B5: set_list_a] :
                ( ( ord_le8861187494160871172list_a @ A2 @ B5 )
                & ( ord_le8861187494160871172list_a @ B5 @ C4 )
                & ( ( finite_card_list_a @ B5 )
                  = N ) ) ) ) ) ) ).

% exists_subset_between
thf(fact_1151_card__seteq,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( ord_le3724670747650509150_set_a @ A2 @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_set_a @ B2 ) @ ( finite_card_set_a @ A2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_seteq
thf(fact_1152_card__seteq,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ( ord_less_eq_set_a @ A2 @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_a @ B2 ) @ ( finite_card_a @ A2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_seteq
thf(fact_1153_card__seteq,axiom,
    ! [B2: set_list_a,A2: set_list_a] :
      ( ( finite_finite_list_a @ B2 )
     => ( ( ord_le8861187494160871172list_a @ A2 @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_list_a @ B2 ) @ ( finite_card_list_a @ A2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_seteq
thf(fact_1154_card__mono,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( ord_le3724670747650509150_set_a @ A2 @ B2 )
       => ( ord_less_eq_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ B2 ) ) ) ) ).

% card_mono
thf(fact_1155_card__mono,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ( ord_less_eq_set_a @ A2 @ B2 )
       => ( ord_less_eq_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ B2 ) ) ) ) ).

% card_mono
thf(fact_1156_card__mono,axiom,
    ! [B2: set_list_a,A2: set_list_a] :
      ( ( finite_finite_list_a @ B2 )
     => ( ( ord_le8861187494160871172list_a @ A2 @ B2 )
       => ( ord_less_eq_nat @ ( finite_card_list_a @ A2 ) @ ( finite_card_list_a @ B2 ) ) ) ) ).

% card_mono
thf(fact_1157_card__Diff1__le,axiom,
    ! [A2: set_a,X4: a] : ( ord_less_eq_nat @ ( finite_card_a @ ( minus_minus_set_a @ A2 @ ( insert_a @ X4 @ bot_bot_set_a ) ) ) @ ( finite_card_a @ A2 ) ) ).

% card_Diff1_le
thf(fact_1158_card__Diff1__le,axiom,
    ! [A2: set_set_a,X4: set_a] : ( ord_less_eq_nat @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ ( insert_set_a @ X4 @ bot_bot_set_set_a ) ) ) @ ( finite_card_set_a @ A2 ) ) ).

% card_Diff1_le
thf(fact_1159_card__Diff__subset,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ( ord_le3724670747650509150_set_a @ B2 @ A2 )
       => ( ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) )
          = ( minus_minus_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ B2 ) ) ) ) ) ).

% card_Diff_subset
thf(fact_1160_card__Diff__subset,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ( ord_less_eq_set_a @ B2 @ A2 )
       => ( ( finite_card_a @ ( minus_minus_set_a @ A2 @ B2 ) )
          = ( minus_minus_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ B2 ) ) ) ) ) ).

% card_Diff_subset
thf(fact_1161_card__Diff__subset,axiom,
    ! [B2: set_list_a,A2: set_list_a] :
      ( ( finite_finite_list_a @ B2 )
     => ( ( ord_le8861187494160871172list_a @ B2 @ A2 )
       => ( ( finite_card_list_a @ ( minus_646659088055828811list_a @ A2 @ B2 ) )
          = ( minus_minus_nat @ ( finite_card_list_a @ A2 ) @ ( finite_card_list_a @ B2 ) ) ) ) ) ).

% card_Diff_subset
thf(fact_1162_diff__card__le__card__Diff,axiom,
    ! [B2: set_a,A2: set_a] :
      ( ( finite_finite_a @ B2 )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ ( finite_card_a @ A2 ) @ ( finite_card_a @ B2 ) ) @ ( finite_card_a @ ( minus_minus_set_a @ A2 @ B2 ) ) ) ) ).

% diff_card_le_card_Diff
thf(fact_1163_diff__card__le__card__Diff,axiom,
    ! [B2: set_set_a,A2: set_set_a] :
      ( ( finite_finite_set_a @ B2 )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ ( finite_card_set_a @ A2 ) @ ( finite_card_set_a @ B2 ) ) @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B2 ) ) ) ) ).

% diff_card_le_card_Diff
thf(fact_1164_card__1__singletonE,axiom,
    ! [A2: set_a] :
      ( ( ( finite_card_a @ A2 )
        = one_one_nat )
     => ~ ! [X5: a] :
            ( A2
           != ( insert_a @ X5 @ bot_bot_set_a ) ) ) ).

% card_1_singletonE
thf(fact_1165_card__1__singletonE,axiom,
    ! [A2: set_set_a] :
      ( ( ( finite_card_set_a @ A2 )
        = one_one_nat )
     => ~ ! [X5: set_a] :
            ( A2
           != ( insert_set_a @ X5 @ bot_bot_set_set_a ) ) ) ).

% card_1_singletonE
thf(fact_1166_card__Suc__Diff1,axiom,
    ! [A2: set_a,X4: a] :
      ( ( finite_finite_a @ A2 )
     => ( ( member_a @ X4 @ A2 )
       => ( ( suc @ ( finite_card_a @ ( minus_minus_set_a @ A2 @ ( insert_a @ X4 @ bot_bot_set_a ) ) ) )
          = ( finite_card_a @ A2 ) ) ) ) ).

% card_Suc_Diff1
thf(fact_1167_card__Suc__Diff1,axiom,
    ! [A2: set_set_a,X4: set_a] :
      ( ( finite_finite_set_a @ A2 )
     => ( ( member_set_a @ X4 @ A2 )
       => ( ( suc @ ( finite_card_set_a @ ( minus_5736297505244876581_set_a @ A2 @ ( insert_set_a @ X4 @ bot_bot_set_set_a ) ) ) )
          = ( finite_card_set_a @ A2 ) ) ) ) ).

% card_Suc_Diff1
thf(fact_1168_is__edge__or__loop,axiom,
    ! [E: set_a] :
      ( ( member_set_a @ E @ edges )
     => ( ( undire2905028936066782638loop_a @ E )
        | ( undire4917966558017083288edge_a @ E ) ) ) ).

% is_edge_or_loop
thf(fact_1169_cycle__tl__is__path,axiom,
    ! [Xs: list_a] :
      ( ( ( undire2407311113669455967ycle_a @ vertices @ edges @ Xs )
        & ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ ( undire8849074589633906640ngth_a @ Xs ) ) )
     => ( undire427332500224447920path_a @ vertices @ edges @ ( tl_a @ Xs ) ) ) ).

% cycle_tl_is_path
thf(fact_1170_walk__alternates,axiom,
    ! [W: list_a,I2: nat] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
     => ( ( ord_less_nat @ ( suc @ I2 ) @ ( size_size_list_a @ W ) )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ I2 )
         => ( ( member_a @ ( nth_a @ W @ I2 ) @ x )
            = ( member_a @ ( nth_a @ W @ ( plus_plus_nat @ I2 @ one_one_nat ) ) @ y ) ) ) ) ) ).

% walk_alternates
thf(fact_1171_Y__not__empty,axiom,
    y != bot_bot_set_a ).

% Y_not_empty
thf(fact_1172_is__loop__def,axiom,
    ( undire2905028936066782638loop_a
    = ( ^ [E3: set_a] :
          ( ( finite_card_a @ E3 )
          = one_one_nat ) ) ) ).

% is_loop_def
thf(fact_1173_partitions__ss_I2_J,axiom,
    ord_less_eq_set_a @ y @ vertices ).

% partitions_ss(2)
thf(fact_1174_semiring__norm_I90_J,axiom,
    ! [M: num,N: num] :
      ( ( ( bit1 @ M )
        = ( bit1 @ N ) )
      = ( M = N ) ) ).

% semiring_norm(90)
thf(fact_1175_Y__verts__not__adj,axiom,
    ! [Y1: a,Y23: a] :
      ( ( member_a @ Y1 @ y )
     => ( ( member_a @ Y23 @ y )
       => ~ ( undire397441198561214472_adj_a @ edges @ Y1 @ Y23 ) ) ) ).

% Y_verts_not_adj
thf(fact_1176_X__vert__adj__Y,axiom,
    ! [X4: a,Y: a] :
      ( ( member_a @ X4 @ x )
     => ( ( undire397441198561214472_adj_a @ edges @ X4 @ Y )
       => ( member_a @ Y @ y ) ) ) ).

% X_vert_adj_Y
thf(fact_1177_Y__vert__adj__X,axiom,
    ! [Y: a,X4: a] :
      ( ( member_a @ Y @ y )
     => ( ( undire397441198561214472_adj_a @ edges @ Y @ X4 )
       => ( member_a @ X4 @ x ) ) ) ).

% Y_vert_adj_X
thf(fact_1178__092_060open_062w_A_B_An_A_092_060in_062_AY_092_060close_062,axiom,
    member_a @ ( nth_a @ wa @ n ) @ y ).

% \<open>w ! n \<in> Y\<close>
thf(fact_1179_edge__betw__indiv,axiom,
    ! [E: set_a] :
      ( ( member_set_a @ E @ edges )
     => ~ ! [X5: a,Y3: a] :
            ~ ( ( member_a @ X5 @ x )
              & ( member_a @ Y3 @ y )
              & ( E
                = ( insert_a @ X5 @ ( insert_a @ Y3 @ bot_bot_set_a ) ) ) ) ) ).

% edge_betw_indiv
thf(fact_1180_semiring__norm_I89_J,axiom,
    ! [M: num,N: num] :
      ( ( bit1 @ M )
     != ( bit0 @ N ) ) ).

% semiring_norm(89)
thf(fact_1181_semiring__norm_I88_J,axiom,
    ! [M: num,N: num] :
      ( ( bit0 @ M )
     != ( bit1 @ N ) ) ).

% semiring_norm(88)
thf(fact_1182_semiring__norm_I86_J,axiom,
    ! [M: num] :
      ( ( bit1 @ M )
     != one ) ).

% semiring_norm(86)
thf(fact_1183_semiring__norm_I84_J,axiom,
    ! [N: num] :
      ( one
     != ( bit1 @ N ) ) ).

% semiring_norm(84)
thf(fact_1184_semiring__norm_I80_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(80)
thf(fact_1185_semiring__norm_I73_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(73)
thf(fact_1186_neighborhood__subset__oppX,axiom,
    ! [V: a] :
      ( ( member_a @ V @ x )
     => ( ord_less_eq_set_a @ ( undire8504279938402040014hood_a @ vertices @ edges @ V ) @ y ) ) ).

% neighborhood_subset_oppX
thf(fact_1187_neighborhood__subset__oppY,axiom,
    ! [V: a] :
      ( ( member_a @ V @ y )
     => ( ord_less_eq_set_a @ ( undire8504279938402040014hood_a @ vertices @ edges @ V ) @ x ) ) ).

% neighborhood_subset_oppY
thf(fact_1188_semiring__norm_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( bit1 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(9)
thf(fact_1189_semiring__norm_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( bit1 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(7)
thf(fact_1190_semiring__norm_I72_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(72)
thf(fact_1191_semiring__norm_I81_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(81)
thf(fact_1192_semiring__norm_I70_J,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_num @ ( bit1 @ M ) @ one ) ).

% semiring_norm(70)
thf(fact_1193_semiring__norm_I77_J,axiom,
    ! [N: num] : ( ord_less_num @ one @ ( bit1 @ N ) ) ).

% semiring_norm(77)
thf(fact_1194_bipartite__graph__axioms,axiom,
    bipart3645081245927496438raph_a @ vertices @ edges @ x @ y ).

% bipartite_graph_axioms
thf(fact_1195_semiring__norm_I3_J,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bit0 @ N ) )
      = ( bit1 @ N ) ) ).

% semiring_norm(3)
thf(fact_1196_semiring__norm_I4_J,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bit1 @ N ) )
      = ( bit0 @ ( plus_plus_num @ N @ one ) ) ) ).

% semiring_norm(4)
thf(fact_1197_semiring__norm_I5_J,axiom,
    ! [M: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ one )
      = ( bit1 @ M ) ) ).

% semiring_norm(5)
thf(fact_1198_semiring__norm_I8_J,axiom,
    ! [M: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ one )
      = ( bit0 @ ( plus_plus_num @ M @ one ) ) ) ).

% semiring_norm(8)
thf(fact_1199_semiring__norm_I10_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( bit0 @ ( plus_plus_num @ ( plus_plus_num @ M @ N ) @ one ) ) ) ).

% semiring_norm(10)
thf(fact_1200_walk__alternates__sym,axiom,
    ! [W: list_a,I2: nat] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
     => ( ( ord_less_nat @ ( suc @ I2 ) @ ( size_size_list_a @ W ) )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ I2 )
         => ( ( member_a @ ( nth_a @ W @ I2 ) @ y )
            = ( member_a @ ( nth_a @ W @ ( plus_plus_nat @ I2 @ one_one_nat ) ) @ x ) ) ) ) ) ).

% walk_alternates_sym
thf(fact_1201_semiring__norm_I79_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(79)
thf(fact_1202_semiring__norm_I74_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(74)
thf(fact_1203_num_Oexhaust,axiom,
    ! [Y: num] :
      ( ( Y != one )
     => ( ! [X23: num] :
            ( Y
           != ( bit0 @ X23 ) )
       => ~ ! [X32: num] :
              ( Y
             != ( bit1 @ X32 ) ) ) ) ).

% num.exhaust
thf(fact_1204_eval__nat__numeral_I3_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit1 @ N ) )
      = ( suc @ ( numeral_numeral_nat @ ( bit0 @ N ) ) ) ) ).

% eval_nat_numeral(3)
thf(fact_1205_numeral__3__eq__3,axiom,
    ( ( numeral_numeral_nat @ ( bit1 @ one ) )
    = ( suc @ ( suc @ ( suc @ zero_zero_nat ) ) ) ) ).

% numeral_3_eq_3
thf(fact_1206_Suc3__eq__add__3,axiom,
    ! [N: nat] :
      ( ( suc @ ( suc @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ).

% Suc3_eq_add_3
thf(fact_1207_num_Osize_I6_J,axiom,
    ! [X33: num] :
      ( ( size_size_num @ ( bit1 @ X33 ) )
      = ( plus_plus_nat @ ( size_size_num @ X33 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(6)
thf(fact_1208_neighbors__ss__eq__neighborhoodX,axiom,
    ! [V: a] :
      ( ( member_a @ V @ x )
     => ( ( undire8504279938402040014hood_a @ vertices @ edges @ V )
        = ( undire401937927514038589s_ss_a @ edges @ V @ y ) ) ) ).

% neighbors_ss_eq_neighborhoodX
thf(fact_1209_neighbors__ss__eq__neighborhoodY,axiom,
    ! [V: a] :
      ( ( member_a @ V @ y )
     => ( ( undire8504279938402040014hood_a @ vertices @ edges @ V )
        = ( undire401937927514038589s_ss_a @ edges @ V @ x ) ) ) ).

% neighbors_ss_eq_neighborhoodY
thf(fact_1210_bipartite__sym,axiom,
    bipart3645081245927496438raph_a @ vertices @ edges @ y @ x ).

% bipartite_sym
thf(fact_1211_degree__neighbors__ssY,axiom,
    ! [V: a] :
      ( ( member_a @ V @ y )
     => ( ( undire8867928226783802224gree_a @ edges @ V )
        = ( finite_card_a @ ( undire401937927514038589s_ss_a @ edges @ V @ x ) ) ) ) ).

% degree_neighbors_ssY
thf(fact_1212_degree__neighbors__ssX,axiom,
    ! [V: a] :
      ( ( member_a @ V @ x )
     => ( ( undire8867928226783802224gree_a @ edges @ V )
        = ( finite_card_a @ ( undire401937927514038589s_ss_a @ edges @ V @ y ) ) ) ) ).

% degree_neighbors_ssX
thf(fact_1213_edge__betw,axiom,
    ! [E: set_a] :
      ( ( member_set_a @ E @ edges )
     => ( member_set_a @ E @ ( bipart6446775273385655766dges_a @ x @ y ) ) ) ).

% edge_betw
thf(fact_1214_is__cycle__alt,axiom,
    ! [Xs: list_a] :
      ( ( undire2407311113669455967ycle_a @ vertices @ edges @ Xs )
      = ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
        & ( distinct_a @ ( tl_a @ Xs ) )
        & ( ord_less_eq_nat @ one_one_nat @ ( undire8849074589633906640ngth_a @ Xs ) )
        & ( ( hd_a @ Xs )
          = ( last_a @ Xs ) ) ) ) ).

% is_cycle_alt
thf(fact_1215_is__path__def,axiom,
    ! [Xs: list_a] :
      ( ( undire427332500224447920path_a @ vertices @ edges @ Xs )
      = ( ( undire2427028224930250914walk_a @ vertices @ edges @ Xs )
        & ( distinct_a @ Xs ) ) ) ).

% is_path_def
thf(fact_1216_is__gen__path__distinct,axiom,
    ! [P3: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P3 )
     => ( ( ( hd_a @ P3 )
         != ( last_a @ P3 ) )
       => ( distinct_a @ P3 ) ) ) ).

% is_gen_path_distinct
thf(fact_1217_is__gen__path__distinct__tl,axiom,
    ! [P3: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P3 )
     => ( ( ( hd_a @ P3 )
          = ( last_a @ P3 ) )
       => ( distinct_a @ ( tl_a @ P3 ) ) ) ) ).

% is_gen_path_distinct_tl
thf(fact_1218_is__gen__path__def,axiom,
    ! [P3: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P3 )
      = ( ( undire6133010728901294956walk_a @ vertices @ edges @ P3 )
        & ( ( ( distinct_a @ ( tl_a @ P3 ) )
            & ( ( hd_a @ P3 )
              = ( last_a @ P3 ) ) )
          | ( distinct_a @ P3 ) ) ) ) ).

% is_gen_path_def
thf(fact_1219_is__cycle__def,axiom,
    ! [Xs: list_a] :
      ( ( undire2407311113669455967ycle_a @ vertices @ edges @ Xs )
      = ( ( undire3370724456595283424walk_a @ vertices @ edges @ Xs )
        & ( ord_less_eq_nat @ one_one_nat @ ( undire8849074589633906640ngth_a @ Xs ) )
        & ( distinct_a @ ( tl_a @ Xs ) ) ) ) ).

% is_cycle_def
thf(fact_1220_is__bicomplete__def,axiom,
    ( ( bipart1400899026515230908lete_a @ edges @ x @ y )
    = ( edges
      = ( bipart6446775273385655766dges_a @ x @ y ) ) ) ).

% is_bicomplete_def
thf(fact_1221_neighborhood__incident,axiom,
    ! [U: a,V: a] :
      ( ( member_a @ U @ ( undire8504279938402040014hood_a @ vertices @ edges @ V ) )
      = ( member_set_a @ ( insert_a @ U @ ( insert_a @ V @ bot_bot_set_a ) ) @ ( undire3231912044278729248dges_a @ edges @ V ) ) ) ).

% neighborhood_incident
thf(fact_1222_zle__diff1__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ W @ ( minus_minus_int @ Z @ one_one_int ) )
      = ( ord_less_int @ W @ Z ) ) ).

% zle_diff1_eq
thf(fact_1223_distinct__edgesI,axiom,
    ! [P3: list_a] :
      ( ( distinct_a @ P3 )
     => ( distinct_set_a @ ( undire7337870655677353998dges_a @ P3 ) ) ) ).

% distinct_edgesI
thf(fact_1224_finite__incident__edges,axiom,
    ! [V: a] :
      ( ( finite_finite_set_a @ edges )
     => ( finite_finite_set_a @ ( undire3231912044278729248dges_a @ edges @ V ) ) ) ).

% finite_incident_edges
thf(fact_1225_incident__edges__empty,axiom,
    ! [V: a] :
      ( ~ ( member_a @ V @ vertices )
     => ( ( undire3231912044278729248dges_a @ edges @ V )
        = bot_bot_set_set_a ) ) ).

% incident_edges_empty
thf(fact_1226_degree0__inc__edges__empt__iff,axiom,
    ! [V: a] :
      ( ( finite_finite_set_a @ edges )
     => ( ( ( undire8867928226783802224gree_a @ edges @ V )
          = zero_zero_nat )
        = ( ( undire3231912044278729248dges_a @ edges @ V )
          = bot_bot_set_set_a ) ) ) ).

% degree0_inc_edges_empt_iff
thf(fact_1227_card__incident__sedges__neighborhood,axiom,
    ! [V: a] :
      ( ( finite_card_set_a @ ( undire3231912044278729248dges_a @ edges @ V ) )
      = ( finite_card_a @ ( undire8504279938402040014hood_a @ vertices @ edges @ V ) ) ) ).

% card_incident_sedges_neighborhood
thf(fact_1228_zle__add1__eq__le,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ ( plus_plus_int @ Z @ one_one_int ) )
      = ( ord_less_eq_int @ W @ Z ) ) ).

% zle_add1_eq_le
thf(fact_1229_alt__degree__def,axiom,
    ! [V: a] :
      ( ( undire8867928226783802224gree_a @ edges @ V )
      = ( finite_card_set_a @ ( undire3231912044278729248dges_a @ edges @ V ) ) ) ).

% alt_degree_def
thf(fact_1230_degree__no__loops,axiom,
    ! [V: a] :
      ( ~ ( undire3617971648856834880loop_a @ edges @ V )
     => ( ( undire8867928226783802224gree_a @ edges @ V )
        = ( finite_card_set_a @ ( undire3231912044278729248dges_a @ edges @ V ) ) ) ) ).

% degree_no_loops
thf(fact_1231_is__trail__def,axiom,
    ! [Xs: list_a] :
      ( ( undire7142031287334043199rail_a @ vertices @ edges @ Xs )
      = ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
        & ( distinct_set_a @ ( undire7337870655677353998dges_a @ Xs ) ) ) ) ).

% is_trail_def
thf(fact_1232_less__int__code_I1_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ zero_zero_int ) ).

% less_int_code(1)
thf(fact_1233_less__eq__int__code_I1_J,axiom,
    ord_less_eq_int @ zero_zero_int @ zero_zero_int ).

% less_eq_int_code(1)
thf(fact_1234_plus__int__code_I2_J,axiom,
    ! [L: int] :
      ( ( plus_plus_int @ zero_zero_int @ L )
      = L ) ).

% plus_int_code(2)
thf(fact_1235_plus__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( plus_plus_int @ K @ zero_zero_int )
      = K ) ).

% plus_int_code(1)
thf(fact_1236_minus__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( minus_minus_int @ K @ zero_zero_int )
      = K ) ).

% minus_int_code(1)
thf(fact_1237_zdvd__not__zless,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ M )
     => ( ( ord_less_int @ M @ N )
       => ~ ( dvd_dvd_int @ N @ M ) ) ) ).

% zdvd_not_zless
thf(fact_1238_int__one__le__iff__zero__less,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ one_one_int @ Z )
      = ( ord_less_int @ zero_zero_int @ Z ) ) ).

% int_one_le_iff_zero_less
thf(fact_1239_int__gr__induct,axiom,
    ! [K: int,I2: int,P2: int > $o] :
      ( ( ord_less_int @ K @ I2 )
     => ( ( P2 @ ( plus_plus_int @ K @ one_one_int ) )
       => ( ! [I: int] :
              ( ( ord_less_int @ K @ I )
             => ( ( P2 @ I )
               => ( P2 @ ( plus_plus_int @ I @ one_one_int ) ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% int_gr_induct
thf(fact_1240_zless__add1__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ ( plus_plus_int @ Z @ one_one_int ) )
      = ( ( ord_less_int @ W @ Z )
        | ( W = Z ) ) ) ).

% zless_add1_eq
thf(fact_1241_odd__less__0__iff,axiom,
    ! [Z: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( plus_plus_int @ one_one_int @ Z ) @ Z ) @ zero_zero_int )
      = ( ord_less_int @ Z @ zero_zero_int ) ) ).

% odd_less_0_iff
thf(fact_1242_odd__nonzero,axiom,
    ! [Z: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ one_one_int @ Z ) @ Z )
     != zero_zero_int ) ).

% odd_nonzero
thf(fact_1243_int__less__induct,axiom,
    ! [I2: int,K: int,P2: int > $o] :
      ( ( ord_less_int @ I2 @ K )
     => ( ( P2 @ ( minus_minus_int @ K @ one_one_int ) )
       => ( ! [I: int] :
              ( ( ord_less_int @ I @ K )
             => ( ( P2 @ I )
               => ( P2 @ ( minus_minus_int @ I @ one_one_int ) ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% int_less_induct
thf(fact_1244_zdvd__imp__le,axiom,
    ! [Z: int,N: int] :
      ( ( dvd_dvd_int @ Z @ N )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_eq_int @ Z @ N ) ) ) ).

% zdvd_imp_le
thf(fact_1245_zdvd__antisym__nonneg,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ M )
     => ( ( ord_less_eq_int @ zero_zero_int @ N )
       => ( ( dvd_dvd_int @ M @ N )
         => ( ( dvd_dvd_int @ N @ M )
           => ( M = N ) ) ) ) ) ).

% zdvd_antisym_nonneg
thf(fact_1246_zdvd__zdiffD,axiom,
    ! [K: int,M: int,N: int] :
      ( ( dvd_dvd_int @ K @ ( minus_minus_int @ M @ N ) )
     => ( ( dvd_dvd_int @ K @ N )
       => ( dvd_dvd_int @ K @ M ) ) ) ).

% zdvd_zdiffD
thf(fact_1247_add1__zle__eq,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ W @ one_one_int ) @ Z )
      = ( ord_less_int @ W @ Z ) ) ).

% add1_zle_eq
thf(fact_1248_le__imp__0__less,axiom,
    ! [Z: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z )
     => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ Z ) ) ) ).

% le_imp_0_less
thf(fact_1249_zless__imp__add1__zle,axiom,
    ! [W: int,Z: int] :
      ( ( ord_less_int @ W @ Z )
     => ( ord_less_eq_int @ ( plus_plus_int @ W @ one_one_int ) @ Z ) ) ).

% zless_imp_add1_zle
thf(fact_1250_int__ge__induct,axiom,
    ! [K: int,I2: int,P2: int > $o] :
      ( ( ord_less_eq_int @ K @ I2 )
     => ( ( P2 @ K )
       => ( ! [I: int] :
              ( ( ord_less_eq_int @ K @ I )
             => ( ( P2 @ I )
               => ( P2 @ ( plus_plus_int @ I @ one_one_int ) ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% int_ge_induct
thf(fact_1251_int__le__induct,axiom,
    ! [I2: int,K: int,P2: int > $o] :
      ( ( ord_less_eq_int @ I2 @ K )
     => ( ( P2 @ K )
       => ( ! [I: int] :
              ( ( ord_less_eq_int @ I @ K )
             => ( ( P2 @ I )
               => ( P2 @ ( minus_minus_int @ I @ one_one_int ) ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% int_le_induct
thf(fact_1252_int__induct,axiom,
    ! [P2: int > $o,K: int,I2: int] :
      ( ( P2 @ K )
     => ( ! [I: int] :
            ( ( ord_less_eq_int @ K @ I )
           => ( ( P2 @ I )
             => ( P2 @ ( plus_plus_int @ I @ one_one_int ) ) ) )
       => ( ! [I: int] :
              ( ( ord_less_eq_int @ I @ K )
             => ( ( P2 @ I )
               => ( P2 @ ( minus_minus_int @ I @ one_one_int ) ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% int_induct
thf(fact_1253_scycles__distinct__edges,axiom,
    ! [C: list_a] :
      ( ( member_list_a @ C @ ( undire2685670433559799090cles_a @ vertices @ edges ) )
     => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ ( undire8849074589633906640ngth_a @ C ) )
       => ( distinct_set_a @ ( undire7337870655677353998dges_a @ C ) ) ) ) ).

% scycles_distinct_edges
thf(fact_1254_incident__loops__simp_I1_J,axiom,
    ! [V: a] :
      ( ( undire3617971648856834880loop_a @ edges @ V )
     => ( ( undire4753905205749729249oops_a @ edges @ V )
        = ( insert_set_a @ ( insert_a @ V @ bot_bot_set_a ) @ bot_bot_set_set_a ) ) ) ).

% incident_loops_simp(1)
thf(fact_1255_finite__incident__loops,axiom,
    ! [V: a] : ( finite_finite_set_a @ ( undire4753905205749729249oops_a @ edges @ V ) ) ).

% finite_incident_loops
thf(fact_1256_incident__loops__simp_I2_J,axiom,
    ! [V: a] :
      ( ~ ( undire3617971648856834880loop_a @ edges @ V )
     => ( ( undire4753905205749729249oops_a @ edges @ V )
        = bot_bot_set_set_a ) ) ).

% incident_loops_simp(2)
thf(fact_1257_incident__loops__card,axiom,
    ! [V: a] : ( ord_less_eq_nat @ ( finite_card_set_a @ ( undire4753905205749729249oops_a @ edges @ V ) ) @ one_one_nat ) ).

% incident_loops_card
thf(fact_1258_cycles__ss__gen__paths,axiom,
    ord_le8861187494160871172list_a @ ( undire2685670433559799090cles_a @ vertices @ edges ) @ ( undire6235733737954427521aths_a @ vertices @ edges ) ).

% cycles_ss_gen_paths
thf(fact_1259_partition,axiom,
    disjoi6812529866258094733n_on_a @ vertices @ ( insert_set_a @ x @ ( insert_set_a @ y @ bot_bot_set_set_a ) ) ).

% partition
thf(fact_1260_gen__paths__ss__walks,axiom,
    ord_le8861187494160871172list_a @ ( undire6235733737954427521aths_a @ vertices @ edges ) @ ( undire3736599831911450577alks_a @ vertices @ edges ) ).

% gen_paths_ss_walks
thf(fact_1261_paths__ss__walk,axiom,
    ord_le8861187494160871172list_a @ ( undire1387732426225024653aths_a @ vertices @ edges ) @ ( undire3736599831911450577alks_a @ vertices @ edges ) ).

% paths_ss_walk
thf(fact_1262_finite__inc__sedges,axiom,
    ! [V: a] :
      ( ( finite_finite_set_a @ edges )
     => ( finite_finite_set_a @ ( undire1270416042309875431dges_a @ edges @ V ) ) ) ).

% finite_inc_sedges
thf(fact_1263_incident__edges__sedges,axiom,
    ! [V: a] :
      ( ~ ( undire3617971648856834880loop_a @ edges @ V )
     => ( ( undire3231912044278729248dges_a @ edges @ V )
        = ( undire1270416042309875431dges_a @ edges @ V ) ) ) ).

% incident_edges_sedges
thf(fact_1264_incident__sedges__empty,axiom,
    ! [V: a] :
      ( ~ ( member_a @ V @ vertices )
     => ( ( undire1270416042309875431dges_a @ edges @ V )
        = bot_bot_set_set_a ) ) ).

% incident_sedges_empty
thf(fact_1265_degree__def,axiom,
    ! [V: a] :
      ( ( undire8867928226783802224gree_a @ edges @ V )
      = ( plus_plus_nat @ ( finite_card_set_a @ ( undire1270416042309875431dges_a @ edges @ V ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( finite_card_set_a @ ( undire4753905205749729249oops_a @ edges @ V ) ) ) ) ) ).

% degree_def

% Helper facts (3)
thf(help_If_3_1_If_001t__Nat__Onat_T,axiom,
    ! [P2: $o] :
      ( ( P2 = $true )
      | ( P2 = $false ) ) ).

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

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

% Conjectures (1)
thf(conj_0,conjecture,
    member_a @ ( last_a @ w1 ) @ x ).

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