TPTP Problem File: SLH0822^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/0019_Connectivity/prob_00090_004382__13368232_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1392 ( 501 unt; 125 typ;   0 def)
%            Number of atoms       : 3635 (1476 equ;   0 cnn)
%            Maximal formula atoms :   12 (   2 avg)
%            Number of connectives : 11428 ( 411   ~;  70   |; 285   &;9032   @)
%                                         (   0 <=>;1630  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   7 avg)
%            Number of types       :   14 (  13 usr)
%            Number of type conns  :  428 ( 428   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  113 ( 112 usr;  13 con; 0-5 aty)
%            Number of variables   : 3628 ( 162   ^;3302   !; 164   ?;3628   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 14:34:16.014
%------------------------------------------------------------------------------
% Could-be-implicit typings (13)
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__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__Set__Oset_It__Set__Oset_It__Set__Oset_Itf__a_J_J_J,type,
    set_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__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__String__Ochar,type,
    char: $tType ).

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

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

% Explicit typings (112)
thf(sy_c_Connectivity_Oulgraph_Oconnecting__path_001t__Set__Oset_Itf__a_J,type,
    connec7350987497872064604_set_a: set_set_a > set_set_set_a > set_a > set_a > list_set_a > $o ).

thf(sy_c_Connectivity_Oulgraph_Oconnecting__path_001tf__a,type,
    connecting_path_a: set_a > set_set_a > a > a > list_a > $o ).

thf(sy_c_Connectivity_Oulgraph_Oconnecting__path__str_001tf__a,type,
    connec3015921205769380621_str_a: set_a > set_set_a > a > a > list_a > $o ).

thf(sy_c_Connectivity_Oulgraph_Oconnecting__walk_001t__Set__Oset_Itf__a_J,type,
    connec1530789871921280536_set_a: set_set_a > set_set_set_a > set_a > set_a > list_set_a > $o ).

thf(sy_c_Connectivity_Oulgraph_Oconnecting__walk_001tf__a,type,
    connecting_walk_a: set_a > set_set_a > a > a > list_a > $o ).

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__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__Nat__Onat,type,
    one_one_nat: nat ).

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

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

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_It__Set__Oset_Itf__a_J_J,type,
    distinct_set_set_a: list_set_set_a > $o ).

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_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_Oset_001t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    set_list_set_a2: list_list_set_a > set_list_set_a ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_Itf__a_J,type,
    set_list_a2: list_list_a > set_list_a ).

thf(sy_c_List_Olist_Oset_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    set_set_set_a2: list_set_set_a > set_set_set_a ).

thf(sy_c_List_Olist_Oset_001t__Set__Oset_Itf__a_J,type,
    set_set_a2: list_set_a > set_set_a ).

thf(sy_c_List_Olist_Oset_001tf__a,type,
    set_a2: list_a > set_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_On__lists_001t__Set__Oset_Itf__a_J,type,
    n_lists_set_a: nat > list_set_a > list_list_set_a ).

thf(sy_c_List_On__lists_001tf__a,type,
    n_lists_a: nat > list_a > list_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_Orev_001t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    rev_set_set_a: list_set_set_a > list_set_set_a ).

thf(sy_c_List_Orev_001t__Set__Oset_Itf__a_J,type,
    rev_set_a: list_set_a > list_set_a ).

thf(sy_c_List_Orev_001tf__a,type,
    rev_a: list_a > list_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__String__Ochar,type,
    size_size_char: char > nat ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__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__Nat__Onat,type,
    ord_less_eq_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Set__Oset_It__Set__Oset_Itf__a_J_J_J,type,
    ord_le5722252365846178494_set_a: set_set_set_a > set_set_set_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_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_String_Ochar_Osize__char,type,
    size_char: char > nat ).

thf(sy_c_Undirected__Graph__Basics_Oall__edges_001t__Set__Oset_Itf__a_J,type,
    undire8247866692393712962_set_a: set_set_a > set_set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Oall__edges_001tf__a,type,
    undire2918257014606996450dges_a: set_a > set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Ograph__system_001t__Set__Oset_Itf__a_J,type,
    undire7159349782766787846_set_a: set_set_a > set_set_set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Ograph__system_001tf__a,type,
    undire2554140024507503526stem_a: set_a > set_set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Ograph__system_Oedge__adj_001t__Set__Oset_Itf__a_J,type,
    undire3485422320110889978_set_a: set_set_set_a > set_set_a > set_set_a > $o ).

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_001t__Set__Oset_Itf__a_J,type,
    undire2320338297334612420_set_a: set_a > set_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_Oinduced__edges_001t__Set__Oset_Itf__a_J,type,
    undire7854589003810675244_set_a: set_set_set_a > set_set_a > set_set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Ograph__system_Oinduced__edges_001tf__a,type,
    undire7777452895879145676dges_a: set_set_a > set_a > set_set_a ).

thf(sy_c_Undirected__Graph__Basics_Osubgraph_001t__Set__Oset_Itf__a_J,type,
    undire1186139521737116585_set_a: set_set_a > set_set_set_a > set_set_a > set_set_set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Osubgraph_001tf__a,type,
    undire7103218114511261257raph_a: set_a > set_set_a > set_a > set_set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_001t__Set__Oset_Itf__a_J,type,
    undire6886684016831807756_set_a: set_set_a > set_set_set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_001tf__a,type,
    undire7251896706689453996raph_a: set_a > set_set_a > $o ).

thf(sy_c_Undirected__Graph__Basics_Oulgraph_Odegree_001t__Set__Oset_Itf__a_J,type,
    undire8939077443744732368_set_a: set_set_set_a > set_a > nat ).

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_001t__Set__Oset_Itf__a_J,type,
    undire5774735625301615776_set_a: set_set_set_a > set_a > $o ).

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_Ois__isolated__vertex_001t__Set__Oset_Itf__a_J,type,
    undire6879241558604981877_set_a: set_set_a > set_set_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_Overt__adj_001t__Set__Oset_Itf__a_J,type,
    undire3510646817838285160_set_a: set_set_set_a > set_a > set_a > $o ).

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_Ois__closed__walk_001t__Set__Oset_Itf__a_J,type,
    undire4100213446647512896_set_a: set_set_a > set_set_set_a > list_set_a > $o ).

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_001t__Set__Oset_Itf__a_J,type,
    undire797940137672299967_set_a: set_set_a > set_set_set_a > list_set_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_001t__Set__Oset_Itf__a_J,type,
    undire7201326534205417136_set_a: set_set_a > set_set_set_a > list_set_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_001t__Set__Oset_Itf__a_J,type,
    undire526879649183275522_set_a: set_set_a > set_set_set_a > list_set_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_001t__Set__Oset_Itf__a_J,type,
    undire8834939040163919632_set_a: set_set_a > set_set_set_a > list_set_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_001t__Set__Oset_Itf__a_J,type,
    undire1224551742100448159_set_a: set_set_a > set_set_set_a > list_set_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_001t__Set__Oset_Itf__a_J,type,
    undire3014741414213135564_set_a: set_set_a > set_set_set_a > list_set_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_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_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__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    member_set_set_a: set_set_a > set_set_set_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_edges,type,
    edges: set_set_a ).

thf(sy_v_u,type,
    u: a ).

thf(sy_v_v,type,
    v: a ).

thf(sy_v_vertices,type,
    vertices: set_a ).

thf(sy_v_xs,type,
    xs: list_a ).

thf(sy_v_xsa____,type,
    xsa: list_a ).

% Relevant facts (1266)
thf(fact_0_ne,axiom,
    u != v ).

% ne
thf(fact_1_n0,axiom,
    ( ( undire8849074589633906640ngth_a @ xsa )
   != zero_zero_nat ) ).

% n0
thf(fact_2_assm,axiom,
    connecting_walk_a @ vertices @ edges @ u @ v @ xsa ).

% assm
thf(fact_3_connecting__walk__wf,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_walk_a @ vertices @ edges @ U @ V @ Xs )
     => ( ( member_a @ U @ vertices )
        & ( member_a @ V @ vertices ) ) ) ).

% connecting_walk_wf
thf(fact_4_connecting__path__walk,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_path_a @ vertices @ edges @ U @ V @ Xs )
     => ( connecting_walk_a @ vertices @ edges @ U @ V @ Xs ) ) ).

% connecting_path_walk
thf(fact_5_assms,axiom,
    connecting_walk_a @ vertices @ edges @ u @ v @ xs ).

% assms
thf(fact_6_ulgraph__axioms,axiom,
    undire7251896706689453996raph_a @ vertices @ edges ).

% ulgraph_axioms
thf(fact_7_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_8_edge__adjacent__alt__def,axiom,
    ! [E1: set_a,E2: set_a] :
      ( ( member_set_a @ E1 @ edges )
     => ( ( member_set_a @ E2 @ edges )
       => ( ? [X: a] :
              ( ( member_a @ X @ vertices )
              & ( member_a @ X @ E1 )
              & ( member_a @ X @ E2 ) )
         => ( undire4022703626023482010_adj_a @ edges @ E1 @ E2 ) ) ) ) ).

% edge_adjacent_alt_def
thf(fact_9_connecting__path__str__gen,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connec3015921205769380621_str_a @ vertices @ edges @ U @ V @ Xs )
     => ( connecting_path_a @ vertices @ edges @ U @ V @ Xs ) ) ).

% connecting_path_str_gen
thf(fact_10__092_060open_062walk__length_Axs_A_092_060noteq_062_A0_092_060close_062,axiom,
    ( ( undire8849074589633906640ngth_a @ xs )
   != zero_zero_nat ) ).

% \<open>walk_length xs \<noteq> 0\<close>
thf(fact_11_ulgraph_Oconnecting__path_Ocong,axiom,
    connecting_path_a = connecting_path_a ).

% ulgraph.connecting_path.cong
thf(fact_12_connecting__path__length__bound,axiom,
    ! [U: a,V: a,P: list_a] :
      ( ( U != V )
     => ( ( connecting_path_a @ vertices @ edges @ U @ V @ P )
       => ( ord_less_eq_nat @ one_one_nat @ ( undire8849074589633906640ngth_a @ P ) ) ) ) ).

% connecting_path_length_bound
thf(fact_13_IH,axiom,
    ! [Xsa: list_a] :
      ( ( ord_less_nat @ ( undire8849074589633906640ngth_a @ Xsa ) @ ( undire8849074589633906640ngth_a @ xsa ) )
     => ( ( ( undire8849074589633906640ngth_a @ Xsa )
         != zero_zero_nat )
       => ( ( connecting_walk_a @ vertices @ edges @ u @ v @ Xsa )
         => ( ( u != v )
           => ? [Ys: list_a] :
                ( ( connecting_path_a @ vertices @ edges @ u @ v @ Ys )
                & ( ord_less_eq_nat @ ( undire8849074589633906640ngth_a @ Ys ) @ ( undire8849074589633906640ngth_a @ Xsa ) ) ) ) ) ) ) ).

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

% has_loop_in_verts
thf(fact_15_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_16_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_17_subgraph__refl,axiom,
    undire7103218114511261257raph_a @ vertices @ edges @ vertices @ edges ).

% subgraph_refl
thf(fact_18_connecting__path__rev,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_path_a @ vertices @ edges @ U @ V @ Xs )
      = ( connecting_path_a @ vertices @ edges @ V @ U @ ( rev_a @ Xs ) ) ) ).

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

% wellformed
thf(fact_20_connecting__path__alt__def,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_path_a @ vertices @ edges @ U @ V @ Xs )
      = ( ( connecting_walk_a @ vertices @ edges @ U @ V @ Xs )
        & ( undire3562951555376170320path_a @ vertices @ edges @ Xs ) ) ) ).

% connecting_path_alt_def
thf(fact_21_graph__system__axioms,axiom,
    undire2554140024507503526stem_a @ vertices @ edges ).

% graph_system_axioms
thf(fact_22_order__refl,axiom,
    ! [X2: nat] : ( ord_less_eq_nat @ X2 @ X2 ) ).

% order_refl
thf(fact_23_order__refl,axiom,
    ! [X2: set_a] : ( ord_less_eq_set_a @ X2 @ X2 ) ).

% order_refl
thf(fact_24_order__refl,axiom,
    ! [X2: set_set_a] : ( ord_le3724670747650509150_set_a @ X2 @ X2 ) ).

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

% dual_order.refl
thf(fact_26_dual__order_Orefl,axiom,
    ! [A: set_a] : ( ord_less_eq_set_a @ A @ A ) ).

% dual_order.refl
thf(fact_27_dual__order_Orefl,axiom,
    ! [A: set_set_a] : ( ord_le3724670747650509150_set_a @ A @ A ) ).

% dual_order.refl
thf(fact_28_incident__def,axiom,
    undire1521409233611534436dent_a = member_a ).

% incident_def
thf(fact_29_walk__length__rev,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P2: list_a] : ( undire8849074589633906640ngth_a @ ( rev_a @ P2 ) ) ) ) ).

% walk_length_rev
thf(fact_30_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_31_vert__adj__edge__iff2,axiom,
    ! [V1: a,V2: a] :
      ( ( V1 != V2 )
     => ( ( undire397441198561214472_adj_a @ edges @ V1 @ V2 )
        = ( ? [X3: set_a] :
              ( ( member_set_a @ X3 @ edges )
              & ( undire1521409233611534436dent_a @ V1 @ X3 )
              & ( undire1521409233611534436dent_a @ V2 @ X3 ) ) ) ) ) ).

% vert_adj_edge_iff2
thf(fact_32_is__gen__path__rev,axiom,
    ! [P: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P )
      = ( undire3562951555376170320path_a @ vertices @ edges @ ( rev_a @ P ) ) ) ).

% is_gen_path_rev
thf(fact_33_connecting__walk__rev,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_walk_a @ vertices @ edges @ U @ V @ Xs )
      = ( connecting_walk_a @ vertices @ edges @ V @ U @ ( rev_a @ Xs ) ) ) ).

% connecting_walk_rev
thf(fact_34_is__trail__rev,axiom,
    ! [Xs: list_a] :
      ( ( undire7142031287334043199rail_a @ vertices @ edges @ Xs )
      = ( undire7142031287334043199rail_a @ vertices @ edges @ ( rev_a @ Xs ) ) ) ).

% is_trail_rev
thf(fact_35_gt__ex,axiom,
    ! [X2: nat] :
    ? [X_1: nat] : ( ord_less_nat @ X2 @ X_1 ) ).

% gt_ex
thf(fact_36_less__imp__neq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( X2 != Y ) ) ).

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

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

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

% ord_less_eq_trans
thf(fact_40_less__induct,axiom,
    ! [P3: nat > $o,A: nat] :
      ( ! [X4: nat] :
          ( ! [Y2: nat] :
              ( ( ord_less_nat @ Y2 @ X4 )
             => ( P3 @ Y2 ) )
         => ( P3 @ X4 ) )
     => ( P3 @ A ) ) ).

% less_induct
thf(fact_41_antisym__conv3,axiom,
    ! [Y: nat,X2: nat] :
      ( ~ ( ord_less_nat @ Y @ X2 )
     => ( ( ~ ( ord_less_nat @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv3
thf(fact_42_ulgraph_Oconnecting__walk__wf,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,U: set_a,V: set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( connec1530789871921280536_set_a @ Vertices @ Edges @ U @ V @ Xs )
       => ( ( member_set_a @ U @ Vertices )
          & ( member_set_a @ V @ Vertices ) ) ) ) ).

% ulgraph.connecting_walk_wf
thf(fact_43_ulgraph_Oconnecting__walk__wf,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_walk_a @ Vertices @ Edges @ U @ V @ Xs )
       => ( ( member_a @ U @ Vertices )
          & ( member_a @ V @ Vertices ) ) ) ) ).

% ulgraph.connecting_walk_wf
thf(fact_44_linorder__cases,axiom,
    ! [X2: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X2 @ Y )
     => ( ( X2 != Y )
       => ( ord_less_nat @ Y @ X2 ) ) ) ).

% linorder_cases
thf(fact_45_ulgraph_Oconnecting__walk__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,U: set_a,V: set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( connec1530789871921280536_set_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( connec1530789871921280536_set_a @ Vertices @ Edges @ V @ U @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.connecting_walk_rev
thf(fact_46_ulgraph_Oconnecting__walk__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_walk_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( connecting_walk_a @ Vertices @ Edges @ V @ U @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.connecting_walk_rev
thf(fact_47_dual__order_Oasym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ~ ( ord_less_nat @ A @ B ) ) ).

% dual_order.asym
thf(fact_48_dual__order_Oirrefl,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% dual_order.irrefl
thf(fact_49_mem__Collect__eq,axiom,
    ! [A: a,P3: a > $o] :
      ( ( member_a @ A @ ( collect_a @ P3 ) )
      = ( P3 @ A ) ) ).

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

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

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

% Collect_mem_eq
thf(fact_53_exists__least__iff,axiom,
    ( ( ^ [P4: nat > $o] :
        ? [X5: nat] : ( P4 @ X5 ) )
    = ( ^ [P5: nat > $o] :
        ? [N: nat] :
          ( ( P5 @ N )
          & ! [M: nat] :
              ( ( ord_less_nat @ M @ N )
             => ~ ( P5 @ M ) ) ) ) ) ).

% exists_least_iff
thf(fact_54_linorder__less__wlog,axiom,
    ! [P3: nat > nat > $o,A: nat,B: nat] :
      ( ! [A3: nat,B2: nat] :
          ( ( ord_less_nat @ A3 @ B2 )
         => ( P3 @ A3 @ B2 ) )
     => ( ! [A3: nat] : ( P3 @ A3 @ A3 )
       => ( ! [A3: nat,B2: nat] :
              ( ( P3 @ B2 @ A3 )
             => ( P3 @ A3 @ B2 ) )
         => ( P3 @ A @ B ) ) ) ) ).

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

% order.strict_trans
thf(fact_56_not__less__iff__gr__or__eq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X2 @ Y ) )
      = ( ( ord_less_nat @ Y @ X2 )
        | ( X2 = Y ) ) ) ).

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

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

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

% dual_order.strict_implies_not_eq
thf(fact_60_linorder__neqE,axiom,
    ! [X2: nat,Y: nat] :
      ( ( X2 != Y )
     => ( ~ ( ord_less_nat @ X2 @ Y )
       => ( ord_less_nat @ Y @ X2 ) ) ) ).

% linorder_neqE
thf(fact_61_order__less__asym,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ~ ( ord_less_nat @ Y @ X2 ) ) ).

% order_less_asym
thf(fact_62_linorder__neq__iff,axiom,
    ! [X2: nat,Y: nat] :
      ( ( X2 != Y )
      = ( ( ord_less_nat @ X2 @ Y )
        | ( ord_less_nat @ Y @ X2 ) ) ) ).

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

% order_less_asym'
thf(fact_64_order__less__trans,axiom,
    ! [X2: nat,Y: nat,Z: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_nat @ Y @ Z )
       => ( ord_less_nat @ X2 @ Z ) ) ) ).

% order_less_trans
thf(fact_65_ord__eq__less__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_66_ord__less__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_67_order__less__irrefl,axiom,
    ! [X2: nat] :
      ~ ( ord_less_nat @ X2 @ X2 ) ).

% order_less_irrefl
thf(fact_68_order__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_69_order__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_70_order__less__not__sym,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ~ ( ord_less_nat @ Y @ X2 ) ) ).

% order_less_not_sym
thf(fact_71_order__less__imp__triv,axiom,
    ! [X2: nat,Y: nat,P3: $o] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_nat @ Y @ X2 )
       => P3 ) ) ).

% order_less_imp_triv
thf(fact_72_linorder__less__linear,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
      | ( X2 = Y )
      | ( ord_less_nat @ Y @ X2 ) ) ).

% linorder_less_linear
thf(fact_73_order__less__imp__not__eq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( X2 != Y ) ) ).

% order_less_imp_not_eq
thf(fact_74_order__less__imp__not__eq2,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( Y != X2 ) ) ).

% order_less_imp_not_eq2
thf(fact_75_order__less__imp__not__less,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ~ ( ord_less_nat @ Y @ X2 ) ) ).

% order_less_imp_not_less
thf(fact_76_ulgraph_Oconnecting__path__str_Ocong,axiom,
    connec3015921205769380621_str_a = connec3015921205769380621_str_a ).

% ulgraph.connecting_path_str.cong
thf(fact_77_ulgraph_Oconnecting__path__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,U: set_a,V: set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( connec7350987497872064604_set_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( connec7350987497872064604_set_a @ Vertices @ Edges @ V @ U @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.connecting_path_rev
thf(fact_78_ulgraph_Oconnecting__path__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_path_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( connecting_path_a @ Vertices @ Edges @ V @ U @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.connecting_path_rev
thf(fact_79_order__le__imp__less__or__eq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
     => ( ( ord_less_nat @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_80_order__le__imp__less__or__eq,axiom,
    ! [X2: set_a,Y: set_a] :
      ( ( ord_less_eq_set_a @ X2 @ Y )
     => ( ( ord_less_set_a @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_81_order__le__imp__less__or__eq,axiom,
    ! [X2: set_set_a,Y: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ X2 @ Y )
     => ( ( ord_less_set_set_a @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_82_linorder__le__less__linear,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
      | ( ord_less_nat @ Y @ X2 ) ) ).

% linorder_le_less_linear
thf(fact_83_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_84_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_a,C: set_a] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_set_a @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_85_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_set_a,C: set_set_a] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_le3724670747650509150_set_a @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_set_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_86_order__less__le__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_87_order__less__le__subst1,axiom,
    ! [A: set_a,F: nat > set_a,B: nat,C: nat] :
      ( ( ord_less_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_88_order__less__le__subst1,axiom,
    ! [A: set_set_a,F: nat > set_set_a,B: nat,C: nat] :
      ( ( ord_less_set_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_89_order__less__le__subst1,axiom,
    ! [A: nat,F: set_a > nat,B: set_a,C: set_a] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_90_order__less__le__subst1,axiom,
    ! [A: set_a,F: set_a > set_a,B: set_a,C: set_a] :
      ( ( ord_less_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_91_order__less__le__subst1,axiom,
    ! [A: set_set_a,F: set_a > set_set_a,B: set_a,C: set_a] :
      ( ( ord_less_set_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_92_order__less__le__subst1,axiom,
    ! [A: nat,F: set_set_a > nat,B: set_set_a,C: set_set_a] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_93_order__less__le__subst1,axiom,
    ! [A: set_a,F: set_set_a > set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_less_set_a @ A @ ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_94_order__less__le__subst1,axiom,
    ! [A: set_set_a,F: set_set_a > set_set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_less_set_set_a @ A @ ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_95_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_96_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_a,C: set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_set_a @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_97_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_set_a,C: set_set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_set_set_a @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_98_order__le__less__subst2,axiom,
    ! [A: set_a,B: set_a,F: set_a > nat,C: nat] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_99_order__le__less__subst2,axiom,
    ! [A: set_a,B: set_a,F: set_a > set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_100_order__le__less__subst2,axiom,
    ! [A: set_a,B: set_a,F: set_a > set_set_a,C: set_set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_set_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_101_order__le__less__subst2,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > nat,C: nat] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_102_order__le__less__subst2,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > set_a,C: set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_less_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_103_order__le__less__subst2,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_less_set_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_104_order__le__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_105_order__le__less__subst1,axiom,
    ! [A: set_a,F: nat > set_a,B: nat,C: nat] :
      ( ( ord_less_eq_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_106_order__le__less__subst1,axiom,
    ! [A: set_set_a,F: nat > set_set_a,B: nat,C: nat] :
      ( ( ord_le3724670747650509150_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_nat @ X4 @ Y3 )
             => ( ord_less_set_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_107_order__less__le__trans,axiom,
    ! [X2: nat,Y: nat,Z: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z )
       => ( ord_less_nat @ X2 @ Z ) ) ) ).

% order_less_le_trans
thf(fact_108_order__less__le__trans,axiom,
    ! [X2: set_a,Y: set_a,Z: set_a] :
      ( ( ord_less_set_a @ X2 @ Y )
     => ( ( ord_less_eq_set_a @ Y @ Z )
       => ( ord_less_set_a @ X2 @ Z ) ) ) ).

% order_less_le_trans
thf(fact_109_order__less__le__trans,axiom,
    ! [X2: set_set_a,Y: set_set_a,Z: set_set_a] :
      ( ( ord_less_set_set_a @ X2 @ Y )
     => ( ( ord_le3724670747650509150_set_a @ Y @ Z )
       => ( ord_less_set_set_a @ X2 @ Z ) ) ) ).

% order_less_le_trans
thf(fact_110_order__le__less__trans,axiom,
    ! [X2: nat,Y: nat,Z: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
     => ( ( ord_less_nat @ Y @ Z )
       => ( ord_less_nat @ X2 @ Z ) ) ) ).

% order_le_less_trans
thf(fact_111_order__le__less__trans,axiom,
    ! [X2: set_a,Y: set_a,Z: set_a] :
      ( ( ord_less_eq_set_a @ X2 @ Y )
     => ( ( ord_less_set_a @ Y @ Z )
       => ( ord_less_set_a @ X2 @ Z ) ) ) ).

% order_le_less_trans
thf(fact_112_order__le__less__trans,axiom,
    ! [X2: set_set_a,Y: set_set_a,Z: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ X2 @ Y )
     => ( ( ord_less_set_set_a @ Y @ Z )
       => ( ord_less_set_set_a @ X2 @ Z ) ) ) ).

% order_le_less_trans
thf(fact_113_order__neq__le__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( A != B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_114_order__neq__le__trans,axiom,
    ! [A: set_a,B: set_a] :
      ( ( A != B )
     => ( ( ord_less_eq_set_a @ A @ B )
       => ( ord_less_set_a @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_115_order__neq__le__trans,axiom,
    ! [A: set_set_a,B: set_set_a] :
      ( ( A != B )
     => ( ( ord_le3724670747650509150_set_a @ A @ B )
       => ( ord_less_set_set_a @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_116_order__le__neq__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_117_order__le__neq__trans,axiom,
    ! [A: set_a,B: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( A != B )
       => ( ord_less_set_a @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_118_order__le__neq__trans,axiom,
    ! [A: set_set_a,B: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( A != B )
       => ( ord_less_set_set_a @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_119_order__less__imp__le,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ord_less_eq_nat @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_120_order__less__imp__le,axiom,
    ! [X2: set_a,Y: set_a] :
      ( ( ord_less_set_a @ X2 @ Y )
     => ( ord_less_eq_set_a @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_121_order__less__imp__le,axiom,
    ! [X2: set_set_a,Y: set_set_a] :
      ( ( ord_less_set_set_a @ X2 @ Y )
     => ( ord_le3724670747650509150_set_a @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_122_linorder__not__less,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X2 @ Y ) )
      = ( ord_less_eq_nat @ Y @ X2 ) ) ).

% linorder_not_less
thf(fact_123_linorder__not__le,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ~ ( ord_less_eq_nat @ X2 @ Y ) )
      = ( ord_less_nat @ Y @ X2 ) ) ).

% linorder_not_le
thf(fact_124_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X3: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y4 )
          & ( X3 != Y4 ) ) ) ) ).

% order_less_le
thf(fact_125_order__less__le,axiom,
    ( ord_less_set_a
    = ( ^ [X3: set_a,Y4: set_a] :
          ( ( ord_less_eq_set_a @ X3 @ Y4 )
          & ( X3 != Y4 ) ) ) ) ).

% order_less_le
thf(fact_126_order__less__le,axiom,
    ( ord_less_set_set_a
    = ( ^ [X3: set_set_a,Y4: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ X3 @ Y4 )
          & ( X3 != Y4 ) ) ) ) ).

% order_less_le
thf(fact_127_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X3: nat,Y4: nat] :
          ( ( ord_less_nat @ X3 @ Y4 )
          | ( X3 = Y4 ) ) ) ) ).

% order_le_less
thf(fact_128_order__le__less,axiom,
    ( ord_less_eq_set_a
    = ( ^ [X3: set_a,Y4: set_a] :
          ( ( ord_less_set_a @ X3 @ Y4 )
          | ( X3 = Y4 ) ) ) ) ).

% order_le_less
thf(fact_129_order__le__less,axiom,
    ( ord_le3724670747650509150_set_a
    = ( ^ [X3: set_set_a,Y4: set_set_a] :
          ( ( ord_less_set_set_a @ X3 @ Y4 )
          | ( X3 = Y4 ) ) ) ) ).

% order_le_less
thf(fact_130_dual__order_Ostrict__implies__order,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ord_less_eq_nat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_131_dual__order_Ostrict__implies__order,axiom,
    ! [B: set_a,A: set_a] :
      ( ( ord_less_set_a @ B @ A )
     => ( ord_less_eq_set_a @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_132_dual__order_Ostrict__implies__order,axiom,
    ! [B: set_set_a,A: set_set_a] :
      ( ( ord_less_set_set_a @ B @ A )
     => ( ord_le3724670747650509150_set_a @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_133_order_Ostrict__implies__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_134_order_Ostrict__implies__order,axiom,
    ! [A: set_a,B: set_a] :
      ( ( ord_less_set_a @ A @ B )
     => ( ord_less_eq_set_a @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_135_order_Ostrict__implies__order,axiom,
    ! [A: set_set_a,B: set_set_a] :
      ( ( ord_less_set_set_a @ A @ B )
     => ( ord_le3724670747650509150_set_a @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_136_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B3: nat,A4: nat] :
          ( ( ord_less_eq_nat @ B3 @ A4 )
          & ~ ( ord_less_eq_nat @ A4 @ B3 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_137_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_set_a
    = ( ^ [B3: set_a,A4: set_a] :
          ( ( ord_less_eq_set_a @ B3 @ A4 )
          & ~ ( ord_less_eq_set_a @ A4 @ B3 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_138_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_set_set_a
    = ( ^ [B3: set_set_a,A4: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ B3 @ A4 )
          & ~ ( ord_le3724670747650509150_set_a @ A4 @ B3 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_139_dual__order_Ostrict__trans2,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_140_dual__order_Ostrict__trans2,axiom,
    ! [B: set_a,A: set_a,C: set_a] :
      ( ( ord_less_set_a @ B @ A )
     => ( ( ord_less_eq_set_a @ C @ B )
       => ( ord_less_set_a @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_141_dual__order_Ostrict__trans2,axiom,
    ! [B: set_set_a,A: set_set_a,C: set_set_a] :
      ( ( ord_less_set_set_a @ B @ A )
     => ( ( ord_le3724670747650509150_set_a @ C @ B )
       => ( ord_less_set_set_a @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_142_dual__order_Ostrict__trans1,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_143_dual__order_Ostrict__trans1,axiom,
    ! [B: set_a,A: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ B @ A )
     => ( ( ord_less_set_a @ C @ B )
       => ( ord_less_set_a @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_144_dual__order_Ostrict__trans1,axiom,
    ! [B: set_set_a,A: set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ B @ A )
     => ( ( ord_less_set_set_a @ C @ B )
       => ( ord_less_set_set_a @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_145_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B3: nat,A4: nat] :
          ( ( ord_less_eq_nat @ B3 @ A4 )
          & ( A4 != B3 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_146_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_set_a
    = ( ^ [B3: set_a,A4: set_a] :
          ( ( ord_less_eq_set_a @ B3 @ A4 )
          & ( A4 != B3 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_147_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_set_set_a
    = ( ^ [B3: set_set_a,A4: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ B3 @ A4 )
          & ( A4 != B3 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_148_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B3: nat,A4: nat] :
          ( ( ord_less_nat @ B3 @ A4 )
          | ( A4 = B3 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_149_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_set_a
    = ( ^ [B3: set_a,A4: set_a] :
          ( ( ord_less_set_a @ B3 @ A4 )
          | ( A4 = B3 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_150_dual__order_Oorder__iff__strict,axiom,
    ( ord_le3724670747650509150_set_a
    = ( ^ [B3: set_set_a,A4: set_set_a] :
          ( ( ord_less_set_set_a @ B3 @ A4 )
          | ( A4 = B3 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_151_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A4: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A4 @ B3 )
          & ~ ( ord_less_eq_nat @ B3 @ A4 ) ) ) ) ).

% order.strict_iff_not
thf(fact_152_order_Ostrict__iff__not,axiom,
    ( ord_less_set_a
    = ( ^ [A4: set_a,B3: set_a] :
          ( ( ord_less_eq_set_a @ A4 @ B3 )
          & ~ ( ord_less_eq_set_a @ B3 @ A4 ) ) ) ) ).

% order.strict_iff_not
thf(fact_153_order_Ostrict__iff__not,axiom,
    ( ord_less_set_set_a
    = ( ^ [A4: set_set_a,B3: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ A4 @ B3 )
          & ~ ( ord_le3724670747650509150_set_a @ B3 @ A4 ) ) ) ) ).

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

% order.strict_trans2
thf(fact_155_order_Ostrict__trans2,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( ord_less_set_a @ A @ B )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ord_less_set_a @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_156_order_Ostrict__trans2,axiom,
    ! [A: set_set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_less_set_set_a @ A @ B )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ord_less_set_set_a @ A @ C ) ) ) ).

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

% order.strict_trans1
thf(fact_158_order_Ostrict__trans1,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_set_a @ B @ C )
       => ( ord_less_set_a @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_159_order_Ostrict__trans1,axiom,
    ! [A: set_set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_less_set_set_a @ B @ C )
       => ( ord_less_set_set_a @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_160_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A4: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A4 @ B3 )
          & ( A4 != B3 ) ) ) ) ).

% order.strict_iff_order
thf(fact_161_order_Ostrict__iff__order,axiom,
    ( ord_less_set_a
    = ( ^ [A4: set_a,B3: set_a] :
          ( ( ord_less_eq_set_a @ A4 @ B3 )
          & ( A4 != B3 ) ) ) ) ).

% order.strict_iff_order
thf(fact_162_order_Ostrict__iff__order,axiom,
    ( ord_less_set_set_a
    = ( ^ [A4: set_set_a,B3: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ A4 @ B3 )
          & ( A4 != B3 ) ) ) ) ).

% order.strict_iff_order
thf(fact_163_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A4: nat,B3: nat] :
          ( ( ord_less_nat @ A4 @ B3 )
          | ( A4 = B3 ) ) ) ) ).

% order.order_iff_strict
thf(fact_164_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_set_a
    = ( ^ [A4: set_a,B3: set_a] :
          ( ( ord_less_set_a @ A4 @ B3 )
          | ( A4 = B3 ) ) ) ) ).

% order.order_iff_strict
thf(fact_165_order_Oorder__iff__strict,axiom,
    ( ord_le3724670747650509150_set_a
    = ( ^ [A4: set_set_a,B3: set_set_a] :
          ( ( ord_less_set_set_a @ A4 @ B3 )
          | ( A4 = B3 ) ) ) ) ).

% order.order_iff_strict
thf(fact_166_not__le__imp__less,axiom,
    ! [Y: nat,X2: nat] :
      ( ~ ( ord_less_eq_nat @ Y @ X2 )
     => ( ord_less_nat @ X2 @ Y ) ) ).

% not_le_imp_less
thf(fact_167_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X3: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y4 )
          & ~ ( ord_less_eq_nat @ Y4 @ X3 ) ) ) ) ).

% less_le_not_le
thf(fact_168_less__le__not__le,axiom,
    ( ord_less_set_a
    = ( ^ [X3: set_a,Y4: set_a] :
          ( ( ord_less_eq_set_a @ X3 @ Y4 )
          & ~ ( ord_less_eq_set_a @ Y4 @ X3 ) ) ) ) ).

% less_le_not_le
thf(fact_169_less__le__not__le,axiom,
    ( ord_less_set_set_a
    = ( ^ [X3: set_set_a,Y4: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ X3 @ Y4 )
          & ~ ( ord_le3724670747650509150_set_a @ Y4 @ X3 ) ) ) ) ).

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

% antisym_conv2
thf(fact_171_antisym__conv2,axiom,
    ! [X2: set_a,Y: set_a] :
      ( ( ord_less_eq_set_a @ X2 @ Y )
     => ( ( ~ ( ord_less_set_a @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_172_antisym__conv2,axiom,
    ! [X2: set_set_a,Y: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ X2 @ Y )
     => ( ( ~ ( ord_less_set_set_a @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_173_antisym__conv1,axiom,
    ! [X2: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_eq_nat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_174_antisym__conv1,axiom,
    ! [X2: set_a,Y: set_a] :
      ( ~ ( ord_less_set_a @ X2 @ Y )
     => ( ( ord_less_eq_set_a @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_175_antisym__conv1,axiom,
    ! [X2: set_set_a,Y: set_set_a] :
      ( ~ ( ord_less_set_set_a @ X2 @ Y )
     => ( ( ord_le3724670747650509150_set_a @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

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

% nless_le
thf(fact_177_nless__le,axiom,
    ! [A: set_a,B: set_a] :
      ( ( ~ ( ord_less_set_a @ A @ B ) )
      = ( ~ ( ord_less_eq_set_a @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_178_nless__le,axiom,
    ! [A: set_set_a,B: set_set_a] :
      ( ( ~ ( ord_less_set_set_a @ A @ B ) )
      = ( ~ ( ord_le3724670747650509150_set_a @ A @ B )
        | ( A = B ) ) ) ).

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

% leI
thf(fact_180_leD,axiom,
    ! [Y: nat,X2: nat] :
      ( ( ord_less_eq_nat @ Y @ X2 )
     => ~ ( ord_less_nat @ X2 @ Y ) ) ).

% leD
thf(fact_181_leD,axiom,
    ! [Y: set_a,X2: set_a] :
      ( ( ord_less_eq_set_a @ Y @ X2 )
     => ~ ( ord_less_set_a @ X2 @ Y ) ) ).

% leD
thf(fact_182_leD,axiom,
    ! [Y: set_set_a,X2: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ Y @ X2 )
     => ~ ( ord_less_set_set_a @ X2 @ Y ) ) ).

% leD
thf(fact_183_ulgraph_Oconnecting__path__alt__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_path_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( ( connecting_walk_a @ Vertices @ Edges @ U @ V @ Xs )
          & ( undire3562951555376170320path_a @ Vertices @ Edges @ Xs ) ) ) ) ).

% ulgraph.connecting_path_alt_def
thf(fact_184_ulgraph_Oconnecting__path__str__gen,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connec3015921205769380621_str_a @ Vertices @ Edges @ U @ V @ Xs )
       => ( connecting_path_a @ Vertices @ Edges @ U @ V @ Xs ) ) ) ).

% ulgraph.connecting_path_str_gen
thf(fact_185_ulgraph_Oconnecting__path__walk,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_path_a @ Vertices @ Edges @ U @ V @ Xs )
       => ( connecting_walk_a @ Vertices @ Edges @ U @ V @ Xs ) ) ) ).

% ulgraph.connecting_path_walk
thf(fact_186_ulgraph_Oconnecting__path__length__bound,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( U != V )
       => ( ( connecting_path_a @ Vertices @ Edges @ U @ V @ P )
         => ( ord_less_eq_nat @ one_one_nat @ ( undire8849074589633906640ngth_a @ P ) ) ) ) ) ).

% ulgraph.connecting_path_length_bound
thf(fact_187_ulgraph_Oconnecting__walk_Ocong,axiom,
    connecting_walk_a = connecting_walk_a ).

% ulgraph.connecting_walk.cong
thf(fact_188_order__antisym__conv,axiom,
    ! [Y: nat,X2: nat] :
      ( ( ord_less_eq_nat @ Y @ X2 )
     => ( ( ord_less_eq_nat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% order_antisym_conv
thf(fact_189_order__antisym__conv,axiom,
    ! [Y: set_a,X2: set_a] :
      ( ( ord_less_eq_set_a @ Y @ X2 )
     => ( ( ord_less_eq_set_a @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% order_antisym_conv
thf(fact_190_order__antisym__conv,axiom,
    ! [Y: set_set_a,X2: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ Y @ X2 )
     => ( ( ord_le3724670747650509150_set_a @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

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

% linorder_le_cases
thf(fact_192_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_193_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > set_a,C: set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_194_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > set_set_a,C: set_set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_195_ord__le__eq__subst,axiom,
    ! [A: set_a,B: set_a,F: set_a > nat,C: nat] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_196_ord__le__eq__subst,axiom,
    ! [A: set_a,B: set_a,F: set_a > set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_197_ord__le__eq__subst,axiom,
    ! [A: set_a,B: set_a,F: set_a > set_set_a,C: set_set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_198_ord__le__eq__subst,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > nat,C: nat] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_199_ord__le__eq__subst,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > set_a,C: set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_200_ord__le__eq__subst,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_201_ord__eq__le__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_202_ord__eq__le__subst,axiom,
    ! [A: set_a,F: nat > set_a,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_203_ord__eq__le__subst,axiom,
    ! [A: set_set_a,F: nat > set_set_a,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_204_ord__eq__le__subst,axiom,
    ! [A: nat,F: set_a > nat,B: set_a,C: set_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_205_ord__eq__le__subst,axiom,
    ! [A: set_a,F: set_a > set_a,B: set_a,C: set_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_206_ord__eq__le__subst,axiom,
    ! [A: set_set_a,F: set_a > set_set_a,B: set_a,C: set_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_207_ord__eq__le__subst,axiom,
    ! [A: nat,F: set_set_a > nat,B: set_set_a,C: set_set_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_208_ord__eq__le__subst,axiom,
    ! [A: set_a,F: set_set_a > set_a,B: set_set_a,C: set_set_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_209_ord__eq__le__subst,axiom,
    ! [A: set_set_a,F: set_set_a > set_set_a,B: set_set_a,C: set_set_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ A @ ( F @ C ) ) ) ) ) ).

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

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

% order_eq_refl
thf(fact_212_order__eq__refl,axiom,
    ! [X2: set_a,Y: set_a] :
      ( ( X2 = Y )
     => ( ord_less_eq_set_a @ X2 @ Y ) ) ).

% order_eq_refl
thf(fact_213_order__eq__refl,axiom,
    ! [X2: set_set_a,Y: set_set_a] :
      ( ( X2 = Y )
     => ( ord_le3724670747650509150_set_a @ X2 @ Y ) ) ).

% order_eq_refl
thf(fact_214_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_215_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_a,C: set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_set_a @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_216_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_set_a,C: set_set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_le3724670747650509150_set_a @ ( F @ B ) @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_217_order__subst2,axiom,
    ! [A: set_a,B: set_a,F: set_a > nat,C: nat] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_218_order__subst2,axiom,
    ! [A: set_a,B: set_a,F: set_a > set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_eq_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_219_order__subst2,axiom,
    ! [A: set_a,B: set_a,F: set_a > set_set_a,C: set_set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_le3724670747650509150_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_220_order__subst2,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > nat,C: nat] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_221_order__subst2,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > set_a,C: set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_less_eq_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_222_order__subst2,axiom,
    ! [A: set_set_a,B: set_set_a,F: set_set_a > set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_le3724670747650509150_set_a @ ( F @ B ) @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_223_order__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_224_order__subst1,axiom,
    ! [A: nat,F: set_a > nat,B: set_a,C: set_a] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_225_order__subst1,axiom,
    ! [A: nat,F: set_set_a > nat,B: set_set_a,C: set_set_a] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_226_order__subst1,axiom,
    ! [A: set_a,F: nat > set_a,B: nat,C: nat] :
      ( ( ord_less_eq_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_227_order__subst1,axiom,
    ! [A: set_a,F: set_a > set_a,B: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_228_order__subst1,axiom,
    ! [A: set_a,F: set_set_a > set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_less_eq_set_a @ A @ ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_less_eq_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_229_order__subst1,axiom,
    ! [A: set_set_a,F: nat > set_set_a,B: nat,C: nat] :
      ( ( ord_le3724670747650509150_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X4: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_230_order__subst1,axiom,
    ! [A: set_set_a,F: set_a > set_set_a,B: set_a,C: set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X4: set_a,Y3: set_a] :
              ( ( ord_less_eq_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_231_order__subst1,axiom,
    ! [A: set_set_a,F: set_set_a > set_set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ ( F @ B ) )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ! [X4: set_set_a,Y3: set_set_a] :
              ( ( ord_le3724670747650509150_set_a @ X4 @ Y3 )
             => ( ord_le3724670747650509150_set_a @ ( F @ X4 ) @ ( F @ Y3 ) ) )
         => ( ord_le3724670747650509150_set_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_232_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y5: nat,Z2: nat] : ( Y5 = Z2 ) )
    = ( ^ [A4: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A4 @ B3 )
          & ( ord_less_eq_nat @ B3 @ A4 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_233_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y5: set_a,Z2: set_a] : ( Y5 = Z2 ) )
    = ( ^ [A4: set_a,B3: set_a] :
          ( ( ord_less_eq_set_a @ A4 @ B3 )
          & ( ord_less_eq_set_a @ B3 @ A4 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_234_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y5: set_set_a,Z2: set_set_a] : ( Y5 = Z2 ) )
    = ( ^ [A4: set_set_a,B3: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ A4 @ B3 )
          & ( ord_le3724670747650509150_set_a @ B3 @ A4 ) ) ) ) ).

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

% antisym
thf(fact_236_antisym,axiom,
    ! [A: set_a,B: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_eq_set_a @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_237_antisym,axiom,
    ! [A: set_set_a,B: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_le3724670747650509150_set_a @ B @ A )
       => ( A = B ) ) ) ).

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

% dual_order.trans
thf(fact_239_dual__order_Otrans,axiom,
    ! [B: set_a,A: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ B @ A )
     => ( ( ord_less_eq_set_a @ C @ B )
       => ( ord_less_eq_set_a @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_240_dual__order_Otrans,axiom,
    ! [B: set_set_a,A: set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ B @ A )
     => ( ( ord_le3724670747650509150_set_a @ C @ B )
       => ( ord_le3724670747650509150_set_a @ C @ A ) ) ) ).

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

% dual_order.antisym
thf(fact_242_dual__order_Oantisym,axiom,
    ! [B: set_a,A: set_a] :
      ( ( ord_less_eq_set_a @ B @ A )
     => ( ( ord_less_eq_set_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_243_dual__order_Oantisym,axiom,
    ! [B: set_set_a,A: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ B @ A )
     => ( ( ord_le3724670747650509150_set_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_244_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y5: nat,Z2: nat] : ( Y5 = Z2 ) )
    = ( ^ [A4: nat,B3: nat] :
          ( ( ord_less_eq_nat @ B3 @ A4 )
          & ( ord_less_eq_nat @ A4 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_245_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y5: set_a,Z2: set_a] : ( Y5 = Z2 ) )
    = ( ^ [A4: set_a,B3: set_a] :
          ( ( ord_less_eq_set_a @ B3 @ A4 )
          & ( ord_less_eq_set_a @ A4 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_246_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y5: set_set_a,Z2: set_set_a] : ( Y5 = Z2 ) )
    = ( ^ [A4: set_set_a,B3: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ B3 @ A4 )
          & ( ord_le3724670747650509150_set_a @ A4 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_247_linorder__wlog,axiom,
    ! [P3: nat > nat > $o,A: nat,B: nat] :
      ( ! [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A3 @ B2 )
         => ( P3 @ A3 @ B2 ) )
     => ( ! [A3: nat,B2: nat] :
            ( ( P3 @ B2 @ A3 )
           => ( P3 @ A3 @ B2 ) )
       => ( P3 @ A @ B ) ) ) ).

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

% order_trans
thf(fact_249_order__trans,axiom,
    ! [X2: set_a,Y: set_a,Z: set_a] :
      ( ( ord_less_eq_set_a @ X2 @ Y )
     => ( ( ord_less_eq_set_a @ Y @ Z )
       => ( ord_less_eq_set_a @ X2 @ Z ) ) ) ).

% order_trans
thf(fact_250_order__trans,axiom,
    ! [X2: set_set_a,Y: set_set_a,Z: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ X2 @ Y )
     => ( ( ord_le3724670747650509150_set_a @ Y @ Z )
       => ( ord_le3724670747650509150_set_a @ X2 @ Z ) ) ) ).

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

% order.trans
thf(fact_252_order_Otrans,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ord_less_eq_set_a @ A @ C ) ) ) ).

% order.trans
thf(fact_253_order_Otrans,axiom,
    ! [A: set_set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ord_le3724670747650509150_set_a @ A @ C ) ) ) ).

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

% order_antisym
thf(fact_255_order__antisym,axiom,
    ! [X2: set_a,Y: set_a] :
      ( ( ord_less_eq_set_a @ X2 @ Y )
     => ( ( ord_less_eq_set_a @ Y @ X2 )
       => ( X2 = Y ) ) ) ).

% order_antisym
thf(fact_256_order__antisym,axiom,
    ! [X2: set_set_a,Y: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ X2 @ Y )
     => ( ( ord_le3724670747650509150_set_a @ Y @ X2 )
       => ( X2 = Y ) ) ) ).

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

% ord_le_eq_trans
thf(fact_258_ord__le__eq__trans,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_set_a @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_259_ord__le__eq__trans,axiom,
    ! [A: set_set_a,B: set_set_a,C: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A @ B )
     => ( ( B = C )
       => ( ord_le3724670747650509150_set_a @ A @ C ) ) ) ).

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

% ord_eq_le_trans
thf(fact_261_ord__eq__le__trans,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( A = B )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ord_less_eq_set_a @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_262_ord__eq__le__trans,axiom,
    ! [A: set_set_a,B: set_set_a,C: set_set_a] :
      ( ( A = B )
     => ( ( ord_le3724670747650509150_set_a @ B @ C )
       => ( ord_le3724670747650509150_set_a @ A @ C ) ) ) ).

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

% order_class.order_eq_iff
thf(fact_264_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y5: set_a,Z2: set_a] : ( Y5 = Z2 ) )
    = ( ^ [X3: set_a,Y4: set_a] :
          ( ( ord_less_eq_set_a @ X3 @ Y4 )
          & ( ord_less_eq_set_a @ Y4 @ X3 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_265_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y5: set_set_a,Z2: set_set_a] : ( Y5 = Z2 ) )
    = ( ^ [X3: set_set_a,Y4: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ X3 @ Y4 )
          & ( ord_le3724670747650509150_set_a @ Y4 @ X3 ) ) ) ) ).

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

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

% nle_le
thf(fact_268_is__open__walk__rev,axiom,
    ! [Xs: list_a] :
      ( ( undire2427028224930250914walk_a @ vertices @ edges @ Xs )
      = ( undire2427028224930250914walk_a @ vertices @ edges @ ( rev_a @ Xs ) ) ) ).

% is_open_walk_rev
thf(fact_269_is__closed__walk__rev,axiom,
    ! [Xs: list_a] :
      ( ( undire3370724456595283424walk_a @ vertices @ edges @ Xs )
      = ( undire3370724456595283424walk_a @ vertices @ edges @ ( rev_a @ Xs ) ) ) ).

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

% is_isolated_vertex_no_loop
thf(fact_271_is__isolated__vertex__def,axiom,
    ! [V: a] :
      ( ( undire8931668460104145173rtex_a @ vertices @ edges @ V )
      = ( ( member_a @ V @ vertices )
        & ! [X3: a] :
            ( ( member_a @ X3 @ vertices )
           => ~ ( undire397441198561214472_adj_a @ edges @ X3 @ V ) ) ) ) ).

% is_isolated_vertex_def
thf(fact_272_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_273_connecting__path__gen__str,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_path_a @ vertices @ edges @ U @ V @ Xs )
     => ( ~ ( undire2407311113669455967ycle_a @ vertices @ edges @ Xs )
       => ( ( ord_less_nat @ zero_zero_nat @ ( undire8849074589633906640ngth_a @ Xs ) )
         => ( connec3015921205769380621_str_a @ vertices @ edges @ U @ V @ Xs ) ) ) ) ).

% connecting_path_gen_str
thf(fact_274_is__subgraphI,axiom,
    ! [V3: set_set_a,V4: set_set_a,E3: set_set_set_a,E4: set_set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ V3 @ V4 )
     => ( ( ord_le5722252365846178494_set_a @ E3 @ E4 )
       => ( ( undire7159349782766787846_set_a @ V3 @ E3 )
         => ( ( undire7159349782766787846_set_a @ V4 @ E4 )
           => ( undire1186139521737116585_set_a @ V3 @ E3 @ V4 @ E4 ) ) ) ) ) ).

% is_subgraphI
thf(fact_275_is__subgraphI,axiom,
    ! [V3: set_a,V4: set_a,E3: set_set_a,E4: set_set_a] :
      ( ( ord_less_eq_set_a @ V3 @ V4 )
     => ( ( ord_le3724670747650509150_set_a @ E3 @ E4 )
       => ( ( undire2554140024507503526stem_a @ V3 @ E3 )
         => ( ( undire2554140024507503526stem_a @ V4 @ E4 )
           => ( undire7103218114511261257raph_a @ V3 @ E3 @ V4 @ E4 ) ) ) ) ) ).

% is_subgraphI
thf(fact_276_less__one,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ N2 @ one_one_nat )
      = ( N2 = zero_zero_nat ) ) ).

% less_one
thf(fact_277_induced__is__subgraph,axiom,
    ! [V3: set_a] :
      ( ( ord_less_eq_set_a @ V3 @ vertices )
     => ( undire7103218114511261257raph_a @ V3 @ ( undire7777452895879145676dges_a @ edges @ V3 ) @ vertices @ edges ) ) ).

% induced_is_subgraph
thf(fact_278_is__path__rev,axiom,
    ! [Xs: list_a] :
      ( ( undire427332500224447920path_a @ vertices @ edges @ Xs )
      = ( undire427332500224447920path_a @ vertices @ edges @ ( rev_a @ Xs ) ) ) ).

% is_path_rev
thf(fact_279_is__path__gen__path,axiom,
    ! [P: list_a] :
      ( ( undire427332500224447920path_a @ vertices @ edges @ P )
     => ( undire3562951555376170320path_a @ vertices @ edges @ P ) ) ).

% is_path_gen_path
thf(fact_280_induced__is__graph__sys,axiom,
    ! [V3: set_a] : ( undire2554140024507503526stem_a @ V3 @ ( undire7777452895879145676dges_a @ edges @ V3 ) ) ).

% induced_is_graph_sys
thf(fact_281_induced__edges__ss,axiom,
    ! [V3: set_a] :
      ( ( ord_less_eq_set_a @ V3 @ vertices )
     => ( ord_le3724670747650509150_set_a @ ( undire7777452895879145676dges_a @ edges @ V3 ) @ edges ) ) ).

% induced_edges_ss
thf(fact_282_is__gen__path__cycle,axiom,
    ! [P: list_a] :
      ( ( undire2407311113669455967ycle_a @ vertices @ edges @ P )
     => ( undire3562951555376170320path_a @ vertices @ edges @ P ) ) ).

% is_gen_path_cycle
thf(fact_283_is__cycle__rev,axiom,
    ! [Xs: list_a] :
      ( ( undire2407311113669455967ycle_a @ vertices @ edges @ Xs )
      = ( undire2407311113669455967ycle_a @ vertices @ edges @ ( rev_a @ Xs ) ) ) ).

% is_cycle_rev
thf(fact_284_less__nat__zero__code,axiom,
    ! [N2: nat] :
      ~ ( ord_less_nat @ N2 @ zero_zero_nat ) ).

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

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

% bot_nat_0.extremum
thf(fact_288_le0,axiom,
    ! [N2: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N2 ) ).

% le0
thf(fact_289_is__gen__path__path,axiom,
    ! [P: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P )
     => ( ( ord_less_nat @ zero_zero_nat @ ( undire8849074589633906640ngth_a @ P ) )
       => ( ~ ( undire2407311113669455967ycle_a @ vertices @ edges @ P )
         => ( undire427332500224447920path_a @ vertices @ edges @ P ) ) ) ) ).

% is_gen_path_path
thf(fact_290_ulgraph_Ois__isolated__vertex_Ocong,axiom,
    undire8931668460104145173rtex_a = undire8931668460104145173rtex_a ).

% ulgraph.is_isolated_vertex.cong
thf(fact_291_graph__system_Oinduced__edges_Ocong,axiom,
    undire7777452895879145676dges_a = undire7777452895879145676dges_a ).

% graph_system.induced_edges.cong
thf(fact_292_graph__system_Oinduced__is__graph__sys,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V3: set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( undire2554140024507503526stem_a @ V3 @ ( undire7777452895879145676dges_a @ Edges @ V3 ) ) ) ).

% graph_system.induced_is_graph_sys
thf(fact_293_graph__system_Oinduced__edges__ss,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,V3: set_set_a] :
      ( ( undire7159349782766787846_set_a @ Vertices @ Edges )
     => ( ( ord_le3724670747650509150_set_a @ V3 @ Vertices )
       => ( ord_le5722252365846178494_set_a @ ( undire7854589003810675244_set_a @ Edges @ V3 ) @ Edges ) ) ) ).

% graph_system.induced_edges_ss
thf(fact_294_graph__system_Oinduced__edges__ss,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V3: set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( ( ord_less_eq_set_a @ V3 @ Vertices )
       => ( ord_le3724670747650509150_set_a @ ( undire7777452895879145676dges_a @ Edges @ V3 ) @ Edges ) ) ) ).

% graph_system.induced_edges_ss
thf(fact_295_ulgraph_Ois__isolated__vertex__def,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,V: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire6879241558604981877_set_a @ Vertices @ Edges @ V )
        = ( ( member_set_a @ V @ Vertices )
          & ! [X3: set_a] :
              ( ( member_set_a @ X3 @ Vertices )
             => ~ ( undire3510646817838285160_set_a @ Edges @ X3 @ V ) ) ) ) ) ).

% ulgraph.is_isolated_vertex_def
thf(fact_296_ulgraph_Ois__isolated__vertex__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire8931668460104145173rtex_a @ Vertices @ Edges @ V )
        = ( ( member_a @ V @ Vertices )
          & ! [X3: a] :
              ( ( member_a @ X3 @ Vertices )
             => ~ ( undire397441198561214472_adj_a @ Edges @ X3 @ V ) ) ) ) ) ).

% ulgraph.is_isolated_vertex_def
thf(fact_297_ulgraph_Ois__isolated__vertex__edge,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V: a,E: set_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire8931668460104145173rtex_a @ Vertices @ Edges @ V )
       => ( ( member_set_a @ E @ Edges )
         => ~ ( undire1521409233611534436dent_a @ V @ E ) ) ) ) ).

% ulgraph.is_isolated_vertex_edge
thf(fact_298_ulgraph_Ois__isolated__vertex__no__loop,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire8931668460104145173rtex_a @ Vertices @ Edges @ V )
       => ~ ( undire3617971648856834880loop_a @ Edges @ V ) ) ) ).

% ulgraph.is_isolated_vertex_no_loop
thf(fact_299_graph__system_Oinduced__is__subgraph,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,V3: set_set_a] :
      ( ( undire7159349782766787846_set_a @ Vertices @ Edges )
     => ( ( ord_le3724670747650509150_set_a @ V3 @ Vertices )
       => ( undire1186139521737116585_set_a @ V3 @ ( undire7854589003810675244_set_a @ Edges @ V3 ) @ Vertices @ Edges ) ) ) ).

% graph_system.induced_is_subgraph
thf(fact_300_graph__system_Oinduced__is__subgraph,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V3: set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( ( ord_less_eq_set_a @ V3 @ Vertices )
       => ( undire7103218114511261257raph_a @ V3 @ ( undire7777452895879145676dges_a @ Edges @ V3 ) @ Vertices @ Edges ) ) ) ).

% graph_system.induced_is_subgraph
thf(fact_301_linorder__neqE__nat,axiom,
    ! [X2: nat,Y: nat] :
      ( ( X2 != Y )
     => ( ~ ( ord_less_nat @ X2 @ Y )
       => ( ord_less_nat @ Y @ X2 ) ) ) ).

% linorder_neqE_nat
thf(fact_302_infinite__descent,axiom,
    ! [P3: nat > $o,N2: nat] :
      ( ! [N3: nat] :
          ( ~ ( P3 @ N3 )
         => ? [M2: nat] :
              ( ( ord_less_nat @ M2 @ N3 )
              & ~ ( P3 @ M2 ) ) )
     => ( P3 @ N2 ) ) ).

% infinite_descent
thf(fact_303_nat__less__induct,axiom,
    ! [P3: nat > $o,N2: nat] :
      ( ! [N3: nat] :
          ( ! [M2: nat] :
              ( ( ord_less_nat @ M2 @ N3 )
             => ( P3 @ M2 ) )
         => ( P3 @ N3 ) )
     => ( P3 @ N2 ) ) ).

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

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

% less_not_refl3
thf(fact_306_less__not__refl2,axiom,
    ! [N2: nat,M3: nat] :
      ( ( ord_less_nat @ N2 @ M3 )
     => ( M3 != N2 ) ) ).

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

% less_not_refl
thf(fact_308_nat__neq__iff,axiom,
    ! [M3: nat,N2: nat] :
      ( ( M3 != N2 )
      = ( ( ord_less_nat @ M3 @ N2 )
        | ( ord_less_nat @ N2 @ M3 ) ) ) ).

% nat_neq_iff
thf(fact_309_le__refl,axiom,
    ! [N2: nat] : ( ord_less_eq_nat @ N2 @ N2 ) ).

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

% le_trans
thf(fact_311_eq__imp__le,axiom,
    ! [M3: nat,N2: nat] :
      ( ( M3 = N2 )
     => ( ord_less_eq_nat @ M3 @ N2 ) ) ).

% eq_imp_le
thf(fact_312_le__antisym,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ( ord_less_eq_nat @ N2 @ M3 )
       => ( M3 = N2 ) ) ) ).

% le_antisym
thf(fact_313_nat__le__linear,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
      | ( ord_less_eq_nat @ N2 @ M3 ) ) ).

% nat_le_linear
thf(fact_314_Nat_Oex__has__greatest__nat,axiom,
    ! [P3: nat > $o,K: nat,B: nat] :
      ( ( P3 @ K )
     => ( ! [Y3: nat] :
            ( ( P3 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ? [X4: nat] :
            ( ( P3 @ X4 )
            & ! [Y2: nat] :
                ( ( P3 @ Y2 )
               => ( ord_less_eq_nat @ Y2 @ X4 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_315_subgraph_Osubgraph__antisym,axiom,
    ! [V_H: set_a,E_H: set_set_a,V_G: set_a,E_G: set_set_a,V3: set_a,E3: set_set_a,V4: set_a,E4: set_set_a] :
      ( ( undire7103218114511261257raph_a @ V_H @ E_H @ V_G @ E_G )
     => ( ( undire7103218114511261257raph_a @ V3 @ E3 @ V4 @ E4 )
       => ( ( undire7103218114511261257raph_a @ V4 @ E4 @ V3 @ E3 )
         => ( ( V4 = V3 )
            & ( E4 = E3 ) ) ) ) ) ).

% subgraph.subgraph_antisym
thf(fact_316_subgraph_Oedges__ss,axiom,
    ! [V_H: set_a,E_H: set_set_a,V_G: set_a,E_G: set_set_a] :
      ( ( undire7103218114511261257raph_a @ V_H @ E_H @ V_G @ E_G )
     => ( ord_le3724670747650509150_set_a @ E_H @ E_G ) ) ).

% subgraph.edges_ss
thf(fact_317_ulgraph_Overt__adj_Ocong,axiom,
    undire397441198561214472_adj_a = undire397441198561214472_adj_a ).

% ulgraph.vert_adj.cong
thf(fact_318_comp__sgraph_Oincident__def,axiom,
    undire2320338297334612420_set_a = member_set_a ).

% comp_sgraph.incident_def
thf(fact_319_comp__sgraph_Oincident__def,axiom,
    undire1521409233611534436dent_a = member_a ).

% comp_sgraph.incident_def
thf(fact_320_ulgraph_Ohas__loop_Ocong,axiom,
    undire3617971648856834880loop_a = undire3617971648856834880loop_a ).

% ulgraph.has_loop.cong
thf(fact_321_graph__system_Oedge__adj_Ocong,axiom,
    undire4022703626023482010_adj_a = undire4022703626023482010_adj_a ).

% graph_system.edge_adj.cong
thf(fact_322_infinite__descent0,axiom,
    ! [P3: nat > $o,N2: nat] :
      ( ( P3 @ zero_zero_nat )
     => ( ! [N3: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N3 )
           => ( ~ ( P3 @ N3 )
             => ? [M2: nat] :
                  ( ( ord_less_nat @ M2 @ N3 )
                  & ~ ( P3 @ M2 ) ) ) )
       => ( P3 @ N2 ) ) ) ).

% infinite_descent0
thf(fact_323_gr__implies__not0,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ( N2 != zero_zero_nat ) ) ).

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

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

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

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

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

% bot_nat_0.extremum_strict
thf(fact_329_less__eq__nat_Osimps_I1_J,axiom,
    ! [N2: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N2 ) ).

% less_eq_nat.simps(1)
thf(fact_330_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_331_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_332_le__0__eq,axiom,
    ! [N2: nat] :
      ( ( ord_less_eq_nat @ N2 @ zero_zero_nat )
      = ( N2 = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_333_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M: nat,N: nat] :
          ( ( ord_less_eq_nat @ M @ N )
          & ( M != N ) ) ) ) ).

% nat_less_le
thf(fact_334_less__imp__le__nat,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ( ord_less_eq_nat @ M3 @ N2 ) ) ).

% less_imp_le_nat
thf(fact_335_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M: nat,N: nat] :
          ( ( ord_less_nat @ M @ N )
          | ( M = N ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_336_less__or__eq__imp__le,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ( ord_less_nat @ M3 @ N2 )
        | ( M3 = N2 ) )
     => ( ord_less_eq_nat @ M3 @ N2 ) ) ).

% less_or_eq_imp_le
thf(fact_337_le__neq__implies__less,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ( M3 != N2 )
       => ( ord_less_nat @ M3 @ N2 ) ) ) ).

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

% less_mono_imp_le_mono
thf(fact_339_graph__system__def,axiom,
    ( undire7159349782766787846_set_a
    = ( ^ [Vertices2: set_set_a,Edges2: set_set_set_a] :
        ! [E5: set_set_a] :
          ( ( member_set_set_a @ E5 @ Edges2 )
         => ( ord_le3724670747650509150_set_a @ E5 @ Vertices2 ) ) ) ) ).

% graph_system_def
thf(fact_340_graph__system__def,axiom,
    ( undire2554140024507503526stem_a
    = ( ^ [Vertices2: set_a,Edges2: set_set_a] :
        ! [E5: set_a] :
          ( ( member_set_a @ E5 @ Edges2 )
         => ( ord_less_eq_set_a @ E5 @ Vertices2 ) ) ) ) ).

% graph_system_def
thf(fact_341_graph__system_Owellformed,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,E: set_set_a] :
      ( ( undire7159349782766787846_set_a @ Vertices @ Edges )
     => ( ( member_set_set_a @ E @ Edges )
       => ( ord_le3724670747650509150_set_a @ E @ Vertices ) ) ) ).

% graph_system.wellformed
thf(fact_342_graph__system_Owellformed,axiom,
    ! [Vertices: set_a,Edges: set_set_a,E: set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( ( member_set_a @ E @ Edges )
       => ( ord_less_eq_set_a @ E @ Vertices ) ) ) ).

% graph_system.wellformed
thf(fact_343_graph__system_Ointro,axiom,
    ! [Edges: set_set_set_a,Vertices: set_set_a] :
      ( ! [E6: set_set_a] :
          ( ( member_set_set_a @ E6 @ Edges )
         => ( ord_le3724670747650509150_set_a @ E6 @ Vertices ) )
     => ( undire7159349782766787846_set_a @ Vertices @ Edges ) ) ).

% graph_system.intro
thf(fact_344_graph__system_Ointro,axiom,
    ! [Edges: set_set_a,Vertices: set_a] :
      ( ! [E6: set_a] :
          ( ( member_set_a @ E6 @ Edges )
         => ( ord_less_eq_set_a @ E6 @ Vertices ) )
     => ( undire2554140024507503526stem_a @ Vertices @ Edges ) ) ).

% graph_system.intro
thf(fact_345_subgraph_Overts__ss,axiom,
    ! [V_H: set_set_a,E_H: set_set_set_a,V_G: set_set_a,E_G: set_set_set_a] :
      ( ( undire1186139521737116585_set_a @ V_H @ E_H @ V_G @ E_G )
     => ( ord_le3724670747650509150_set_a @ V_H @ V_G ) ) ).

% subgraph.verts_ss
thf(fact_346_subgraph_Overts__ss,axiom,
    ! [V_H: set_a,E_H: set_set_a,V_G: set_a,E_G: set_set_a] :
      ( ( undire7103218114511261257raph_a @ V_H @ E_H @ V_G @ E_G )
     => ( ord_less_eq_set_a @ V_H @ V_G ) ) ).

% subgraph.verts_ss
thf(fact_347_ulgraph_Oaxioms_I1_J,axiom,
    ! [Vertices: set_a,Edges: set_set_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( undire2554140024507503526stem_a @ Vertices @ Edges ) ) ).

% ulgraph.axioms(1)
thf(fact_348_subgraph_Ois__subgraph__ulgraph,axiom,
    ! [V_H: set_a,E_H: set_set_a,V_G: set_a,E_G: set_set_a] :
      ( ( undire7103218114511261257raph_a @ V_H @ E_H @ V_G @ E_G )
     => ( ( undire7251896706689453996raph_a @ V_G @ E_G )
       => ( undire7251896706689453996raph_a @ V_H @ E_H ) ) ) ).

% subgraph.is_subgraph_ulgraph
thf(fact_349_ulgraph_Overt__adj__imp__inV,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,V1: set_a,V2: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3510646817838285160_set_a @ Edges @ V1 @ V2 )
       => ( ( member_set_a @ V1 @ Vertices )
          & ( member_set_a @ V2 @ Vertices ) ) ) ) ).

% ulgraph.vert_adj_imp_inV
thf(fact_350_ulgraph_Overt__adj__imp__inV,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V1: a,V2: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire397441198561214472_adj_a @ Edges @ V1 @ V2 )
       => ( ( member_a @ V1 @ Vertices )
          & ( member_a @ V2 @ Vertices ) ) ) ) ).

% ulgraph.vert_adj_imp_inV
thf(fact_351_ulgraph_Overt__adj__sym,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V1: a,V2: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire397441198561214472_adj_a @ Edges @ V1 @ V2 )
        = ( undire397441198561214472_adj_a @ Edges @ V2 @ V1 ) ) ) ).

% ulgraph.vert_adj_sym
thf(fact_352_ulgraph_Ohas__loop__in__verts,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,V: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire5774735625301615776_set_a @ Edges @ V )
       => ( member_set_a @ V @ Vertices ) ) ) ).

% ulgraph.has_loop_in_verts
thf(fact_353_ulgraph_Ohas__loop__in__verts,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3617971648856834880loop_a @ Edges @ V )
       => ( member_a @ V @ Vertices ) ) ) ).

% ulgraph.has_loop_in_verts
thf(fact_354_graph__system_Osubgraph__refl,axiom,
    ! [Vertices: set_a,Edges: set_set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( undire7103218114511261257raph_a @ Vertices @ Edges @ Vertices @ Edges ) ) ).

% graph_system.subgraph_refl
thf(fact_355_subgraph_Osubgraph__trans,axiom,
    ! [V_H: set_a,E_H: set_set_a,V_G: set_a,E_G: set_set_a,V4: set_a,E4: set_set_a,V3: set_a,E3: set_set_a,V5: set_a,E7: set_set_a] :
      ( ( undire7103218114511261257raph_a @ V_H @ E_H @ V_G @ E_G )
     => ( ( undire2554140024507503526stem_a @ V4 @ E4 )
       => ( ( undire2554140024507503526stem_a @ V3 @ E3 )
         => ( ( undire2554140024507503526stem_a @ V5 @ E7 )
           => ( ( undire7103218114511261257raph_a @ V5 @ E7 @ V3 @ E3 )
             => ( ( undire7103218114511261257raph_a @ V3 @ E3 @ V4 @ E4 )
               => ( undire7103218114511261257raph_a @ V5 @ E7 @ V4 @ E4 ) ) ) ) ) ) ) ).

% subgraph.subgraph_trans
thf(fact_356_subgraph_Oaxioms_I1_J,axiom,
    ! [V_H: set_a,E_H: set_set_a,V_G: set_a,E_G: set_set_a] :
      ( ( undire7103218114511261257raph_a @ V_H @ E_H @ V_G @ E_G )
     => ( undire2554140024507503526stem_a @ V_H @ E_H ) ) ).

% subgraph.axioms(1)
thf(fact_357_subgraph_Oaxioms_I2_J,axiom,
    ! [V_H: set_a,E_H: set_set_a,V_G: set_a,E_G: set_set_a] :
      ( ( undire7103218114511261257raph_a @ V_H @ E_H @ V_G @ E_G )
     => ( undire2554140024507503526stem_a @ V_G @ E_G ) ) ).

% subgraph.axioms(2)
thf(fact_358_graph__system_Oincident__edge__in__wf,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,E: set_set_a,V: set_a] :
      ( ( undire7159349782766787846_set_a @ Vertices @ Edges )
     => ( ( member_set_set_a @ E @ Edges )
       => ( ( undire2320338297334612420_set_a @ V @ E )
         => ( member_set_a @ V @ Vertices ) ) ) ) ).

% graph_system.incident_edge_in_wf
thf(fact_359_graph__system_Oincident__edge__in__wf,axiom,
    ! [Vertices: set_a,Edges: set_set_a,E: set_a,V: a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( ( member_set_a @ E @ Edges )
       => ( ( undire1521409233611534436dent_a @ V @ E )
         => ( member_a @ V @ Vertices ) ) ) ) ).

% graph_system.incident_edge_in_wf
thf(fact_360_graph__system_Oincident__def,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,V: set_a,E: set_set_a] :
      ( ( undire7159349782766787846_set_a @ Vertices @ Edges )
     => ( ( undire2320338297334612420_set_a @ V @ E )
        = ( member_set_a @ V @ E ) ) ) ).

% graph_system.incident_def
thf(fact_361_graph__system_Oincident__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V: a,E: set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( ( undire1521409233611534436dent_a @ V @ E )
        = ( member_a @ V @ E ) ) ) ).

% graph_system.incident_def
thf(fact_362_graph__system_Oedge__adjacent__alt__def,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,E1: set_set_a,E2: set_set_a] :
      ( ( undire7159349782766787846_set_a @ Vertices @ Edges )
     => ( ( member_set_set_a @ E1 @ Edges )
       => ( ( member_set_set_a @ E2 @ Edges )
         => ( ? [X: set_a] :
                ( ( member_set_a @ X @ Vertices )
                & ( member_set_a @ X @ E1 )
                & ( member_set_a @ X @ E2 ) )
           => ( undire3485422320110889978_set_a @ Edges @ E1 @ E2 ) ) ) ) ) ).

% graph_system.edge_adjacent_alt_def
thf(fact_363_graph__system_Oedge__adjacent__alt__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,E1: set_a,E2: set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( ( member_set_a @ E1 @ Edges )
       => ( ( member_set_a @ E2 @ Edges )
         => ( ? [X: a] :
                ( ( member_a @ X @ Vertices )
                & ( member_a @ X @ E1 )
                & ( member_a @ X @ E2 ) )
           => ( undire4022703626023482010_adj_a @ Edges @ E1 @ E2 ) ) ) ) ) ).

% graph_system.edge_adjacent_alt_def
thf(fact_364_graph__system_Oedge__adj__inE,axiom,
    ! [Vertices: set_a,Edges: set_set_a,E1: set_a,E2: set_a] :
      ( ( undire2554140024507503526stem_a @ Vertices @ Edges )
     => ( ( undire4022703626023482010_adj_a @ Edges @ E1 @ E2 )
       => ( ( member_set_a @ E1 @ Edges )
          & ( member_set_a @ E2 @ Edges ) ) ) ) ).

% graph_system.edge_adj_inE
thf(fact_365_ulgraph_Oconnecting__path__gen__str,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_path_a @ Vertices @ Edges @ U @ V @ Xs )
       => ( ~ ( undire2407311113669455967ycle_a @ Vertices @ Edges @ Xs )
         => ( ( ord_less_nat @ zero_zero_nat @ ( undire8849074589633906640ngth_a @ Xs ) )
           => ( connec3015921205769380621_str_a @ Vertices @ Edges @ U @ V @ Xs ) ) ) ) ) ).

% ulgraph.connecting_path_gen_str
thf(fact_366_ex__least__nat__le,axiom,
    ! [P3: nat > $o,N2: nat] :
      ( ( P3 @ N2 )
     => ( ~ ( P3 @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N2 )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K2 )
               => ~ ( P3 @ I3 ) )
            & ( P3 @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_367_ulgraph_Overt__adj__edge__iff2,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V1: a,V2: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( V1 != V2 )
       => ( ( undire397441198561214472_adj_a @ Edges @ V1 @ V2 )
          = ( ? [X3: set_a] :
                ( ( member_set_a @ X3 @ Edges )
                & ( undire1521409233611534436dent_a @ V1 @ X3 )
                & ( undire1521409233611534436dent_a @ V2 @ X3 ) ) ) ) ) ) ).

% ulgraph.vert_adj_edge_iff2
thf(fact_368_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_369_ulgraph_Ois__gen__path__path,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3562951555376170320path_a @ Vertices @ Edges @ P )
       => ( ( ord_less_nat @ zero_zero_nat @ ( undire8849074589633906640ngth_a @ P ) )
         => ( ~ ( undire2407311113669455967ycle_a @ Vertices @ Edges @ P )
           => ( undire427332500224447920path_a @ Vertices @ Edges @ P ) ) ) ) ) ).

% ulgraph.is_gen_path_path
thf(fact_370_not__gr__zero,axiom,
    ! [N2: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N2 ) )
      = ( N2 = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_371_le__zero__eq,axiom,
    ! [N2: nat] :
      ( ( ord_less_eq_nat @ N2 @ zero_zero_nat )
      = ( N2 = zero_zero_nat ) ) ).

% le_zero_eq
thf(fact_372_connecting__path__singleton,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_path_a @ vertices @ edges @ U @ V @ Xs )
     => ( ( ( size_size_list_a @ Xs )
          = one_one_nat )
       => ( U = V ) ) ) ).

% connecting_path_singleton
thf(fact_373_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_374_ulgraph_Ois__trail__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire1224551742100448159_set_a @ Vertices @ Edges @ Xs )
        = ( undire1224551742100448159_set_a @ Vertices @ Edges @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.is_trail_rev
thf(fact_375_ulgraph_Ois__trail__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire7142031287334043199rail_a @ Vertices @ Edges @ Xs )
        = ( undire7142031287334043199rail_a @ Vertices @ Edges @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.is_trail_rev
thf(fact_376_ulgraph_Ois__closed__walk__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire4100213446647512896_set_a @ Vertices @ Edges @ Xs )
        = ( undire4100213446647512896_set_a @ Vertices @ Edges @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.is_closed_walk_rev
thf(fact_377_ulgraph_Ois__closed__walk__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3370724456595283424walk_a @ Vertices @ Edges @ Xs )
        = ( undire3370724456595283424walk_a @ Vertices @ Edges @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.is_closed_walk_rev
thf(fact_378_ulgraph_Ois__open__walk__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire526879649183275522_set_a @ Vertices @ Edges @ Xs )
        = ( undire526879649183275522_set_a @ Vertices @ Edges @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.is_open_walk_rev
thf(fact_379_ulgraph_Ois__open__walk__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire2427028224930250914walk_a @ Vertices @ Edges @ Xs )
        = ( undire2427028224930250914walk_a @ Vertices @ Edges @ ( rev_a @ Xs ) ) ) ) ).

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

% degree_none
thf(fact_381_ulgraph_Odegree_Ocong,axiom,
    undire8867928226783802224gree_a = undire8867928226783802224gree_a ).

% ulgraph.degree.cong
thf(fact_382_size__neq__size__imp__neq,axiom,
    ! [X2: list_a,Y: list_a] :
      ( ( ( size_size_list_a @ X2 )
       != ( size_size_list_a @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_383_size__neq__size__imp__neq,axiom,
    ! [X2: char,Y: char] :
      ( ( ( size_size_char @ X2 )
       != ( size_size_char @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_384_size__neq__size__imp__neq,axiom,
    ! [X2: list_set_a,Y: list_set_a] :
      ( ( ( size_size_list_set_a @ X2 )
       != ( size_size_list_set_a @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_385_ulgraph_Ois__path__def,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire8834939040163919632_set_a @ Vertices @ Edges @ Xs )
        = ( ( undire526879649183275522_set_a @ Vertices @ Edges @ Xs )
          & ( distinct_set_a @ Xs ) ) ) ) ).

% ulgraph.is_path_def
thf(fact_386_ulgraph_Ois__path__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire427332500224447920path_a @ Vertices @ Edges @ Xs )
        = ( ( undire2427028224930250914walk_a @ Vertices @ Edges @ Xs )
          & ( distinct_a @ Xs ) ) ) ) ).

% ulgraph.is_path_def
thf(fact_387_ulgraph_Odegree__none,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,V: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ~ ( member_set_a @ V @ Vertices )
       => ( ( undire8939077443744732368_set_a @ Edges @ V )
          = zero_zero_nat ) ) ) ).

% ulgraph.degree_none
thf(fact_388_ulgraph_Odegree__none,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ~ ( member_a @ V @ Vertices )
       => ( ( undire8867928226783802224gree_a @ Edges @ V )
          = zero_zero_nat ) ) ) ).

% ulgraph.degree_none
thf(fact_389_zero__reorient,axiom,
    ! [X2: nat] :
      ( ( zero_zero_nat = X2 )
      = ( X2 = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_390_one__reorient,axiom,
    ! [X2: nat] :
      ( ( one_one_nat = X2 )
      = ( X2 = one_one_nat ) ) ).

% one_reorient
thf(fact_391_ulgraph_Oconnecting__path__singleton,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,U: set_a,V: set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( connec7350987497872064604_set_a @ Vertices @ Edges @ U @ V @ Xs )
       => ( ( ( size_size_list_set_a @ Xs )
            = one_one_nat )
         => ( U = V ) ) ) ) ).

% ulgraph.connecting_path_singleton
thf(fact_392_ulgraph_Oconnecting__path__singleton,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_path_a @ Vertices @ Edges @ U @ V @ Xs )
       => ( ( ( size_size_list_a @ Xs )
            = one_one_nat )
         => ( U = V ) ) ) ) ).

% ulgraph.connecting_path_singleton
thf(fact_393_ulgraph_Ois__gen__path_Ocong,axiom,
    undire3562951555376170320path_a = undire3562951555376170320path_a ).

% ulgraph.is_gen_path.cong
thf(fact_394_ulgraph_Ois__cycle_Ocong,axiom,
    undire2407311113669455967ycle_a = undire2407311113669455967ycle_a ).

% ulgraph.is_cycle.cong
thf(fact_395_ulgraph_Ois__path_Ocong,axiom,
    undire427332500224447920path_a = undire427332500224447920path_a ).

% ulgraph.is_path.cong
thf(fact_396_ulgraph_Ois__open__walk_Ocong,axiom,
    undire2427028224930250914walk_a = undire2427028224930250914walk_a ).

% ulgraph.is_open_walk.cong
thf(fact_397_ulgraph_Ois__closed__walk_Ocong,axiom,
    undire3370724456595283424walk_a = undire3370724456595283424walk_a ).

% ulgraph.is_closed_walk.cong
thf(fact_398_ulgraph_Ois__isolated__vertex__degree0,axiom,
    ! [Vertices: set_a,Edges: set_set_a,V: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire8931668460104145173rtex_a @ Vertices @ Edges @ V )
       => ( ( undire8867928226783802224gree_a @ Edges @ V )
          = zero_zero_nat ) ) ) ).

% ulgraph.is_isolated_vertex_degree0
thf(fact_399_ulgraph_Ois__trail_Ocong,axiom,
    undire7142031287334043199rail_a = undire7142031287334043199rail_a ).

% ulgraph.is_trail.cong
thf(fact_400_zero__le,axiom,
    ! [X2: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X2 ) ).

% zero_le
thf(fact_401_gr__zeroI,axiom,
    ! [N2: nat] :
      ( ( N2 != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N2 ) ) ).

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

% not_less_zero
thf(fact_403_gr__implies__not__zero,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ( N2 != zero_zero_nat ) ) ).

% gr_implies_not_zero
thf(fact_404_zero__less__iff__neq__zero,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
      = ( N2 != zero_zero_nat ) ) ).

% zero_less_iff_neq_zero
thf(fact_405_comp__sgraph_Owalk__length__rev,axiom,
    ( undire4424681683220949296_set_a
    = ( ^ [P2: list_set_a] : ( undire4424681683220949296_set_a @ ( rev_set_a @ P2 ) ) ) ) ).

% comp_sgraph.walk_length_rev
thf(fact_406_comp__sgraph_Owalk__length__rev,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P2: list_a] : ( undire8849074589633906640ngth_a @ ( rev_a @ P2 ) ) ) ) ).

% comp_sgraph.walk_length_rev
thf(fact_407_ulgraph_Owalk__length__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire4424681683220949296_set_a @ P )
        = ( undire4424681683220949296_set_a @ ( rev_set_a @ P ) ) ) ) ).

% ulgraph.walk_length_rev
thf(fact_408_ulgraph_Owalk__length__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire8849074589633906640ngth_a @ P )
        = ( undire8849074589633906640ngth_a @ ( rev_a @ P ) ) ) ) ).

% ulgraph.walk_length_rev
thf(fact_409_ulgraph_Ois__gen__path__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire7201326534205417136_set_a @ Vertices @ Edges @ P )
        = ( undire7201326534205417136_set_a @ Vertices @ Edges @ ( rev_set_a @ P ) ) ) ) ).

% ulgraph.is_gen_path_rev
thf(fact_410_ulgraph_Ois__gen__path__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3562951555376170320path_a @ Vertices @ Edges @ P )
        = ( undire3562951555376170320path_a @ Vertices @ Edges @ ( rev_a @ P ) ) ) ) ).

% ulgraph.is_gen_path_rev
thf(fact_411_ulgraph_Ois__cycle__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire797940137672299967_set_a @ Vertices @ Edges @ Xs )
        = ( undire797940137672299967_set_a @ Vertices @ Edges @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.is_cycle_rev
thf(fact_412_ulgraph_Ois__cycle__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire2407311113669455967ycle_a @ Vertices @ Edges @ Xs )
        = ( undire2407311113669455967ycle_a @ Vertices @ Edges @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.is_cycle_rev
thf(fact_413_ulgraph_Ois__path__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire8834939040163919632_set_a @ Vertices @ Edges @ Xs )
        = ( undire8834939040163919632_set_a @ Vertices @ Edges @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.is_path_rev
thf(fact_414_ulgraph_Ois__path__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire427332500224447920path_a @ Vertices @ Edges @ Xs )
        = ( undire427332500224447920path_a @ Vertices @ Edges @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.is_path_rev
thf(fact_415_ulgraph_Ois__gen__path__cycle,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire2407311113669455967ycle_a @ Vertices @ Edges @ P )
       => ( undire3562951555376170320path_a @ Vertices @ Edges @ P ) ) ) ).

% ulgraph.is_gen_path_cycle
thf(fact_416_ulgraph_Ois__path__gen__path,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire427332500224447920path_a @ Vertices @ Edges @ P )
       => ( undire3562951555376170320path_a @ Vertices @ Edges @ P ) ) ) ).

% ulgraph.is_path_gen_path
thf(fact_417_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_418_distinct__rev,axiom,
    ! [Xs: list_a] :
      ( ( distinct_a @ ( rev_a @ Xs ) )
      = ( distinct_a @ Xs ) ) ).

% distinct_rev
thf(fact_419_distinct__rev,axiom,
    ! [Xs: list_set_a] :
      ( ( distinct_set_a @ ( rev_set_a @ Xs ) )
      = ( distinct_set_a @ Xs ) ) ).

% distinct_rev
thf(fact_420_length__rev,axiom,
    ! [Xs: list_a] :
      ( ( size_size_list_a @ ( rev_a @ Xs ) )
      = ( size_size_list_a @ Xs ) ) ).

% length_rev
thf(fact_421_length__rev,axiom,
    ! [Xs: list_set_a] :
      ( ( size_size_list_set_a @ ( rev_set_a @ Xs ) )
      = ( size_size_list_set_a @ Xs ) ) ).

% length_rev
thf(fact_422_walk__length__conv,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P2: list_a] : ( minus_minus_nat @ ( size_size_list_a @ P2 ) @ one_one_nat ) ) ) ).

% walk_length_conv
thf(fact_423_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

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

% zero_less_one
thf(fact_425_not__one__less__zero,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_less_zero
thf(fact_426_rev__is__rev__conv,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( rev_a @ Xs )
        = ( rev_a @ Ys2 ) )
      = ( Xs = Ys2 ) ) ).

% rev_is_rev_conv
thf(fact_427_rev__is__rev__conv,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a] :
      ( ( ( rev_set_a @ Xs )
        = ( rev_set_a @ Ys2 ) )
      = ( Xs = Ys2 ) ) ).

% rev_is_rev_conv
thf(fact_428_rev__rev__ident,axiom,
    ! [Xs: list_a] :
      ( ( rev_a @ ( rev_a @ Xs ) )
      = Xs ) ).

% rev_rev_ident
thf(fact_429_rev__rev__ident,axiom,
    ! [Xs: list_set_a] :
      ( ( rev_set_a @ ( rev_set_a @ Xs ) )
      = Xs ) ).

% rev_rev_ident
thf(fact_430_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_431_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

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

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

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

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

% diff_diff_cancel
thf(fact_436_zero__less__diff,axiom,
    ! [N2: nat,M3: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N2 @ M3 ) )
      = ( ord_less_nat @ M3 @ N2 ) ) ).

% zero_less_diff
thf(fact_437_diff__is__0__eq,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ( minus_minus_nat @ M3 @ N2 )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M3 @ N2 ) ) ).

% diff_is_0_eq
thf(fact_438_diff__is__0__eq_H,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ( minus_minus_nat @ M3 @ N2 )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_439_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_440_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_441_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_442_distinct__tl,axiom,
    ! [Xs: list_a] :
      ( ( distinct_a @ Xs )
     => ( distinct_a @ ( tl_a @ Xs ) ) ) ).

% distinct_tl
thf(fact_443_distinct__tl,axiom,
    ! [Xs: list_set_a] :
      ( ( distinct_set_a @ Xs )
     => ( distinct_set_a @ ( tl_set_a @ Xs ) ) ) ).

% distinct_tl
thf(fact_444_diff__commute,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J ) ) ).

% diff_commute
thf(fact_445_diffs0__imp__equal,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ( minus_minus_nat @ M3 @ N2 )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N2 @ M3 )
          = zero_zero_nat )
       => ( M3 = N2 ) ) ) ).

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

% minus_nat.diff_0
thf(fact_447_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N2: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N2 ) @ K ) ) ).

% less_imp_diff_less
thf(fact_448_diff__less__mono2,axiom,
    ! [M3: nat,N2: nat,L: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ( ( ord_less_nat @ M3 @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N2 ) @ ( minus_minus_nat @ L @ M3 ) ) ) ) ).

% diff_less_mono2
thf(fact_449_eq__diff__iff,axiom,
    ! [K: nat,M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ K @ M3 )
     => ( ( ord_less_eq_nat @ K @ N2 )
       => ( ( ( minus_minus_nat @ M3 @ K )
            = ( minus_minus_nat @ N2 @ K ) )
          = ( M3 = N2 ) ) ) ) ).

% eq_diff_iff
thf(fact_450_le__diff__iff,axiom,
    ! [K: nat,M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ K @ M3 )
     => ( ( ord_less_eq_nat @ K @ N2 )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M3 @ K ) @ ( minus_minus_nat @ N2 @ K ) )
          = ( ord_less_eq_nat @ M3 @ N2 ) ) ) ) ).

% le_diff_iff
thf(fact_451_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ K @ M3 )
     => ( ( ord_less_eq_nat @ K @ N2 )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M3 @ K ) @ ( minus_minus_nat @ N2 @ K ) )
          = ( minus_minus_nat @ M3 @ N2 ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_452_diff__le__mono,axiom,
    ! [M3: nat,N2: nat,L: nat] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M3 @ L ) @ ( minus_minus_nat @ N2 @ L ) ) ) ).

% diff_le_mono
thf(fact_453_diff__le__self,axiom,
    ! [M3: nat,N2: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M3 @ N2 ) @ M3 ) ).

% diff_le_self
thf(fact_454_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_455_diff__le__mono2,axiom,
    ! [M3: nat,N2: nat,L: nat] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N2 ) @ ( minus_minus_nat @ L @ M3 ) ) ) ).

% diff_le_mono2
thf(fact_456_diff__less,axiom,
    ! [N2: nat,M3: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ( ( ord_less_nat @ zero_zero_nat @ M3 )
       => ( ord_less_nat @ ( minus_minus_nat @ M3 @ N2 ) @ M3 ) ) ) ).

% diff_less
thf(fact_457_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_458_less__diff__iff,axiom,
    ! [K: nat,M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ K @ M3 )
     => ( ( ord_less_eq_nat @ K @ N2 )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M3 @ K ) @ ( minus_minus_nat @ N2 @ K ) )
          = ( ord_less_nat @ M3 @ N2 ) ) ) ) ).

% less_diff_iff
thf(fact_459_comp__sgraph_Owalk__length__conv,axiom,
    ( undire4424681683220949296_set_a
    = ( ^ [P2: list_set_a] : ( minus_minus_nat @ ( size_size_list_set_a @ P2 ) @ one_one_nat ) ) ) ).

% comp_sgraph.walk_length_conv
thf(fact_460_comp__sgraph_Owalk__length__conv,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P2: list_a] : ( minus_minus_nat @ ( size_size_list_a @ P2 ) @ one_one_nat ) ) ) ).

% comp_sgraph.walk_length_conv
thf(fact_461_neq__if__length__neq,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( size_size_list_a @ Xs )
       != ( size_size_list_a @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

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

% neq_if_length_neq
thf(fact_463_Ex__list__of__length,axiom,
    ! [N2: nat] :
    ? [Xs2: list_a] :
      ( ( size_size_list_a @ Xs2 )
      = N2 ) ).

% Ex_list_of_length
thf(fact_464_Ex__list__of__length,axiom,
    ! [N2: nat] :
    ? [Xs2: list_set_a] :
      ( ( size_size_list_set_a @ Xs2 )
      = N2 ) ).

% Ex_list_of_length
thf(fact_465_rev__swap,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( rev_a @ Xs )
        = Ys2 )
      = ( Xs
        = ( rev_a @ Ys2 ) ) ) ).

% rev_swap
thf(fact_466_rev__swap,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a] :
      ( ( ( rev_set_a @ Xs )
        = Ys2 )
      = ( Xs
        = ( rev_set_a @ Ys2 ) ) ) ).

% rev_swap
thf(fact_467_ulgraph_Owalk__length__conv,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire4424681683220949296_set_a @ P )
        = ( minus_minus_nat @ ( size_size_list_set_a @ P ) @ one_one_nat ) ) ) ).

% ulgraph.walk_length_conv
thf(fact_468_ulgraph_Owalk__length__conv,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire8849074589633906640ngth_a @ P )
        = ( minus_minus_nat @ ( size_size_list_a @ P ) @ one_one_nat ) ) ) ).

% ulgraph.walk_length_conv
thf(fact_469_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_470_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_471_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_472_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_473_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_474_length__induct,axiom,
    ! [P3: list_a > $o,Xs: list_a] :
      ( ! [Xs2: list_a] :
          ( ! [Ys3: list_a] :
              ( ( ord_less_nat @ ( size_size_list_a @ Ys3 ) @ ( size_size_list_a @ Xs2 ) )
             => ( P3 @ Ys3 ) )
         => ( P3 @ Xs2 ) )
     => ( P3 @ Xs ) ) ).

% length_induct
thf(fact_475_length__induct,axiom,
    ! [P3: list_set_a > $o,Xs: list_set_a] :
      ( ! [Xs2: list_set_a] :
          ( ! [Ys3: list_set_a] :
              ( ( ord_less_nat @ ( size_size_list_set_a @ Ys3 ) @ ( size_size_list_set_a @ Xs2 ) )
             => ( P3 @ Ys3 ) )
         => ( P3 @ Xs2 ) )
     => ( P3 @ Xs ) ) ).

% length_induct
thf(fact_476_ulgraph_Ois__cycle__def,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire797940137672299967_set_a @ Vertices @ Edges @ Xs )
        = ( ( undire4100213446647512896_set_a @ Vertices @ Edges @ Xs )
          & ( ord_less_eq_nat @ one_one_nat @ ( undire4424681683220949296_set_a @ Xs ) )
          & ( distinct_set_a @ ( tl_set_a @ Xs ) ) ) ) ) ).

% ulgraph.is_cycle_def
thf(fact_477_ulgraph_Ois__cycle__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( 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 ) ) ) ) ) ).

% ulgraph.is_cycle_def
thf(fact_478_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_479_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_480_not__one__le__zero,axiom,
    ~ ( ord_less_eq_nat @ one_one_nat @ zero_zero_nat ) ).

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

% is_path_walk
thf(fact_482_is__walk__rev,axiom,
    ! [Xs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
      = ( undire6133010728901294956walk_a @ vertices @ edges @ ( rev_a @ Xs ) ) ) ).

% is_walk_rev
thf(fact_483_size__char__eq__0,axiom,
    ( size_size_char
    = ( ^ [C2: char] : zero_zero_nat ) ) ).

% size_char_eq_0
thf(fact_484_psubsetI,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ B4 )
     => ( ( A2 != B4 )
       => ( ord_less_set_a @ A2 @ B4 ) ) ) ).

% psubsetI
thf(fact_485_psubsetI,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
     => ( ( A2 != B4 )
       => ( ord_less_set_set_a @ A2 @ B4 ) ) ) ).

% psubsetI
thf(fact_486_subset__antisym,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ B4 )
     => ( ( ord_less_eq_set_a @ B4 @ A2 )
       => ( A2 = B4 ) ) ) ).

% subset_antisym
thf(fact_487_subset__antisym,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
     => ( ( ord_le3724670747650509150_set_a @ B4 @ A2 )
       => ( A2 = B4 ) ) ) ).

% subset_antisym
thf(fact_488_subsetI,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ! [X4: a] :
          ( ( member_a @ X4 @ A2 )
         => ( member_a @ X4 @ B4 ) )
     => ( ord_less_eq_set_a @ A2 @ B4 ) ) ).

% subsetI
thf(fact_489_subsetI,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ! [X4: set_a] :
          ( ( member_set_a @ X4 @ A2 )
         => ( member_set_a @ X4 @ B4 ) )
     => ( ord_le3724670747650509150_set_a @ A2 @ B4 ) ) ).

% subsetI
thf(fact_490_psubset__imp__ex__mem,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( ord_less_set_a @ A2 @ B4 )
     => ? [B2: a] : ( member_a @ B2 @ ( minus_minus_set_a @ B4 @ A2 ) ) ) ).

% psubset_imp_ex_mem
thf(fact_491_psubset__imp__ex__mem,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( ord_less_set_set_a @ A2 @ B4 )
     => ? [B2: set_a] : ( member_set_a @ B2 @ ( minus_5736297505244876581_set_a @ B4 @ A2 ) ) ) ).

% psubset_imp_ex_mem
thf(fact_492_double__diff,axiom,
    ! [A2: set_a,B4: set_a,C3: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ B4 )
     => ( ( ord_less_eq_set_a @ B4 @ C3 )
       => ( ( minus_minus_set_a @ B4 @ ( minus_minus_set_a @ C3 @ A2 ) )
          = A2 ) ) ) ).

% double_diff
thf(fact_493_double__diff,axiom,
    ! [A2: set_set_a,B4: set_set_a,C3: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
     => ( ( ord_le3724670747650509150_set_a @ B4 @ C3 )
       => ( ( minus_5736297505244876581_set_a @ B4 @ ( minus_5736297505244876581_set_a @ C3 @ A2 ) )
          = A2 ) ) ) ).

% double_diff
thf(fact_494_Diff__subset,axiom,
    ! [A2: set_a,B4: set_a] : ( ord_less_eq_set_a @ ( minus_minus_set_a @ A2 @ B4 ) @ A2 ) ).

% Diff_subset
thf(fact_495_Diff__subset,axiom,
    ! [A2: set_set_a,B4: set_set_a] : ( ord_le3724670747650509150_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B4 ) @ A2 ) ).

% Diff_subset
thf(fact_496_Diff__mono,axiom,
    ! [A2: set_a,C3: set_a,D: set_a,B4: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ C3 )
     => ( ( ord_less_eq_set_a @ D @ B4 )
       => ( ord_less_eq_set_a @ ( minus_minus_set_a @ A2 @ B4 ) @ ( minus_minus_set_a @ C3 @ D ) ) ) ) ).

% Diff_mono
thf(fact_497_Diff__mono,axiom,
    ! [A2: set_set_a,C3: set_set_a,D: set_set_a,B4: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ C3 )
     => ( ( ord_le3724670747650509150_set_a @ D @ B4 )
       => ( ord_le3724670747650509150_set_a @ ( minus_5736297505244876581_set_a @ A2 @ B4 ) @ ( minus_5736297505244876581_set_a @ C3 @ D ) ) ) ) ).

% Diff_mono
thf(fact_498_ulgraph_Ois__walk_Ocong,axiom,
    undire6133010728901294956walk_a = undire6133010728901294956walk_a ).

% ulgraph.is_walk.cong
thf(fact_499_psubsetD,axiom,
    ! [A2: set_a,B4: set_a,C: a] :
      ( ( ord_less_set_a @ A2 @ B4 )
     => ( ( member_a @ C @ A2 )
       => ( member_a @ C @ B4 ) ) ) ).

% psubsetD
thf(fact_500_psubsetD,axiom,
    ! [A2: set_set_a,B4: set_set_a,C: set_a] :
      ( ( ord_less_set_set_a @ A2 @ B4 )
     => ( ( member_set_a @ C @ A2 )
       => ( member_set_a @ C @ B4 ) ) ) ).

% psubsetD
thf(fact_501_ulgraph_Ois__walk__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs )
        = ( undire3014741414213135564_set_a @ Vertices @ Edges @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.is_walk_rev
thf(fact_502_ulgraph_Ois__walk__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
        = ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.is_walk_rev
thf(fact_503_ulgraph_Ois__path__walk,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire427332500224447920path_a @ Vertices @ Edges @ Xs )
       => ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs ) ) ) ).

% ulgraph.is_path_walk
thf(fact_504_in__mono,axiom,
    ! [A2: set_a,B4: set_a,X2: a] :
      ( ( ord_less_eq_set_a @ A2 @ B4 )
     => ( ( member_a @ X2 @ A2 )
       => ( member_a @ X2 @ B4 ) ) ) ).

% in_mono
thf(fact_505_in__mono,axiom,
    ! [A2: set_set_a,B4: set_set_a,X2: set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
     => ( ( member_set_a @ X2 @ A2 )
       => ( member_set_a @ X2 @ B4 ) ) ) ).

% in_mono
thf(fact_506_subsetD,axiom,
    ! [A2: set_a,B4: set_a,C: a] :
      ( ( ord_less_eq_set_a @ A2 @ B4 )
     => ( ( member_a @ C @ A2 )
       => ( member_a @ C @ B4 ) ) ) ).

% subsetD
thf(fact_507_subsetD,axiom,
    ! [A2: set_set_a,B4: set_set_a,C: set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
     => ( ( member_set_a @ C @ A2 )
       => ( member_set_a @ C @ B4 ) ) ) ).

% subsetD
thf(fact_508_equalityE,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( A2 = B4 )
     => ~ ( ( ord_less_eq_set_a @ A2 @ B4 )
         => ~ ( ord_less_eq_set_a @ B4 @ A2 ) ) ) ).

% equalityE
thf(fact_509_equalityE,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( A2 = B4 )
     => ~ ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
         => ~ ( ord_le3724670747650509150_set_a @ B4 @ A2 ) ) ) ).

% equalityE
thf(fact_510_subset__eq,axiom,
    ( ord_less_eq_set_a
    = ( ^ [A5: set_a,B5: set_a] :
        ! [X3: a] :
          ( ( member_a @ X3 @ A5 )
         => ( member_a @ X3 @ B5 ) ) ) ) ).

% subset_eq
thf(fact_511_subset__eq,axiom,
    ( ord_le3724670747650509150_set_a
    = ( ^ [A5: set_set_a,B5: set_set_a] :
        ! [X3: set_a] :
          ( ( member_set_a @ X3 @ A5 )
         => ( member_set_a @ X3 @ B5 ) ) ) ) ).

% subset_eq
thf(fact_512_equalityD1,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( A2 = B4 )
     => ( ord_less_eq_set_a @ A2 @ B4 ) ) ).

% equalityD1
thf(fact_513_equalityD1,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( A2 = B4 )
     => ( ord_le3724670747650509150_set_a @ A2 @ B4 ) ) ).

% equalityD1
thf(fact_514_equalityD2,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( A2 = B4 )
     => ( ord_less_eq_set_a @ B4 @ A2 ) ) ).

% equalityD2
thf(fact_515_equalityD2,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( A2 = B4 )
     => ( ord_le3724670747650509150_set_a @ B4 @ A2 ) ) ).

% equalityD2
thf(fact_516_subset__iff,axiom,
    ( ord_less_eq_set_a
    = ( ^ [A5: set_a,B5: set_a] :
        ! [T2: a] :
          ( ( member_a @ T2 @ A5 )
         => ( member_a @ T2 @ B5 ) ) ) ) ).

% subset_iff
thf(fact_517_subset__iff,axiom,
    ( ord_le3724670747650509150_set_a
    = ( ^ [A5: set_set_a,B5: set_set_a] :
        ! [T2: set_a] :
          ( ( member_set_a @ T2 @ A5 )
         => ( member_set_a @ T2 @ B5 ) ) ) ) ).

% subset_iff
thf(fact_518_subset__refl,axiom,
    ! [A2: set_a] : ( ord_less_eq_set_a @ A2 @ A2 ) ).

% subset_refl
thf(fact_519_subset__refl,axiom,
    ! [A2: set_set_a] : ( ord_le3724670747650509150_set_a @ A2 @ A2 ) ).

% subset_refl
thf(fact_520_Collect__mono,axiom,
    ! [P3: a > $o,Q: a > $o] :
      ( ! [X4: a] :
          ( ( P3 @ X4 )
         => ( Q @ X4 ) )
     => ( ord_less_eq_set_a @ ( collect_a @ P3 ) @ ( collect_a @ Q ) ) ) ).

% Collect_mono
thf(fact_521_Collect__mono,axiom,
    ! [P3: set_a > $o,Q: set_a > $o] :
      ( ! [X4: set_a] :
          ( ( P3 @ X4 )
         => ( Q @ X4 ) )
     => ( ord_le3724670747650509150_set_a @ ( collect_set_a @ P3 ) @ ( collect_set_a @ Q ) ) ) ).

% Collect_mono
thf(fact_522_subset__trans,axiom,
    ! [A2: set_a,B4: set_a,C3: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ B4 )
     => ( ( ord_less_eq_set_a @ B4 @ C3 )
       => ( ord_less_eq_set_a @ A2 @ C3 ) ) ) ).

% subset_trans
thf(fact_523_subset__trans,axiom,
    ! [A2: set_set_a,B4: set_set_a,C3: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
     => ( ( ord_le3724670747650509150_set_a @ B4 @ C3 )
       => ( ord_le3724670747650509150_set_a @ A2 @ C3 ) ) ) ).

% subset_trans
thf(fact_524_set__eq__subset,axiom,
    ( ( ^ [Y5: set_a,Z2: set_a] : ( Y5 = Z2 ) )
    = ( ^ [A5: set_a,B5: set_a] :
          ( ( ord_less_eq_set_a @ A5 @ B5 )
          & ( ord_less_eq_set_a @ B5 @ A5 ) ) ) ) ).

% set_eq_subset
thf(fact_525_set__eq__subset,axiom,
    ( ( ^ [Y5: set_set_a,Z2: set_set_a] : ( Y5 = Z2 ) )
    = ( ^ [A5: set_set_a,B5: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ A5 @ B5 )
          & ( ord_le3724670747650509150_set_a @ B5 @ A5 ) ) ) ) ).

% set_eq_subset
thf(fact_526_Collect__mono__iff,axiom,
    ! [P3: a > $o,Q: a > $o] :
      ( ( ord_less_eq_set_a @ ( collect_a @ P3 ) @ ( collect_a @ Q ) )
      = ( ! [X3: a] :
            ( ( P3 @ X3 )
           => ( Q @ X3 ) ) ) ) ).

% Collect_mono_iff
thf(fact_527_Collect__mono__iff,axiom,
    ! [P3: set_a > $o,Q: set_a > $o] :
      ( ( ord_le3724670747650509150_set_a @ ( collect_set_a @ P3 ) @ ( collect_set_a @ Q ) )
      = ( ! [X3: set_a] :
            ( ( P3 @ X3 )
           => ( Q @ X3 ) ) ) ) ).

% Collect_mono_iff
thf(fact_528_psubsetE,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( ord_less_set_a @ A2 @ B4 )
     => ~ ( ( ord_less_eq_set_a @ A2 @ B4 )
         => ( ord_less_eq_set_a @ B4 @ A2 ) ) ) ).

% psubsetE
thf(fact_529_psubsetE,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( ord_less_set_set_a @ A2 @ B4 )
     => ~ ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
         => ( ord_le3724670747650509150_set_a @ B4 @ A2 ) ) ) ).

% psubsetE
thf(fact_530_psubset__eq,axiom,
    ( ord_less_set_a
    = ( ^ [A5: set_a,B5: set_a] :
          ( ( ord_less_eq_set_a @ A5 @ B5 )
          & ( A5 != B5 ) ) ) ) ).

% psubset_eq
thf(fact_531_psubset__eq,axiom,
    ( ord_less_set_set_a
    = ( ^ [A5: set_set_a,B5: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ A5 @ B5 )
          & ( A5 != B5 ) ) ) ) ).

% psubset_eq
thf(fact_532_psubset__imp__subset,axiom,
    ! [A2: set_a,B4: set_a] :
      ( ( ord_less_set_a @ A2 @ B4 )
     => ( ord_less_eq_set_a @ A2 @ B4 ) ) ).

% psubset_imp_subset
thf(fact_533_psubset__imp__subset,axiom,
    ! [A2: set_set_a,B4: set_set_a] :
      ( ( ord_less_set_set_a @ A2 @ B4 )
     => ( ord_le3724670747650509150_set_a @ A2 @ B4 ) ) ).

% psubset_imp_subset
thf(fact_534_psubset__subset__trans,axiom,
    ! [A2: set_a,B4: set_a,C3: set_a] :
      ( ( ord_less_set_a @ A2 @ B4 )
     => ( ( ord_less_eq_set_a @ B4 @ C3 )
       => ( ord_less_set_a @ A2 @ C3 ) ) ) ).

% psubset_subset_trans
thf(fact_535_psubset__subset__trans,axiom,
    ! [A2: set_set_a,B4: set_set_a,C3: set_set_a] :
      ( ( ord_less_set_set_a @ A2 @ B4 )
     => ( ( ord_le3724670747650509150_set_a @ B4 @ C3 )
       => ( ord_less_set_set_a @ A2 @ C3 ) ) ) ).

% psubset_subset_trans
thf(fact_536_subset__not__subset__eq,axiom,
    ( ord_less_set_a
    = ( ^ [A5: set_a,B5: set_a] :
          ( ( ord_less_eq_set_a @ A5 @ B5 )
          & ~ ( ord_less_eq_set_a @ B5 @ A5 ) ) ) ) ).

% subset_not_subset_eq
thf(fact_537_subset__not__subset__eq,axiom,
    ( ord_less_set_set_a
    = ( ^ [A5: set_set_a,B5: set_set_a] :
          ( ( ord_le3724670747650509150_set_a @ A5 @ B5 )
          & ~ ( ord_le3724670747650509150_set_a @ B5 @ A5 ) ) ) ) ).

% subset_not_subset_eq
thf(fact_538_subset__psubset__trans,axiom,
    ! [A2: set_a,B4: set_a,C3: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ B4 )
     => ( ( ord_less_set_a @ B4 @ C3 )
       => ( ord_less_set_a @ A2 @ C3 ) ) ) ).

% subset_psubset_trans
thf(fact_539_subset__psubset__trans,axiom,
    ! [A2: set_set_a,B4: set_set_a,C3: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ A2 @ B4 )
     => ( ( ord_less_set_set_a @ B4 @ C3 )
       => ( ord_less_set_set_a @ A2 @ C3 ) ) ) ).

% subset_psubset_trans
thf(fact_540_subset__iff__psubset__eq,axiom,
    ( ord_less_eq_set_a
    = ( ^ [A5: set_a,B5: set_a] :
          ( ( ord_less_set_a @ A5 @ B5 )
          | ( A5 = B5 ) ) ) ) ).

% subset_iff_psubset_eq
thf(fact_541_subset__iff__psubset__eq,axiom,
    ( ord_le3724670747650509150_set_a
    = ( ^ [A5: set_set_a,B5: set_set_a] :
          ( ( ord_less_set_set_a @ A5 @ B5 )
          | ( A5 = B5 ) ) ) ) ).

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

% is_walk_take
thf(fact_543_is__walk__drop,axiom,
    ! [W: list_a,N2: nat] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
     => ( ( ord_less_nat @ N2 @ ( size_size_list_a @ W ) )
       => ( undire6133010728901294956walk_a @ vertices @ edges @ ( drop_a @ N2 @ W ) ) ) ) ).

% is_walk_drop
thf(fact_544_is__walk__wf,axiom,
    ! [Xs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
     => ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ vertices ) ) ).

% is_walk_wf
thf(fact_545_size_H__char__eq__0,axiom,
    ( size_char
    = ( ^ [C2: char] : zero_zero_nat ) ) ).

% size'_char_eq_0
thf(fact_546_is__walk__not__empty2,axiom,
    ~ ( undire6133010728901294956walk_a @ vertices @ edges @ nil_a ) ).

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

% is_walk_not_empty
thf(fact_548_Diff__iff,axiom,
    ! [C: a,A2: set_a,B4: set_a] :
      ( ( member_a @ C @ ( minus_minus_set_a @ A2 @ B4 ) )
      = ( ( member_a @ C @ A2 )
        & ~ ( member_a @ C @ B4 ) ) ) ).

% Diff_iff
thf(fact_549_Diff__iff,axiom,
    ! [C: set_a,A2: set_set_a,B4: set_set_a] :
      ( ( member_set_a @ C @ ( minus_5736297505244876581_set_a @ A2 @ B4 ) )
      = ( ( member_set_a @ C @ A2 )
        & ~ ( member_set_a @ C @ B4 ) ) ) ).

% Diff_iff
thf(fact_550_DiffI,axiom,
    ! [C: a,A2: set_a,B4: set_a] :
      ( ( member_a @ C @ A2 )
     => ( ~ ( member_a @ C @ B4 )
       => ( member_a @ C @ ( minus_minus_set_a @ A2 @ B4 ) ) ) ) ).

% DiffI
thf(fact_551_DiffI,axiom,
    ! [C: set_a,A2: set_set_a,B4: set_set_a] :
      ( ( member_set_a @ C @ A2 )
     => ( ~ ( member_set_a @ C @ B4 )
       => ( member_set_a @ C @ ( minus_5736297505244876581_set_a @ A2 @ B4 ) ) ) ) ).

% DiffI
thf(fact_552_rev__is__Nil__conv,axiom,
    ! [Xs: list_a] :
      ( ( ( rev_a @ Xs )
        = nil_a )
      = ( Xs = nil_a ) ) ).

% rev_is_Nil_conv
thf(fact_553_rev__is__Nil__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( ( rev_set_a @ Xs )
        = nil_set_a )
      = ( Xs = nil_set_a ) ) ).

% rev_is_Nil_conv
thf(fact_554_Nil__is__rev__conv,axiom,
    ! [Xs: list_a] :
      ( ( nil_a
        = ( rev_a @ Xs ) )
      = ( Xs = nil_a ) ) ).

% Nil_is_rev_conv
thf(fact_555_Nil__is__rev__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( nil_set_a
        = ( rev_set_a @ Xs ) )
      = ( Xs = nil_set_a ) ) ).

% Nil_is_rev_conv
thf(fact_556_set__rev,axiom,
    ! [Xs: list_a] :
      ( ( set_a2 @ ( rev_a @ Xs ) )
      = ( set_a2 @ Xs ) ) ).

% set_rev
thf(fact_557_set__rev,axiom,
    ! [Xs: list_set_a] :
      ( ( set_set_a2 @ ( rev_set_a @ Xs ) )
      = ( set_set_a2 @ Xs ) ) ).

% set_rev
thf(fact_558_drop0,axiom,
    ( ( drop_a @ zero_zero_nat )
    = ( ^ [X3: list_a] : X3 ) ) ).

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

% length_0_conv
thf(fact_560_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_561_take__eq__Nil2,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( nil_a
        = ( take_a @ N2 @ Xs ) )
      = ( ( N2 = zero_zero_nat )
        | ( Xs = nil_a ) ) ) ).

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

% take_eq_Nil2
thf(fact_563_take__eq__Nil,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( ( take_a @ N2 @ Xs )
        = nil_a )
      = ( ( N2 = zero_zero_nat )
        | ( Xs = nil_a ) ) ) ).

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

% take_eq_Nil
thf(fact_565_take0,axiom,
    ( ( take_a @ zero_zero_nat )
    = ( ^ [Xs3: list_a] : nil_a ) ) ).

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

% take0
thf(fact_567_take__all__iff,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( ( take_a @ N2 @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N2 ) ) ).

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

% take_all_iff
thf(fact_569_take__all,axiom,
    ! [Xs: list_a,N2: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N2 )
     => ( ( take_a @ N2 @ Xs )
        = Xs ) ) ).

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

% take_all
thf(fact_571_length__drop,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( size_size_list_a @ ( drop_a @ N2 @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ N2 ) ) ).

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

% length_drop
thf(fact_573_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_574_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_575_drop__all,axiom,
    ! [Xs: list_a,N2: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ N2 )
     => ( ( drop_a @ N2 @ Xs )
        = nil_a ) ) ).

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

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

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

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

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

% drop_eq_Nil2
thf(fact_581_take__0,axiom,
    ! [Xs: list_a] :
      ( ( take_a @ zero_zero_nat @ Xs )
      = nil_a ) ).

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

% take_0
thf(fact_583_drop__take,axiom,
    ! [N2: nat,M3: nat,Xs: list_a] :
      ( ( drop_a @ N2 @ ( take_a @ M3 @ Xs ) )
      = ( take_a @ ( minus_minus_nat @ M3 @ N2 ) @ ( drop_a @ N2 @ Xs ) ) ) ).

% drop_take
thf(fact_584_DiffD2,axiom,
    ! [C: a,A2: set_a,B4: set_a] :
      ( ( member_a @ C @ ( minus_minus_set_a @ A2 @ B4 ) )
     => ~ ( member_a @ C @ B4 ) ) ).

% DiffD2
thf(fact_585_DiffD2,axiom,
    ! [C: set_a,A2: set_set_a,B4: set_set_a] :
      ( ( member_set_a @ C @ ( minus_5736297505244876581_set_a @ A2 @ B4 ) )
     => ~ ( member_set_a @ C @ B4 ) ) ).

% DiffD2
thf(fact_586_DiffD1,axiom,
    ! [C: a,A2: set_a,B4: set_a] :
      ( ( member_a @ C @ ( minus_minus_set_a @ A2 @ B4 ) )
     => ( member_a @ C @ A2 ) ) ).

% DiffD1
thf(fact_587_DiffD1,axiom,
    ! [C: set_a,A2: set_set_a,B4: set_set_a] :
      ( ( member_set_a @ C @ ( minus_5736297505244876581_set_a @ A2 @ B4 ) )
     => ( member_set_a @ C @ A2 ) ) ).

% DiffD1
thf(fact_588_DiffE,axiom,
    ! [C: a,A2: set_a,B4: set_a] :
      ( ( member_a @ C @ ( minus_minus_set_a @ A2 @ B4 ) )
     => ~ ( ( member_a @ C @ A2 )
         => ( member_a @ C @ B4 ) ) ) ).

% DiffE
thf(fact_589_DiffE,axiom,
    ! [C: set_a,A2: set_set_a,B4: set_set_a] :
      ( ( member_set_a @ C @ ( minus_5736297505244876581_set_a @ A2 @ B4 ) )
     => ~ ( ( member_set_a @ C @ A2 )
         => ( member_set_a @ C @ B4 ) ) ) ).

% DiffE
thf(fact_590_list_Oset__sel_I2_J,axiom,
    ! [A: list_a,X2: a] :
      ( ( A != nil_a )
     => ( ( member_a @ X2 @ ( set_a2 @ ( tl_a @ A ) ) )
       => ( member_a @ X2 @ ( set_a2 @ A ) ) ) ) ).

% list.set_sel(2)
thf(fact_591_list_Oset__sel_I2_J,axiom,
    ! [A: list_set_a,X2: set_a] :
      ( ( A != nil_set_a )
     => ( ( member_set_a @ X2 @ ( set_set_a2 @ ( tl_set_a @ A ) ) )
       => ( member_set_a @ X2 @ ( set_set_a2 @ A ) ) ) ) ).

% list.set_sel(2)
thf(fact_592_set__take__subset__set__take,axiom,
    ! [M3: nat,N2: nat,Xs: list_a] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ord_less_eq_set_a @ ( set_a2 @ ( take_a @ M3 @ Xs ) ) @ ( set_a2 @ ( take_a @ N2 @ Xs ) ) ) ) ).

% set_take_subset_set_take
thf(fact_593_set__take__subset__set__take,axiom,
    ! [M3: nat,N2: nat,Xs: list_set_a] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( take_set_a @ M3 @ Xs ) ) @ ( set_set_a2 @ ( take_set_a @ N2 @ Xs ) ) ) ) ).

% set_take_subset_set_take
thf(fact_594_set__drop__subset__set__drop,axiom,
    ! [N2: nat,M3: nat,Xs: list_a] :
      ( ( ord_less_eq_nat @ N2 @ M3 )
     => ( ord_less_eq_set_a @ ( set_a2 @ ( drop_a @ M3 @ Xs ) ) @ ( set_a2 @ ( drop_a @ N2 @ Xs ) ) ) ) ).

% set_drop_subset_set_drop
thf(fact_595_set__drop__subset__set__drop,axiom,
    ! [N2: nat,M3: nat,Xs: list_set_a] :
      ( ( ord_less_eq_nat @ N2 @ M3 )
     => ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( drop_set_a @ M3 @ Xs ) ) @ ( set_set_a2 @ ( drop_set_a @ N2 @ Xs ) ) ) ) ).

% set_drop_subset_set_drop
thf(fact_596_drop__Nil,axiom,
    ! [N2: nat] :
      ( ( drop_a @ N2 @ nil_a )
      = nil_a ) ).

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

% drop_Nil
thf(fact_598_take__Nil,axiom,
    ! [N2: nat] :
      ( ( take_a @ N2 @ nil_a )
      = nil_a ) ).

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

% take_Nil
thf(fact_600_in__set__dropD,axiom,
    ! [X2: a,N2: nat,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ ( drop_a @ N2 @ Xs ) ) )
     => ( member_a @ X2 @ ( set_a2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_601_in__set__dropD,axiom,
    ! [X2: set_a,N2: nat,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ ( drop_set_a @ N2 @ Xs ) ) )
     => ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_602_in__set__takeD,axiom,
    ! [X2: a,N2: nat,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ ( take_a @ N2 @ Xs ) ) )
     => ( member_a @ X2 @ ( set_a2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_603_in__set__takeD,axiom,
    ! [X2: set_a,N2: nat,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ ( take_set_a @ N2 @ Xs ) ) )
     => ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_604_take__equalityI,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ! [I2: nat] :
          ( ( take_a @ I2 @ Xs )
          = ( take_a @ I2 @ Ys2 ) )
     => ( Xs = Ys2 ) ) ).

% take_equalityI
thf(fact_605_set__take__subset,axiom,
    ! [N2: nat,Xs: list_a] : ( ord_less_eq_set_a @ ( set_a2 @ ( take_a @ N2 @ Xs ) ) @ ( set_a2 @ Xs ) ) ).

% set_take_subset
thf(fact_606_set__take__subset,axiom,
    ! [N2: nat,Xs: list_set_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( take_set_a @ N2 @ Xs ) ) @ ( set_set_a2 @ Xs ) ) ).

% set_take_subset
thf(fact_607_set__drop__subset,axiom,
    ! [N2: nat,Xs: list_a] : ( ord_less_eq_set_a @ ( set_a2 @ ( drop_a @ N2 @ Xs ) ) @ ( set_a2 @ Xs ) ) ).

% set_drop_subset
thf(fact_608_set__drop__subset,axiom,
    ! [N2: nat,Xs: list_set_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( drop_set_a @ N2 @ Xs ) ) @ ( set_set_a2 @ Xs ) ) ).

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

% drop_0
thf(fact_610_distinct__take,axiom,
    ! [Xs: list_a,I: nat] :
      ( ( distinct_a @ Xs )
     => ( distinct_a @ ( take_a @ I @ Xs ) ) ) ).

% distinct_take
thf(fact_611_distinct__take,axiom,
    ! [Xs: list_set_a,I: nat] :
      ( ( distinct_set_a @ Xs )
     => ( distinct_set_a @ ( take_set_a @ I @ Xs ) ) ) ).

% distinct_take
thf(fact_612_subset__code_I1_J,axiom,
    ! [Xs: list_a,B4: set_a] :
      ( ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ B4 )
      = ( ! [X3: a] :
            ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
           => ( member_a @ X3 @ B4 ) ) ) ) ).

% subset_code(1)
thf(fact_613_subset__code_I1_J,axiom,
    ! [Xs: list_set_a,B4: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ Xs ) @ B4 )
      = ( ! [X3: set_a] :
            ( ( member_set_a @ X3 @ ( set_set_a2 @ Xs ) )
           => ( member_set_a @ X3 @ B4 ) ) ) ) ).

% subset_code(1)
thf(fact_614_distinct__drop,axiom,
    ! [Xs: list_a,I: nat] :
      ( ( distinct_a @ Xs )
     => ( distinct_a @ ( drop_a @ I @ Xs ) ) ) ).

% distinct_drop
thf(fact_615_distinct__drop,axiom,
    ! [Xs: list_set_a,I: nat] :
      ( ( distinct_set_a @ Xs )
     => ( distinct_set_a @ ( drop_set_a @ I @ Xs ) ) ) ).

% distinct_drop
thf(fact_616_tl__drop,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( tl_a @ ( drop_a @ N2 @ Xs ) )
      = ( drop_a @ N2 @ ( tl_a @ Xs ) ) ) ).

% tl_drop
thf(fact_617_distinct_Osimps_I1_J,axiom,
    distinct_a @ nil_a ).

% distinct.simps(1)
thf(fact_618_distinct_Osimps_I1_J,axiom,
    distinct_set_a @ nil_set_a ).

% distinct.simps(1)
thf(fact_619_rev_Osimps_I1_J,axiom,
    ( ( rev_a @ nil_a )
    = nil_a ) ).

% rev.simps(1)
thf(fact_620_rev_Osimps_I1_J,axiom,
    ( ( rev_set_a @ nil_set_a )
    = nil_set_a ) ).

% rev.simps(1)
thf(fact_621_list_Osel_I2_J,axiom,
    ( ( tl_a @ nil_a )
    = nil_a ) ).

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

% list.sel(2)
thf(fact_623_drop__rev,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( drop_a @ N2 @ ( rev_a @ Xs ) )
      = ( rev_a @ ( take_a @ ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ N2 ) @ Xs ) ) ) ).

% drop_rev
thf(fact_624_drop__rev,axiom,
    ! [N2: nat,Xs: list_set_a] :
      ( ( drop_set_a @ N2 @ ( rev_set_a @ Xs ) )
      = ( rev_set_a @ ( take_set_a @ ( minus_minus_nat @ ( size_size_list_set_a @ Xs ) @ N2 ) @ Xs ) ) ) ).

% drop_rev
thf(fact_625_rev__drop,axiom,
    ! [I: nat,Xs: list_a] :
      ( ( rev_a @ ( drop_a @ I @ Xs ) )
      = ( take_a @ ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ I ) @ ( rev_a @ Xs ) ) ) ).

% rev_drop
thf(fact_626_rev__drop,axiom,
    ! [I: nat,Xs: list_set_a] :
      ( ( rev_set_a @ ( drop_set_a @ I @ Xs ) )
      = ( take_set_a @ ( minus_minus_nat @ ( size_size_list_set_a @ Xs ) @ I ) @ ( rev_set_a @ Xs ) ) ) ).

% rev_drop
thf(fact_627_rev__take,axiom,
    ! [I: nat,Xs: list_a] :
      ( ( rev_a @ ( take_a @ I @ Xs ) )
      = ( drop_a @ ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ I ) @ ( rev_a @ Xs ) ) ) ).

% rev_take
thf(fact_628_rev__take,axiom,
    ! [I: nat,Xs: list_set_a] :
      ( ( rev_set_a @ ( take_set_a @ I @ Xs ) )
      = ( drop_set_a @ ( minus_minus_nat @ ( size_size_list_set_a @ Xs ) @ I ) @ ( rev_set_a @ Xs ) ) ) ).

% rev_take
thf(fact_629_take__rev,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( take_a @ N2 @ ( rev_a @ Xs ) )
      = ( rev_a @ ( drop_a @ ( minus_minus_nat @ ( size_size_list_a @ Xs ) @ N2 ) @ Xs ) ) ) ).

% take_rev
thf(fact_630_take__rev,axiom,
    ! [N2: nat,Xs: list_set_a] :
      ( ( take_set_a @ N2 @ ( rev_set_a @ Xs ) )
      = ( rev_set_a @ ( drop_set_a @ ( minus_minus_nat @ ( size_size_list_set_a @ Xs ) @ N2 ) @ Xs ) ) ) ).

% take_rev
thf(fact_631_list_Osize_I3_J,axiom,
    ( ( size_size_list_a @ nil_a )
    = zero_zero_nat ) ).

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

% list.size(3)
thf(fact_633_ulgraph_Ois__walk__not__empty,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs )
       => ( Xs != nil_set_a ) ) ) ).

% ulgraph.is_walk_not_empty
thf(fact_634_ulgraph_Ois__walk__not__empty,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
       => ( Xs != nil_a ) ) ) ).

% ulgraph.is_walk_not_empty
thf(fact_635_ulgraph_Ois__walk__not__empty2,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ~ ( undire3014741414213135564_set_a @ Vertices @ Edges @ nil_set_a ) ) ).

% ulgraph.is_walk_not_empty2
thf(fact_636_ulgraph_Ois__walk__not__empty2,axiom,
    ! [Vertices: set_a,Edges: set_set_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ~ ( undire6133010728901294956walk_a @ Vertices @ Edges @ nil_a ) ) ).

% ulgraph.is_walk_not_empty2
thf(fact_637_tl__take,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( tl_a @ ( take_a @ N2 @ Xs ) )
      = ( take_a @ ( minus_minus_nat @ N2 @ one_one_nat ) @ ( tl_a @ Xs ) ) ) ).

% tl_take
thf(fact_638_length__pos__if__in__set,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_a @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_639_length__pos__if__in__set,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_set_a @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_640_ulgraph_Ois__walk__wf,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs )
       => ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ Xs ) @ Vertices ) ) ) ).

% ulgraph.is_walk_wf
thf(fact_641_ulgraph_Ois__walk__wf,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
       => ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ Vertices ) ) ) ).

% ulgraph.is_walk_wf
thf(fact_642_ulgraph_Ois__walk__drop,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,W: list_set_a,N2: nat] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ W )
       => ( ( ord_less_nat @ N2 @ ( size_size_list_set_a @ W ) )
         => ( undire3014741414213135564_set_a @ Vertices @ Edges @ ( drop_set_a @ N2 @ W ) ) ) ) ) ).

% ulgraph.is_walk_drop
thf(fact_643_ulgraph_Ois__walk__drop,axiom,
    ! [Vertices: set_a,Edges: set_set_a,W: list_a,N2: nat] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ W )
       => ( ( ord_less_nat @ N2 @ ( size_size_list_a @ W ) )
         => ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( drop_a @ N2 @ W ) ) ) ) ) ).

% ulgraph.is_walk_drop
thf(fact_644_ulgraph_Ois__walk__take,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,W: list_set_a,N2: nat] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ W )
       => ( ( ord_less_nat @ zero_zero_nat @ N2 )
         => ( ( ord_less_eq_nat @ N2 @ ( size_size_list_set_a @ W ) )
           => ( undire3014741414213135564_set_a @ Vertices @ Edges @ ( take_set_a @ N2 @ W ) ) ) ) ) ) ).

% ulgraph.is_walk_take
thf(fact_645_ulgraph_Ois__walk__take,axiom,
    ! [Vertices: set_a,Edges: set_set_a,W: list_a,N2: nat] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ W )
       => ( ( ord_less_nat @ zero_zero_nat @ N2 )
         => ( ( ord_less_eq_nat @ N2 @ ( size_size_list_a @ W ) )
           => ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( take_a @ N2 @ W ) ) ) ) ) ) ).

% ulgraph.is_walk_take
thf(fact_646_is__gen__path__options,axiom,
    ! [P: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P )
      = ( ( undire2407311113669455967ycle_a @ vertices @ edges @ P )
        | ( undire427332500224447920path_a @ vertices @ edges @ P )
        | ? [X3: a] :
            ( ( member_a @ X3 @ vertices )
            & ( P
              = ( cons_a @ X3 @ nil_a ) ) ) ) ) ).

% is_gen_path_options
thf(fact_647_connecting__walk__self,axiom,
    ! [U: a] :
      ( ( member_a @ U @ vertices )
     => ( connecting_walk_a @ vertices @ edges @ U @ U @ ( cons_a @ U @ nil_a ) ) ) ).

% connecting_walk_self
thf(fact_648_connecting__path__self,axiom,
    ! [U: a] :
      ( ( member_a @ U @ vertices )
     => ( connecting_path_a @ vertices @ edges @ U @ U @ ( cons_a @ U @ nil_a ) ) ) ).

% connecting_path_self
thf(fact_649_is__gen__path__trivial,axiom,
    ! [X2: a] :
      ( ( member_a @ X2 @ vertices )
     => ( undire3562951555376170320path_a @ vertices @ edges @ ( cons_a @ X2 @ nil_a ) ) ) ).

% is_gen_path_trivial
thf(fact_650_is__walk__drop__hd,axiom,
    ! [Ys2: list_a,Y: a] :
      ( ( Ys2 != nil_a )
     => ( ( undire6133010728901294956walk_a @ vertices @ edges @ ( cons_a @ Y @ Ys2 ) )
       => ( undire6133010728901294956walk_a @ vertices @ edges @ Ys2 ) ) ) ).

% is_walk_drop_hd
thf(fact_651_walk__edges_Ocases,axiom,
    ! [X2: list_a] :
      ( ( X2 != nil_a )
     => ( ! [X4: a] :
            ( X2
           != ( cons_a @ X4 @ nil_a ) )
       => ~ ! [X4: a,Y3: a,Ys: list_a] :
              ( X2
             != ( cons_a @ X4 @ ( cons_a @ Y3 @ Ys ) ) ) ) ) ).

% walk_edges.cases
thf(fact_652_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_653_is__walk__singleton,axiom,
    ! [U: a] :
      ( ( member_a @ U @ vertices )
     => ( undire6133010728901294956walk_a @ vertices @ edges @ ( cons_a @ U @ nil_a ) ) ) ).

% is_walk_singleton
thf(fact_654_singleton__rev__conv,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( ( cons_set_a @ X2 @ nil_set_a )
        = ( rev_set_a @ Xs ) )
      = ( ( cons_set_a @ X2 @ nil_set_a )
        = Xs ) ) ).

% singleton_rev_conv
thf(fact_655_singleton__rev__conv,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( ( cons_a @ X2 @ nil_a )
        = ( rev_a @ Xs ) )
      = ( ( cons_a @ X2 @ nil_a )
        = Xs ) ) ).

% singleton_rev_conv
thf(fact_656_rev__singleton__conv,axiom,
    ! [Xs: list_set_a,X2: set_a] :
      ( ( ( rev_set_a @ Xs )
        = ( cons_set_a @ X2 @ nil_set_a ) )
      = ( Xs
        = ( cons_set_a @ X2 @ nil_set_a ) ) ) ).

% rev_singleton_conv
thf(fact_657_rev__singleton__conv,axiom,
    ! [Xs: list_a,X2: a] :
      ( ( ( rev_a @ Xs )
        = ( cons_a @ X2 @ nil_a ) )
      = ( Xs
        = ( cons_a @ X2 @ nil_a ) ) ) ).

% rev_singleton_conv
thf(fact_658_transpose_Ocases,axiom,
    ! [X2: list_list_set_a] :
      ( ( X2 != nil_list_set_a )
     => ( ! [Xss: list_list_set_a] :
            ( X2
           != ( cons_list_set_a @ nil_set_a @ Xss ) )
       => ~ ! [X4: set_a,Xs2: list_set_a,Xss: list_list_set_a] :
              ( X2
             != ( cons_list_set_a @ ( cons_set_a @ X4 @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_659_transpose_Ocases,axiom,
    ! [X2: list_list_a] :
      ( ( X2 != nil_list_a )
     => ( ! [Xss: list_list_a] :
            ( X2
           != ( cons_list_a @ nil_a @ Xss ) )
       => ~ ! [X4: a,Xs2: list_a,Xss: list_list_a] :
              ( X2
             != ( cons_list_a @ ( cons_a @ X4 @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_660_not__Cons__self2,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( cons_a @ X2 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_661_list__nonempty__induct,axiom,
    ! [Xs: list_set_a,P3: list_set_a > $o] :
      ( ( Xs != nil_set_a )
     => ( ! [X4: set_a] : ( P3 @ ( cons_set_a @ X4 @ nil_set_a ) )
       => ( ! [X4: set_a,Xs2: list_set_a] :
              ( ( Xs2 != nil_set_a )
             => ( ( P3 @ Xs2 )
               => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) ) ) )
         => ( P3 @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_662_list__nonempty__induct,axiom,
    ! [Xs: list_a,P3: list_a > $o] :
      ( ( Xs != nil_a )
     => ( ! [X4: a] : ( P3 @ ( cons_a @ X4 @ nil_a ) )
       => ( ! [X4: a,Xs2: list_a] :
              ( ( Xs2 != nil_a )
             => ( ( P3 @ Xs2 )
               => ( P3 @ ( cons_a @ X4 @ Xs2 ) ) ) )
         => ( P3 @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_663_list__induct2_H,axiom,
    ! [P3: list_set_a > list_set_a > $o,Xs: list_set_a,Ys2: list_set_a] :
      ( ( P3 @ nil_set_a @ nil_set_a )
     => ( ! [X4: set_a,Xs2: list_set_a] : ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ nil_set_a )
       => ( ! [Y3: set_a,Ys: list_set_a] : ( P3 @ nil_set_a @ ( cons_set_a @ Y3 @ Ys ) )
         => ( ! [X4: set_a,Xs2: list_set_a,Y3: set_a,Ys: list_set_a] :
                ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) ) )
           => ( P3 @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_664_list__induct2_H,axiom,
    ! [P3: list_set_a > list_a > $o,Xs: list_set_a,Ys2: list_a] :
      ( ( P3 @ nil_set_a @ nil_a )
     => ( ! [X4: set_a,Xs2: list_set_a] : ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ nil_a )
       => ( ! [Y3: a,Ys: list_a] : ( P3 @ nil_set_a @ ( cons_a @ Y3 @ Ys ) )
         => ( ! [X4: set_a,Xs2: list_set_a,Y3: a,Ys: list_a] :
                ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) ) )
           => ( P3 @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_665_list__induct2_H,axiom,
    ! [P3: list_a > list_set_a > $o,Xs: list_a,Ys2: list_set_a] :
      ( ( P3 @ nil_a @ nil_set_a )
     => ( ! [X4: a,Xs2: list_a] : ( P3 @ ( cons_a @ X4 @ Xs2 ) @ nil_set_a )
       => ( ! [Y3: set_a,Ys: list_set_a] : ( P3 @ nil_a @ ( cons_set_a @ Y3 @ Ys ) )
         => ( ! [X4: a,Xs2: list_a,Y3: set_a,Ys: list_set_a] :
                ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) ) )
           => ( P3 @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_666_list__induct2_H,axiom,
    ! [P3: list_a > list_a > $o,Xs: list_a,Ys2: list_a] :
      ( ( P3 @ nil_a @ nil_a )
     => ( ! [X4: a,Xs2: list_a] : ( P3 @ ( cons_a @ X4 @ Xs2 ) @ nil_a )
       => ( ! [Y3: a,Ys: list_a] : ( P3 @ nil_a @ ( cons_a @ Y3 @ Ys ) )
         => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a] :
                ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) ) )
           => ( P3 @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_667_neq__Nil__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
      = ( ? [Y4: set_a,Ys4: list_set_a] :
            ( Xs
            = ( cons_set_a @ Y4 @ Ys4 ) ) ) ) ).

% neq_Nil_conv
thf(fact_668_neq__Nil__conv,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
      = ( ? [Y4: a,Ys4: list_a] :
            ( Xs
            = ( cons_a @ Y4 @ Ys4 ) ) ) ) ).

% neq_Nil_conv
thf(fact_669_min__list_Ocases,axiom,
    ! [X2: list_set_a] :
      ( ! [X4: set_a,Xs2: list_set_a] :
          ( X2
         != ( cons_set_a @ X4 @ Xs2 ) )
     => ( X2 = nil_set_a ) ) ).

% min_list.cases
thf(fact_670_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_671_list_Oexhaust,axiom,
    ! [Y: list_a] :
      ( ( Y != nil_a )
     => ~ ! [X212: a,X222: list_a] :
            ( Y
           != ( cons_a @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_672_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_673_list_OdiscI,axiom,
    ! [List: list_a,X21: a,X22: list_a] :
      ( ( List
        = ( cons_a @ X21 @ X22 ) )
     => ( List != nil_a ) ) ).

% list.discI
thf(fact_674_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_675_list_Odistinct_I1_J,axiom,
    ! [X21: a,X22: list_a] :
      ( nil_a
     != ( cons_a @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_676_comp__sgraph_Owalk__edges_Ocases,axiom,
    ! [X2: list_set_a] :
      ( ( X2 != nil_set_a )
     => ( ! [X4: set_a] :
            ( X2
           != ( cons_set_a @ X4 @ nil_set_a ) )
       => ~ ! [X4: set_a,Y3: set_a,Ys: list_set_a] :
              ( X2
             != ( cons_set_a @ X4 @ ( cons_set_a @ Y3 @ Ys ) ) ) ) ) ).

% comp_sgraph.walk_edges.cases
thf(fact_677_comp__sgraph_Owalk__edges_Ocases,axiom,
    ! [X2: list_a] :
      ( ( X2 != nil_a )
     => ( ! [X4: a] :
            ( X2
           != ( cons_a @ X4 @ nil_a ) )
       => ~ ! [X4: a,Y3: a,Ys: list_a] :
              ( X2
             != ( cons_a @ X4 @ ( cons_a @ Y3 @ Ys ) ) ) ) ) ).

% comp_sgraph.walk_edges.cases
thf(fact_678_set__ConsD,axiom,
    ! [Y: set_a,X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ Y @ ( set_set_a2 @ ( cons_set_a @ X2 @ Xs ) ) )
     => ( ( Y = X2 )
        | ( member_set_a @ Y @ ( set_set_a2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_679_set__ConsD,axiom,
    ! [Y: a,X2: a,Xs: list_a] :
      ( ( member_a @ Y @ ( set_a2 @ ( cons_a @ X2 @ Xs ) ) )
     => ( ( Y = X2 )
        | ( member_a @ Y @ ( set_a2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_680_list_Oset__cases,axiom,
    ! [E: set_a,A: list_set_a] :
      ( ( member_set_a @ E @ ( set_set_a2 @ A ) )
     => ( ! [Z22: list_set_a] :
            ( A
           != ( cons_set_a @ E @ Z22 ) )
       => ~ ! [Z1: set_a,Z22: list_set_a] :
              ( ( A
                = ( cons_set_a @ Z1 @ Z22 ) )
             => ~ ( member_set_a @ E @ ( set_set_a2 @ Z22 ) ) ) ) ) ).

% list.set_cases
thf(fact_681_list_Oset__cases,axiom,
    ! [E: a,A: list_a] :
      ( ( member_a @ E @ ( set_a2 @ A ) )
     => ( ! [Z22: list_a] :
            ( A
           != ( cons_a @ E @ Z22 ) )
       => ~ ! [Z1: a,Z22: list_a] :
              ( ( A
                = ( cons_a @ Z1 @ Z22 ) )
             => ~ ( member_a @ E @ ( set_a2 @ Z22 ) ) ) ) ) ).

% list.set_cases
thf(fact_682_list_Oset__intros_I1_J,axiom,
    ! [X21: set_a,X22: list_set_a] : ( member_set_a @ X21 @ ( set_set_a2 @ ( cons_set_a @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_683_list_Oset__intros_I1_J,axiom,
    ! [X21: a,X22: list_a] : ( member_a @ X21 @ ( set_a2 @ ( cons_a @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_684_list_Oset__intros_I2_J,axiom,
    ! [Y: set_a,X22: list_set_a,X21: set_a] :
      ( ( member_set_a @ Y @ ( set_set_a2 @ X22 ) )
     => ( member_set_a @ Y @ ( set_set_a2 @ ( cons_set_a @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_685_list_Oset__intros_I2_J,axiom,
    ! [Y: a,X22: list_a,X21: a] :
      ( ( member_a @ Y @ ( set_a2 @ X22 ) )
     => ( member_a @ Y @ ( set_a2 @ ( cons_a @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_686_distinct__length__2__or__more,axiom,
    ! [A: set_a,B: set_a,Xs: list_set_a] :
      ( ( distinct_set_a @ ( cons_set_a @ A @ ( cons_set_a @ B @ Xs ) ) )
      = ( ( A != B )
        & ( distinct_set_a @ ( cons_set_a @ A @ Xs ) )
        & ( distinct_set_a @ ( cons_set_a @ B @ Xs ) ) ) ) ).

% distinct_length_2_or_more
thf(fact_687_distinct__length__2__or__more,axiom,
    ! [A: a,B: a,Xs: list_a] :
      ( ( distinct_a @ ( cons_a @ A @ ( cons_a @ B @ Xs ) ) )
      = ( ( A != B )
        & ( distinct_a @ ( cons_a @ A @ Xs ) )
        & ( distinct_a @ ( cons_a @ B @ Xs ) ) ) ) ).

% distinct_length_2_or_more
thf(fact_688_list_Osel_I3_J,axiom,
    ! [X21: a,X22: list_a] :
      ( ( tl_a @ ( cons_a @ X21 @ X22 ) )
      = X22 ) ).

% list.sel(3)
thf(fact_689_set__subset__Cons,axiom,
    ! [Xs: list_a,X2: a] : ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ ( set_a2 @ ( cons_a @ X2 @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_690_set__subset__Cons,axiom,
    ! [Xs: list_set_a,X2: set_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ Xs ) @ ( set_set_a2 @ ( cons_set_a @ X2 @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_691_list__induct4,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_a,Ws: list_a,P3: list_a > list_a > list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P3 @ nil_a @ nil_a @ nil_a @ nil_a )
           => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a,Z3: a,Zs2: list_a,W2: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs2 )
                    = ( size_size_list_a @ Ys ) )
                 => ( ( ( size_size_list_a @ Ys )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_692_list__induct4,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_a,Ws: list_set_a,P3: list_a > list_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P3 @ nil_a @ nil_a @ nil_a @ nil_set_a )
           => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a,Z3: a,Zs2: list_a,W2: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_a @ Xs2 )
                    = ( size_size_list_a @ Ys ) )
                 => ( ( ( size_size_list_a @ Ys )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_693_list__induct4,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_set_a,Ws: list_a,P3: list_a > list_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P3 @ nil_a @ nil_a @ nil_set_a @ nil_a )
           => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a,Z3: set_a,Zs2: list_set_a,W2: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs2 )
                    = ( size_size_list_a @ Ys ) )
                 => ( ( ( size_size_list_a @ Ys )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_694_list__induct4,axiom,
    ! [Xs: list_a,Ys2: list_set_a,Zs: list_a,Ws: list_a,P3: list_a > list_set_a > list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( ( size_size_list_set_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P3 @ nil_a @ nil_set_a @ nil_a @ nil_a )
           => ( ! [X4: a,Xs2: list_a,Y3: set_a,Ys: list_set_a,Z3: a,Zs2: list_a,W2: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs2 )
                    = ( size_size_list_set_a @ Ys ) )
                 => ( ( ( size_size_list_set_a @ Ys )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_695_list__induct4,axiom,
    ! [Xs: list_set_a,Ys2: list_a,Zs: list_a,Ws: list_a,P3: list_set_a > list_a > list_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P3 @ nil_set_a @ nil_a @ nil_a @ nil_a )
           => ( ! [X4: set_a,Xs2: list_set_a,Y3: a,Ys: list_a,Z3: a,Zs2: list_a,W2: a,Ws2: list_a] :
                  ( ( ( size_size_list_set_a @ Xs2 )
                    = ( size_size_list_a @ Ys ) )
                 => ( ( ( size_size_list_a @ Ys )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_696_list__induct4,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_set_a,Ws: list_set_a,P3: list_a > list_a > list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P3 @ nil_a @ nil_a @ nil_set_a @ nil_set_a )
           => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a,Z3: set_a,Zs2: list_set_a,W2: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_a @ Xs2 )
                    = ( size_size_list_a @ Ys ) )
                 => ( ( ( size_size_list_a @ Ys )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_697_list__induct4,axiom,
    ! [Xs: list_a,Ys2: list_set_a,Zs: list_a,Ws: list_set_a,P3: list_a > list_set_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( ( size_size_list_set_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P3 @ nil_a @ nil_set_a @ nil_a @ nil_set_a )
           => ( ! [X4: a,Xs2: list_a,Y3: set_a,Ys: list_set_a,Z3: a,Zs2: list_a,W2: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_a @ Xs2 )
                    = ( size_size_list_set_a @ Ys ) )
                 => ( ( ( size_size_list_set_a @ Ys )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_698_list__induct4,axiom,
    ! [Xs: list_a,Ys2: list_set_a,Zs: list_set_a,Ws: list_a,P3: list_a > list_set_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( ( size_size_list_set_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P3 @ nil_a @ nil_set_a @ nil_set_a @ nil_a )
           => ( ! [X4: a,Xs2: list_a,Y3: set_a,Ys: list_set_a,Z3: set_a,Zs2: list_set_a,W2: a,Ws2: list_a] :
                  ( ( ( size_size_list_a @ Xs2 )
                    = ( size_size_list_set_a @ Ys ) )
                 => ( ( ( size_size_list_set_a @ Ys )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_699_list__induct4,axiom,
    ! [Xs: list_set_a,Ys2: list_a,Zs: list_a,Ws: list_set_a,P3: list_set_a > list_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( ( size_size_list_a @ Zs )
            = ( size_size_list_set_a @ Ws ) )
         => ( ( P3 @ nil_set_a @ nil_a @ nil_a @ nil_set_a )
           => ( ! [X4: set_a,Xs2: list_set_a,Y3: a,Ys: list_a,Z3: a,Zs2: list_a,W2: set_a,Ws2: list_set_a] :
                  ( ( ( size_size_list_set_a @ Xs2 )
                    = ( size_size_list_a @ Ys ) )
                 => ( ( ( size_size_list_a @ Ys )
                      = ( size_size_list_a @ Zs2 ) )
                   => ( ( ( size_size_list_a @ Zs2 )
                        = ( size_size_list_set_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) @ ( cons_set_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_700_list__induct4,axiom,
    ! [Xs: list_set_a,Ys2: list_a,Zs: list_set_a,Ws: list_a,P3: list_set_a > list_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( ( size_size_list_set_a @ Zs )
            = ( size_size_list_a @ Ws ) )
         => ( ( P3 @ nil_set_a @ nil_a @ nil_set_a @ nil_a )
           => ( ! [X4: set_a,Xs2: list_set_a,Y3: a,Ys: list_a,Z3: set_a,Zs2: list_set_a,W2: a,Ws2: list_a] :
                  ( ( ( size_size_list_set_a @ Xs2 )
                    = ( size_size_list_a @ Ys ) )
                 => ( ( ( size_size_list_a @ Ys )
                      = ( size_size_list_set_a @ Zs2 ) )
                   => ( ( ( size_size_list_set_a @ Zs2 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P3 @ Xs2 @ Ys @ Zs2 @ Ws2 )
                       => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) @ ( cons_a @ W2 @ Ws2 ) ) ) ) ) )
             => ( P3 @ Xs @ Ys2 @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_701_list__induct3,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_a,P3: list_a > list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( P3 @ nil_a @ nil_a @ nil_a )
         => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_a @ Xs2 )
                  = ( size_size_list_a @ Ys ) )
               => ( ( ( size_size_list_a @ Ys )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_702_list__induct3,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_set_a,P3: list_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P3 @ nil_a @ nil_a @ nil_set_a )
         => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_a @ Xs2 )
                  = ( size_size_list_a @ Ys ) )
               => ( ( ( size_size_list_a @ Ys )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_703_list__induct3,axiom,
    ! [Xs: list_a,Ys2: list_set_a,Zs: list_a,P3: list_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( ( size_size_list_set_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( P3 @ nil_a @ nil_set_a @ nil_a )
         => ( ! [X4: a,Xs2: list_a,Y3: set_a,Ys: list_set_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_a @ Xs2 )
                  = ( size_size_list_set_a @ Ys ) )
               => ( ( ( size_size_list_set_a @ Ys )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_704_list__induct3,axiom,
    ! [Xs: list_a,Ys2: list_set_a,Zs: list_set_a,P3: list_a > list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( ( size_size_list_set_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P3 @ nil_a @ nil_set_a @ nil_set_a )
         => ( ! [X4: a,Xs2: list_a,Y3: set_a,Ys: list_set_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_a @ Xs2 )
                  = ( size_size_list_set_a @ Ys ) )
               => ( ( ( size_size_list_set_a @ Ys )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_705_list__induct3,axiom,
    ! [Xs: list_set_a,Ys2: list_a,Zs: list_a,P3: list_set_a > list_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( P3 @ nil_set_a @ nil_a @ nil_a )
         => ( ! [X4: set_a,Xs2: list_set_a,Y3: a,Ys: list_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_set_a @ Xs2 )
                  = ( size_size_list_a @ Ys ) )
               => ( ( ( size_size_list_a @ Ys )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_706_list__induct3,axiom,
    ! [Xs: list_set_a,Ys2: list_a,Zs: list_set_a,P3: list_set_a > list_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P3 @ nil_set_a @ nil_a @ nil_set_a )
         => ( ! [X4: set_a,Xs2: list_set_a,Y3: a,Ys: list_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_set_a @ Xs2 )
                  = ( size_size_list_a @ Ys ) )
               => ( ( ( size_size_list_a @ Ys )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_707_list__induct3,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a,Zs: list_a,P3: list_set_a > list_set_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( ( size_size_list_set_a @ Ys2 )
          = ( size_size_list_a @ Zs ) )
       => ( ( P3 @ nil_set_a @ nil_set_a @ nil_a )
         => ( ! [X4: set_a,Xs2: list_set_a,Y3: set_a,Ys: list_set_a,Z3: a,Zs2: list_a] :
                ( ( ( size_size_list_set_a @ Xs2 )
                  = ( size_size_list_set_a @ Ys ) )
               => ( ( ( size_size_list_set_a @ Ys )
                    = ( size_size_list_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) @ ( cons_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_708_list__induct3,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a,Zs: list_set_a,P3: list_set_a > list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( ( size_size_list_set_a @ Ys2 )
          = ( size_size_list_set_a @ Zs ) )
       => ( ( P3 @ nil_set_a @ nil_set_a @ nil_set_a )
         => ( ! [X4: set_a,Xs2: list_set_a,Y3: set_a,Ys: list_set_a,Z3: set_a,Zs2: list_set_a] :
                ( ( ( size_size_list_set_a @ Xs2 )
                  = ( size_size_list_set_a @ Ys ) )
               => ( ( ( size_size_list_set_a @ Ys )
                    = ( size_size_list_set_a @ Zs2 ) )
                 => ( ( P3 @ Xs2 @ Ys @ Zs2 )
                   => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) @ ( cons_set_a @ Z3 @ Zs2 ) ) ) ) )
           => ( P3 @ Xs @ Ys2 @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_709_list__induct2,axiom,
    ! [Xs: list_a,Ys2: list_a,P3: list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P3 @ nil_a @ nil_a )
       => ( ! [X4: a,Xs2: list_a,Y3: a,Ys: list_a] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_a @ Ys ) )
             => ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) ) ) )
         => ( P3 @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_710_list__induct2,axiom,
    ! [Xs: list_a,Ys2: list_set_a,P3: list_a > list_set_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( P3 @ nil_a @ nil_set_a )
       => ( ! [X4: a,Xs2: list_a,Y3: set_a,Ys: list_set_a] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_set_a @ Ys ) )
             => ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) ) ) )
         => ( P3 @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_711_list__induct2,axiom,
    ! [Xs: list_set_a,Ys2: list_a,P3: list_set_a > list_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P3 @ nil_set_a @ nil_a )
       => ( ! [X4: set_a,Xs2: list_set_a,Y3: a,Ys: list_a] :
              ( ( ( size_size_list_set_a @ Xs2 )
                = ( size_size_list_a @ Ys ) )
             => ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_a @ Y3 @ Ys ) ) ) )
         => ( P3 @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_712_list__induct2,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a,P3: list_set_a > list_set_a > $o] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ( P3 @ nil_set_a @ nil_set_a )
       => ( ! [X4: set_a,Xs2: list_set_a,Y3: set_a,Ys: list_set_a] :
              ( ( ( size_size_list_set_a @ Xs2 )
                = ( size_size_list_set_a @ Ys ) )
             => ( ( P3 @ Xs2 @ Ys )
               => ( P3 @ ( cons_set_a @ X4 @ Xs2 ) @ ( cons_set_a @ Y3 @ Ys ) ) ) )
         => ( P3 @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_713_impossible__Cons,axiom,
    ! [Xs: list_a,Ys2: list_a,X2: a] :
      ( ( ord_less_eq_nat @ ( size_size_list_a @ Xs ) @ ( size_size_list_a @ Ys2 ) )
     => ( Xs
       != ( cons_a @ X2 @ Ys2 ) ) ) ).

% impossible_Cons
thf(fact_714_impossible__Cons,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a,X2: set_a] :
      ( ( ord_less_eq_nat @ ( size_size_list_set_a @ Xs ) @ ( size_size_list_set_a @ Ys2 ) )
     => ( Xs
       != ( cons_set_a @ X2 @ Ys2 ) ) ) ).

% impossible_Cons
thf(fact_715_distinct__singleton,axiom,
    ! [X2: set_a] : ( distinct_set_a @ ( cons_set_a @ X2 @ nil_set_a ) ) ).

% distinct_singleton
thf(fact_716_distinct__singleton,axiom,
    ! [X2: a] : ( distinct_a @ ( cons_a @ X2 @ nil_a ) ) ).

% distinct_singleton
thf(fact_717_ulgraph_Owalk__edges_Ocases,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,X2: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( X2 != nil_set_a )
       => ( ! [X4: set_a] :
              ( X2
             != ( cons_set_a @ X4 @ nil_set_a ) )
         => ~ ! [X4: set_a,Y3: set_a,Ys: list_set_a] :
                ( X2
               != ( cons_set_a @ X4 @ ( cons_set_a @ Y3 @ Ys ) ) ) ) ) ) ).

% ulgraph.walk_edges.cases
thf(fact_718_ulgraph_Owalk__edges_Ocases,axiom,
    ! [Vertices: set_a,Edges: set_set_a,X2: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( X2 != nil_a )
       => ( ! [X4: a] :
              ( X2
             != ( cons_a @ X4 @ nil_a ) )
         => ~ ! [X4: a,Y3: a,Ys: list_a] :
                ( X2
               != ( cons_a @ X4 @ ( cons_a @ Y3 @ Ys ) ) ) ) ) ) ).

% ulgraph.walk_edges.cases
thf(fact_719_distinct_Osimps_I2_J,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( distinct_set_a @ ( cons_set_a @ X2 @ Xs ) )
      = ( ~ ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
        & ( distinct_set_a @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_720_distinct_Osimps_I2_J,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( distinct_a @ ( cons_a @ X2 @ Xs ) )
      = ( ~ ( member_a @ X2 @ ( set_a2 @ Xs ) )
        & ( distinct_a @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_721_Nil__tl,axiom,
    ! [Xs: list_set_a] :
      ( ( nil_set_a
        = ( tl_set_a @ Xs ) )
      = ( ( Xs = nil_set_a )
        | ? [X3: set_a] :
            ( Xs
            = ( cons_set_a @ X3 @ nil_set_a ) ) ) ) ).

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

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

% tl_Nil
thf(fact_724_tl__Nil,axiom,
    ! [Xs: list_a] :
      ( ( ( tl_a @ Xs )
        = nil_a )
      = ( ( Xs = nil_a )
        | ? [X3: a] :
            ( Xs
            = ( cons_a @ X3 @ nil_a ) ) ) ) ).

% tl_Nil
thf(fact_725_ulgraph_Ois__walk__singleton,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,U: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( member_set_a @ U @ Vertices )
       => ( undire3014741414213135564_set_a @ Vertices @ Edges @ ( cons_set_a @ U @ nil_set_a ) ) ) ) ).

% ulgraph.is_walk_singleton
thf(fact_726_ulgraph_Ois__walk__singleton,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( member_a @ U @ Vertices )
       => ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( cons_a @ U @ nil_a ) ) ) ) ).

% ulgraph.is_walk_singleton
thf(fact_727_ulgraph_Ois__walk__drop__hd,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Ys2: list_set_a,Y: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( Ys2 != nil_set_a )
       => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ ( cons_set_a @ Y @ Ys2 ) )
         => ( undire3014741414213135564_set_a @ Vertices @ Edges @ Ys2 ) ) ) ) ).

% ulgraph.is_walk_drop_hd
thf(fact_728_ulgraph_Ois__walk__drop__hd,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Ys2: list_a,Y: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( Ys2 != nil_a )
       => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( cons_a @ Y @ Ys2 ) )
         => ( undire6133010728901294956walk_a @ Vertices @ Edges @ Ys2 ) ) ) ) ).

% ulgraph.is_walk_drop_hd
thf(fact_729_ulgraph_Ois__gen__path__trivial,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,X2: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( member_set_a @ X2 @ Vertices )
       => ( undire7201326534205417136_set_a @ Vertices @ Edges @ ( cons_set_a @ X2 @ nil_set_a ) ) ) ) ).

% ulgraph.is_gen_path_trivial
thf(fact_730_ulgraph_Ois__gen__path__trivial,axiom,
    ! [Vertices: set_a,Edges: set_set_a,X2: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( member_a @ X2 @ Vertices )
       => ( undire3562951555376170320path_a @ Vertices @ Edges @ ( cons_a @ X2 @ nil_a ) ) ) ) ).

% ulgraph.is_gen_path_trivial
thf(fact_731_ulgraph_Oconnecting__path__self,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,U: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( member_set_a @ U @ Vertices )
       => ( connec7350987497872064604_set_a @ Vertices @ Edges @ U @ U @ ( cons_set_a @ U @ nil_set_a ) ) ) ) ).

% ulgraph.connecting_path_self
thf(fact_732_ulgraph_Oconnecting__path__self,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( member_a @ U @ Vertices )
       => ( connecting_path_a @ Vertices @ Edges @ U @ U @ ( cons_a @ U @ nil_a ) ) ) ) ).

% ulgraph.connecting_path_self
thf(fact_733_ulgraph_Oconnecting__walk__self,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,U: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( member_set_a @ U @ Vertices )
       => ( connec1530789871921280536_set_a @ Vertices @ Edges @ U @ U @ ( cons_set_a @ U @ nil_set_a ) ) ) ) ).

% ulgraph.connecting_walk_self
thf(fact_734_ulgraph_Oconnecting__walk__self,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( member_a @ U @ Vertices )
       => ( connecting_walk_a @ Vertices @ Edges @ U @ U @ ( cons_a @ U @ nil_a ) ) ) ) ).

% ulgraph.connecting_walk_self
thf(fact_735_drop__Cons_H,axiom,
    ! [N2: nat,X2: a,Xs: list_a] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( drop_a @ N2 @ ( cons_a @ X2 @ Xs ) )
          = ( cons_a @ X2 @ Xs ) ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( drop_a @ N2 @ ( cons_a @ X2 @ Xs ) )
          = ( drop_a @ ( minus_minus_nat @ N2 @ one_one_nat ) @ Xs ) ) ) ) ).

% drop_Cons'
thf(fact_736_take__Cons_H,axiom,
    ! [N2: nat,X2: set_a,Xs: list_set_a] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( take_set_a @ N2 @ ( cons_set_a @ X2 @ Xs ) )
          = nil_set_a ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( take_set_a @ N2 @ ( cons_set_a @ X2 @ Xs ) )
          = ( cons_set_a @ X2 @ ( take_set_a @ ( minus_minus_nat @ N2 @ one_one_nat ) @ Xs ) ) ) ) ) ).

% take_Cons'
thf(fact_737_take__Cons_H,axiom,
    ! [N2: nat,X2: a,Xs: list_a] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( take_a @ N2 @ ( cons_a @ X2 @ Xs ) )
          = nil_a ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( take_a @ N2 @ ( cons_a @ X2 @ Xs ) )
          = ( cons_a @ X2 @ ( take_a @ ( minus_minus_nat @ N2 @ one_one_nat ) @ Xs ) ) ) ) ) ).

% take_Cons'
thf(fact_738_ulgraph_Ois__gen__path__options,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire7201326534205417136_set_a @ Vertices @ Edges @ P )
        = ( ( undire797940137672299967_set_a @ Vertices @ Edges @ P )
          | ( undire8834939040163919632_set_a @ Vertices @ Edges @ P )
          | ? [X3: set_a] :
              ( ( member_set_a @ X3 @ Vertices )
              & ( P
                = ( cons_set_a @ X3 @ nil_set_a ) ) ) ) ) ) ).

% ulgraph.is_gen_path_options
thf(fact_739_ulgraph_Ois__gen__path__options,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3562951555376170320path_a @ Vertices @ Edges @ P )
        = ( ( undire2407311113669455967ycle_a @ Vertices @ Edges @ P )
          | ( undire427332500224447920path_a @ Vertices @ Edges @ P )
          | ? [X3: a] :
              ( ( member_a @ X3 @ Vertices )
              & ( P
                = ( cons_a @ X3 @ nil_a ) ) ) ) ) ) ).

% ulgraph.is_gen_path_options
thf(fact_740_is__walkI,axiom,
    ! [Xs: list_a] :
      ( ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ vertices )
     => ( ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) @ edges )
       => ( ( Xs != nil_a )
         => ( undire6133010728901294956walk_a @ vertices @ edges @ Xs ) ) ) ) ).

% is_walkI
thf(fact_741_is__walk__def,axiom,
    ! [Xs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
      = ( ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ vertices )
        & ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) @ edges )
        & ( Xs != nil_a ) ) ) ).

% is_walk_def
thf(fact_742_is__walk__decomp,axiom,
    ! [Xs: list_a,Y: a,Ys2: list_a,Zs: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ ( append_a @ Ys2 @ ( 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_743_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_744_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_745_walk__edges_Osimps_I1_J,axiom,
    ( ( undire7337870655677353998dges_a @ nil_a )
    = nil_set_a ) ).

% walk_edges.simps(1)
thf(fact_746_walk__length__def,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P2: list_a] : ( size_size_list_set_a @ ( undire7337870655677353998dges_a @ P2 ) ) ) ) ).

% walk_length_def
thf(fact_747_walk__edges__rev,axiom,
    ! [Xs: list_a] :
      ( ( rev_set_a @ ( undire7337870655677353998dges_a @ Xs ) )
      = ( undire7337870655677353998dges_a @ ( rev_a @ Xs ) ) ) ).

% walk_edges_rev
thf(fact_748_walk__edges_Osimps_I2_J,axiom,
    ! [X2: a] :
      ( ( undire7337870655677353998dges_a @ ( cons_a @ X2 @ nil_a ) )
      = nil_set_a ) ).

% walk_edges.simps(2)
thf(fact_749_distinct__edgesI,axiom,
    ! [P: list_a] :
      ( ( distinct_a @ P )
     => ( distinct_set_a @ ( undire7337870655677353998dges_a @ P ) ) ) ).

% distinct_edgesI
thf(fact_750_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_751_append__assoc,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_a] :
      ( ( append_a @ ( append_a @ Xs @ Ys2 ) @ Zs )
      = ( append_a @ Xs @ ( append_a @ Ys2 @ Zs ) ) ) ).

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

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

% same_append_eq
thf(fact_754_walk__edges__append__ss1,axiom,
    ! [Ys2: list_a,Xs: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Ys2 ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ Ys2 ) ) ) ) ).

% walk_edges_append_ss1
thf(fact_755_walk__edges__append__ss2,axiom,
    ! [Xs: list_a,Ys2: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ Ys2 ) ) ) ) ).

% walk_edges_append_ss2
thf(fact_756_walk__edges__tl__ss,axiom,
    ! [Xs: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( tl_a @ Xs ) ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) ) ).

% walk_edges_tl_ss
thf(fact_757_walk__edges__decomp__ss,axiom,
    ! [Xs: list_a,Y: a,Zs: list_a,Ys2: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ ( append_a @ Ys2 @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) ) ) ) ).

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

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

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

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

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

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

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

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

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

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

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

% self_append_conv2
thf(fact_769_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_770_Nil__is__append__conv,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( nil_a
        = ( append_a @ Xs @ Ys2 ) )
      = ( ( Xs = nil_a )
        & ( Ys2 = nil_a ) ) ) ).

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

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

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

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

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

% append_eq_append_conv
thf(fact_776_rev__append,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a] :
      ( ( rev_set_a @ ( append_set_a @ Xs @ Ys2 ) )
      = ( append_set_a @ ( rev_set_a @ Ys2 ) @ ( rev_set_a @ Xs ) ) ) ).

% rev_append
thf(fact_777_rev__append,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( rev_a @ ( append_a @ Xs @ Ys2 ) )
      = ( append_a @ ( rev_a @ Ys2 ) @ ( rev_a @ Xs ) ) ) ).

% rev_append
thf(fact_778_append1__eq__conv,axiom,
    ! [Xs: list_set_a,X2: set_a,Ys2: list_set_a,Y: set_a] :
      ( ( ( append_set_a @ Xs @ ( cons_set_a @ X2 @ nil_set_a ) )
        = ( append_set_a @ Ys2 @ ( cons_set_a @ Y @ nil_set_a ) ) )
      = ( ( Xs = Ys2 )
        & ( X2 = Y ) ) ) ).

% append1_eq_conv
thf(fact_779_append1__eq__conv,axiom,
    ! [Xs: list_a,X2: a,Ys2: list_a,Y: a] :
      ( ( ( append_a @ Xs @ ( cons_a @ X2 @ nil_a ) )
        = ( append_a @ Ys2 @ ( cons_a @ Y @ nil_a ) ) )
      = ( ( Xs = Ys2 )
        & ( X2 = Y ) ) ) ).

% append1_eq_conv
thf(fact_780_tl__append2,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs != nil_a )
     => ( ( tl_a @ ( append_a @ Xs @ Ys2 ) )
        = ( append_a @ ( tl_a @ Xs ) @ Ys2 ) ) ) ).

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

% tl_append2
thf(fact_782_last__appendL,axiom,
    ! [Ys2: list_a,Xs: list_a] :
      ( ( Ys2 = nil_a )
     => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
        = ( last_a @ Xs ) ) ) ).

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

% last_appendL
thf(fact_784_last__appendR,axiom,
    ! [Ys2: list_a,Xs: list_a] :
      ( ( Ys2 != nil_a )
     => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
        = ( last_a @ Ys2 ) ) ) ).

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

% last_appendR
thf(fact_786_append__take__drop__id,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( append_a @ ( take_a @ N2 @ Xs ) @ ( drop_a @ N2 @ Xs ) )
      = Xs ) ).

% append_take_drop_id
thf(fact_787_rev__eq__Cons__iff,axiom,
    ! [Xs: list_set_a,Y: set_a,Ys2: list_set_a] :
      ( ( ( rev_set_a @ Xs )
        = ( cons_set_a @ Y @ Ys2 ) )
      = ( Xs
        = ( append_set_a @ ( rev_set_a @ Ys2 ) @ ( cons_set_a @ Y @ nil_set_a ) ) ) ) ).

% rev_eq_Cons_iff
thf(fact_788_rev__eq__Cons__iff,axiom,
    ! [Xs: list_a,Y: a,Ys2: list_a] :
      ( ( ( rev_a @ Xs )
        = ( cons_a @ Y @ Ys2 ) )
      = ( Xs
        = ( append_a @ ( rev_a @ Ys2 ) @ ( cons_a @ Y @ nil_a ) ) ) ) ).

% rev_eq_Cons_iff
thf(fact_789_last__snoc,axiom,
    ! [Xs: list_set_a,X2: set_a] :
      ( ( last_set_a @ ( append_set_a @ Xs @ ( cons_set_a @ X2 @ nil_set_a ) ) )
      = X2 ) ).

% last_snoc
thf(fact_790_last__snoc,axiom,
    ! [Xs: list_a,X2: a] :
      ( ( last_a @ ( append_a @ Xs @ ( cons_a @ X2 @ nil_a ) ) )
      = X2 ) ).

% last_snoc
thf(fact_791_take__append,axiom,
    ! [N2: nat,Xs: list_a,Ys2: list_a] :
      ( ( take_a @ N2 @ ( append_a @ Xs @ Ys2 ) )
      = ( append_a @ ( take_a @ N2 @ Xs ) @ ( take_a @ ( minus_minus_nat @ N2 @ ( size_size_list_a @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_792_take__append,axiom,
    ! [N2: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( take_set_a @ N2 @ ( append_set_a @ Xs @ Ys2 ) )
      = ( append_set_a @ ( take_set_a @ N2 @ Xs ) @ ( take_set_a @ ( minus_minus_nat @ N2 @ ( size_size_list_set_a @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_793_drop__append,axiom,
    ! [N2: nat,Xs: list_a,Ys2: list_a] :
      ( ( drop_a @ N2 @ ( append_a @ Xs @ Ys2 ) )
      = ( append_a @ ( drop_a @ N2 @ Xs ) @ ( drop_a @ ( minus_minus_nat @ N2 @ ( size_size_list_a @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_794_drop__append,axiom,
    ! [N2: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( drop_set_a @ N2 @ ( append_set_a @ Xs @ Ys2 ) )
      = ( append_set_a @ ( drop_set_a @ N2 @ Xs ) @ ( drop_set_a @ ( minus_minus_nat @ N2 @ ( size_size_list_set_a @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_795_last__drop,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( ord_less_nat @ N2 @ ( size_size_list_a @ Xs ) )
     => ( ( last_a @ ( drop_a @ N2 @ Xs ) )
        = ( last_a @ Xs ) ) ) ).

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

% last_drop
thf(fact_797_ulgraph_Owalk__edges__append__ss1,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Ys2: list_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Ys2 ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ Ys2 ) ) ) ) ) ).

% ulgraph.walk_edges_append_ss1
thf(fact_798_ulgraph_Owalk__edges__append__ss2,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a,Ys2: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ Ys2 ) ) ) ) ) ).

% ulgraph.walk_edges_append_ss2
thf(fact_799_comp__sgraph_Owalk__edges__append__ss1,axiom,
    ! [Ys2: list_a,Xs: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Ys2 ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ Ys2 ) ) ) ) ).

% comp_sgraph.walk_edges_append_ss1
thf(fact_800_comp__sgraph_Owalk__edges__append__ss2,axiom,
    ! [Xs: list_a,Ys2: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ Ys2 ) ) ) ) ).

% comp_sgraph.walk_edges_append_ss2
thf(fact_801_append__Nil,axiom,
    ! [Ys2: list_a] :
      ( ( append_a @ nil_a @ Ys2 )
      = Ys2 ) ).

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

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

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

% append.left_neutral
thf(fact_805_last__append,axiom,
    ! [Ys2: list_a,Xs: list_a] :
      ( ( ( Ys2 = nil_a )
       => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
          = ( last_a @ Xs ) ) )
      & ( ( Ys2 != nil_a )
       => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
          = ( last_a @ Ys2 ) ) ) ) ).

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

% last_append
thf(fact_807_eq__Nil__appendI,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs = Ys2 )
     => ( Xs
        = ( append_a @ nil_a @ Ys2 ) ) ) ).

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

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

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

% longest_common_suffix
thf(fact_811_Cons__eq__appendI,axiom,
    ! [X2: a,Xs1: list_a,Ys2: list_a,Xs: list_a,Zs: list_a] :
      ( ( ( cons_a @ X2 @ Xs1 )
        = Ys2 )
     => ( ( Xs
          = ( append_a @ Xs1 @ Zs ) )
       => ( ( cons_a @ X2 @ Xs )
          = ( append_a @ Ys2 @ Zs ) ) ) ) ).

% Cons_eq_appendI
thf(fact_812_append__Cons,axiom,
    ! [X2: a,Xs: list_a,Ys2: list_a] :
      ( ( append_a @ ( cons_a @ X2 @ Xs ) @ Ys2 )
      = ( cons_a @ X2 @ ( append_a @ Xs @ Ys2 ) ) ) ).

% append_Cons
thf(fact_813_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_814_comp__sgraph_Owalk__edges_Osimps_I1_J,axiom,
    ( ( undire7337870655677353998dges_a @ nil_a )
    = nil_set_a ) ).

% comp_sgraph.walk_edges.simps(1)
thf(fact_815_comp__sgraph_Odistinct__edgesI,axiom,
    ! [P: list_set_a] :
      ( ( distinct_set_a @ P )
     => ( distinct_set_set_a @ ( undire6234387080713648494_set_a @ P ) ) ) ).

% comp_sgraph.distinct_edgesI
thf(fact_816_comp__sgraph_Odistinct__edgesI,axiom,
    ! [P: list_a] :
      ( ( distinct_a @ P )
     => ( distinct_set_a @ ( undire7337870655677353998dges_a @ P ) ) ) ).

% comp_sgraph.distinct_edgesI
thf(fact_817_comp__sgraph_Owalk__edges__rev,axiom,
    ! [Xs: list_set_a] :
      ( ( rev_set_set_a @ ( undire6234387080713648494_set_a @ Xs ) )
      = ( undire6234387080713648494_set_a @ ( rev_set_a @ Xs ) ) ) ).

% comp_sgraph.walk_edges_rev
thf(fact_818_comp__sgraph_Owalk__edges__rev,axiom,
    ! [Xs: list_a] :
      ( ( rev_set_a @ ( undire7337870655677353998dges_a @ Xs ) )
      = ( undire7337870655677353998dges_a @ ( rev_a @ Xs ) ) ) ).

% comp_sgraph.walk_edges_rev
thf(fact_819_append__eq__appendI,axiom,
    ! [Xs: list_a,Xs1: list_a,Zs: list_a,Ys2: list_a,Us: list_a] :
      ( ( ( append_a @ Xs @ Xs1 )
        = Zs )
     => ( ( Ys2
          = ( append_a @ Xs1 @ Us ) )
       => ( ( append_a @ Xs @ Ys2 )
          = ( append_a @ Zs @ Us ) ) ) ) ).

% append_eq_appendI
thf(fact_820_append__eq__append__conv2,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_a,Ts: list_a] :
      ( ( ( append_a @ Xs @ Ys2 )
        = ( append_a @ Zs @ Ts ) )
      = ( ? [Us2: list_a] :
            ( ( ( Xs
                = ( append_a @ Zs @ Us2 ) )
              & ( ( append_a @ Us2 @ Ys2 )
                = Ts ) )
            | ( ( ( append_a @ Xs @ Us2 )
                = Zs )
              & ( Ys2
                = ( append_a @ Us2 @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_821_comp__sgraph_Owalk__length__def,axiom,
    ( undire8849074589633906640ngth_a
    = ( ^ [P2: list_a] : ( size_size_list_set_a @ ( undire7337870655677353998dges_a @ P2 ) ) ) ) ).

% comp_sgraph.walk_length_def
thf(fact_822_comp__sgraph_Owalk__edges__decomp__ss,axiom,
    ! [Xs: list_set_a,Y: set_a,Zs: list_set_a,Ys2: list_set_a] : ( ord_le5722252365846178494_set_a @ ( set_set_set_a2 @ ( undire6234387080713648494_set_a @ ( append_set_a @ Xs @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ Zs ) ) ) ) @ ( set_set_set_a2 @ ( undire6234387080713648494_set_a @ ( append_set_a @ Xs @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ ( append_set_a @ Ys2 @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ Zs ) ) ) ) ) ) ) ).

% comp_sgraph.walk_edges_decomp_ss
thf(fact_823_comp__sgraph_Owalk__edges__decomp__ss,axiom,
    ! [Xs: list_a,Y: a,Zs: list_a,Ys2: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ ( append_a @ Ys2 @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) ) ) ) ).

% comp_sgraph.walk_edges_decomp_ss
thf(fact_824_ulgraph_Owalk__edges__decomp__ss,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a,Y: set_a,Zs: list_set_a,Ys2: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ord_le5722252365846178494_set_a @ ( set_set_set_a2 @ ( undire6234387080713648494_set_a @ ( append_set_a @ Xs @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ Zs ) ) ) ) @ ( set_set_set_a2 @ ( undire6234387080713648494_set_a @ ( append_set_a @ Xs @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ ( append_set_a @ Ys2 @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ Zs ) ) ) ) ) ) ) ) ).

% ulgraph.walk_edges_decomp_ss
thf(fact_825_ulgraph_Owalk__edges__decomp__ss,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a,Y: a,Zs: list_a,Ys2: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ ( append_a @ Ys2 @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) ) ) ) ) ).

% ulgraph.walk_edges_decomp_ss
thf(fact_826_rev__nonempty__induct,axiom,
    ! [Xs: list_set_a,P3: list_set_a > $o] :
      ( ( Xs != nil_set_a )
     => ( ! [X4: set_a] : ( P3 @ ( cons_set_a @ X4 @ nil_set_a ) )
       => ( ! [X4: set_a,Xs2: list_set_a] :
              ( ( Xs2 != nil_set_a )
             => ( ( P3 @ Xs2 )
               => ( P3 @ ( append_set_a @ Xs2 @ ( cons_set_a @ X4 @ nil_set_a ) ) ) ) )
         => ( P3 @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_827_rev__nonempty__induct,axiom,
    ! [Xs: list_a,P3: list_a > $o] :
      ( ( Xs != nil_a )
     => ( ! [X4: a] : ( P3 @ ( cons_a @ X4 @ nil_a ) )
       => ( ! [X4: a,Xs2: list_a] :
              ( ( Xs2 != nil_a )
             => ( ( P3 @ Xs2 )
               => ( P3 @ ( append_a @ Xs2 @ ( cons_a @ X4 @ nil_a ) ) ) ) )
         => ( P3 @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_828_append__eq__Cons__conv,axiom,
    ! [Ys2: list_set_a,Zs: list_set_a,X2: set_a,Xs: list_set_a] :
      ( ( ( append_set_a @ Ys2 @ Zs )
        = ( cons_set_a @ X2 @ Xs ) )
      = ( ( ( Ys2 = nil_set_a )
          & ( Zs
            = ( cons_set_a @ X2 @ Xs ) ) )
        | ? [Ys6: list_set_a] :
            ( ( Ys2
              = ( cons_set_a @ X2 @ Ys6 ) )
            & ( ( append_set_a @ Ys6 @ Zs )
              = Xs ) ) ) ) ).

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

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

% Cons_eq_append_conv
thf(fact_831_Cons__eq__append__conv,axiom,
    ! [X2: a,Xs: list_a,Ys2: list_a,Zs: list_a] :
      ( ( ( cons_a @ X2 @ Xs )
        = ( append_a @ Ys2 @ Zs ) )
      = ( ( ( Ys2 = nil_a )
          & ( ( cons_a @ X2 @ Xs )
            = Zs ) )
        | ? [Ys6: list_a] :
            ( ( ( cons_a @ X2 @ Ys6 )
              = Ys2 )
            & ( Xs
              = ( append_a @ Ys6 @ Zs ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_832_rev__exhaust,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
     => ~ ! [Ys: list_set_a,Y3: set_a] :
            ( Xs
           != ( append_set_a @ Ys @ ( cons_set_a @ Y3 @ nil_set_a ) ) ) ) ).

% rev_exhaust
thf(fact_833_rev__exhaust,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ~ ! [Ys: list_a,Y3: a] :
            ( Xs
           != ( append_a @ Ys @ ( cons_a @ Y3 @ nil_a ) ) ) ) ).

% rev_exhaust
thf(fact_834_rev__induct,axiom,
    ! [P3: list_set_a > $o,Xs: list_set_a] :
      ( ( P3 @ nil_set_a )
     => ( ! [X4: set_a,Xs2: list_set_a] :
            ( ( P3 @ Xs2 )
           => ( P3 @ ( append_set_a @ Xs2 @ ( cons_set_a @ X4 @ nil_set_a ) ) ) )
       => ( P3 @ Xs ) ) ) ).

% rev_induct
thf(fact_835_rev__induct,axiom,
    ! [P3: list_a > $o,Xs: list_a] :
      ( ( P3 @ nil_a )
     => ( ! [X4: a,Xs2: list_a] :
            ( ( P3 @ Xs2 )
           => ( P3 @ ( append_a @ Xs2 @ ( cons_a @ X4 @ nil_a ) ) ) )
       => ( P3 @ Xs ) ) ) ).

% rev_induct
thf(fact_836_last__ConsR,axiom,
    ! [Xs: list_set_a,X2: set_a] :
      ( ( Xs != nil_set_a )
     => ( ( last_set_a @ ( cons_set_a @ X2 @ Xs ) )
        = ( last_set_a @ Xs ) ) ) ).

% last_ConsR
thf(fact_837_last__ConsR,axiom,
    ! [Xs: list_a,X2: a] :
      ( ( Xs != nil_a )
     => ( ( last_a @ ( cons_a @ X2 @ Xs ) )
        = ( last_a @ Xs ) ) ) ).

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

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

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

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

% last.simps
thf(fact_842_split__list__first__prop__iff,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ( ? [X3: set_a] :
            ( ( member_set_a @ X3 @ ( set_set_a2 @ Xs ) )
            & ( P3 @ X3 ) ) )
      = ( ? [Ys4: list_set_a,X3: set_a] :
            ( ? [Zs3: list_set_a] :
                ( Xs
                = ( append_set_a @ Ys4 @ ( cons_set_a @ X3 @ Zs3 ) ) )
            & ( P3 @ X3 )
            & ! [Y4: set_a] :
                ( ( member_set_a @ Y4 @ ( set_set_a2 @ Ys4 ) )
               => ~ ( P3 @ Y4 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_843_split__list__first__prop__iff,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ( ? [X3: a] :
            ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
            & ( P3 @ X3 ) ) )
      = ( ? [Ys4: list_a,X3: a] :
            ( ? [Zs3: list_a] :
                ( Xs
                = ( append_a @ Ys4 @ ( cons_a @ X3 @ Zs3 ) ) )
            & ( P3 @ X3 )
            & ! [Y4: a] :
                ( ( member_a @ Y4 @ ( set_a2 @ Ys4 ) )
               => ~ ( P3 @ Y4 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_844_split__list__last__prop__iff,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ( ? [X3: set_a] :
            ( ( member_set_a @ X3 @ ( set_set_a2 @ Xs ) )
            & ( P3 @ X3 ) ) )
      = ( ? [Ys4: list_set_a,X3: set_a,Zs3: list_set_a] :
            ( ( Xs
              = ( append_set_a @ Ys4 @ ( cons_set_a @ X3 @ Zs3 ) ) )
            & ( P3 @ X3 )
            & ! [Y4: set_a] :
                ( ( member_set_a @ Y4 @ ( set_set_a2 @ Zs3 ) )
               => ~ ( P3 @ Y4 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_845_split__list__last__prop__iff,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ( ? [X3: a] :
            ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
            & ( P3 @ X3 ) ) )
      = ( ? [Ys4: list_a,X3: a,Zs3: list_a] :
            ( ( Xs
              = ( append_a @ Ys4 @ ( cons_a @ X3 @ Zs3 ) ) )
            & ( P3 @ X3 )
            & ! [Y4: a] :
                ( ( member_a @ Y4 @ ( set_a2 @ Zs3 ) )
               => ~ ( P3 @ Y4 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_846_in__set__conv__decomp__first,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
      = ( ? [Ys4: list_set_a,Zs3: list_set_a] :
            ( ( Xs
              = ( append_set_a @ Ys4 @ ( cons_set_a @ X2 @ Zs3 ) ) )
            & ~ ( member_set_a @ X2 @ ( set_set_a2 @ Ys4 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_847_in__set__conv__decomp__first,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
      = ( ? [Ys4: list_a,Zs3: list_a] :
            ( ( Xs
              = ( append_a @ Ys4 @ ( cons_a @ X2 @ Zs3 ) ) )
            & ~ ( member_a @ X2 @ ( set_a2 @ Ys4 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_848_in__set__conv__decomp__last,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
      = ( ? [Ys4: list_set_a,Zs3: list_set_a] :
            ( ( Xs
              = ( append_set_a @ Ys4 @ ( cons_set_a @ X2 @ Zs3 ) ) )
            & ~ ( member_set_a @ X2 @ ( set_set_a2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_849_in__set__conv__decomp__last,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
      = ( ? [Ys4: list_a,Zs3: list_a] :
            ( ( Xs
              = ( append_a @ Ys4 @ ( cons_a @ X2 @ Zs3 ) ) )
            & ~ ( member_a @ X2 @ ( set_a2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_850_split__list__first__propE,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ? [X: set_a] :
          ( ( member_set_a @ X @ ( set_set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ~ ! [Ys: list_set_a,X4: set_a] :
            ( ? [Zs2: list_set_a] :
                ( Xs
                = ( append_set_a @ Ys @ ( cons_set_a @ X4 @ Zs2 ) ) )
           => ( ( P3 @ X4 )
             => ~ ! [Xa: set_a] :
                    ( ( member_set_a @ Xa @ ( set_set_a2 @ Ys ) )
                   => ~ ( P3 @ Xa ) ) ) ) ) ).

% split_list_first_propE
thf(fact_851_split__list__first__propE,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ? [X: a] :
          ( ( member_a @ X @ ( set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ~ ! [Ys: list_a,X4: a] :
            ( ? [Zs2: list_a] :
                ( Xs
                = ( append_a @ Ys @ ( cons_a @ X4 @ Zs2 ) ) )
           => ( ( P3 @ X4 )
             => ~ ! [Xa: a] :
                    ( ( member_a @ Xa @ ( set_a2 @ Ys ) )
                   => ~ ( P3 @ Xa ) ) ) ) ) ).

% split_list_first_propE
thf(fact_852_split__list__last__propE,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ? [X: set_a] :
          ( ( member_set_a @ X @ ( set_set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ~ ! [Ys: list_set_a,X4: set_a,Zs2: list_set_a] :
            ( ( Xs
              = ( append_set_a @ Ys @ ( cons_set_a @ X4 @ Zs2 ) ) )
           => ( ( P3 @ X4 )
             => ~ ! [Xa: set_a] :
                    ( ( member_set_a @ Xa @ ( set_set_a2 @ Zs2 ) )
                   => ~ ( P3 @ Xa ) ) ) ) ) ).

% split_list_last_propE
thf(fact_853_split__list__last__propE,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ? [X: a] :
          ( ( member_a @ X @ ( set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ~ ! [Ys: list_a,X4: a,Zs2: list_a] :
            ( ( Xs
              = ( append_a @ Ys @ ( cons_a @ X4 @ Zs2 ) ) )
           => ( ( P3 @ X4 )
             => ~ ! [Xa: a] :
                    ( ( member_a @ Xa @ ( set_a2 @ Zs2 ) )
                   => ~ ( P3 @ Xa ) ) ) ) ) ).

% split_list_last_propE
thf(fact_854_split__list__first__prop,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ? [X: set_a] :
          ( ( member_set_a @ X @ ( set_set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ? [Ys: list_set_a,X4: set_a] :
          ( ? [Zs2: list_set_a] :
              ( Xs
              = ( append_set_a @ Ys @ ( cons_set_a @ X4 @ Zs2 ) ) )
          & ( P3 @ X4 )
          & ! [Xa: set_a] :
              ( ( member_set_a @ Xa @ ( set_set_a2 @ Ys ) )
             => ~ ( P3 @ Xa ) ) ) ) ).

% split_list_first_prop
thf(fact_855_split__list__first__prop,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ? [X: a] :
          ( ( member_a @ X @ ( set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ? [Ys: list_a,X4: a] :
          ( ? [Zs2: list_a] :
              ( Xs
              = ( append_a @ Ys @ ( cons_a @ X4 @ Zs2 ) ) )
          & ( P3 @ X4 )
          & ! [Xa: a] :
              ( ( member_a @ Xa @ ( set_a2 @ Ys ) )
             => ~ ( P3 @ Xa ) ) ) ) ).

% split_list_first_prop
thf(fact_856_split__list__last__prop,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ? [X: set_a] :
          ( ( member_set_a @ X @ ( set_set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ? [Ys: list_set_a,X4: set_a,Zs2: list_set_a] :
          ( ( Xs
            = ( append_set_a @ Ys @ ( cons_set_a @ X4 @ Zs2 ) ) )
          & ( P3 @ X4 )
          & ! [Xa: set_a] :
              ( ( member_set_a @ Xa @ ( set_set_a2 @ Zs2 ) )
             => ~ ( P3 @ Xa ) ) ) ) ).

% split_list_last_prop
thf(fact_857_split__list__last__prop,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ? [X: a] :
          ( ( member_a @ X @ ( set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ? [Ys: list_a,X4: a,Zs2: list_a] :
          ( ( Xs
            = ( append_a @ Ys @ ( cons_a @ X4 @ Zs2 ) ) )
          & ( P3 @ X4 )
          & ! [Xa: a] :
              ( ( member_a @ Xa @ ( set_a2 @ Zs2 ) )
             => ~ ( P3 @ Xa ) ) ) ) ).

% split_list_last_prop
thf(fact_858_in__set__conv__decomp,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
      = ( ? [Ys4: list_set_a,Zs3: list_set_a] :
            ( Xs
            = ( append_set_a @ Ys4 @ ( cons_set_a @ X2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_859_in__set__conv__decomp,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
      = ( ? [Ys4: list_a,Zs3: list_a] :
            ( Xs
            = ( append_a @ Ys4 @ ( cons_a @ X2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_860_append__Cons__eq__iff,axiom,
    ! [X2: set_a,Xs: list_set_a,Ys2: list_set_a,Xs5: list_set_a,Ys7: list_set_a] :
      ( ~ ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
     => ( ~ ( member_set_a @ X2 @ ( set_set_a2 @ Ys2 ) )
       => ( ( ( append_set_a @ Xs @ ( cons_set_a @ X2 @ Ys2 ) )
            = ( append_set_a @ Xs5 @ ( cons_set_a @ X2 @ Ys7 ) ) )
          = ( ( Xs = Xs5 )
            & ( Ys2 = Ys7 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_861_append__Cons__eq__iff,axiom,
    ! [X2: a,Xs: list_a,Ys2: list_a,Xs5: list_a,Ys7: list_a] :
      ( ~ ( member_a @ X2 @ ( set_a2 @ Xs ) )
     => ( ~ ( member_a @ X2 @ ( set_a2 @ Ys2 ) )
       => ( ( ( append_a @ Xs @ ( cons_a @ X2 @ Ys2 ) )
            = ( append_a @ Xs5 @ ( cons_a @ X2 @ Ys7 ) ) )
          = ( ( Xs = Xs5 )
            & ( Ys2 = Ys7 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_862_split__list__propE,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ? [X: set_a] :
          ( ( member_set_a @ X @ ( set_set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ~ ! [Ys: list_set_a,X4: set_a] :
            ( ? [Zs2: list_set_a] :
                ( Xs
                = ( append_set_a @ Ys @ ( cons_set_a @ X4 @ Zs2 ) ) )
           => ~ ( P3 @ X4 ) ) ) ).

% split_list_propE
thf(fact_863_split__list__propE,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ? [X: a] :
          ( ( member_a @ X @ ( set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ~ ! [Ys: list_a,X4: a] :
            ( ? [Zs2: list_a] :
                ( Xs
                = ( append_a @ Ys @ ( cons_a @ X4 @ Zs2 ) ) )
           => ~ ( P3 @ X4 ) ) ) ).

% split_list_propE
thf(fact_864_split__list__first,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
     => ? [Ys: list_set_a,Zs2: list_set_a] :
          ( ( Xs
            = ( append_set_a @ Ys @ ( cons_set_a @ X2 @ Zs2 ) ) )
          & ~ ( member_set_a @ X2 @ ( set_set_a2 @ Ys ) ) ) ) ).

% split_list_first
thf(fact_865_split__list__first,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
     => ? [Ys: list_a,Zs2: list_a] :
          ( ( Xs
            = ( append_a @ Ys @ ( cons_a @ X2 @ Zs2 ) ) )
          & ~ ( member_a @ X2 @ ( set_a2 @ Ys ) ) ) ) ).

% split_list_first
thf(fact_866_split__list__prop,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ? [X: set_a] :
          ( ( member_set_a @ X @ ( set_set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ? [Ys: list_set_a,X4: set_a] :
          ( ? [Zs2: list_set_a] :
              ( Xs
              = ( append_set_a @ Ys @ ( cons_set_a @ X4 @ Zs2 ) ) )
          & ( P3 @ X4 ) ) ) ).

% split_list_prop
thf(fact_867_split__list__prop,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ? [X: a] :
          ( ( member_a @ X @ ( set_a2 @ Xs ) )
          & ( P3 @ X ) )
     => ? [Ys: list_a,X4: a] :
          ( ? [Zs2: list_a] :
              ( Xs
              = ( append_a @ Ys @ ( cons_a @ X4 @ Zs2 ) ) )
          & ( P3 @ X4 ) ) ) ).

% split_list_prop
thf(fact_868_split__list__last,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
     => ? [Ys: list_set_a,Zs2: list_set_a] :
          ( ( Xs
            = ( append_set_a @ Ys @ ( cons_set_a @ X2 @ Zs2 ) ) )
          & ~ ( member_set_a @ X2 @ ( set_set_a2 @ Zs2 ) ) ) ) ).

% split_list_last
thf(fact_869_split__list__last,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
     => ? [Ys: list_a,Zs2: list_a] :
          ( ( Xs
            = ( append_a @ Ys @ ( cons_a @ X2 @ Zs2 ) ) )
          & ~ ( member_a @ X2 @ ( set_a2 @ Zs2 ) ) ) ) ).

% split_list_last
thf(fact_870_split__list,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
     => ? [Ys: list_set_a,Zs2: list_set_a] :
          ( Xs
          = ( append_set_a @ Ys @ ( cons_set_a @ X2 @ Zs2 ) ) ) ) ).

% split_list
thf(fact_871_split__list,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
     => ? [Ys: list_a,Zs2: list_a] :
          ( Xs
          = ( append_a @ Ys @ ( cons_a @ X2 @ Zs2 ) ) ) ) ).

% split_list
thf(fact_872_last__in__set,axiom,
    ! [As: list_a] :
      ( ( As != nil_a )
     => ( member_a @ ( last_a @ As ) @ ( set_a2 @ As ) ) ) ).

% last_in_set
thf(fact_873_last__in__set,axiom,
    ! [As: list_set_a] :
      ( ( As != nil_set_a )
     => ( member_set_a @ ( last_set_a @ As ) @ ( set_set_a2 @ As ) ) ) ).

% last_in_set
thf(fact_874_comp__sgraph_Owalk__edges_Osimps_I2_J,axiom,
    ! [X2: set_a] :
      ( ( undire6234387080713648494_set_a @ ( cons_set_a @ X2 @ nil_set_a ) )
      = nil_set_set_a ) ).

% comp_sgraph.walk_edges.simps(2)
thf(fact_875_comp__sgraph_Owalk__edges_Osimps_I2_J,axiom,
    ! [X2: a] :
      ( ( undire7337870655677353998dges_a @ ( cons_a @ X2 @ nil_a ) )
      = nil_set_a ) ).

% comp_sgraph.walk_edges.simps(2)
thf(fact_876_tl__append__if,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( Xs = nil_a )
       => ( ( tl_a @ ( append_a @ Xs @ Ys2 ) )
          = ( tl_a @ Ys2 ) ) )
      & ( ( Xs != nil_a )
       => ( ( tl_a @ ( append_a @ Xs @ Ys2 ) )
          = ( append_a @ ( tl_a @ Xs ) @ Ys2 ) ) ) ) ).

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

% tl_append_if
thf(fact_878_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_879_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_880_ulgraph_Owalk__edges_Osimps_I1_J,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire6234387080713648494_set_a @ nil_set_a )
        = nil_set_set_a ) ) ).

% ulgraph.walk_edges.simps(1)
thf(fact_881_ulgraph_Owalk__edges_Osimps_I1_J,axiom,
    ! [Vertices: set_a,Edges: set_set_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire7337870655677353998dges_a @ nil_a )
        = nil_set_a ) ) ).

% ulgraph.walk_edges.simps(1)
thf(fact_882_ulgraph_Ois__walk__wf__last,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs )
       => ( member_set_a @ ( last_set_a @ Xs ) @ Vertices ) ) ) ).

% ulgraph.is_walk_wf_last
thf(fact_883_ulgraph_Ois__walk__wf__last,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
       => ( member_a @ ( last_a @ Xs ) @ Vertices ) ) ) ).

% ulgraph.is_walk_wf_last
thf(fact_884_ulgraph_Odistinct__edgesI,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( distinct_set_a @ P )
       => ( distinct_set_set_a @ ( undire6234387080713648494_set_a @ P ) ) ) ) ).

% ulgraph.distinct_edgesI
thf(fact_885_ulgraph_Odistinct__edgesI,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( distinct_a @ P )
       => ( distinct_set_a @ ( undire7337870655677353998dges_a @ P ) ) ) ) ).

% ulgraph.distinct_edgesI
thf(fact_886_ulgraph_Owalk__edges__rev,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( rev_set_set_a @ ( undire6234387080713648494_set_a @ Xs ) )
        = ( undire6234387080713648494_set_a @ ( rev_set_a @ Xs ) ) ) ) ).

% ulgraph.walk_edges_rev
thf(fact_887_ulgraph_Owalk__edges__rev,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( rev_set_a @ ( undire7337870655677353998dges_a @ Xs ) )
        = ( undire7337870655677353998dges_a @ ( rev_a @ Xs ) ) ) ) ).

% ulgraph.walk_edges_rev
thf(fact_888_ulgraph_Owalk__length__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire8849074589633906640ngth_a @ P )
        = ( size_size_list_set_a @ ( undire7337870655677353998dges_a @ P ) ) ) ) ).

% ulgraph.walk_length_def
thf(fact_889_comp__sgraph_Owalk__edges__tl__ss,axiom,
    ! [Xs: list_a] : ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( tl_a @ Xs ) ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) ) ).

% comp_sgraph.walk_edges_tl_ss
thf(fact_890_same__length__different,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs != Ys2 )
     => ( ( ( size_size_list_a @ Xs )
          = ( size_size_list_a @ Ys2 ) )
       => ? [Pre: list_a,X4: a,Xs4: list_a,Y3: a,Ys5: list_a] :
            ( ( X4 != Y3 )
            & ( Xs
              = ( append_a @ Pre @ ( append_a @ ( cons_a @ X4 @ nil_a ) @ Xs4 ) ) )
            & ( Ys2
              = ( append_a @ Pre @ ( append_a @ ( cons_a @ Y3 @ nil_a ) @ Ys5 ) ) ) ) ) ) ).

% same_length_different
thf(fact_891_same__length__different,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a] :
      ( ( Xs != Ys2 )
     => ( ( ( size_size_list_set_a @ Xs )
          = ( size_size_list_set_a @ Ys2 ) )
       => ? [Pre: list_set_a,X4: set_a,Xs4: list_set_a,Y3: set_a,Ys5: list_set_a] :
            ( ( X4 != Y3 )
            & ( Xs
              = ( append_set_a @ Pre @ ( append_set_a @ ( cons_set_a @ X4 @ nil_set_a ) @ Xs4 ) ) )
            & ( Ys2
              = ( append_set_a @ Pre @ ( append_set_a @ ( cons_set_a @ Y3 @ nil_set_a ) @ Ys5 ) ) ) ) ) ) ).

% same_length_different
thf(fact_892_length__list__decomp__lt,axiom,
    ! [Ys2: list_a,Xs: list_a,Zs: list_a] :
      ( ( Ys2 != nil_a )
     => ( ord_less_nat @ ( size_size_list_a @ ( append_a @ Xs @ Zs ) ) @ ( size_size_list_a @ ( append_a @ Xs @ ( append_a @ Ys2 @ Zs ) ) ) ) ) ).

% length_list_decomp_lt
thf(fact_893_length__list__decomp__lt,axiom,
    ! [Ys2: list_set_a,Xs: list_set_a,Zs: list_set_a] :
      ( ( Ys2 != nil_set_a )
     => ( ord_less_nat @ ( size_size_list_set_a @ ( append_set_a @ Xs @ Zs ) ) @ ( size_size_list_set_a @ ( append_set_a @ Xs @ ( append_set_a @ Ys2 @ Zs ) ) ) ) ) ).

% length_list_decomp_lt
thf(fact_894_not__distinct__decomp,axiom,
    ! [Ws: list_set_a] :
      ( ~ ( distinct_set_a @ Ws )
     => ? [Xs2: list_set_a,Ys: list_set_a,Zs2: list_set_a,Y3: set_a] :
          ( Ws
          = ( append_set_a @ Xs2 @ ( append_set_a @ ( cons_set_a @ Y3 @ nil_set_a ) @ ( append_set_a @ Ys @ ( append_set_a @ ( cons_set_a @ Y3 @ nil_set_a ) @ Zs2 ) ) ) ) ) ) ).

% not_distinct_decomp
thf(fact_895_not__distinct__decomp,axiom,
    ! [Ws: list_a] :
      ( ~ ( distinct_a @ Ws )
     => ? [Xs2: list_a,Ys: list_a,Zs2: list_a,Y3: a] :
          ( Ws
          = ( append_a @ Xs2 @ ( append_a @ ( cons_a @ Y3 @ nil_a ) @ ( append_a @ Ys @ ( append_a @ ( cons_a @ Y3 @ nil_a ) @ Zs2 ) ) ) ) ) ) ).

% not_distinct_decomp
thf(fact_896_not__distinct__conv__prefix,axiom,
    ! [As: list_set_a] :
      ( ( ~ ( distinct_set_a @ As ) )
      = ( ? [Xs3: list_set_a,Y4: set_a,Ys4: list_set_a] :
            ( ( member_set_a @ Y4 @ ( set_set_a2 @ Xs3 ) )
            & ( distinct_set_a @ Xs3 )
            & ( As
              = ( append_set_a @ Xs3 @ ( cons_set_a @ Y4 @ Ys4 ) ) ) ) ) ) ).

% not_distinct_conv_prefix
thf(fact_897_not__distinct__conv__prefix,axiom,
    ! [As: list_a] :
      ( ( ~ ( distinct_a @ As ) )
      = ( ? [Xs3: list_a,Y4: a,Ys4: list_a] :
            ( ( member_a @ Y4 @ ( set_a2 @ Xs3 ) )
            & ( distinct_a @ Xs3 )
            & ( As
              = ( append_a @ Xs3 @ ( cons_a @ Y4 @ Ys4 ) ) ) ) ) ) ).

% not_distinct_conv_prefix
thf(fact_898_rev_Osimps_I2_J,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( rev_set_a @ ( cons_set_a @ X2 @ Xs ) )
      = ( append_set_a @ ( rev_set_a @ Xs ) @ ( cons_set_a @ X2 @ nil_set_a ) ) ) ).

% rev.simps(2)
thf(fact_899_rev_Osimps_I2_J,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( rev_a @ ( cons_a @ X2 @ Xs ) )
      = ( append_a @ ( rev_a @ Xs ) @ ( cons_a @ X2 @ nil_a ) ) ) ).

% rev.simps(2)
thf(fact_900_ulgraph_Owalk__edges_Osimps_I2_J,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,X2: set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire6234387080713648494_set_a @ ( cons_set_a @ X2 @ nil_set_a ) )
        = nil_set_set_a ) ) ).

% ulgraph.walk_edges.simps(2)
thf(fact_901_ulgraph_Owalk__edges_Osimps_I2_J,axiom,
    ! [Vertices: set_a,Edges: set_set_a,X2: a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire7337870655677353998dges_a @ ( cons_a @ X2 @ nil_a ) )
        = nil_set_a ) ) ).

% ulgraph.walk_edges.simps(2)
thf(fact_902_append__eq__conv__conj,axiom,
    ! [Xs: list_a,Ys2: list_a,Zs: list_a] :
      ( ( ( append_a @ Xs @ Ys2 )
        = Zs )
      = ( ( Xs
          = ( take_a @ ( size_size_list_a @ Xs ) @ Zs ) )
        & ( Ys2
          = ( drop_a @ ( size_size_list_a @ Xs ) @ Zs ) ) ) ) ).

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

% append_eq_conv_conj
thf(fact_904_ulgraph_Owalk__edges__tl__ss,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ ( tl_a @ Xs ) ) ) @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) ) ) ).

% ulgraph.walk_edges_tl_ss
thf(fact_905_ulgraph_Ois__trail__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire7142031287334043199rail_a @ Vertices @ Edges @ Xs )
        = ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
          & ( distinct_set_a @ ( undire7337870655677353998dges_a @ Xs ) ) ) ) ) ).

% ulgraph.is_trail_def
thf(fact_906_last__in__list__set,axiom,
    ! [Xs: list_a] :
      ( ( ord_less_eq_nat @ one_one_nat @ ( size_size_list_a @ Xs ) )
     => ( member_a @ ( last_a @ Xs ) @ ( set_a2 @ Xs ) ) ) ).

% last_in_list_set
thf(fact_907_last__in__list__set,axiom,
    ! [Xs: list_set_a] :
      ( ( ord_less_eq_nat @ one_one_nat @ ( size_size_list_set_a @ Xs ) )
     => ( member_set_a @ ( last_set_a @ Xs ) @ ( set_set_a2 @ Xs ) ) ) ).

% last_in_list_set
thf(fact_908_ulgraph_Ois__walk__decomp,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a,Y: set_a,Ys2: list_set_a,Zs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ ( append_set_a @ Xs @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ ( append_set_a @ Ys2 @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ Zs ) ) ) ) )
       => ( undire3014741414213135564_set_a @ Vertices @ Edges @ ( append_set_a @ Xs @ ( append_set_a @ ( cons_set_a @ Y @ nil_set_a ) @ Zs ) ) ) ) ) ).

% ulgraph.is_walk_decomp
thf(fact_909_ulgraph_Ois__walk__decomp,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a,Y: a,Ys2: list_a,Zs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ ( append_a @ Ys2 @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) )
       => ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( append_a @ Xs @ ( append_a @ ( cons_a @ Y @ nil_a ) @ Zs ) ) ) ) ) ).

% ulgraph.is_walk_decomp
thf(fact_910_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_911_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_912_ulgraph_Ois__walk__def,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs )
        = ( ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ Xs ) @ Vertices )
          & ( ord_le5722252365846178494_set_a @ ( set_set_set_a2 @ ( undire6234387080713648494_set_a @ Xs ) ) @ Edges )
          & ( Xs != nil_set_a ) ) ) ) ).

% ulgraph.is_walk_def
thf(fact_913_ulgraph_Ois__walk__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
        = ( ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ Vertices )
          & ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) @ Edges )
          & ( Xs != nil_a ) ) ) ) ).

% ulgraph.is_walk_def
thf(fact_914_ulgraph_Ois__walkI,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ Xs ) @ Vertices )
       => ( ( ord_le5722252365846178494_set_a @ ( set_set_set_a2 @ ( undire6234387080713648494_set_a @ Xs ) ) @ Edges )
         => ( ( Xs != nil_set_a )
           => ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs ) ) ) ) ) ).

% ulgraph.is_walkI
thf(fact_915_ulgraph_Ois__walkI,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ Vertices )
       => ( ( ord_le3724670747650509150_set_a @ ( set_set_a2 @ ( undire7337870655677353998dges_a @ Xs ) ) @ Edges )
         => ( ( Xs != nil_a )
           => ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs ) ) ) ) ) ).

% ulgraph.is_walkI
thf(fact_916_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_917_walk__edges__index,axiom,
    ! [I: nat,W: list_a] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ I @ ( undire8849074589633906640ngth_a @ W ) )
       => ( ( undire6133010728901294956walk_a @ vertices @ edges @ W )
         => ( member_set_a @ ( nth_set_a @ ( undire7337870655677353998dges_a @ W ) @ I ) @ edges ) ) ) ) ).

% walk_edges_index
thf(fact_918_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_919_is__gen__path__def,axiom,
    ! [P: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P )
      = ( ( undire6133010728901294956walk_a @ vertices @ edges @ P )
        & ( ( ( distinct_a @ ( tl_a @ P ) )
            & ( ( hd_a @ P )
              = ( last_a @ P ) ) )
          | ( distinct_a @ P ) ) ) ) ).

% is_gen_path_def
thf(fact_920_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_921_connecting__walk__def,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_walk_a @ vertices @ edges @ U @ V @ Xs )
      = ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
        & ( ( hd_a @ Xs )
          = U )
        & ( ( last_a @ Xs )
          = V ) ) ) ).

% connecting_walk_def
thf(fact_922_connecting__path__def,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connecting_path_a @ vertices @ edges @ U @ V @ Xs )
      = ( ( undire3562951555376170320path_a @ vertices @ edges @ Xs )
        & ( ( hd_a @ Xs )
          = U )
        & ( ( last_a @ Xs )
          = V ) ) ) ).

% connecting_path_def
thf(fact_923_is__gen__path__distinct,axiom,
    ! [P: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P )
     => ( ( ( hd_a @ P )
         != ( last_a @ P ) )
       => ( distinct_a @ P ) ) ) ).

% is_gen_path_distinct
thf(fact_924_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_925_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_926_connecting__path__str__def,axiom,
    ! [U: a,V: a,Xs: list_a] :
      ( ( connec3015921205769380621_str_a @ vertices @ edges @ U @ V @ Xs )
      = ( ( undire427332500224447920path_a @ vertices @ edges @ Xs )
        & ( ( hd_a @ Xs )
          = U )
        & ( ( last_a @ Xs )
          = V ) ) ) ).

% connecting_path_str_def
thf(fact_927_is__walk__append,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( undire6133010728901294956walk_a @ vertices @ edges @ Xs )
     => ( ( undire6133010728901294956walk_a @ vertices @ edges @ Ys2 )
       => ( ( ( last_a @ Xs )
            = ( hd_a @ Ys2 ) )
         => ( undire6133010728901294956walk_a @ vertices @ edges @ ( append_a @ Xs @ ( tl_a @ Ys2 ) ) ) ) ) ) ).

% is_walk_append
thf(fact_928_is__gen__path__distinct__tl,axiom,
    ! [P: list_a] :
      ( ( undire3562951555376170320path_a @ vertices @ edges @ P )
     => ( ( ( hd_a @ P )
          = ( last_a @ P ) )
       => ( distinct_a @ ( tl_a @ P ) ) ) ) ).

% is_gen_path_distinct_tl
thf(fact_929_nth__Cons__0,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( nth_set_a @ ( cons_set_a @ X2 @ Xs ) @ zero_zero_nat )
      = X2 ) ).

% nth_Cons_0
thf(fact_930_nth__Cons__0,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( nth_a @ ( cons_a @ X2 @ Xs ) @ zero_zero_nat )
      = X2 ) ).

% nth_Cons_0
thf(fact_931_hd__append2,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs != nil_a )
     => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
        = ( hd_a @ Xs ) ) ) ).

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

% hd_append2
thf(fact_933_nth__take,axiom,
    ! [I: nat,N2: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ I @ N2 )
     => ( ( nth_set_a @ ( take_set_a @ N2 @ Xs ) @ I )
        = ( nth_set_a @ Xs @ I ) ) ) ).

% nth_take
thf(fact_934_nth__take,axiom,
    ! [I: nat,N2: nat,Xs: list_a] :
      ( ( ord_less_nat @ I @ N2 )
     => ( ( nth_a @ ( take_a @ N2 @ Xs ) @ I )
        = ( nth_a @ Xs @ I ) ) ) ).

% nth_take
thf(fact_935_nth__append__length,axiom,
    ! [Xs: list_a,X2: a,Ys2: list_a] :
      ( ( nth_a @ ( append_a @ Xs @ ( cons_a @ X2 @ Ys2 ) ) @ ( size_size_list_a @ Xs ) )
      = X2 ) ).

% nth_append_length
thf(fact_936_nth__append__length,axiom,
    ! [Xs: list_set_a,X2: set_a,Ys2: list_set_a] :
      ( ( nth_set_a @ ( append_set_a @ Xs @ ( cons_set_a @ X2 @ Ys2 ) ) @ ( size_size_list_set_a @ Xs ) )
      = X2 ) ).

% nth_append_length
thf(fact_937_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_938_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_939_hd__Cons__tl,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ( ( cons_a @ ( hd_a @ Xs ) @ ( tl_a @ Xs ) )
        = Xs ) ) ).

% hd_Cons_tl
thf(fact_940_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_941_list_Ocollapse,axiom,
    ! [List: list_a] :
      ( ( List != nil_a )
     => ( ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) )
        = List ) ) ).

% list.collapse
thf(fact_942_nth__Cons__pos,axiom,
    ! [N2: nat,X2: set_a,Xs: list_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ( ( nth_set_a @ ( cons_set_a @ X2 @ Xs ) @ N2 )
        = ( nth_set_a @ Xs @ ( minus_minus_nat @ N2 @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_943_nth__Cons__pos,axiom,
    ! [N2: nat,X2: a,Xs: list_a] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ( ( nth_a @ ( cons_a @ X2 @ Xs ) @ N2 )
        = ( nth_a @ Xs @ ( minus_minus_nat @ N2 @ one_one_nat ) ) ) ) ).

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

% hd_conv_nth
thf(fact_945_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_946_list_Osel_I1_J,axiom,
    ! [X21: a,X22: list_a] :
      ( ( hd_a @ ( cons_a @ X21 @ X22 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_947_hd__drop__conv__nth,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( ord_less_nat @ N2 @ ( size_size_list_a @ Xs ) )
     => ( ( hd_a @ ( drop_a @ N2 @ Xs ) )
        = ( nth_a @ Xs @ N2 ) ) ) ).

% hd_drop_conv_nth
thf(fact_948_hd__drop__conv__nth,axiom,
    ! [N2: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ N2 @ ( size_size_list_set_a @ Xs ) )
     => ( ( hd_set_a @ ( drop_set_a @ N2 @ Xs ) )
        = ( nth_set_a @ Xs @ N2 ) ) ) ).

% hd_drop_conv_nth
thf(fact_949_hd__in__set,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ( member_a @ ( hd_a @ Xs ) @ ( set_a2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_950_hd__in__set,axiom,
    ! [Xs: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( member_set_a @ ( hd_set_a @ Xs ) @ ( set_set_a2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_951_list_Oset__sel_I1_J,axiom,
    ! [A: list_a] :
      ( ( A != nil_a )
     => ( member_a @ ( hd_a @ A ) @ ( set_a2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_952_list_Oset__sel_I1_J,axiom,
    ! [A: list_set_a] :
      ( ( A != nil_set_a )
     => ( member_set_a @ ( hd_set_a @ A ) @ ( set_set_a2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_953_longest__common__prefix,axiom,
    ! [Xs: list_a,Ys2: list_a] :
    ? [Ps: list_a,Xs4: list_a,Ys5: list_a] :
      ( ( Xs
        = ( append_a @ Ps @ Xs4 ) )
      & ( Ys2
        = ( append_a @ Ps @ Ys5 ) )
      & ( ( Xs4 = nil_a )
        | ( Ys5 = nil_a )
        | ( ( hd_a @ Xs4 )
         != ( hd_a @ Ys5 ) ) ) ) ).

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

% longest_common_prefix
thf(fact_955_hd__append,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( Xs = nil_a )
       => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
          = ( hd_a @ Ys2 ) ) )
      & ( ( Xs != nil_a )
       => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
          = ( hd_a @ Xs ) ) ) ) ).

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

% hd_append
thf(fact_957_nth__equalityI,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs ) )
           => ( ( nth_a @ Xs @ I2 )
              = ( nth_a @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_958_nth__equalityI,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_set_a @ Xs ) )
           => ( ( nth_set_a @ Xs @ I2 )
              = ( nth_set_a @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_959_Skolem__list__nth,axiom,
    ! [K: nat,P3: nat > a > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X6: a] : ( P3 @ I4 @ X6 ) ) )
      = ( ? [Xs3: list_a] :
            ( ( ( size_size_list_a @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P3 @ I4 @ ( nth_a @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_960_Skolem__list__nth,axiom,
    ! [K: nat,P3: nat > set_a > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X6: set_a] : ( P3 @ I4 @ X6 ) ) )
      = ( ? [Xs3: list_set_a] :
            ( ( ( size_size_list_set_a @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P3 @ I4 @ ( nth_set_a @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_961_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y5: list_a,Z2: list_a] : ( Y5 = Z2 ) )
    = ( ^ [Xs3: list_a,Ys4: list_a] :
          ( ( ( size_size_list_a @ Xs3 )
            = ( size_size_list_a @ Ys4 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_size_list_a @ Xs3 ) )
             => ( ( nth_a @ Xs3 @ I4 )
                = ( nth_a @ Ys4 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_962_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y5: list_set_a,Z2: list_set_a] : ( Y5 = Z2 ) )
    = ( ^ [Xs3: list_set_a,Ys4: list_set_a] :
          ( ( ( size_size_list_set_a @ Xs3 )
            = ( size_size_list_set_a @ Ys4 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_size_list_set_a @ Xs3 ) )
             => ( ( nth_set_a @ Xs3 @ I4 )
                = ( nth_set_a @ Ys4 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_963_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_964_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_965_hd__Nil__eq__last,axiom,
    ( ( hd_a @ nil_a )
    = ( last_a @ nil_a ) ) ).

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

% hd_Nil_eq_last
thf(fact_967_nth__via__drop,axiom,
    ! [N2: nat,Xs: list_set_a,Y: set_a,Ys2: list_set_a] :
      ( ( ( drop_set_a @ N2 @ Xs )
        = ( cons_set_a @ Y @ Ys2 ) )
     => ( ( nth_set_a @ Xs @ N2 )
        = Y ) ) ).

% nth_via_drop
thf(fact_968_nth__via__drop,axiom,
    ! [N2: nat,Xs: list_a,Y: a,Ys2: list_a] :
      ( ( ( drop_a @ N2 @ Xs )
        = ( cons_a @ Y @ Ys2 ) )
     => ( ( nth_a @ Xs @ N2 )
        = Y ) ) ).

% nth_via_drop
thf(fact_969_ulgraph_Ois__walk__wf__hd,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs )
       => ( member_set_a @ ( hd_set_a @ Xs ) @ Vertices ) ) ) ).

% ulgraph.is_walk_wf_hd
thf(fact_970_ulgraph_Ois__walk__wf__hd,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
       => ( member_a @ ( hd_a @ Xs ) @ Vertices ) ) ) ).

% ulgraph.is_walk_wf_hd
thf(fact_971_last__rev,axiom,
    ! [Xs: list_set_a] :
      ( ( last_set_a @ ( rev_set_a @ Xs ) )
      = ( hd_set_a @ Xs ) ) ).

% last_rev
thf(fact_972_last__rev,axiom,
    ! [Xs: list_a] :
      ( ( last_a @ ( rev_a @ Xs ) )
      = ( hd_a @ Xs ) ) ).

% last_rev
thf(fact_973_hd__rev,axiom,
    ! [Xs: list_set_a] :
      ( ( hd_set_a @ ( rev_set_a @ Xs ) )
      = ( last_set_a @ Xs ) ) ).

% hd_rev
thf(fact_974_hd__rev,axiom,
    ! [Xs: list_a] :
      ( ( hd_a @ ( rev_a @ Xs ) )
      = ( last_a @ Xs ) ) ).

% hd_rev
thf(fact_975_nth__mem,axiom,
    ! [N2: nat,Xs: list_a] :
      ( ( ord_less_nat @ N2 @ ( size_size_list_a @ Xs ) )
     => ( member_a @ ( nth_a @ Xs @ N2 ) @ ( set_a2 @ Xs ) ) ) ).

% nth_mem
thf(fact_976_nth__mem,axiom,
    ! [N2: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ N2 @ ( size_size_list_set_a @ Xs ) )
     => ( member_set_a @ ( nth_set_a @ Xs @ N2 ) @ ( set_set_a2 @ Xs ) ) ) ).

% nth_mem
thf(fact_977_list__ball__nth,axiom,
    ! [N2: nat,Xs: list_a,P3: a > $o] :
      ( ( ord_less_nat @ N2 @ ( size_size_list_a @ Xs ) )
     => ( ! [X4: a] :
            ( ( member_a @ X4 @ ( set_a2 @ Xs ) )
           => ( P3 @ X4 ) )
       => ( P3 @ ( nth_a @ Xs @ N2 ) ) ) ) ).

% list_ball_nth
thf(fact_978_list__ball__nth,axiom,
    ! [N2: nat,Xs: list_set_a,P3: set_a > $o] :
      ( ( ord_less_nat @ N2 @ ( size_size_list_set_a @ Xs ) )
     => ( ! [X4: set_a] :
            ( ( member_set_a @ X4 @ ( set_set_a2 @ Xs ) )
           => ( P3 @ X4 ) )
       => ( P3 @ ( nth_set_a @ Xs @ N2 ) ) ) ) ).

% list_ball_nth
thf(fact_979_in__set__conv__nth,axiom,
    ! [X2: a,Xs: list_a] :
      ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_a @ Xs ) )
            & ( ( nth_a @ Xs @ I4 )
              = X2 ) ) ) ) ).

% in_set_conv_nth
thf(fact_980_in__set__conv__nth,axiom,
    ! [X2: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_set_a @ Xs ) )
            & ( ( nth_set_a @ Xs @ I4 )
              = X2 ) ) ) ) ).

% in_set_conv_nth
thf(fact_981_all__nth__imp__all__set,axiom,
    ! [Xs: list_a,P3: a > $o,X2: a] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs ) )
         => ( P3 @ ( nth_a @ Xs @ I2 ) ) )
     => ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
       => ( P3 @ X2 ) ) ) ).

% all_nth_imp_all_set
thf(fact_982_all__nth__imp__all__set,axiom,
    ! [Xs: list_set_a,P3: set_a > $o,X2: set_a] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_set_a @ Xs ) )
         => ( P3 @ ( nth_set_a @ Xs @ I2 ) ) )
     => ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
       => ( P3 @ X2 ) ) ) ).

% all_nth_imp_all_set
thf(fact_983_all__set__conv__all__nth,axiom,
    ! [Xs: list_a,P3: a > $o] :
      ( ( ! [X3: a] :
            ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
           => ( P3 @ X3 ) ) )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_a @ Xs ) )
           => ( P3 @ ( nth_a @ Xs @ I4 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_984_all__set__conv__all__nth,axiom,
    ! [Xs: list_set_a,P3: set_a > $o] :
      ( ( ! [X3: set_a] :
            ( ( member_set_a @ X3 @ ( set_set_a2 @ Xs ) )
           => ( P3 @ X3 ) ) )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_set_a @ Xs ) )
           => ( P3 @ ( nth_set_a @ Xs @ I4 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_985_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_986_list_Oexhaust__sel,axiom,
    ! [List: list_a] :
      ( ( List != nil_a )
     => ( List
        = ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) ) ) ) ).

% list.exhaust_sel
thf(fact_987_distinct__conv__nth,axiom,
    ( distinct_a
    = ( ^ [Xs3: list_a] :
        ! [I4: nat] :
          ( ( ord_less_nat @ I4 @ ( size_size_list_a @ Xs3 ) )
         => ! [J3: nat] :
              ( ( ord_less_nat @ J3 @ ( size_size_list_a @ Xs3 ) )
             => ( ( I4 != J3 )
               => ( ( nth_a @ Xs3 @ I4 )
                 != ( nth_a @ Xs3 @ J3 ) ) ) ) ) ) ) ).

% distinct_conv_nth
thf(fact_988_distinct__conv__nth,axiom,
    ( distinct_set_a
    = ( ^ [Xs3: list_set_a] :
        ! [I4: nat] :
          ( ( ord_less_nat @ I4 @ ( size_size_list_set_a @ Xs3 ) )
         => ! [J3: nat] :
              ( ( ord_less_nat @ J3 @ ( size_size_list_set_a @ Xs3 ) )
             => ( ( I4 != J3 )
               => ( ( nth_set_a @ Xs3 @ I4 )
                 != ( nth_set_a @ Xs3 @ J3 ) ) ) ) ) ) ) ).

% distinct_conv_nth
thf(fact_989_nth__eq__iff__index__eq,axiom,
    ! [Xs: list_a,I: nat,J: nat] :
      ( ( distinct_a @ Xs )
     => ( ( ord_less_nat @ I @ ( size_size_list_a @ Xs ) )
       => ( ( ord_less_nat @ J @ ( size_size_list_a @ Xs ) )
         => ( ( ( nth_a @ Xs @ I )
              = ( nth_a @ Xs @ J ) )
            = ( I = J ) ) ) ) ) ).

% nth_eq_iff_index_eq
thf(fact_990_nth__eq__iff__index__eq,axiom,
    ! [Xs: list_set_a,I: nat,J: nat] :
      ( ( distinct_set_a @ Xs )
     => ( ( ord_less_nat @ I @ ( size_size_list_set_a @ Xs ) )
       => ( ( ord_less_nat @ J @ ( size_size_list_set_a @ Xs ) )
         => ( ( ( nth_set_a @ Xs @ I )
              = ( nth_set_a @ Xs @ J ) )
            = ( I = J ) ) ) ) ) ).

% nth_eq_iff_index_eq
thf(fact_991_nth__Cons_H,axiom,
    ! [N2: nat,X2: set_a,Xs: list_set_a] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( nth_set_a @ ( cons_set_a @ X2 @ Xs ) @ N2 )
          = X2 ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( nth_set_a @ ( cons_set_a @ X2 @ Xs ) @ N2 )
          = ( nth_set_a @ Xs @ ( minus_minus_nat @ N2 @ one_one_nat ) ) ) ) ) ).

% nth_Cons'
thf(fact_992_nth__Cons_H,axiom,
    ! [N2: nat,X2: a,Xs: list_a] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( nth_a @ ( cons_a @ X2 @ Xs ) @ N2 )
          = X2 ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( nth_a @ ( cons_a @ X2 @ Xs ) @ N2 )
          = ( nth_a @ Xs @ ( minus_minus_nat @ N2 @ one_one_nat ) ) ) ) ) ).

% nth_Cons'
thf(fact_993_nth__append,axiom,
    ! [N2: nat,Xs: list_a,Ys2: list_a] :
      ( ( ( ord_less_nat @ N2 @ ( size_size_list_a @ Xs ) )
       => ( ( nth_a @ ( append_a @ Xs @ Ys2 ) @ N2 )
          = ( nth_a @ Xs @ N2 ) ) )
      & ( ~ ( ord_less_nat @ N2 @ ( size_size_list_a @ Xs ) )
       => ( ( nth_a @ ( append_a @ Xs @ Ys2 ) @ N2 )
          = ( nth_a @ Ys2 @ ( minus_minus_nat @ N2 @ ( size_size_list_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_994_nth__append,axiom,
    ! [N2: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( ( ord_less_nat @ N2 @ ( size_size_list_set_a @ Xs ) )
       => ( ( nth_set_a @ ( append_set_a @ Xs @ Ys2 ) @ N2 )
          = ( nth_set_a @ Xs @ N2 ) ) )
      & ( ~ ( ord_less_nat @ N2 @ ( size_size_list_set_a @ Xs ) )
       => ( ( nth_set_a @ ( append_set_a @ Xs @ Ys2 ) @ N2 )
          = ( nth_set_a @ Ys2 @ ( minus_minus_nat @ N2 @ ( size_size_list_set_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_995_distinct__Ex1,axiom,
    ! [Xs: list_a,X2: a] :
      ( ( distinct_a @ Xs )
     => ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
       => ? [X4: nat] :
            ( ( ord_less_nat @ X4 @ ( size_size_list_a @ Xs ) )
            & ( ( nth_a @ Xs @ X4 )
              = X2 )
            & ! [Y2: nat] :
                ( ( ( ord_less_nat @ Y2 @ ( size_size_list_a @ Xs ) )
                  & ( ( nth_a @ Xs @ Y2 )
                    = X2 ) )
               => ( Y2 = X4 ) ) ) ) ) ).

% distinct_Ex1
thf(fact_996_distinct__Ex1,axiom,
    ! [Xs: list_set_a,X2: set_a] :
      ( ( distinct_set_a @ Xs )
     => ( ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
       => ? [X4: nat] :
            ( ( ord_less_nat @ X4 @ ( size_size_list_set_a @ Xs ) )
            & ( ( nth_set_a @ Xs @ X4 )
              = X2 )
            & ! [Y2: nat] :
                ( ( ( ord_less_nat @ Y2 @ ( size_size_list_set_a @ Xs ) )
                  & ( ( nth_set_a @ Xs @ Y2 )
                    = X2 ) )
               => ( Y2 = X4 ) ) ) ) ) ).

% distinct_Ex1
thf(fact_997_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_a,Ys2: list_a] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_a @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_a @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_a @ Xs @ I2 )
                = ( nth_a @ Ys2 @ I2 ) ) )
         => ( ( take_a @ K @ Xs )
            = ( take_a @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_998_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_set_a @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_set_a @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_set_a @ Xs @ I2 )
                = ( nth_set_a @ Ys2 @ I2 ) ) )
         => ( ( take_set_a @ K @ Xs )
            = ( take_set_a @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_999_distinct__tl__rev,axiom,
    ! [Xs: list_a] :
      ( ( ( hd_a @ Xs )
        = ( last_a @ Xs ) )
     => ( ( distinct_a @ ( tl_a @ Xs ) )
        = ( distinct_a @ ( tl_a @ ( rev_a @ Xs ) ) ) ) ) ).

% distinct_tl_rev
thf(fact_1000_distinct__tl__rev,axiom,
    ! [Xs: list_set_a] :
      ( ( ( hd_set_a @ Xs )
        = ( last_set_a @ Xs ) )
     => ( ( distinct_set_a @ ( tl_set_a @ Xs ) )
        = ( distinct_set_a @ ( tl_set_a @ ( rev_set_a @ Xs ) ) ) ) ) ).

% distinct_tl_rev
thf(fact_1001_ulgraph_Ois__gen__path__distinct,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire7201326534205417136_set_a @ Vertices @ Edges @ P )
       => ( ( ( hd_set_a @ P )
           != ( last_set_a @ P ) )
         => ( distinct_set_a @ P ) ) ) ) ).

% ulgraph.is_gen_path_distinct
thf(fact_1002_ulgraph_Ois__gen__path__distinct,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3562951555376170320path_a @ Vertices @ Edges @ P )
       => ( ( ( hd_a @ P )
           != ( last_a @ P ) )
         => ( distinct_a @ P ) ) ) ) ).

% ulgraph.is_gen_path_distinct
thf(fact_1003_ulgraph_Oconnecting__walk__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_walk_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
          & ( ( hd_a @ Xs )
            = U )
          & ( ( last_a @ Xs )
            = V ) ) ) ) ).

% ulgraph.connecting_walk_def
thf(fact_1004_ulgraph_Oconnecting__path__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connecting_path_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( ( undire3562951555376170320path_a @ Vertices @ Edges @ Xs )
          & ( ( hd_a @ Xs )
            = U )
          & ( ( last_a @ Xs )
            = V ) ) ) ) ).

% ulgraph.connecting_path_def
thf(fact_1005_ulgraph_Ois__closed__walk__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3370724456595283424walk_a @ Vertices @ Edges @ Xs )
        = ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
          & ( ( hd_a @ Xs )
            = ( last_a @ Xs ) ) ) ) ) ).

% ulgraph.is_closed_walk_def
thf(fact_1006_ulgraph_Ois__open__walk__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire2427028224930250914walk_a @ Vertices @ Edges @ Xs )
        = ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
          & ( ( hd_a @ Xs )
           != ( last_a @ Xs ) ) ) ) ) ).

% ulgraph.is_open_walk_def
thf(fact_1007_ulgraph_Oconnecting__path__str__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,U: a,V: a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( connec3015921205769380621_str_a @ Vertices @ Edges @ U @ V @ Xs )
        = ( ( undire427332500224447920path_a @ Vertices @ Edges @ Xs )
          & ( ( hd_a @ Xs )
            = U )
          & ( ( last_a @ Xs )
            = V ) ) ) ) ).

% ulgraph.connecting_path_str_def
thf(fact_1008_nth__equal__first__eq,axiom,
    ! [X2: a,Xs: list_a,N2: nat] :
      ( ~ ( member_a @ X2 @ ( set_a2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N2 @ ( size_size_list_a @ Xs ) )
       => ( ( ( nth_a @ ( cons_a @ X2 @ Xs ) @ N2 )
            = X2 )
          = ( N2 = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1009_nth__equal__first__eq,axiom,
    ! [X2: set_a,Xs: list_set_a,N2: nat] :
      ( ~ ( member_set_a @ X2 @ ( set_set_a2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N2 @ ( size_size_list_set_a @ Xs ) )
       => ( ( ( nth_set_a @ ( cons_set_a @ X2 @ Xs ) @ N2 )
            = X2 )
          = ( N2 = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1010_nth__non__equal__first__eq,axiom,
    ! [X2: set_a,Y: set_a,Xs: list_set_a,N2: nat] :
      ( ( X2 != Y )
     => ( ( ( nth_set_a @ ( cons_set_a @ X2 @ Xs ) @ N2 )
          = Y )
        = ( ( ( nth_set_a @ Xs @ ( minus_minus_nat @ N2 @ one_one_nat ) )
            = Y )
          & ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ) ).

% nth_non_equal_first_eq
thf(fact_1011_nth__non__equal__first__eq,axiom,
    ! [X2: a,Y: a,Xs: list_a,N2: nat] :
      ( ( X2 != Y )
     => ( ( ( nth_a @ ( cons_a @ X2 @ Xs ) @ N2 )
          = Y )
        = ( ( ( nth_a @ Xs @ ( minus_minus_nat @ N2 @ one_one_nat ) )
            = Y )
          & ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ) ).

% nth_non_equal_first_eq
thf(fact_1012_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_1013_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_1014_ulgraph_Ois__walk__append,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a,Ys2: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Xs )
       => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ Ys2 )
         => ( ( ( last_a @ Xs )
              = ( hd_a @ Ys2 ) )
           => ( undire6133010728901294956walk_a @ Vertices @ Edges @ ( append_a @ Xs @ ( tl_a @ Ys2 ) ) ) ) ) ) ) ).

% ulgraph.is_walk_append
thf(fact_1015_ulgraph_Ois__gen__path__distinct__tl,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire7201326534205417136_set_a @ Vertices @ Edges @ P )
       => ( ( ( hd_set_a @ P )
            = ( last_set_a @ P ) )
         => ( distinct_set_a @ ( tl_set_a @ P ) ) ) ) ) ).

% ulgraph.is_gen_path_distinct_tl
thf(fact_1016_ulgraph_Ois__gen__path__distinct__tl,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3562951555376170320path_a @ Vertices @ Edges @ P )
       => ( ( ( hd_a @ P )
            = ( last_a @ P ) )
         => ( distinct_a @ ( tl_a @ P ) ) ) ) ) ).

% ulgraph.is_gen_path_distinct_tl
thf(fact_1017_ulgraph_Ois__gen__path__def,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,P: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire7201326534205417136_set_a @ Vertices @ Edges @ P )
        = ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ P )
          & ( ( ( distinct_set_a @ ( tl_set_a @ P ) )
              & ( ( hd_set_a @ P )
                = ( last_set_a @ P ) ) )
            | ( distinct_set_a @ P ) ) ) ) ) ).

% ulgraph.is_gen_path_def
thf(fact_1018_ulgraph_Ois__gen__path__def,axiom,
    ! [Vertices: set_a,Edges: set_set_a,P: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( undire3562951555376170320path_a @ Vertices @ Edges @ P )
        = ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ P )
          & ( ( ( distinct_a @ ( tl_a @ P ) )
              & ( ( hd_a @ P )
                = ( last_a @ P ) ) )
            | ( distinct_a @ P ) ) ) ) ) ).

% ulgraph.is_gen_path_def
thf(fact_1019_ulgraph_Owalk__edges__index,axiom,
    ! [Vertices: set_a,Edges: set_set_a,I: nat,W: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ I )
       => ( ( ord_less_nat @ I @ ( undire8849074589633906640ngth_a @ W ) )
         => ( ( undire6133010728901294956walk_a @ Vertices @ Edges @ W )
           => ( member_set_a @ ( nth_set_a @ ( undire7337870655677353998dges_a @ W ) @ I ) @ Edges ) ) ) ) ) ).

% ulgraph.walk_edges_index
thf(fact_1020_ulgraph_Ois__cycle__alt__gen__path,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( 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 ) ) ) ) ) ).

% ulgraph.is_cycle_alt_gen_path
thf(fact_1021_ulgraph_Ois__cycle__alt,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( undire797940137672299967_set_a @ Vertices @ Edges @ Xs )
        = ( ( undire3014741414213135564_set_a @ Vertices @ Edges @ Xs )
          & ( distinct_set_a @ ( tl_set_a @ Xs ) )
          & ( ord_less_eq_nat @ one_one_nat @ ( undire4424681683220949296_set_a @ Xs ) )
          & ( ( hd_set_a @ Xs )
            = ( last_set_a @ Xs ) ) ) ) ) ).

% ulgraph.is_cycle_alt
thf(fact_1022_ulgraph_Ois__cycle__alt,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( 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 ) ) ) ) ) ).

% ulgraph.is_cycle_alt
thf(fact_1023_walk__length__app,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs != nil_a )
     => ( ( Ys2 != nil_a )
       => ( ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) )
          = ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ one_one_nat ) ) ) ) ).

% walk_length_app
thf(fact_1024_walk__length__app__ineq,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) ) )
      & ( ord_less_eq_nat @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ one_one_nat ) ) ) ).

% walk_length_app_ineq
thf(fact_1025_n__lists__Nil,axiom,
    ! [N2: nat] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( n_lists_a @ N2 @ nil_a )
          = ( cons_list_a @ nil_a @ nil_list_a ) ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( n_lists_a @ N2 @ nil_a )
          = nil_list_a ) ) ) ).

% n_lists_Nil
thf(fact_1026_n__lists__Nil,axiom,
    ! [N2: nat] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( n_lists_set_a @ N2 @ nil_set_a )
          = ( cons_list_set_a @ nil_set_a @ nil_list_set_a ) ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( n_lists_set_a @ N2 @ nil_set_a )
          = nil_list_set_a ) ) ) ).

% n_lists_Nil
thf(fact_1027_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_1028_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_1029_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_1030_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_1031_add_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.right_neutral
thf(fact_1032_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_1033_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_1034_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_1035_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_1036_add__eq__0__iff__both__eq__0,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ( plus_plus_nat @ X2 @ Y )
        = zero_zero_nat )
      = ( ( X2 = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

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

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

% add_0
thf(fact_1039_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_1040_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_1041_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_1042_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_1043_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_1044_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_1045_add__is__0,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ( plus_plus_nat @ M3 @ N2 )
        = zero_zero_nat )
      = ( ( M3 = zero_zero_nat )
        & ( N2 = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_1046_Nat_Oadd__0__right,axiom,
    ! [M3: nat] :
      ( ( plus_plus_nat @ M3 @ zero_zero_nat )
      = M3 ) ).

% Nat.add_0_right
thf(fact_1047_nat__add__left__cancel__less,axiom,
    ! [K: nat,M3: nat,N2: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M3 ) @ ( plus_plus_nat @ K @ N2 ) )
      = ( ord_less_nat @ M3 @ N2 ) ) ).

% nat_add_left_cancel_less
thf(fact_1048_nat__add__left__cancel__le,axiom,
    ! [K: nat,M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M3 ) @ ( plus_plus_nat @ K @ N2 ) )
      = ( ord_less_eq_nat @ M3 @ N2 ) ) ).

% nat_add_left_cancel_le
thf(fact_1049_diff__diff__left,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ I @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_1050_drop__drop,axiom,
    ! [N2: nat,M3: nat,Xs: list_a] :
      ( ( drop_a @ N2 @ ( drop_a @ M3 @ Xs ) )
      = ( drop_a @ ( plus_plus_nat @ N2 @ M3 ) @ Xs ) ) ).

% drop_drop
thf(fact_1051_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_1052_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_1053_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_1054_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_1055_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_1056_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_1057_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_1058_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_1059_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_1060_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_1061_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_1062_add__gr__0,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M3 @ N2 ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M3 )
        | ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ).

% add_gr_0
thf(fact_1063_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_1064_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K ) ) ) ).

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

% Nat.diff_diff_right
thf(fact_1066_length__append,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( size_size_list_a @ ( append_a @ Xs @ Ys2 ) )
      = ( plus_plus_nat @ ( size_size_list_a @ Xs ) @ ( size_size_list_a @ Ys2 ) ) ) ).

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

% length_append
thf(fact_1068_nth__append__length__plus,axiom,
    ! [Xs: list_a,Ys2: list_a,N2: nat] :
      ( ( nth_a @ ( append_a @ Xs @ Ys2 ) @ ( plus_plus_nat @ ( size_size_list_a @ Xs ) @ N2 ) )
      = ( nth_a @ Ys2 @ N2 ) ) ).

% nth_append_length_plus
thf(fact_1069_nth__append__length__plus,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a,N2: nat] :
      ( ( nth_set_a @ ( append_set_a @ Xs @ Ys2 ) @ ( plus_plus_nat @ ( size_size_list_set_a @ Xs ) @ N2 ) )
      = ( nth_set_a @ Ys2 @ N2 ) ) ).

% nth_append_length_plus
thf(fact_1070_nth__drop,axiom,
    ! [N2: nat,Xs: list_a,I: nat] :
      ( ( ord_less_eq_nat @ N2 @ ( size_size_list_a @ Xs ) )
     => ( ( nth_a @ ( drop_a @ N2 @ Xs ) @ I )
        = ( nth_a @ Xs @ ( plus_plus_nat @ N2 @ I ) ) ) ) ).

% nth_drop
thf(fact_1071_nth__drop,axiom,
    ! [N2: nat,Xs: list_set_a,I: nat] :
      ( ( ord_less_eq_nat @ N2 @ ( size_size_list_set_a @ Xs ) )
     => ( ( nth_set_a @ ( drop_set_a @ N2 @ Xs ) @ I )
        = ( nth_set_a @ Xs @ ( plus_plus_nat @ N2 @ I ) ) ) ) ).

% nth_drop
thf(fact_1072_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_1073_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_1074_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_1075_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_1076_add__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

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

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

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

% add_mono_thms_linordered_field(5)
thf(fact_1080_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_1081_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_1082_plus__nat_Oadd__0,axiom,
    ! [N2: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N2 )
      = N2 ) ).

% plus_nat.add_0
thf(fact_1083_add__eq__self__zero,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ( plus_plus_nat @ M3 @ N2 )
        = M3 )
     => ( N2 = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_1084_add__lessD1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

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

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

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

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

% add_less_mono1
thf(fact_1089_trans__less__add1,axiom,
    ! [I: nat,J: nat,M3: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M3 ) ) ) ).

% trans_less_add1
thf(fact_1090_trans__less__add2,axiom,
    ! [I: nat,J: nat,M3: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M3 @ J ) ) ) ).

% trans_less_add2
thf(fact_1091_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M3: nat,N2: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M3 @ L )
          = ( plus_plus_nat @ K @ N2 ) )
       => ( ord_less_nat @ M3 @ N2 ) ) ) ).

% less_add_eq_less
thf(fact_1092_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M: nat,N: nat] :
        ? [K3: nat] :
          ( N
          = ( plus_plus_nat @ M @ K3 ) ) ) ) ).

% nat_le_iff_add
thf(fact_1093_trans__le__add2,axiom,
    ! [I: nat,J: nat,M3: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M3 @ J ) ) ) ).

% trans_le_add2
thf(fact_1094_trans__le__add1,axiom,
    ! [I: nat,J: nat,M3: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J @ M3 ) ) ) ).

% trans_le_add1
thf(fact_1095_add__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_le_mono1
thf(fact_1096_add__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_le_mono
thf(fact_1097_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N3: nat] :
          ( L
          = ( plus_plus_nat @ K @ N3 ) ) ) ).

% le_Suc_ex
thf(fact_1098_add__leD2,axiom,
    ! [M3: nat,K: nat,N2: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M3 @ K ) @ N2 )
     => ( ord_less_eq_nat @ K @ N2 ) ) ).

% add_leD2
thf(fact_1099_add__leD1,axiom,
    ! [M3: nat,K: nat,N2: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M3 @ K ) @ N2 )
     => ( ord_less_eq_nat @ M3 @ N2 ) ) ).

% add_leD1
thf(fact_1100_le__add2,axiom,
    ! [N2: nat,M3: nat] : ( ord_less_eq_nat @ N2 @ ( plus_plus_nat @ M3 @ N2 ) ) ).

% le_add2
thf(fact_1101_le__add1,axiom,
    ! [N2: nat,M3: nat] : ( ord_less_eq_nat @ N2 @ ( plus_plus_nat @ N2 @ M3 ) ) ).

% le_add1
thf(fact_1102_add__leE,axiom,
    ! [M3: nat,K: nat,N2: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M3 @ K ) @ N2 )
     => ~ ( ( ord_less_eq_nat @ M3 @ N2 )
         => ~ ( ord_less_eq_nat @ K @ N2 ) ) ) ).

% add_leE
thf(fact_1103_diff__add__inverse2,axiom,
    ! [M3: nat,N2: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M3 @ N2 ) @ N2 )
      = M3 ) ).

% diff_add_inverse2
thf(fact_1104_diff__add__inverse,axiom,
    ! [N2: nat,M3: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N2 @ M3 ) @ N2 )
      = M3 ) ).

% diff_add_inverse
thf(fact_1105_diff__cancel2,axiom,
    ! [M3: nat,K: nat,N2: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M3 @ K ) @ ( plus_plus_nat @ N2 @ K ) )
      = ( minus_minus_nat @ M3 @ N2 ) ) ).

% diff_cancel2
thf(fact_1106_Nat_Odiff__cancel,axiom,
    ! [K: nat,M3: nat,N2: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M3 ) @ ( plus_plus_nat @ K @ N2 ) )
      = ( minus_minus_nat @ M3 @ N2 ) ) ).

% Nat.diff_cancel
thf(fact_1107_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_1108_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_1109_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_1110_group__cancel_Oadd2,axiom,
    ! [B4: nat,K: nat,B: nat,A: nat] :
      ( ( B4
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B4 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_1111_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_1112_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A4: nat,B3: nat] : ( plus_plus_nat @ B3 @ A4 ) ) ) ).

% add.commute
thf(fact_1113_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_1114_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_1115_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_1116_add_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.comm_neutral
thf(fact_1117_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_1118_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

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

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

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

% add_mono
thf(fact_1122_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_1123_less__eqE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ~ ! [C4: nat] :
            ( B
           != ( plus_plus_nat @ A @ C4 ) ) ) ).

% less_eqE
thf(fact_1124_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_1125_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A4: nat,B3: nat] :
        ? [C2: nat] :
          ( B3
          = ( plus_plus_nat @ A4 @ C2 ) ) ) ) ).

% le_iff_add
thf(fact_1126_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_1127_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_1128_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_1129_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_1130_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_1131_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_1132_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_1133_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_1134_add__nonneg__eq__0__iff,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X2 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y )
       => ( ( ( plus_plus_nat @ X2 @ Y )
            = zero_zero_nat )
          = ( ( X2 = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

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

% add_nonpos_eq_0_iff
thf(fact_1136_add__less__le__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

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

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

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

% add_mono_thms_linordered_field(4)
thf(fact_1140_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_1141_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ! [C4: nat] :
            ( ( B
              = ( plus_plus_nat @ A @ C4 ) )
           => ( C4 = zero_zero_nat ) ) ) ).

% canonically_ordered_monoid_add_class.lessE
thf(fact_1142_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_1143_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_1144_add__le__imp__le__diff,axiom,
    ! [I: nat,K: nat,N2: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N2 )
     => ( ord_less_eq_nat @ I @ ( minus_minus_nat @ N2 @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1145_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_1146_add__le__add__imp__diff__le,axiom,
    ! [I: nat,K: nat,N2: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N2 )
     => ( ( ord_less_eq_nat @ N2 @ ( plus_plus_nat @ J @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N2 )
         => ( ( ord_less_eq_nat @ N2 @ ( plus_plus_nat @ J @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N2 @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1147_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_1148_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_1149_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_1150_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_1151_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_1152_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_1153_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_1154_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_1155_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_1156_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_1157_less__add__one,axiom,
    ! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).

% less_add_one
thf(fact_1158_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_1159_less__imp__add__positive,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ? [K2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K2 )
          & ( ( plus_plus_nat @ I @ K2 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_1160_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M3: nat,K: nat] :
      ( ! [M4: nat,N3: nat] :
          ( ( ord_less_nat @ M4 @ N3 )
         => ( ord_less_nat @ ( F @ M4 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M3 ) @ K ) @ ( F @ ( plus_plus_nat @ M3 @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_1161_diff__add__0,axiom,
    ! [N2: nat,M3: nat] :
      ( ( minus_minus_nat @ N2 @ ( plus_plus_nat @ N2 @ M3 ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_1162_less__diff__conv,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_1163_add__diff__inverse__nat,axiom,
    ! [M3: nat,N2: nat] :
      ( ~ ( ord_less_nat @ M3 @ N2 )
     => ( ( plus_plus_nat @ N2 @ ( minus_minus_nat @ M3 @ N2 ) )
        = M3 ) ) ).

% add_diff_inverse_nat
thf(fact_1164_le__diff__conv,axiom,
    ! [J: nat,K: nat,I: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J @ K ) @ I )
      = ( ord_less_eq_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ).

% le_diff_conv
thf(fact_1165_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_eq_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.le_diff_conv2
thf(fact_1166_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_1167_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_1168_Nat_Ole__imp__diff__is__add,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( minus_minus_nat @ J @ I )
          = K )
        = ( J
          = ( plus_plus_nat @ K @ I ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_1169_length__n__lists__elem,axiom,
    ! [Ys2: list_a,N2: nat,Xs: list_a] :
      ( ( member_list_a @ Ys2 @ ( set_list_a2 @ ( n_lists_a @ N2 @ Xs ) ) )
     => ( ( size_size_list_a @ Ys2 )
        = N2 ) ) ).

% length_n_lists_elem
thf(fact_1170_length__n__lists__elem,axiom,
    ! [Ys2: list_set_a,N2: nat,Xs: list_set_a] :
      ( ( member_list_set_a @ Ys2 @ ( set_list_set_a2 @ ( n_lists_set_a @ N2 @ Xs ) ) )
     => ( ( size_size_list_set_a @ Ys2 )
        = N2 ) ) ).

% length_n_lists_elem
thf(fact_1171_take__drop,axiom,
    ! [N2: nat,M3: nat,Xs: list_a] :
      ( ( take_a @ N2 @ ( drop_a @ M3 @ Xs ) )
      = ( drop_a @ M3 @ ( take_a @ ( plus_plus_nat @ N2 @ M3 ) @ Xs ) ) ) ).

% take_drop
thf(fact_1172_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_1173_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_1174_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_1175_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_1176_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_1177_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_1178_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_1179_nat__diff__split__asm,axiom,
    ! [P3: nat > $o,A: nat,B: nat] :
      ( ( P3 @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P3 @ zero_zero_nat ) )
            | ? [D3: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D3 ) )
                & ~ ( P3 @ D3 ) ) ) ) ) ).

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

% nat_diff_split
thf(fact_1181_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1182_take__add,axiom,
    ! [I: nat,J: nat,Xs: list_a] :
      ( ( take_a @ ( plus_plus_nat @ I @ J ) @ Xs )
      = ( append_a @ ( take_a @ I @ Xs ) @ ( take_a @ J @ ( drop_a @ I @ Xs ) ) ) ) ).

% take_add
thf(fact_1183_comp__sgraph_Owalk__length__app,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a] :
      ( ( Xs != nil_set_a )
     => ( ( Ys2 != nil_set_a )
       => ( ( undire4424681683220949296_set_a @ ( append_set_a @ Xs @ Ys2 ) )
          = ( plus_plus_nat @ ( plus_plus_nat @ ( undire4424681683220949296_set_a @ Xs ) @ ( undire4424681683220949296_set_a @ Ys2 ) ) @ one_one_nat ) ) ) ) ).

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

% comp_sgraph.walk_length_app
thf(fact_1185_comp__sgraph_Owalk__length__app__ineq,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) ) )
      & ( ord_less_eq_nat @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ one_one_nat ) ) ) ).

% comp_sgraph.walk_length_app_ineq
thf(fact_1186_ulgraph_Owalk__length__app,axiom,
    ! [Vertices: set_set_a,Edges: set_set_set_a,Xs: list_set_a,Ys2: list_set_a] :
      ( ( undire6886684016831807756_set_a @ Vertices @ Edges )
     => ( ( Xs != nil_set_a )
       => ( ( Ys2 != nil_set_a )
         => ( ( undire4424681683220949296_set_a @ ( append_set_a @ Xs @ Ys2 ) )
            = ( plus_plus_nat @ ( plus_plus_nat @ ( undire4424681683220949296_set_a @ Xs ) @ ( undire4424681683220949296_set_a @ Ys2 ) ) @ one_one_nat ) ) ) ) ) ).

% ulgraph.walk_length_app
thf(fact_1187_ulgraph_Owalk__length__app,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a,Ys2: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( Xs != nil_a )
       => ( ( Ys2 != nil_a )
         => ( ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) )
            = ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ one_one_nat ) ) ) ) ) ).

% ulgraph.walk_length_app
thf(fact_1188_ulgraph_Owalk__length__app__ineq,axiom,
    ! [Vertices: set_a,Edges: set_set_a,Xs: list_a,Ys2: list_a] :
      ( ( undire7251896706689453996raph_a @ Vertices @ Edges )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) ) )
        & ( ord_less_eq_nat @ ( undire8849074589633906640ngth_a @ ( append_a @ Xs @ Ys2 ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( undire8849074589633906640ngth_a @ Xs ) @ ( undire8849074589633906640ngth_a @ Ys2 ) ) @ one_one_nat ) ) ) ) ).

% ulgraph.walk_length_app_ineq
thf(fact_1189_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_a] :
      ( ( n_lists_a @ zero_zero_nat @ Xs )
      = ( cons_list_a @ nil_a @ nil_list_a ) ) ).

% n_lists.simps(1)
thf(fact_1190_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_set_a] :
      ( ( n_lists_set_a @ zero_zero_nat @ Xs )
      = ( cons_list_set_a @ nil_set_a @ nil_list_set_a ) ) ).

% n_lists.simps(1)
thf(fact_1191_bounded__Max__nat,axiom,
    ! [P3: nat > $o,X2: nat,M5: nat] :
      ( ( P3 @ X2 )
     => ( ! [X4: nat] :
            ( ( P3 @ X4 )
           => ( ord_less_eq_nat @ X4 @ M5 ) )
       => ~ ! [M4: nat] :
              ( ( P3 @ M4 )
             => ~ ! [X: nat] :
                    ( ( P3 @ X )
                   => ( ord_less_eq_nat @ X @ M4 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_1192_comp__sgraph_Ois__cycle__alt,axiom,
    ! [S2: set_set_a,Xs: list_set_a] :
      ( ( undire797940137672299967_set_a @ S2 @ ( undire8247866692393712962_set_a @ S2 ) @ Xs )
      = ( ( undire3014741414213135564_set_a @ S2 @ ( undire8247866692393712962_set_a @ S2 ) @ Xs )
        & ( distinct_set_a @ ( tl_set_a @ Xs ) )
        & ( ord_less_eq_nat @ one_one_nat @ ( undire4424681683220949296_set_a @ Xs ) )
        & ( ( hd_set_a @ Xs )
          = ( last_set_a @ Xs ) ) ) ) ).

% comp_sgraph.is_cycle_alt
thf(fact_1193_comp__sgraph_Ois__cycle__alt,axiom,
    ! [S2: set_a,Xs: list_a] :
      ( ( undire2407311113669455967ycle_a @ S2 @ ( undire2918257014606996450dges_a @ S2 ) @ Xs )
      = ( ( undire6133010728901294956walk_a @ S2 @ ( undire2918257014606996450dges_a @ S2 ) @ Xs )
        & ( distinct_a @ ( tl_a @ Xs ) )
        & ( ord_less_eq_nat @ one_one_nat @ ( undire8849074589633906640ngth_a @ Xs ) )
        & ( ( hd_a @ Xs )
          = ( last_a @ Xs ) ) ) ) ).

% comp_sgraph.is_cycle_alt
thf(fact_1194_comp__sgraph_Odegree__none,axiom,
    ! [V: set_a,S2: set_set_a] :
      ( ~ ( member_set_a @ V @ S2 )
     => ( ( undire8939077443744732368_set_a @ ( undire8247866692393712962_set_a @ S2 ) @ V )
        = zero_zero_nat ) ) ).

% comp_sgraph.degree_none
thf(fact_1195_comp__sgraph_Odegree__none,axiom,
    ! [V: a,S2: set_a] :
      ( ~ ( member_a @ V @ S2 )
     => ( ( undire8867928226783802224gree_a @ ( undire2918257014606996450dges_a @ S2 ) @ V )
        = zero_zero_nat ) ) ).

% comp_sgraph.degree_none
thf(fact_1196_all__edges__mono,axiom,
    ! [Vs: set_a,Ws: set_a] :
      ( ( ord_less_eq_set_a @ Vs @ Ws )
     => ( ord_le3724670747650509150_set_a @ ( undire2918257014606996450dges_a @ Vs ) @ ( undire2918257014606996450dges_a @ Ws ) ) ) ).

% all_edges_mono
thf(fact_1197_all__edges__mono,axiom,
    ! [Vs: set_set_a,Ws: set_set_a] :
      ( ( ord_le3724670747650509150_set_a @ Vs @ Ws )
     => ( ord_le5722252365846178494_set_a @ ( undire8247866692393712962_set_a @ Vs ) @ ( undire8247866692393712962_set_a @ Ws ) ) ) ).

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

% old.nat.inject
thf(fact_1199_nat_Oinject,axiom,
    ! [X23: nat,Y23: nat] :
      ( ( ( suc @ X23 )
        = ( suc @ Y23 ) )
      = ( X23 = Y23 ) ) ).

% nat.inject
thf(fact_1200_Suc__less__eq,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ ( suc @ M3 ) @ ( suc @ N2 ) )
      = ( ord_less_nat @ M3 @ N2 ) ) ).

% Suc_less_eq
thf(fact_1201_Suc__mono,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ( ord_less_nat @ ( suc @ M3 ) @ ( suc @ N2 ) ) ) ).

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

% lessI
thf(fact_1203_Suc__le__mono,axiom,
    ! [N2: nat,M3: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N2 ) @ ( suc @ M3 ) )
      = ( ord_less_eq_nat @ N2 @ M3 ) ) ).

% Suc_le_mono
thf(fact_1204_add__Suc__right,axiom,
    ! [M3: nat,N2: nat] :
      ( ( plus_plus_nat @ M3 @ ( suc @ N2 ) )
      = ( suc @ ( plus_plus_nat @ M3 @ N2 ) ) ) ).

% add_Suc_right
thf(fact_1205_diff__Suc__Suc,axiom,
    ! [M3: nat,N2: nat] :
      ( ( minus_minus_nat @ ( suc @ M3 ) @ ( suc @ N2 ) )
      = ( minus_minus_nat @ M3 @ N2 ) ) ).

% diff_Suc_Suc
thf(fact_1206_Suc__diff__diff,axiom,
    ! [M3: nat,N2: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M3 ) @ N2 ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M3 @ N2 ) @ K ) ) ).

% Suc_diff_diff
thf(fact_1207_zero__less__Suc,axiom,
    ! [N2: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N2 ) ) ).

% zero_less_Suc
thf(fact_1208_less__Suc0,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ N2 @ ( suc @ zero_zero_nat ) )
      = ( N2 = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_1209_diff__Suc__1,axiom,
    ! [N2: nat] :
      ( ( minus_minus_nat @ ( suc @ N2 ) @ one_one_nat )
      = N2 ) ).

% diff_Suc_1
thf(fact_1210_Suc__pred,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ( ( suc @ ( minus_minus_nat @ N2 @ ( suc @ zero_zero_nat ) ) )
        = N2 ) ) ).

% Suc_pred
thf(fact_1211_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( suc @ ( minus_minus_nat @ J @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ ( suc @ J ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_1212_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J @ K ) ) @ I )
        = ( minus_minus_nat @ ( suc @ J ) @ ( plus_plus_nat @ K @ I ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_1213_Suc__diff__1,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ( ( suc @ ( minus_minus_nat @ N2 @ one_one_nat ) )
        = N2 ) ) ).

% Suc_diff_1
thf(fact_1214_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_1215_add__Suc,axiom,
    ! [M3: nat,N2: nat] :
      ( ( plus_plus_nat @ ( suc @ M3 ) @ N2 )
      = ( suc @ ( plus_plus_nat @ M3 @ N2 ) ) ) ).

% add_Suc
thf(fact_1216_add__Suc__shift,axiom,
    ! [M3: nat,N2: nat] :
      ( ( plus_plus_nat @ ( suc @ M3 ) @ N2 )
      = ( plus_plus_nat @ M3 @ ( suc @ N2 ) ) ) ).

% add_Suc_shift
thf(fact_1217_add__is__1,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ( plus_plus_nat @ M3 @ N2 )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M3
            = ( suc @ zero_zero_nat ) )
          & ( N2 = zero_zero_nat ) )
        | ( ( M3 = zero_zero_nat )
          & ( N2
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_1218_one__is__add,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M3 @ N2 ) )
      = ( ( ( M3
            = ( suc @ zero_zero_nat ) )
          & ( N2 = zero_zero_nat ) )
        | ( ( M3 = zero_zero_nat )
          & ( N2
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_1219_less__natE,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ~ ! [Q2: nat] :
            ( N2
           != ( suc @ ( plus_plus_nat @ M3 @ Q2 ) ) ) ) ).

% less_natE
thf(fact_1220_less__add__Suc1,axiom,
    ! [I: nat,M3: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M3 ) ) ) ).

% less_add_Suc1
thf(fact_1221_less__add__Suc2,axiom,
    ! [I: nat,M3: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M3 @ I ) ) ) ).

% less_add_Suc2
thf(fact_1222_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M: nat,N: nat] :
        ? [K3: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M @ K3 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_1223_less__imp__Suc__add,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ? [K2: nat] :
          ( N2
          = ( suc @ ( plus_plus_nat @ M3 @ K2 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_1224_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_1225_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_1226_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N: nat] : ( plus_plus_nat @ N @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_1227_n__not__Suc__n,axiom,
    ! [N2: nat] :
      ( N2
     != ( suc @ N2 ) ) ).

% n_not_Suc_n
thf(fact_1228_Suc__inject,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ( suc @ X2 )
        = ( suc @ Y ) )
     => ( X2 = Y ) ) ).

% Suc_inject
thf(fact_1229_zero__induct__lemma,axiom,
    ! [P3: nat > $o,K: nat,I: nat] :
      ( ( P3 @ K )
     => ( ! [N3: nat] :
            ( ( P3 @ ( suc @ N3 ) )
           => ( P3 @ N3 ) )
       => ( P3 @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_1230_Suc__leD,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M3 ) @ N2 )
     => ( ord_less_eq_nat @ M3 @ N2 ) ) ).

% Suc_leD
thf(fact_1231_le__SucE,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ M3 @ ( suc @ N2 ) )
     => ( ~ ( ord_less_eq_nat @ M3 @ N2 )
       => ( M3
          = ( suc @ N2 ) ) ) ) ).

% le_SucE
thf(fact_1232_le__SucI,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ord_less_eq_nat @ M3 @ ( suc @ N2 ) ) ) ).

% le_SucI
thf(fact_1233_Suc__le__D,axiom,
    ! [N2: nat,M6: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N2 ) @ M6 )
     => ? [M4: nat] :
          ( M6
          = ( suc @ M4 ) ) ) ).

% Suc_le_D
thf(fact_1234_le__Suc__eq,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_eq_nat @ M3 @ ( suc @ N2 ) )
      = ( ( ord_less_eq_nat @ M3 @ N2 )
        | ( M3
          = ( suc @ N2 ) ) ) ) ).

% le_Suc_eq
thf(fact_1235_Suc__n__not__le__n,axiom,
    ! [N2: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N2 ) @ N2 ) ).

% Suc_n_not_le_n
thf(fact_1236_not__less__eq__eq,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ~ ( ord_less_eq_nat @ M3 @ N2 ) )
      = ( ord_less_eq_nat @ ( suc @ N2 ) @ M3 ) ) ).

% not_less_eq_eq
thf(fact_1237_full__nat__induct,axiom,
    ! [P3: nat > $o,N2: nat] :
      ( ! [N3: nat] :
          ( ! [M2: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M2 ) @ N3 )
             => ( P3 @ M2 ) )
         => ( P3 @ N3 ) )
     => ( P3 @ N2 ) ) ).

% full_nat_induct
thf(fact_1238_nat__induct__at__least,axiom,
    ! [M3: nat,N2: nat,P3: nat > $o] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ( P3 @ M3 )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ M3 @ N3 )
             => ( ( P3 @ N3 )
               => ( P3 @ ( suc @ N3 ) ) ) )
         => ( P3 @ N2 ) ) ) ) ).

% nat_induct_at_least
thf(fact_1239_transitive__stepwise__le,axiom,
    ! [M3: nat,N2: nat,R: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M3 @ N2 )
     => ( ! [X4: nat] : ( R @ X4 @ X4 )
       => ( ! [X4: nat,Y3: nat,Z3: nat] :
              ( ( R @ X4 @ Y3 )
             => ( ( R @ Y3 @ Z3 )
               => ( R @ X4 @ Z3 ) ) )
         => ( ! [N3: nat] : ( R @ N3 @ ( suc @ N3 ) )
           => ( R @ M3 @ N2 ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_1240_not__less__less__Suc__eq,axiom,
    ! [N2: nat,M3: nat] :
      ( ~ ( ord_less_nat @ N2 @ M3 )
     => ( ( ord_less_nat @ N2 @ ( suc @ M3 ) )
        = ( N2 = M3 ) ) ) ).

% not_less_less_Suc_eq
thf(fact_1241_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P3: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I2: nat] :
            ( ( J
              = ( suc @ I2 ) )
           => ( P3 @ I2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ J )
             => ( ( P3 @ ( suc @ I2 ) )
               => ( P3 @ I2 ) ) )
         => ( P3 @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_1242_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P3: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I2: nat] : ( P3 @ I2 @ ( suc @ I2 ) )
       => ( ! [I2: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I2 @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P3 @ I2 @ J2 )
                 => ( ( P3 @ J2 @ K2 )
                   => ( P3 @ I2 @ K2 ) ) ) ) )
         => ( P3 @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_1243_less__trans__Suc,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ J @ K )
       => ( ord_less_nat @ ( suc @ I ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_1244_Suc__less__SucD,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ ( suc @ M3 ) @ ( suc @ N2 ) )
     => ( ord_less_nat @ M3 @ N2 ) ) ).

% Suc_less_SucD
thf(fact_1245_less__antisym,axiom,
    ! [N2: nat,M3: nat] :
      ( ~ ( ord_less_nat @ N2 @ M3 )
     => ( ( ord_less_nat @ N2 @ ( suc @ M3 ) )
       => ( M3 = N2 ) ) ) ).

% less_antisym
thf(fact_1246_Suc__less__eq2,axiom,
    ! [N2: nat,M3: nat] :
      ( ( ord_less_nat @ ( suc @ N2 ) @ M3 )
      = ( ? [M7: nat] :
            ( ( M3
              = ( suc @ M7 ) )
            & ( ord_less_nat @ N2 @ M7 ) ) ) ) ).

% Suc_less_eq2
thf(fact_1247_All__less__Suc,axiom,
    ! [N2: nat,P3: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N2 ) )
           => ( P3 @ I4 ) ) )
      = ( ( P3 @ N2 )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N2 )
           => ( P3 @ I4 ) ) ) ) ).

% All_less_Suc
thf(fact_1248_not__less__eq,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ~ ( ord_less_nat @ M3 @ N2 ) )
      = ( ord_less_nat @ N2 @ ( suc @ M3 ) ) ) ).

% not_less_eq
thf(fact_1249_less__Suc__eq,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ ( suc @ N2 ) )
      = ( ( ord_less_nat @ M3 @ N2 )
        | ( M3 = N2 ) ) ) ).

% less_Suc_eq
thf(fact_1250_Ex__less__Suc,axiom,
    ! [N2: nat,P3: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N2 ) )
            & ( P3 @ I4 ) ) )
      = ( ( P3 @ N2 )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N2 )
            & ( P3 @ I4 ) ) ) ) ).

% Ex_less_Suc
thf(fact_1251_less__SucI,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ( ord_less_nat @ M3 @ ( suc @ N2 ) ) ) ).

% less_SucI
thf(fact_1252_less__SucE,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ ( suc @ N2 ) )
     => ( ~ ( ord_less_nat @ M3 @ N2 )
       => ( M3 = N2 ) ) ) ).

% less_SucE
thf(fact_1253_Suc__lessI,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ M3 @ N2 )
     => ( ( ( suc @ M3 )
         != N2 )
       => ( ord_less_nat @ ( suc @ M3 ) @ N2 ) ) ) ).

% Suc_lessI
thf(fact_1254_Suc__lessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_1255_Suc__lessD,axiom,
    ! [M3: nat,N2: nat] :
      ( ( ord_less_nat @ ( suc @ M3 ) @ N2 )
     => ( ord_less_nat @ M3 @ N2 ) ) ).

% Suc_lessD
thf(fact_1256_Nat_OlessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ I @ K )
     => ( ( K
         != ( suc @ I ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_1257_not0__implies__Suc,axiom,
    ! [N2: nat] :
      ( ( N2 != zero_zero_nat )
     => ? [M4: nat] :
          ( N2
          = ( suc @ M4 ) ) ) ).

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

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

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

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

% zero_induct
thf(fact_1262_diff__induct,axiom,
    ! [P3: nat > nat > $o,M3: nat,N2: nat] :
      ( ! [X4: nat] : ( P3 @ X4 @ zero_zero_nat )
     => ( ! [Y3: nat] : ( P3 @ zero_zero_nat @ ( suc @ Y3 ) )
       => ( ! [X4: nat,Y3: nat] :
              ( ( P3 @ X4 @ Y3 )
             => ( P3 @ ( suc @ X4 ) @ ( suc @ Y3 ) ) )
         => ( P3 @ M3 @ N2 ) ) ) ) ).

% diff_induct
thf(fact_1263_nat__induct,axiom,
    ! [P3: nat > $o,N2: nat] :
      ( ( P3 @ zero_zero_nat )
     => ( ! [N3: nat] :
            ( ( P3 @ N3 )
           => ( P3 @ ( suc @ N3 ) ) )
       => ( P3 @ N2 ) ) ) ).

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

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

% nat.discI

% Conjectures (1)
thf(conj_0,conjecture,
    ? [Ys3: list_a] :
      ( ( connecting_path_a @ vertices @ edges @ u @ v @ Ys3 )
      & ( ord_less_eq_nat @ ( undire8849074589633906640ngth_a @ Ys3 ) @ ( undire8849074589633906640ngth_a @ xsa ) ) ) ).

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