TPTP Problem File: SLH0672^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    : FO_Theory_Rewriting/0069_Context_Extensions/prob_00901_040151__18670754_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1580 ( 510 unt; 313 typ;   0 def)
%            Number of atoms       : 3660 (1396 equ;   0 cnn)
%            Maximal formula atoms :   15 (   2 avg)
%            Number of connectives : 13823 ( 363   ~;  60   |; 274   &;11308   @)
%                                         (   0 <=>;1818  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   37 (   7 avg)
%            Number of types       :   60 (  59 usr)
%            Number of type conns  :  872 ( 872   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  257 ( 254 usr;  14 con; 0-4 aty)
%            Number of variables   : 4084 ( 170   ^;3700   !; 214   ?;4084   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 12:02:00.787
%------------------------------------------------------------------------------
% Could-be-implicit typings (59)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    set_Pr8144746507299050889at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc2558272639051872809at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    produc2459281416120113548term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    set_Pr8705490787052945405ctxt_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    list_P2433084232546440685term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    set_Pr8282532413760598727term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Pr7682762132356531903at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    produc8175205341597284509ctxt_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc4612632926506977542term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc1525979690750518759term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc1932156733058919263at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    list_P3876139947223466197ctxt_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    set_Pr1619835084168866991ctxt_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Pr6370437063884598352at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_J,type,
    set_Pr9093778441882193744at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    list_P7736225833432154391st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    set_Pr698032948827214833st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Pr6841066879934740386at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mtf__a_J_J,type,
    set_Pr3254233319718257578_nat_a: $tType ).

thf(ty_n_t__List__Olist_It__Ground____MCtxt__Ogmctxt_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    list_G661399839900664635at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    list_G4348582881148899572at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Ground____MCtxt__Ogmctxt_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Gr3371306511247116821at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Gr7543109056609072026at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    produc932717863267311695ctxt_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc85711943791777264at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
    produc8199716216217303280at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc4575160907756185873st_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    list_P6011104703257516679at_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    list_l1578326660578982846ctxt_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_Pr1261947904930325089at_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    list_l4678906206682822203term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc551447040318622060at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mtf__a_J,type,
    produc2842622564922169716_nat_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    list_P3592885314253461005_a_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    list_list_list_nat: $tType ).

thf(ty_n_t__Ground____MCtxt__Ogmctxt_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ground8783299844416014133at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    set_Pr4934435412358123699_a_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J_J,type,
    set_Pr4193341848836149977_nat_a: $tType ).

thf(ty_n_t__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ground_gterm_nat_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mtf__a_J_J,type,
    set_Product_prod_a_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    product_prod_nat_nat: $tType ).

thf(ty_n_t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    list_Ground_gmctxt_a: $tType ).

thf(ty_n_t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    list_Ground_gterm_a: $tType ).

thf(ty_n_t__Set__Oset_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    set_Ground_gmctxt_a: $tType ).

thf(ty_n_t__Set__Oset_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    set_Ground_gterm_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    product_prod_a_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J,type,
    product_prod_nat_a: $tType ).

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

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

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    product_prod_a_a: $tType ).

thf(ty_n_t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    ground_gmctxt_a: $tType ).

thf(ty_n_t__Ground____Terms__Ogterm_Itf__a_J,type,
    ground_gterm_a: $tType ).

thf(ty_n_t__List__Olist_It__String__Ochar_J,type,
    list_char: $tType ).

thf(ty_n_t__Set__Oset_It__String__Ochar_J,type,
    set_char: $tType ).

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

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

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

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

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

% Explicit typings (254)
thf(sy_c_Abstract__Rewriting_Odiamond_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    abstra4147439465237605589term_a: set_Pr8282532413760598727term_a > $o ).

thf(sy_c_Context__Extensions_Ofunction__closed_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    contex7067214557799146619at_nat: set_Pr9093778441882193744at_nat > set_Pr8144746507299050889at_nat > $o ).

thf(sy_c_Context__Extensions_Ofunction__closed_001tf__a,type,
    contex5117687592266394818osed_a: set_Pr4934435412358123699_a_nat > set_Pr8282532413760598727term_a > $o ).

thf(sy_c_Context__Extensions_Ogmctxtex__onp_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    contex5606824393484720404at_nat: ( ground8783299844416014133at_nat > $o ) > set_Pr8144746507299050889at_nat > set_Pr8144746507299050889at_nat ).

thf(sy_c_Context__Extensions_Ogmctxtex__onp_001tf__a,type,
    contex3086340098647126761_onp_a: ( ground_gmctxt_a > $o ) > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Ground__Closure_Oall__ctxt__closed_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground2327783556906289298at_nat: set_Pr9093778441882193744at_nat > set_Pr8144746507299050889at_nat > $o ).

thf(sy_c_Ground__Closure_Oall__ctxt__closed_001tf__a,type,
    ground3158306204687651307osed_a: set_Pr4934435412358123699_a_nat > set_Pr8282532413760598727term_a > $o ).

thf(sy_c_Ground__Closure_Ogcomp__rel_001tf__a,type,
    ground_gcomp_rel_a: set_Pr4934435412358123699_a_nat > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Ground__Closure_Ogmctxt__cl_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground1030676277180445380at_nat: set_Pr9093778441882193744at_nat > set_Pr8144746507299050889at_nat > set_Pr8144746507299050889at_nat ).

thf(sy_c_Ground__Closure_Ogmctxt__cl_001tf__a,type,
    ground_gmctxt_cl_a: set_Pr4934435412358123699_a_nat > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Ground__MCtxt_Ocomp__gmctxt_001tf__a,type,
    ground_comp_gmctxt_a: set_Pr8705490787052945405ctxt_a ).

thf(sy_c_Ground__MCtxt_Ocomp__gmctxtp_001tf__a,type,
    ground4927988881900525590txtp_a: ground_gmctxt_a > ground_gmctxt_a > $o ).

thf(sy_c_Ground__MCtxt_Oeq__gfill_001tf__a,type,
    ground_eq_gfill_a: ground_gterm_a > produc2459281416120113548term_a > $o ).

thf(sy_c_Ground__MCtxt_Ofill__gholes_001tf__a,type,
    ground_fill_gholes_a: ground_gmctxt_a > list_Ground_gterm_a > ground_gterm_a ).

thf(sy_c_Ground__MCtxt_Ofill__gholes__gmctxt_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground1103403263256404297at_nat: ground8783299844416014133at_nat > list_G661399839900664635at_nat > ground8783299844416014133at_nat ).

thf(sy_c_Ground__MCtxt_Ofill__gholes__gmctxt_001tf__a,type,
    ground2530127064035342964ctxt_a: ground_gmctxt_a > list_Ground_gmctxt_a > ground_gmctxt_a ).

thf(sy_c_Ground__MCtxt_Ofunas__gmctxt_001tf__a,type,
    ground4323624445104842080ctxt_a: ground_gmctxt_a > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Ground__MCtxt_Oghole__poss_001tf__a,type,
    ground_ghole_poss_a: ground_gmctxt_a > set_list_nat ).

thf(sy_c_Ground__MCtxt_Ogmctxt_OGMFun_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground_GMFun_nat_nat: ( nat > nat ) > list_G661399839900664635at_nat > ground8783299844416014133at_nat ).

thf(sy_c_Ground__MCtxt_Ogmctxt_OGMFun_001tf__a,type,
    ground_GMFun_a: a > list_Ground_gmctxt_a > ground_gmctxt_a ).

thf(sy_c_Ground__MCtxt_Ogmctxt_OGMHole_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground5464849307112913552at_nat: ground8783299844416014133at_nat ).

thf(sy_c_Ground__MCtxt_Ogmctxt_OGMHole_001tf__a,type,
    ground_GMHole_a: ground_gmctxt_a ).

thf(sy_c_Ground__MCtxt_Ogmctxt__closing_001tf__a,type,
    ground6954545657870034594sing_a: ground_gmctxt_a > ground_gmctxt_a > $o ).

thf(sy_c_Ground__MCtxt_Ogmctxt__of__gterm_001tf__a,type,
    ground582559344758063963term_a: ground_gterm_a > ground_gmctxt_a ).

thf(sy_c_Ground__MCtxt_Ogmctxt__subtgm__at__fill__args_001tf__a_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    ground6121243438039047541ctxt_a: list_nat > ground_gmctxt_a > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_Ground__MCtxt_Ogmctxt__subtgm__at__fill__args_001tf__a_001t__Nat__Onat,type,
    ground6209547762876788007_a_nat: list_nat > ground_gmctxt_a > list_nat > list_nat ).

thf(sy_c_Ground__MCtxt_Ogterm__of__gmctxt_001tf__a,type,
    ground2297065866753446215ctxt_a: ground_gmctxt_a > ground_gterm_a ).

thf(sy_c_Ground__MCtxt_Oless__eq__gmctxt_001tf__a,type,
    ground6477899500129135038ctxt_a: ground_gmctxt_a > ground_gmctxt_a > $o ).

thf(sy_c_Ground__MCtxt_Onum__gholes_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground6437113571659793227at_nat: ground8783299844416014133at_nat > nat ).

thf(sy_c_Ground__MCtxt_Onum__gholes_001tf__a,type,
    ground_num_gholes_a: ground_gmctxt_a > nat ).

thf(sy_c_Ground__MCtxt_Osup__gmctxt__args_001tf__a,type,
    ground7778985915038999110args_a: ground_gmctxt_a > ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_Ground__MCtxt_Ounfill__gholes_001tf__a,type,
    ground8214737007138946830oles_a: ground_gmctxt_a > ground_gterm_a > list_Ground_gterm_a ).

thf(sy_c_Ground__Terms_O_092_060T_062_092_060_094sub_062G_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground_T_G_nat_nat: set_Pr9093778441882193744at_nat > set_Gr7543109056609072026at_nat ).

thf(sy_c_Ground__Terms_O_092_060T_062_092_060_094sub_062G_001tf__a,type,
    ground_T_G_a: set_Pr4934435412358123699_a_nat > set_Ground_gterm_a ).

thf(sy_c_Ground__Terms_Ofunas__gterm_001tf__a,type,
    ground_funas_gterm_a: ground_gterm_a > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Ground__Terms_Ogroot_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground_groot_nat_nat: ground_gterm_nat_nat > produc8199716216217303280at_nat ).

thf(sy_c_Ground__Terms_Ogroot_001tf__a,type,
    ground_groot_a: ground_gterm_a > product_prod_a_nat ).

thf(sy_c_Ground__Terms_Ogterm_OGFun_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ground_GFun_nat_nat: ( nat > nat ) > list_G4348582881148899572at_nat > ground_gterm_nat_nat ).

thf(sy_c_Ground__Terms_Ogterm_OGFun_001tf__a,type,
    ground_GFun_a: a > list_Ground_gterm_a > ground_gterm_a ).

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__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    minus_4616606335744337325ctxt_a: set_Ground_gmctxt_a > set_Ground_gmctxt_a > set_Ground_gmctxt_a ).

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

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    minus_551215046067487790term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    minus_8630901905721465484_a_nat: set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_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_Groups__List_Omonoid__add__class_Osum__list_001t__Nat__Onat,type,
    groups4561878855575611511st_nat: list_nat > nat ).

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

thf(sy_c_Lattices_Osup__class_Osup_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    sup_su4546239841456773962ctxt_a: ground_gmctxt_a > ground_gmctxt_a > ground_gmctxt_a ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Nat__Onat,type,
    sup_sup_nat: nat > nat > nat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    sup_su721339912568147456ctxt_a: set_Ground_gmctxt_a > set_Ground_gmctxt_a > set_Ground_gmctxt_a ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Nat__Onat_J,type,
    sup_sup_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    sup_su6310922012705202331term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    sup_su459911885395995103_a_nat: set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_nat ).

thf(sy_c_List_Oappend_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    append5238750768297430211ctxt_a: list_Ground_gmctxt_a > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Oappend_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    append272212692390751315ctxt_a: list_l1578326660578982846ctxt_a > list_l1578326660578982846ctxt_a > list_l1578326660578982846ctxt_a ).

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

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

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    append7909858224561987714term_a: list_P2433084232546440685term_a > list_P2433084232546440685term_a > list_P2433084232546440685term_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    append2243830650925735786ctxt_a: list_P3876139947223466197ctxt_a > list_P3876139947223466197ctxt_a > list_P3876139947223466197ctxt_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    append985823374593552924at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Oconcat_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    concat3993834769610107037ctxt_a: list_l1578326660578982846ctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Oconcat_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    concat1399541994378716528term_a: list_l4678906206682822203term_a > list_Ground_gterm_a ).

thf(sy_c_List_Oconcat_001t__List__Olist_It__Nat__Onat_J,type,
    concat_list_nat: list_list_list_nat > list_list_nat ).

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

thf(sy_c_List_Oenumerate_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    enumer3922341085786344185ctxt_a: nat > list_Ground_gmctxt_a > list_P3876139947223466197ctxt_a ).

thf(sy_c_List_Oenumerate_001t__List__Olist_It__Nat__Onat_J,type,
    enumerate_list_nat: nat > list_list_nat > list_P7736225833432154391st_nat ).

thf(sy_c_List_Oenumerate_001t__Nat__Onat,type,
    enumerate_nat: nat > list_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Olist_ONil_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    nil_Ground_gmctxt_a: list_Ground_gmctxt_a ).

thf(sy_c_List_Olist_ONil_001t__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    nil_Gr7643157726654171486at_nat: list_G4348582881148899572at_nat ).

thf(sy_c_List_Olist_ONil_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    nil_Ground_gterm_a: list_Ground_gterm_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Nat__Onat_J,type,
    nil_list_nat: list_list_nat ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    nil_Pr5478986624290739719at_nat: list_P6011104703257516679at_nat ).

thf(sy_c_List_Olist_Oset_001t__Ground____MCtxt__Ogmctxt_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_Gr1116687834474999242at_nat: list_G661399839900664635at_nat > set_Gr3371306511247116821at_nat ).

thf(sy_c_List_Olist_Oset_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    set_Ground_gmctxt_a2: list_Ground_gmctxt_a > set_Ground_gmctxt_a ).

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

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

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    set_Pr5405221470436175740term_a: list_P2433084232546440685term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    set_Pr3995427970001988964ctxt_a: list_P3876139947223466197ctxt_a > set_Pr1619835084168866991ctxt_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J,type,
    set_Pr1526418413117253030st_nat: list_P7736225833432154391st_nat > set_Pr698032948827214833st_nat ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    set_Pr5648618587558075414at_nat: list_P6011104703257516679at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    set_Pr924983374503034536_a_nat: list_P3592885314253461005_a_nat > set_Pr4934435412358123699_a_nat ).

thf(sy_c_List_Olist_Oset_001t__String__Ochar,type,
    set_char2: list_char > set_char ).

thf(sy_c_List_Olist_Osize__list_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    size_l1580428505752620566ctxt_a: ( ground_gmctxt_a > nat ) > list_Ground_gmctxt_a > nat ).

thf(sy_c_List_Olist_Osize__list_001t__List__Olist_It__Nat__Onat_J,type,
    size_list_list_nat: ( list_nat > nat ) > list_list_nat > nat ).

thf(sy_c_List_Olist_Osize__list_001t__Nat__Onat,type,
    size_list_nat: ( nat > nat ) > list_nat > nat ).

thf(sy_c_List_Olist_Osize__list_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    size_l179396747238966901_a_nat: ( product_prod_a_nat > nat ) > list_P3592885314253461005_a_nat > nat ).

thf(sy_c_List_Olist_Osize__list_001t__String__Ochar,type,
    size_list_char: ( char > nat ) > list_char > nat ).

thf(sy_c_List_Onth_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    nth_Ground_gmctxt_a: list_Ground_gmctxt_a > nat > ground_gmctxt_a ).

thf(sy_c_List_Onth_001t__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    nth_Gr572344633313914269at_nat: list_G4348582881148899572at_nat > nat > ground_gterm_nat_nat ).

thf(sy_c_List_Onth_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    nth_Ground_gterm_a: list_Ground_gterm_a > nat > ground_gterm_a ).

thf(sy_c_List_Onth_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    nth_li6678718213161987943ctxt_a: list_l1578326660578982846ctxt_a > nat > list_Ground_gmctxt_a ).

thf(sy_c_List_Onth_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    nth_li6172171122907299772term_a: list_l4678906206682822203term_a > nat > list_Ground_gterm_a ).

thf(sy_c_List_Onth_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    nth_list_list_nat: list_list_list_nat > nat > list_list_nat ).

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

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

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    nth_Pr5943965302187034734term_a: list_P2433084232546440685term_a > nat > produc1525979690750518759term_a ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    nth_Pr3641570550162790742ctxt_a: list_P3876139947223466197ctxt_a > nat > produc932717863267311695ctxt_a ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J,type,
    nth_Pr8640280872377703576st_nat: list_P7736225833432154391st_nat > nat > produc4575160907756185873st_nat ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    nth_Pr7617993195940197384at_nat: list_P6011104703257516679at_nat > nat > product_prod_nat_nat ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    nth_Pr8461465654520414006_a_nat: list_P3592885314253461005_a_nat > nat > product_prod_a_nat ).

thf(sy_c_List_Oreplicate_001t__Ground____MCtxt__Ogmctxt_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    replic4491578029747908341at_nat: nat > ground8783299844416014133at_nat > list_G661399839900664635at_nat ).

thf(sy_c_List_Oreplicate_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    replic9205591110366033502ctxt_a: nat > ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Oreplicate_001t__List__Olist_It__Nat__Onat_J,type,
    replicate_list_nat: nat > list_nat > list_list_nat ).

thf(sy_c_List_Oreplicate_001t__Nat__Onat,type,
    replicate_nat: nat > nat > list_nat ).

thf(sy_c_List_Oreplicate_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    replic5595554873386817213_a_nat: nat > product_prod_a_nat > list_P3592885314253461005_a_nat ).

thf(sy_c_List_Ounion_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    union_677461488090446756ctxt_a: list_Ground_gmctxt_a > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Ounion_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    union_8953718378465966561term_a: list_P2433084232546440685term_a > list_P2433084232546440685term_a > list_P2433084232546440685term_a ).

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

thf(sy_c_Missing__List_Oadjust__idx,type,
    missing_adjust_idx: nat > nat > nat ).

thf(sy_c_Missing__List_Oadjust__idx__rev,type,
    missin3815256168798769645dx_rev: nat > nat > nat ).

thf(sy_c_Missing__List_Olist__diff_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    missin6797617701560608538ctxt_a: list_Ground_gmctxt_a > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_Missing__List_Olist__union_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    missin8077391221698061592ctxt_a: list_Ground_gmctxt_a > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_Missing__List_Olist__union_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    missin6538601846109302125term_a: list_P2433084232546440685term_a > list_P2433084232546440685term_a > list_P2433084232546440685term_a ).

thf(sy_c_Missing__List_Opermut_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    missin4491563000646178374ctxt_a: list_Ground_gmctxt_a > ( nat > nat ) > list_Ground_gmctxt_a ).

thf(sy_c_Missing__List_Opermut_001t__List__Olist_It__Nat__Onat_J,type,
    missin2960327169605006088st_nat: list_list_nat > ( nat > nat ) > list_list_nat ).

thf(sy_c_Missing__List_Opermut_001t__Nat__Onat,type,
    missing_permut_nat: list_nat > ( nat > nat ) > list_nat ).

thf(sy_c_Missing__List_Oremove__nth_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    missin7823264313509747941ctxt_a: nat > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_Missing__List_Oremove__nth_001t__List__Olist_It__Nat__Onat_J,type,
    missin5133812807938250791st_nat: nat > list_list_nat > list_list_nat ).

thf(sy_c_Missing__List_Oremove__nth_001t__Nat__Onat,type,
    missin7175274867594579095th_nat: nat > list_nat > list_nat ).

thf(sy_c_Multihole__Context_Opartition__by_001t__Nat__Onat,type,
    multih8544690682651757648by_nat: list_nat > list_nat > list_list_nat ).

thf(sy_c_Multihole__Context_Opartition__by__idx,type,
    multih7279076602905066526by_idx: nat > list_nat > nat > nat > nat ).

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

thf(sy_c_Nat_Osize__class_Osize_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    size_s9020356940445107890ctxt_a: ground_gmctxt_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    size_s1790761595801015719at_nat: list_G661399839900664635at_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    size_s962548663205356226ctxt_a: list_Ground_gmctxt_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    size_s4398795127965361032at_nat: list_G4348582881148899572at_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    size_s1893836384466666913term_a: list_Ground_gterm_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    size_s6994882312647770194ctxt_a: list_l1578326660578982846ctxt_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    size_s5321119603959729319term_a: list_l4678906206682822203term_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    size_s6248950052170075156st_nat: list_list_list_nat > nat ).

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

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

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    size_s281034491502894169term_a: list_P2433084232546440685term_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    size_s4225619979278260545ctxt_a: list_P3876139947223466197ctxt_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    size_s5460976970255530739at_nat: list_P6011104703257516679at_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    size_s984997627204368545_a_nat: list_P3592885314253461005_a_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__String__Ochar,type,
    size_size_char: char > nat ).

thf(sy_c_Orderings_Oord_Omax_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    max_Ground_gmctxt_a: ( ground_gmctxt_a > ground_gmctxt_a > $o ) > ground_gmctxt_a > ground_gmctxt_a > ground_gmctxt_a ).

thf(sy_c_Orderings_Oord_Omin_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    min_Ground_gmctxt_a: ( ground_gmctxt_a > ground_gmctxt_a > $o ) > ground_gmctxt_a > ground_gmctxt_a > ground_gmctxt_a ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    ord_le9048903087952742514ctxt_a: ground_gmctxt_a > ground_gmctxt_a > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    ord_le2815447592711331187term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    ord_le2482536469199093511_a_nat: set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Ground____MCtxt__Ogmctxt_Itf__a_J_M_Eo_J,type,
    ord_le8768141855491817553xt_a_o: ( ground_gmctxt_a > $o ) > ( ground_gmctxt_a > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    ord_le1940079914304802430ctxt_a: ground_gmctxt_a > ground_gmctxt_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__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    ord_le4032861497522155828ctxt_a: set_Ground_gmctxt_a > set_Ground_gmctxt_a > $o ).

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

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_J,type,
    ord_le3678578370064672496at_nat: set_Pr9093778441882193744at_nat > set_Pr9093778441882193744at_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    ord_le7556488698670074471term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    ord_le8666007276011122963_a_nat: set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_nat > $o ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc5770335208449155351at_nat: ( nat > nat ) > ( nat > nat ) > produc1932156733058919263at_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    produc72220940542539688at_nat: ( nat > nat ) > nat > produc8199716216217303280at_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001tf__a,type,
    produc3941937540969104678_nat_a: ( nat > nat ) > a > produc2842622564922169716_nat_a ).

thf(sy_c_Product__Type_OPair_001t__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    produc6347872285926497493ctxt_a: ground_gmctxt_a > ground_gmctxt_a > produc8175205341597284509ctxt_a ).

thf(sy_c_Product__Type_OPair_001t__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    produc7893155741350732600term_a: ground_gmctxt_a > ground_gterm_a > produc4612632926506977542term_a ).

thf(sy_c_Product__Type_OPair_001t__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc4720362732934906942term_a: ground_gmctxt_a > list_Ground_gterm_a > produc2459281416120113548term_a ).

thf(sy_c_Product__Type_OPair_001t__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc156577712479908705at_nat: ground_gterm_nat_nat > ground_gterm_nat_nat > produc2558272639051872809at_nat ).

thf(sy_c_Product__Type_OPair_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    produc7419039783125785943term_a: ground_gterm_a > ground_gterm_a > produc1525979690750518759term_a ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc7839516862119294504at_nat: nat > ( nat > nat ) > produc85711943791777264at_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    produc3104537575318011527ctxt_a: nat > ground_gmctxt_a > produc932717863267311695ctxt_a ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
    produc8282810413953273033st_nat: nat > list_nat > produc4575160907756185873st_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
    product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001tf__a,type,
    product_Pair_nat_a: nat > a > product_prod_nat_a ).

thf(sy_c_Product__Type_OPair_001tf__a_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc7514922136058452582at_nat: a > ( nat > nat ) > produc551447040318622060at_nat ).

thf(sy_c_Product__Type_OPair_001tf__a_001t__Nat__Onat,type,
    product_Pair_a_nat: a > nat > product_prod_a_nat ).

thf(sy_c_Product__Type_OPair_001tf__a_001tf__a,type,
    product_Pair_a_a: a > a > product_prod_a_a ).

thf(sy_c_Product__Type_Oprod_Ofst_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    produc6156676138143019412at_nat: produc8199716216217303280at_nat > nat > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc4700600022864998420at_nat: produc85711943791777264at_nat > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    produc8631767124948943475ctxt_a: produc932717863267311695ctxt_a > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
    produc8283513326151283381st_nat: produc4575160907756185873st_nat > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__Nat__Onat,type,
    product_fst_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001tf__a,type,
    product_fst_nat_a: product_prod_nat_a > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001tf__a_001t__Nat__Onat,type,
    product_fst_a_nat: product_prod_a_nat > a ).

thf(sy_c_Product__Type_Oprod_Osnd_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    produc1852801350702243542at_nat: produc8199716216217303280at_nat > nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc396725235424222550at_nat: produc85711943791777264at_nat > nat > nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    produc3552744573514591925ctxt_a: produc932717863267311695ctxt_a > ground_gmctxt_a ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
    produc1177724860032999927st_nat: produc4575160907756185873st_nat > list_nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__Nat__Onat,type,
    product_snd_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001tf__a,type,
    product_snd_nat_a: product_prod_nat_a > a ).

thf(sy_c_Product__Type_Oprod_Osnd_001tf__a_001t__Nat__Onat,type,
    product_snd_a_nat: product_prod_a_nat > nat ).

thf(sy_c_Product__Type_Oprod_Oswap_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    produc5003442202721523016at_nat: produc8199716216217303280at_nat > produc85711943791777264at_nat ).

thf(sy_c_Product__Type_Oprod_Oswap_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    produc3240032867972184823term_a: produc1525979690750518759term_a > produc1525979690750518759term_a ).

thf(sy_c_Product__Type_Oprod_Oswap_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc3547366087443502024at_nat: produc85711943791777264at_nat > produc8199716216217303280at_nat ).

thf(sy_c_Product__Type_Oprod_Oswap_001t__Nat__Onat_001tf__a,type,
    product_swap_nat_a: product_prod_nat_a > product_prod_a_nat ).

thf(sy_c_Product__Type_Oprod_Oswap_001tf__a_001t__Nat__Onat,type,
    product_swap_a_nat: product_prod_a_nat > product_prod_nat_a ).

thf(sy_c_Relation_Oconverse_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    conver1636425912871821883at_nat: set_Pr7682762132356531903at_nat > set_Pr7682762132356531903at_nat ).

thf(sy_c_Relation_Oconverse_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    converse_nat_nat_nat: set_Pr9093778441882193744at_nat > set_Pr6370437063884598352at_nat ).

thf(sy_c_Relation_Oconverse_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001tf__a,type,
    converse_nat_nat_a: set_Pr3254233319718257578_nat_a > set_Pr6841066879934740386at_nat ).

thf(sy_c_Relation_Oconverse_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    conver4534901978641943675term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Relation_Oconverse_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    converse_nat_nat_nat2: set_Pr6370437063884598352at_nat > set_Pr9093778441882193744at_nat ).

thf(sy_c_Relation_Oconverse_001t__Nat__Onat_001tf__a,type,
    converse_nat_a: set_Pr4193341848836149977_nat_a > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Relation_Oconverse_001tf__a_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    converse_a_nat_nat: set_Pr6841066879934740386at_nat > set_Pr3254233319718257578_nat_a ).

thf(sy_c_Relation_Oconverse_001tf__a_001t__Nat__Onat,type,
    converse_a_nat: set_Pr4934435412358123699_a_nat > set_Pr4193341848836149977_nat_a ).

thf(sy_c_Relation_Oconverse_001tf__a_001tf__a,type,
    converse_a_a: set_Product_prod_a_a > set_Product_prod_a_a ).

thf(sy_c_Relation_Orelcomp_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    relcom9054258243621454929at_nat: set_Pr7682762132356531903at_nat > set_Pr9093778441882193744at_nat > set_Pr9093778441882193744at_nat ).

thf(sy_c_Relation_Orelcomp_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    relcom7598182128343433937at_nat: set_Pr9093778441882193744at_nat > set_Pr6370437063884598352at_nat > set_Pr7682762132356531903at_nat ).

thf(sy_c_Relation_Orelcomp_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat_001t__Nat__Onat,type,
    relcom1859588284133128290at_nat: set_Pr9093778441882193744at_nat > set_Pr1261947904930325089at_nat > set_Pr9093778441882193744at_nat ).

thf(sy_c_Relation_Orelcomp_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001tf__a_001t__Nat__Onat,type,
    relcom1163327185954966926_a_nat: set_Pr3254233319718257578_nat_a > set_Pr4934435412358123699_a_nat > set_Pr9093778441882193744at_nat ).

thf(sy_c_Relation_Orelcomp_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    relcom4905991001586507054term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Relation_Orelcomp_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    relcom896424912281157969at_nat: set_Pr6370437063884598352at_nat > set_Pr7682762132356531903at_nat > set_Pr6370437063884598352at_nat ).

thf(sy_c_Relation_Orelcomp_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    relcom6405311860805859042at_nat: set_Pr6370437063884598352at_nat > set_Pr9093778441882193744at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Relation_Orelcomp_001t__Nat__Onat_001tf__a_001t__Nat__Onat,type,
    relcomp_nat_a_nat: set_Pr4193341848836149977_nat_a > set_Pr4934435412358123699_a_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Relation_Orelcomp_001t__Nat__Onat_001tf__a_001tf__a,type,
    relcomp_nat_a_a: set_Pr4193341848836149977_nat_a > set_Product_prod_a_a > set_Pr4193341848836149977_nat_a ).

thf(sy_c_Relation_Orelcomp_001tf__a_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    relcom8552328690651882190at_nat: set_Pr6841066879934740386at_nat > set_Pr9093778441882193744at_nat > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Relation_Orelcomp_001tf__a_001t__Nat__Onat_001t__Nat__Onat,type,
    relcomp_a_nat_nat: set_Pr4934435412358123699_a_nat > set_Pr1261947904930325089at_nat > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Relation_Orelcomp_001tf__a_001t__Nat__Onat_001tf__a,type,
    relcomp_a_nat_a: set_Pr4934435412358123699_a_nat > set_Pr4193341848836149977_nat_a > set_Product_prod_a_a ).

thf(sy_c_Relation_Orelcomp_001tf__a_001tf__a_001t__Nat__Onat,type,
    relcomp_a_a_nat: set_Product_prod_a_a > set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_nat ).

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

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    collec6713184107424615762term_a: ( produc1525979690750518759term_a > $o ) > set_Pr8282532413760598727term_a ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    collec4464134535221767506_a_nat: ( product_prod_a_nat > $o ) > set_Pr4934435412358123699_a_nat ).

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

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    image_5914516136772878288term_a: ( nat > produc1525979690750518759term_a ) > set_nat > set_Pr8282532413760598727term_a ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    image_5430510455974008148_a_nat: ( nat > product_prod_a_nat ) > set_nat > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    image_8635284908755773189at_nat: ( produc8199716216217303280at_nat > produc85711943791777264at_nat ) > set_Pr9093778441882193744at_nat > set_Pr6370437063884598352at_nat ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    image_9005035479881104325term_a: ( produc1525979690750518759term_a > produc1525979690750518759term_a ) > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
    image_3926746242177232133at_nat: ( produc85711943791777264at_nat > produc8199716216217303280at_nat ) > set_Pr6370437063884598352at_nat > set_Pr9093778441882193744at_nat ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    image_5148427718660454439_a_nat: ( product_prod_nat_a > product_prod_a_nat ) > set_Pr4193341848836149977_nat_a > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    image_838238048506182228at_nat: ( product_prod_a_nat > nat ) > set_Pr4934435412358123699_a_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    image_2429339725723482211term_a: ( product_prod_a_nat > produc1525979690750518759term_a ) > set_Pr4934435412358123699_a_nat > set_Pr8282532413760598727term_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J,type,
    image_2723492575932950055_nat_a: ( product_prod_a_nat > product_prod_nat_a ) > set_Pr4934435412358123699_a_nat > set_Pr4193341848836149977_nat_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    image_8708701149064048897_a_nat: ( product_prod_a_nat > product_prod_a_nat ) > set_Pr4934435412358123699_a_nat > set_Pr4934435412358123699_a_nat ).

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

thf(sy_c_Utils_Oconcat__index__split_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    concat7860870432694265376ctxt_a: product_prod_nat_nat > list_l1578326660578982846ctxt_a > product_prod_nat_nat ).

thf(sy_c_Utils_Oconcat__index__split_001t__List__Olist_It__Nat__Onat_J,type,
    concat5120376260311099874st_nat: product_prod_nat_nat > list_list_list_nat > product_prod_nat_nat ).

thf(sy_c_Utils_Oconcat__index__split_001t__Nat__Onat,type,
    concat5568775588498683858it_nat: product_prod_nat_nat > list_list_nat > product_prod_nat_nat ).

thf(sy_c_member_001t__Ground____MCtxt__Ogmctxt_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member9161526948977260382at_nat: ground8783299844416014133at_nat > set_Gr3371306511247116821at_nat > $o ).

thf(sy_c_member_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    member3306386364193653941ctxt_a: ground_gmctxt_a > set_Ground_gmctxt_a > $o ).

thf(sy_c_member_001t__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member4528447914156422779at_nat: ground_gterm_nat_nat > set_Gr7543109056609072026at_nat > $o ).

thf(sy_c_member_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    member5261315023172567896term_a: ground_gterm_a > set_Ground_gterm_a > $o ).

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

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

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member1096249278104964872at_nat: produc1932156733058919263at_nat > set_Pr7682762132356531903at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
    member7226740684066999833at_nat: produc8199716216217303280at_nat > set_Pr9093778441882193744at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mtf__a_J,type,
    member7754445317155421323_nat_a: produc2842622564922169716_nat_a > set_Pr3254233319718257578_nat_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    member461722496487281478ctxt_a: produc8175205341597284509ctxt_a > set_Pr8705490787052945405ctxt_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Ground____Terms__Ogterm_I_062_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    member7111719770234083026at_nat: produc2558272639051872809at_nat > set_Pr8144746507299050889at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    member4351891425000572176term_a: produc1525979690750518759term_a > set_Pr8282532413760598727term_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member8336108448496249625at_nat: produc85711943791777264at_nat > set_Pr6370437063884598352at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    member2885886537299685624ctxt_a: produc932717863267311695ctxt_a > set_Pr1619835084168866991ctxt_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member1631564025489475386st_nat: produc4575160907756185873st_nat > set_Pr698032948827214833st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    member8440522571783428010at_nat: product_prod_nat_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J,type,
    member8962352052110095674_nat_a: product_prod_nat_a > set_Pr4193341848836149977_nat_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__a_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member5463269792551873667at_nat: produc551447040318622060at_nat > set_Pr6841066879934740386at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    member5724188588386418708_a_nat: product_prod_a_nat > set_Pr4934435412358123699_a_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    member1426531477525435216od_a_a: product_prod_a_a > set_Product_prod_a_a > $o ).

thf(sy_c_member_001t__String__Ochar,type,
    member_char: char > set_char > $o ).

thf(sy_v_P,type,
    p: ground_gmctxt_a > $o ).

thf(sy_v__092_060F_062,type,
    f: set_Pr4934435412358123699_a_nat ).

thf(sy_v__092_060R_062,type,
    r: set_Pr8282532413760598727term_a ).

% Relevant facts (1263)
thf(fact_0_assms_I2_J,axiom,
    ! [C: ground_gmctxt_a,Ds: list_Ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s962548663205356226ctxt_a @ Ds ) )
     => ( ( p @ C )
       => ( ! [X: ground_gmctxt_a] :
              ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Ds ) )
             => ( p @ X ) )
         => ( p @ ( ground2530127064035342964ctxt_a @ C @ Ds ) ) ) ) ) ).

% assms(2)
thf(fact_1_gmctxtex__eqI,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a,L: set_Pr8282532413760598727term_a] :
      ( ( P = Q )
     => ( ( R = L )
       => ( ( contex3086340098647126761_onp_a @ P @ R )
          = ( contex3086340098647126761_onp_a @ Q @ L ) ) ) ) ).

% gmctxtex_eqI
thf(fact_2_assms_I1_J,axiom,
    ! [F: a,N: nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ N ) @ f )
     => ( p @ ( ground_GMFun_a @ F @ ( replic9205591110366033502ctxt_a @ N @ ground_GMHole_a ) ) ) ) ).

% assms(1)
thf(fact_3_all__ctxt__closed__imp__function__closed,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( ground3158306204687651307osed_a @ F2 @ R )
     => ( contex5117687592266394818osed_a @ F2 @ R ) ) ).

% all_ctxt_closed_imp_function_closed
thf(fact_4_gmctxtex__onp__rel__mono,axiom,
    ! [L: set_Pr8282532413760598727term_a,R: set_Pr8282532413760598727term_a,P: ground_gmctxt_a > $o] :
      ( ( ord_le7556488698670074471term_a @ L @ R )
     => ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ L ) @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ).

% gmctxtex_onp_rel_mono
thf(fact_5_gmctxtex__onp__pred__dist,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R2: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [C2: ground_gmctxt_a] :
          ( ( P @ C2 )
          = ( ( Q @ C2 )
            | ( R2 @ C2 ) ) )
     => ( ( contex3086340098647126761_onp_a @ P @ R )
        = ( sup_su6310922012705202331term_a @ ( contex3086340098647126761_onp_a @ Q @ R ) @ ( contex3086340098647126761_onp_a @ R2 @ R ) ) ) ) ).

% gmctxtex_onp_pred_dist
thf(fact_6_all__ctxt__closed__gmctxt__cl__idem,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( ground3158306204687651307osed_a @ F2 @ R )
     => ( ( ground_gmctxt_cl_a @ F2 @ R )
        = R ) ) ).

% all_ctxt_closed_gmctxt_cl_idem
thf(fact_7_gmctxtex__onp__arg__monoI,axiom,
    ! [P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( P @ ground_GMHole_a )
     => ( ord_le7556488698670074471term_a @ R @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ).

% gmctxtex_onp_arg_monoI
thf(fact_8_converse__gmctxtex__onp,axiom,
    ! [P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( conver4534901978641943675term_a @ ( contex3086340098647126761_onp_a @ P @ R ) )
      = ( contex3086340098647126761_onp_a @ P @ ( conver4534901978641943675term_a @ R ) ) ) ).

% converse_gmctxtex_onp
thf(fact_9_gmctxt__cl__is__all__ctxt__closed,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] : ( ground3158306204687651307osed_a @ F2 @ ( ground_gmctxt_cl_a @ F2 @ R ) ) ).

% gmctxt_cl_is_all_ctxt_closed
thf(fact_10_gmctxtex__onp__mono,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( ord_le8768141855491817553xt_a_o @ P @ Q )
     => ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ R ) @ ( contex3086340098647126761_onp_a @ Q @ R ) ) ) ).

% gmctxtex_onp_mono
thf(fact_11_swap__gmctxtex__onp,axiom,
    ! [P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( contex3086340098647126761_onp_a @ P @ ( image_9005035479881104325term_a @ produc3240032867972184823term_a @ R ) )
      = ( image_9005035479881104325term_a @ produc3240032867972184823term_a @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ).

% swap_gmctxtex_onp
thf(fact_12_gmctxtex__onp__mem,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,S: ground_gterm_a,T: ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( ord_le8768141855491817553xt_a_o @ P @ Q )
     => ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( contex3086340098647126761_onp_a @ P @ R ) )
       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( contex3086340098647126761_onp_a @ Q @ R ) ) ) ) ).

% gmctxtex_onp_mem
thf(fact_13_gmctxtex__onp__relcomp__inner,axiom,
    ! [P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a,L: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ ( relcom4905991001586507054term_a @ R @ L ) ) @ ( relcom4905991001586507054term_a @ ( contex3086340098647126761_onp_a @ P @ R ) @ ( contex3086340098647126761_onp_a @ P @ L ) ) ) ).

% gmctxtex_onp_relcomp_inner
thf(fact_14_gmctxtex__onp__idem,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( P @ ground_GMHole_a )
     => ( ! [C2: ground_gmctxt_a,D: ground_gmctxt_a] :
            ( ( ord_le1940079914304802430ctxt_a @ C2 @ D )
           => ( ( P @ C2 )
             => ( ! [X2: ground_gmctxt_a] :
                    ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C2 @ D ) ) )
                   => ( Q @ X2 ) )
               => ( Q @ D ) ) ) )
       => ( ( contex3086340098647126761_onp_a @ P @ ( contex3086340098647126761_onp_a @ Q @ R ) )
          = ( contex3086340098647126761_onp_a @ Q @ R ) ) ) ) ).

% gmctxtex_onp_idem
thf(fact_15_gmctxt__cl__idemp,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( ground_gmctxt_cl_a @ F2 @ ( ground_gmctxt_cl_a @ F2 @ R ) )
      = ( ground_gmctxt_cl_a @ F2 @ R ) ) ).

% gmctxt_cl_idemp
thf(fact_16_gmctxt__cl_Obase,axiom,
    ! [S: ground_gterm_a,T: ground_gterm_a,R: set_Pr8282532413760598727term_a,F2: set_Pr4934435412358123699_a_nat] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ R )
     => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( ground_gmctxt_cl_a @ F2 @ R ) ) ) ).

% gmctxt_cl.base
thf(fact_17_gmctxt__cl__swap,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( ground_gmctxt_cl_a @ F2 @ ( image_9005035479881104325term_a @ produc3240032867972184823term_a @ R ) )
      = ( image_9005035479881104325term_a @ produc3240032867972184823term_a @ ( ground_gmctxt_cl_a @ F2 @ R ) ) ) ).

% gmctxt_cl_swap
thf(fact_18_gmctxt__cl__mono__rel,axiom,
    ! [P2: set_Pr8282532413760598727term_a,R: set_Pr8282532413760598727term_a,F2: set_Pr4934435412358123699_a_nat] :
      ( ( ord_le7556488698670074471term_a @ P2 @ R )
     => ( ord_le7556488698670074471term_a @ ( ground_gmctxt_cl_a @ F2 @ P2 ) @ ( ground_gmctxt_cl_a @ F2 @ R ) ) ) ).

% gmctxt_cl_mono_rel
thf(fact_19_gmctxtex__pred__cmp__subseteq,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [C2: ground_gmctxt_a,D: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ C2 @ D )
         => ( ( P @ C2 )
           => ( ! [X2: ground_gmctxt_a] :
                  ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C2 @ D ) ) )
                 => ( Q @ X2 ) )
             => ( Q @ D ) ) ) )
     => ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ ( contex3086340098647126761_onp_a @ Q @ R ) ) @ ( contex3086340098647126761_onp_a @ Q @ R ) ) ) ).

% gmctxtex_pred_cmp_subseteq
thf(fact_20_gmctxtex__pred__cmp__subseteq2,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [C2: ground_gmctxt_a,D: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ C2 @ D )
         => ( ( P @ C2 )
           => ( ! [X2: ground_gmctxt_a] :
                  ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C2 @ D ) ) )
                 => ( Q @ X2 ) )
             => ( P @ D ) ) ) )
     => ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ ( contex3086340098647126761_onp_a @ Q @ R ) ) @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ).

% gmctxtex_pred_cmp_subseteq2
thf(fact_21_fill__gholes__gmctxt__GMFun__replicate__length,axiom,
    ! [F: a,Cs: list_Ground_gmctxt_a] :
      ( ( ground2530127064035342964ctxt_a @ ( ground_GMFun_a @ F @ ( replic9205591110366033502ctxt_a @ ( size_s962548663205356226ctxt_a @ Cs ) @ ground_GMHole_a ) ) @ Cs )
      = ( ground_GMFun_a @ F @ Cs ) ) ).

% fill_gholes_gmctxt_GMFun_replicate_length
thf(fact_22_sup__gmctxt__args__MHole2,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ground7778985915038999110args_a @ C @ ground_GMHole_a )
      = ( replic9205591110366033502ctxt_a @ ( ground_num_gholes_a @ C ) @ ground_GMHole_a ) ) ).

% sup_gmctxt_args_MHole2
thf(fact_23_fill__gholes__gmctxt__replicate__MHole,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ground2530127064035342964ctxt_a @ C @ ( replic9205591110366033502ctxt_a @ ( ground_num_gholes_a @ C ) @ ground_GMHole_a ) )
      = C ) ).

% fill_gholes_gmctxt_replicate_MHole
thf(fact_24_fill__gholes__gmctxt__sup__mctxt__args,axiom,
    ! [C: ground_gmctxt_a,Ds: list_Ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s962548663205356226ctxt_a @ Ds ) )
     => ( ( ground7778985915038999110args_a @ C @ ( ground2530127064035342964ctxt_a @ C @ Ds ) )
        = Ds ) ) ).

% fill_gholes_gmctxt_sup_mctxt_args
thf(fact_25_pair__in__swap__image,axiom,
    ! [Y: nat,X3: a,A: set_Pr4934435412358123699_a_nat] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ Y @ X3 ) @ ( image_2723492575932950055_nat_a @ product_swap_a_nat @ A ) )
      = ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) @ A ) ) ).

% pair_in_swap_image
thf(fact_26_pair__in__swap__image,axiom,
    ! [Y: nat,X3: nat > nat,A: set_Pr9093778441882193744at_nat] :
      ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ Y @ X3 ) @ ( image_8635284908755773189at_nat @ produc5003442202721523016at_nat @ A ) )
      = ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) @ A ) ) ).

% pair_in_swap_image
thf(fact_27_pair__in__swap__image,axiom,
    ! [Y: a,X3: nat,A: set_Pr4193341848836149977_nat_a] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ Y @ X3 ) @ ( image_5148427718660454439_a_nat @ product_swap_nat_a @ A ) )
      = ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ X3 @ Y ) @ A ) ) ).

% pair_in_swap_image
thf(fact_28_pair__in__swap__image,axiom,
    ! [Y: nat > nat,X3: nat,A: set_Pr6370437063884598352at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ Y @ X3 ) @ ( image_3926746242177232133at_nat @ produc3547366087443502024at_nat @ A ) )
      = ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ X3 @ Y ) @ A ) ) ).

% pair_in_swap_image
thf(fact_29_sup__gmctxt__args_Osimps_I2_J,axiom,
    ! [V: a,Va: list_Ground_gmctxt_a] :
      ( ( ground7778985915038999110args_a @ ( ground_GMFun_a @ V @ Va ) @ ground_GMHole_a )
      = ( replic9205591110366033502ctxt_a @ ( ground_num_gholes_a @ ( ground_GMFun_a @ V @ Va ) ) @ ground_GMHole_a ) ) ).

% sup_gmctxt_args.simps(2)
thf(fact_30_swap__simp,axiom,
    ! [X3: nat,Y: a] :
      ( ( product_swap_nat_a @ ( product_Pair_nat_a @ X3 @ Y ) )
      = ( product_Pair_a_nat @ Y @ X3 ) ) ).

% swap_simp
thf(fact_31_swap__simp,axiom,
    ! [X3: nat,Y: nat > nat] :
      ( ( produc3547366087443502024at_nat @ ( produc7839516862119294504at_nat @ X3 @ Y ) )
      = ( produc72220940542539688at_nat @ Y @ X3 ) ) ).

% swap_simp
thf(fact_32_swap__simp,axiom,
    ! [X3: a,Y: nat] :
      ( ( product_swap_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) )
      = ( product_Pair_nat_a @ Y @ X3 ) ) ).

% swap_simp
thf(fact_33_swap__simp,axiom,
    ! [X3: nat > nat,Y: nat] :
      ( ( produc5003442202721523016at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) )
      = ( produc7839516862119294504at_nat @ Y @ X3 ) ) ).

% swap_simp
thf(fact_34_symcl__idemp,axiom,
    ! [R3: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ R3 @ ( conver4534901978641943675term_a @ R3 ) ) @ ( conver4534901978641943675term_a @ ( sup_su6310922012705202331term_a @ R3 @ ( conver4534901978641943675term_a @ R3 ) ) ) )
      = ( sup_su6310922012705202331term_a @ R3 @ ( conver4534901978641943675term_a @ R3 ) ) ) ).

% symcl_idemp
thf(fact_35_relcomp__distrib,axiom,
    ! [R2: set_Pr8282532413760598727term_a,S2: set_Pr8282532413760598727term_a,T2: set_Pr8282532413760598727term_a] :
      ( ( relcom4905991001586507054term_a @ R2 @ ( sup_su6310922012705202331term_a @ S2 @ T2 ) )
      = ( sup_su6310922012705202331term_a @ ( relcom4905991001586507054term_a @ R2 @ S2 ) @ ( relcom4905991001586507054term_a @ R2 @ T2 ) ) ) ).

% relcomp_distrib
thf(fact_36_relcomp__distrib2,axiom,
    ! [S2: set_Pr8282532413760598727term_a,T2: set_Pr8282532413760598727term_a,R2: set_Pr8282532413760598727term_a] :
      ( ( relcom4905991001586507054term_a @ ( sup_su6310922012705202331term_a @ S2 @ T2 ) @ R2 )
      = ( sup_su6310922012705202331term_a @ ( relcom4905991001586507054term_a @ S2 @ R2 ) @ ( relcom4905991001586507054term_a @ T2 @ R2 ) ) ) ).

% relcomp_distrib2
thf(fact_37_converse__mono,axiom,
    ! [R3: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( conver4534901978641943675term_a @ R3 ) @ ( conver4534901978641943675term_a @ S ) )
      = ( ord_le7556488698670074471term_a @ R3 @ S ) ) ).

% converse_mono
thf(fact_38_length__replicate,axiom,
    ! [N: nat,X3: ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ ( replic9205591110366033502ctxt_a @ N @ X3 ) )
      = N ) ).

% length_replicate
thf(fact_39_length__replicate,axiom,
    ! [N: nat,X3: nat] :
      ( ( size_size_list_nat @ ( replicate_nat @ N @ X3 ) )
      = N ) ).

% length_replicate
thf(fact_40_old_Oprod_Oinject,axiom,
    ! [A2: a,B: nat,A3: a,B2: nat] :
      ( ( ( product_Pair_a_nat @ A2 @ B )
        = ( product_Pair_a_nat @ A3 @ B2 ) )
      = ( ( A2 = A3 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_41_old_Oprod_Oinject,axiom,
    ! [A2: nat > nat,B: nat,A3: nat > nat,B2: nat] :
      ( ( ( produc72220940542539688at_nat @ A2 @ B )
        = ( produc72220940542539688at_nat @ A3 @ B2 ) )
      = ( ( A2 = A3 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_42_prod_Oinject,axiom,
    ! [X1: a,X22: nat,Y1: a,Y2: nat] :
      ( ( ( product_Pair_a_nat @ X1 @ X22 )
        = ( product_Pair_a_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.inject
thf(fact_43_prod_Oinject,axiom,
    ! [X1: nat > nat,X22: nat,Y1: nat > nat,Y2: nat] :
      ( ( ( produc72220940542539688at_nat @ X1 @ X22 )
        = ( produc72220940542539688at_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.inject
thf(fact_44_gmctxt_Oinject,axiom,
    ! [X21: a,X222: list_Ground_gmctxt_a,Y21: a,Y22: list_Ground_gmctxt_a] :
      ( ( ( ground_GMFun_a @ X21 @ X222 )
        = ( ground_GMFun_a @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X222 = Y22 ) ) ) ).

% gmctxt.inject
thf(fact_45_converse__converse,axiom,
    ! [R3: set_Pr8282532413760598727term_a] :
      ( ( conver4534901978641943675term_a @ ( conver4534901978641943675term_a @ R3 ) )
      = R3 ) ).

% converse_converse
thf(fact_46_converse__inject,axiom,
    ! [R3: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ( ( conver4534901978641943675term_a @ R3 )
        = ( conver4534901978641943675term_a @ S ) )
      = ( R3 = S ) ) ).

% converse_inject
thf(fact_47_converse__iff,axiom,
    ! [A2: nat,B: a,R3: set_Pr4934435412358123699_a_nat] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ A2 @ B ) @ ( converse_a_nat @ R3 ) )
      = ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B @ A2 ) @ R3 ) ) ).

% converse_iff
thf(fact_48_converse__iff,axiom,
    ! [A2: nat,B: nat > nat,R3: set_Pr9093778441882193744at_nat] :
      ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ A2 @ B ) @ ( converse_nat_nat_nat @ R3 ) )
      = ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B @ A2 ) @ R3 ) ) ).

% converse_iff
thf(fact_49_converse__iff,axiom,
    ! [A2: a,B: nat,R3: set_Pr4193341848836149977_nat_a] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ B ) @ ( converse_nat_a @ R3 ) )
      = ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ B @ A2 ) @ R3 ) ) ).

% converse_iff
thf(fact_50_converse__iff,axiom,
    ! [A2: nat > nat,B: nat,R3: set_Pr6370437063884598352at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ B ) @ ( converse_nat_nat_nat2 @ R3 ) )
      = ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ B @ A2 ) @ R3 ) ) ).

% converse_iff
thf(fact_51_converse__iff,axiom,
    ! [A2: ground_gterm_a,B: ground_gterm_a,R3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A2 @ B ) @ ( conver4534901978641943675term_a @ R3 ) )
      = ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ B @ A2 ) @ R3 ) ) ).

% converse_iff
thf(fact_52_sup__gmctxt__args_Ocases,axiom,
    ! [X3: produc8175205341597284509ctxt_a] :
      ( ! [D: ground_gmctxt_a] :
          ( X3
         != ( produc6347872285926497493ctxt_a @ ground_GMHole_a @ D ) )
     => ( ! [V2: a,Va2: list_Ground_gmctxt_a] :
            ( X3
           != ( produc6347872285926497493ctxt_a @ ( ground_GMFun_a @ V2 @ Va2 ) @ ground_GMHole_a ) )
       => ~ ! [F3: a,Cs2: list_Ground_gmctxt_a,G: a,Ds2: list_Ground_gmctxt_a] :
              ( X3
             != ( produc6347872285926497493ctxt_a @ ( ground_GMFun_a @ F3 @ Cs2 ) @ ( ground_GMFun_a @ G @ Ds2 ) ) ) ) ) ).

% sup_gmctxt_args.cases
thf(fact_53_sup__gmctxt_Ocases,axiom,
    ! [X3: produc8175205341597284509ctxt_a] :
      ( ! [D: ground_gmctxt_a] :
          ( X3
         != ( produc6347872285926497493ctxt_a @ ground_GMHole_a @ D ) )
     => ( ! [V2: a,Va2: list_Ground_gmctxt_a] :
            ( X3
           != ( produc6347872285926497493ctxt_a @ ( ground_GMFun_a @ V2 @ Va2 ) @ ground_GMHole_a ) )
       => ~ ! [F3: a,Cs2: list_Ground_gmctxt_a,G: a,Ds2: list_Ground_gmctxt_a] :
              ( X3
             != ( produc6347872285926497493ctxt_a @ ( ground_GMFun_a @ F3 @ Cs2 ) @ ( ground_GMFun_a @ G @ Ds2 ) ) ) ) ) ).

% sup_gmctxt.cases
thf(fact_54_gmctxt__cl__mono__funas,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,G2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( ord_le8666007276011122963_a_nat @ F2 @ G2 )
     => ( ord_le7556488698670074471term_a @ ( ground_gmctxt_cl_a @ F2 @ R ) @ ( ground_gmctxt_cl_a @ G2 @ R ) ) ) ).

% gmctxt_cl_mono_funas
thf(fact_55_mem__Collect__eq,axiom,
    ! [A2: product_prod_a_nat,P: product_prod_a_nat > $o] :
      ( ( member5724188588386418708_a_nat @ A2 @ ( collec4464134535221767506_a_nat @ P ) )
      = ( P @ A2 ) ) ).

% mem_Collect_eq
thf(fact_56_mem__Collect__eq,axiom,
    ! [A2: nat,P: nat > $o] :
      ( ( member_nat @ A2 @ ( collect_nat @ P ) )
      = ( P @ A2 ) ) ).

% mem_Collect_eq
thf(fact_57_Collect__mem__eq,axiom,
    ! [A: set_Pr4934435412358123699_a_nat] :
      ( ( collec4464134535221767506_a_nat
        @ ^ [X4: product_prod_a_nat] : ( member5724188588386418708_a_nat @ X4 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_58_Collect__mem__eq,axiom,
    ! [A: set_nat] :
      ( ( collect_nat
        @ ^ [X4: nat] : ( member_nat @ X4 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_59_Pair__inject,axiom,
    ! [A2: a,B: nat,A3: a,B2: nat] :
      ( ( ( product_Pair_a_nat @ A2 @ B )
        = ( product_Pair_a_nat @ A3 @ B2 ) )
     => ~ ( ( A2 = A3 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_60_Pair__inject,axiom,
    ! [A2: nat > nat,B: nat,A3: nat > nat,B2: nat] :
      ( ( ( produc72220940542539688at_nat @ A2 @ B )
        = ( produc72220940542539688at_nat @ A3 @ B2 ) )
     => ~ ( ( A2 = A3 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_61_prod__cases,axiom,
    ! [P: product_prod_a_nat > $o,P3: product_prod_a_nat] :
      ( ! [A4: a,B3: nat] : ( P @ ( product_Pair_a_nat @ A4 @ B3 ) )
     => ( P @ P3 ) ) ).

% prod_cases
thf(fact_62_prod__cases,axiom,
    ! [P: produc8199716216217303280at_nat > $o,P3: produc8199716216217303280at_nat] :
      ( ! [A4: nat > nat,B3: nat] : ( P @ ( produc72220940542539688at_nat @ A4 @ B3 ) )
     => ( P @ P3 ) ) ).

% prod_cases
thf(fact_63_surj__pair,axiom,
    ! [P3: product_prod_a_nat] :
    ? [X: a,Y3: nat] :
      ( P3
      = ( product_Pair_a_nat @ X @ Y3 ) ) ).

% surj_pair
thf(fact_64_surj__pair,axiom,
    ! [P3: produc8199716216217303280at_nat] :
    ? [X: nat > nat,Y3: nat] :
      ( P3
      = ( produc72220940542539688at_nat @ X @ Y3 ) ) ).

% surj_pair
thf(fact_65_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_a_nat] :
      ~ ! [A4: a,B3: nat] :
          ( Y
         != ( product_Pair_a_nat @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_66_old_Oprod_Oexhaust,axiom,
    ! [Y: produc8199716216217303280at_nat] :
      ~ ! [A4: nat > nat,B3: nat] :
          ( Y
         != ( produc72220940542539688at_nat @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_67_neq__if__length__neq,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
       != ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_68_neq__if__length__neq,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
       != ( size_size_list_nat @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_69_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_Ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_70_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_nat] :
      ( ( size_size_list_nat @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_71_subset__code_I1_J,axiom,
    ! [Xs: list_P3592885314253461005_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( ord_le8666007276011122963_a_nat @ ( set_Pr924983374503034536_a_nat @ Xs ) @ B4 )
      = ( ! [X4: product_prod_a_nat] :
            ( ( member5724188588386418708_a_nat @ X4 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
           => ( member5724188588386418708_a_nat @ X4 @ B4 ) ) ) ) ).

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

% subset_code(1)
thf(fact_73_subset__code_I1_J,axiom,
    ! [Xs: list_Ground_gmctxt_a,B4: set_Ground_gmctxt_a] :
      ( ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ B4 )
      = ( ! [X4: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X4 @ ( set_Ground_gmctxt_a2 @ Xs ) )
           => ( member3306386364193653941ctxt_a @ X4 @ B4 ) ) ) ) ).

% subset_code(1)
thf(fact_74_subset__code_I1_J,axiom,
    ! [Xs: list_P2433084232546440685term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ B4 )
      = ( ! [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ ( set_Pr5405221470436175740term_a @ Xs ) )
           => ( member4351891425000572176term_a @ X4 @ B4 ) ) ) ) ).

% subset_code(1)
thf(fact_75_subrelI,axiom,
    ! [R3: set_Pr4934435412358123699_a_nat,S: set_Pr4934435412358123699_a_nat] :
      ( ! [X: a,Y3: nat] :
          ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ X @ Y3 ) @ R3 )
         => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ X @ Y3 ) @ S ) )
     => ( ord_le8666007276011122963_a_nat @ R3 @ S ) ) ).

% subrelI
thf(fact_76_subrelI,axiom,
    ! [R3: set_Pr9093778441882193744at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ! [X: nat > nat,Y3: nat] :
          ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X @ Y3 ) @ R3 )
         => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X @ Y3 ) @ S ) )
     => ( ord_le3678578370064672496at_nat @ R3 @ S ) ) ).

% subrelI
thf(fact_77_subrelI,axiom,
    ! [R3: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ! [X: ground_gterm_a,Y3: ground_gterm_a] :
          ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X @ Y3 ) @ R3 )
         => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X @ Y3 ) @ S ) )
     => ( ord_le7556488698670074471term_a @ R3 @ S ) ) ).

% subrelI
thf(fact_78_relcomp3__I,axiom,
    ! [T: nat,U: a,A: set_Pr4193341848836149977_nat_a,S: a,B4: set_Pr4934435412358123699_a_nat,V: nat] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ T @ U ) @ A )
     => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ S @ T ) @ B4 )
       => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ U @ V ) @ B4 )
         => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ S @ V ) @ ( relcomp_a_nat_nat @ B4 @ ( relcomp_nat_a_nat @ A @ B4 ) ) ) ) ) ) ).

% relcomp3_I
thf(fact_79_relcomp3__I,axiom,
    ! [T: nat,U: nat > nat,A: set_Pr6370437063884598352at_nat,S: nat > nat,B4: set_Pr9093778441882193744at_nat,V: nat] :
      ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ T @ U ) @ A )
     => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ S @ T ) @ B4 )
       => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ U @ V ) @ B4 )
         => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ S @ V ) @ ( relcom1859588284133128290at_nat @ B4 @ ( relcom6405311860805859042at_nat @ A @ B4 ) ) ) ) ) ) ).

% relcomp3_I
thf(fact_80_relcomp3__I,axiom,
    ! [T: a,U: nat,A: set_Pr4934435412358123699_a_nat,S: nat,B4: set_Pr4193341848836149977_nat_a,V: a] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ T @ U ) @ A )
     => ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ S @ T ) @ B4 )
       => ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ U @ V ) @ B4 )
         => ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ S @ V ) @ ( relcomp_nat_a_a @ B4 @ ( relcomp_a_nat_a @ A @ B4 ) ) ) ) ) ) ).

% relcomp3_I
thf(fact_81_relcomp3__I,axiom,
    ! [T: nat > nat,U: nat,A: set_Pr9093778441882193744at_nat,S: nat,B4: set_Pr6370437063884598352at_nat,V: nat > nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ T @ U ) @ A )
     => ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ S @ T ) @ B4 )
       => ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ U @ V ) @ B4 )
         => ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ S @ V ) @ ( relcom896424912281157969at_nat @ B4 @ ( relcom7598182128343433937at_nat @ A @ B4 ) ) ) ) ) ) ).

% relcomp3_I
thf(fact_82_relcompEpair,axiom,
    ! [A2: a,C3: nat,R3: set_Product_prod_a_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ C3 ) @ ( relcomp_a_a_nat @ R3 @ S ) )
     => ~ ! [B3: a] :
            ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ A2 @ B3 ) @ R3 )
           => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_83_relcompEpair,axiom,
    ! [A2: a,C3: nat,R3: set_Pr6841066879934740386at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ C3 ) @ ( relcom8552328690651882190at_nat @ R3 @ S ) )
     => ~ ! [B3: nat > nat] :
            ( ( member5463269792551873667at_nat @ ( produc7514922136058452582at_nat @ A2 @ B3 ) @ R3 )
           => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_84_relcompEpair,axiom,
    ! [A2: a,C3: nat,R3: set_Pr4934435412358123699_a_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ C3 ) @ ( relcomp_a_nat_nat @ R3 @ S ) )
     => ~ ! [B3: nat] :
            ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ B3 ) @ R3 )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_85_relcompEpair,axiom,
    ! [A2: nat > nat,C3: nat,R3: set_Pr3254233319718257578_nat_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ C3 ) @ ( relcom1163327185954966926_a_nat @ R3 @ S ) )
     => ~ ! [B3: a] :
            ( ( member7754445317155421323_nat_a @ ( produc3941937540969104678_nat_a @ A2 @ B3 ) @ R3 )
           => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_86_relcompEpair,axiom,
    ! [A2: nat > nat,C3: nat,R3: set_Pr7682762132356531903at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ C3 ) @ ( relcom9054258243621454929at_nat @ R3 @ S ) )
     => ~ ! [B3: nat > nat] :
            ( ( member1096249278104964872at_nat @ ( produc5770335208449155351at_nat @ A2 @ B3 ) @ R3 )
           => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_87_relcompEpair,axiom,
    ! [A2: nat > nat,C3: nat,R3: set_Pr9093778441882193744at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ C3 ) @ ( relcom1859588284133128290at_nat @ R3 @ S ) )
     => ~ ! [B3: nat] :
            ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ B3 ) @ R3 )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_88_relcompE,axiom,
    ! [Xz: product_prod_a_nat,R3: set_Product_prod_a_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ Xz @ ( relcomp_a_a_nat @ R3 @ S ) )
     => ~ ! [X: a,Y3: a,Z: nat] :
            ( ( Xz
              = ( product_Pair_a_nat @ X @ Z ) )
           => ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X @ Y3 ) @ R3 )
             => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ Y3 @ Z ) @ S ) ) ) ) ).

% relcompE
thf(fact_89_relcompE,axiom,
    ! [Xz: product_prod_a_nat,R3: set_Pr6841066879934740386at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member5724188588386418708_a_nat @ Xz @ ( relcom8552328690651882190at_nat @ R3 @ S ) )
     => ~ ! [X: a,Y3: nat > nat,Z: nat] :
            ( ( Xz
              = ( product_Pair_a_nat @ X @ Z ) )
           => ( ( member5463269792551873667at_nat @ ( produc7514922136058452582at_nat @ X @ Y3 ) @ R3 )
             => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ Y3 @ Z ) @ S ) ) ) ) ).

% relcompE
thf(fact_90_relcompE,axiom,
    ! [Xz: product_prod_a_nat,R3: set_Pr4934435412358123699_a_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member5724188588386418708_a_nat @ Xz @ ( relcomp_a_nat_nat @ R3 @ S ) )
     => ~ ! [X: a,Y3: nat,Z: nat] :
            ( ( Xz
              = ( product_Pair_a_nat @ X @ Z ) )
           => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ X @ Y3 ) @ R3 )
             => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y3 @ Z ) @ S ) ) ) ) ).

% relcompE
thf(fact_91_relcompE,axiom,
    ! [Xz: produc8199716216217303280at_nat,R3: set_Pr3254233319718257578_nat_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member7226740684066999833at_nat @ Xz @ ( relcom1163327185954966926_a_nat @ R3 @ S ) )
     => ~ ! [X: nat > nat,Y3: a,Z: nat] :
            ( ( Xz
              = ( produc72220940542539688at_nat @ X @ Z ) )
           => ( ( member7754445317155421323_nat_a @ ( produc3941937540969104678_nat_a @ X @ Y3 ) @ R3 )
             => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ Y3 @ Z ) @ S ) ) ) ) ).

% relcompE
thf(fact_92_relcompE,axiom,
    ! [Xz: produc8199716216217303280at_nat,R3: set_Pr7682762132356531903at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member7226740684066999833at_nat @ Xz @ ( relcom9054258243621454929at_nat @ R3 @ S ) )
     => ~ ! [X: nat > nat,Y3: nat > nat,Z: nat] :
            ( ( Xz
              = ( produc72220940542539688at_nat @ X @ Z ) )
           => ( ( member1096249278104964872at_nat @ ( produc5770335208449155351at_nat @ X @ Y3 ) @ R3 )
             => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ Y3 @ Z ) @ S ) ) ) ) ).

% relcompE
thf(fact_93_relcompE,axiom,
    ! [Xz: produc8199716216217303280at_nat,R3: set_Pr9093778441882193744at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member7226740684066999833at_nat @ Xz @ ( relcom1859588284133128290at_nat @ R3 @ S ) )
     => ~ ! [X: nat > nat,Y3: nat,Z: nat] :
            ( ( Xz
              = ( produc72220940542539688at_nat @ X @ Z ) )
           => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X @ Y3 ) @ R3 )
             => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y3 @ Z ) @ S ) ) ) ) ).

% relcompE
thf(fact_94_relcomp_OrelcompI,axiom,
    ! [A2: a,B: a,R3: set_Product_prod_a_a,C3: nat,S: set_Pr4934435412358123699_a_nat] :
      ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ A2 @ B ) @ R3 )
     => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B @ C3 ) @ S )
       => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ C3 ) @ ( relcomp_a_a_nat @ R3 @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_95_relcomp_OrelcompI,axiom,
    ! [A2: nat > nat,B: a,R3: set_Pr3254233319718257578_nat_a,C3: nat,S: set_Pr4934435412358123699_a_nat] :
      ( ( member7754445317155421323_nat_a @ ( produc3941937540969104678_nat_a @ A2 @ B ) @ R3 )
     => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B @ C3 ) @ S )
       => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ C3 ) @ ( relcom1163327185954966926_a_nat @ R3 @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_96_relcomp_OrelcompI,axiom,
    ! [A2: a,B: nat > nat,R3: set_Pr6841066879934740386at_nat,C3: nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member5463269792551873667at_nat @ ( produc7514922136058452582at_nat @ A2 @ B ) @ R3 )
     => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B @ C3 ) @ S )
       => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ C3 ) @ ( relcom8552328690651882190at_nat @ R3 @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_97_relcomp_OrelcompI,axiom,
    ! [A2: nat > nat,B: nat > nat,R3: set_Pr7682762132356531903at_nat,C3: nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member1096249278104964872at_nat @ ( produc5770335208449155351at_nat @ A2 @ B ) @ R3 )
     => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B @ C3 ) @ S )
       => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ C3 ) @ ( relcom9054258243621454929at_nat @ R3 @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_98_relcomp_OrelcompI,axiom,
    ! [A2: a,B: nat,R3: set_Pr4934435412358123699_a_nat,C3: nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ B ) @ R3 )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C3 ) @ S )
       => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ C3 ) @ ( relcomp_a_nat_nat @ R3 @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_99_relcomp_OrelcompI,axiom,
    ! [A2: nat > nat,B: nat,R3: set_Pr9093778441882193744at_nat,C3: nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ B ) @ R3 )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C3 ) @ S )
       => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ C3 ) @ ( relcom1859588284133128290at_nat @ R3 @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_100_relcomp_Osimps,axiom,
    ! [A1: a,A22: nat,R3: set_Product_prod_a_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( relcomp_a_a_nat @ R3 @ S ) )
      = ( ? [A5: a,B5: a,C4: nat] :
            ( ( A1 = A5 )
            & ( A22 = C4 )
            & ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ A5 @ B5 ) @ R3 )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B5 @ C4 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_101_relcomp_Osimps,axiom,
    ! [A1: a,A22: nat,R3: set_Pr6841066879934740386at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( relcom8552328690651882190at_nat @ R3 @ S ) )
      = ( ? [A5: a,B5: nat > nat,C4: nat] :
            ( ( A1 = A5 )
            & ( A22 = C4 )
            & ( member5463269792551873667at_nat @ ( produc7514922136058452582at_nat @ A5 @ B5 ) @ R3 )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B5 @ C4 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_102_relcomp_Osimps,axiom,
    ! [A1: a,A22: nat,R3: set_Pr4934435412358123699_a_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( relcomp_a_nat_nat @ R3 @ S ) )
      = ( ? [A5: a,B5: nat,C4: nat] :
            ( ( A1 = A5 )
            & ( A22 = C4 )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A5 @ B5 ) @ R3 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B5 @ C4 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_103_relcomp_Osimps,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr3254233319718257578_nat_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( relcom1163327185954966926_a_nat @ R3 @ S ) )
      = ( ? [A5: nat > nat,B5: a,C4: nat] :
            ( ( A1 = A5 )
            & ( A22 = C4 )
            & ( member7754445317155421323_nat_a @ ( produc3941937540969104678_nat_a @ A5 @ B5 ) @ R3 )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B5 @ C4 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_104_relcomp_Osimps,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr7682762132356531903at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( relcom9054258243621454929at_nat @ R3 @ S ) )
      = ( ? [A5: nat > nat,B5: nat > nat,C4: nat] :
            ( ( A1 = A5 )
            & ( A22 = C4 )
            & ( member1096249278104964872at_nat @ ( produc5770335208449155351at_nat @ A5 @ B5 ) @ R3 )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B5 @ C4 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_105_relcomp_Osimps,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr9093778441882193744at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( relcom1859588284133128290at_nat @ R3 @ S ) )
      = ( ? [A5: nat > nat,B5: nat,C4: nat] :
            ( ( A1 = A5 )
            & ( A22 = C4 )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A5 @ B5 ) @ R3 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B5 @ C4 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_106_relcomp_Ocases,axiom,
    ! [A1: a,A22: nat,R3: set_Product_prod_a_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( relcomp_a_a_nat @ R3 @ S ) )
     => ~ ! [B3: a] :
            ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ A1 @ B3 ) @ R3 )
           => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_107_relcomp_Ocases,axiom,
    ! [A1: a,A22: nat,R3: set_Pr6841066879934740386at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( relcom8552328690651882190at_nat @ R3 @ S ) )
     => ~ ! [B3: nat > nat] :
            ( ( member5463269792551873667at_nat @ ( produc7514922136058452582at_nat @ A1 @ B3 ) @ R3 )
           => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_108_relcomp_Ocases,axiom,
    ! [A1: a,A22: nat,R3: set_Pr4934435412358123699_a_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( relcomp_a_nat_nat @ R3 @ S ) )
     => ~ ! [B3: nat] :
            ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ B3 ) @ R3 )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_109_relcomp_Ocases,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr3254233319718257578_nat_a,S: set_Pr4934435412358123699_a_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( relcom1163327185954966926_a_nat @ R3 @ S ) )
     => ~ ! [B3: a] :
            ( ( member7754445317155421323_nat_a @ ( produc3941937540969104678_nat_a @ A1 @ B3 ) @ R3 )
           => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_110_relcomp_Ocases,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr7682762132356531903at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( relcom9054258243621454929at_nat @ R3 @ S ) )
     => ~ ! [B3: nat > nat] :
            ( ( member1096249278104964872at_nat @ ( produc5770335208449155351at_nat @ A1 @ B3 ) @ R3 )
           => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_111_relcomp_Ocases,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr9093778441882193744at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( relcom1859588284133128290at_nat @ R3 @ S ) )
     => ~ ! [B3: nat] :
            ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ B3 ) @ R3 )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_112_converseI,axiom,
    ! [A2: nat,B: a,R3: set_Pr4193341848836149977_nat_a] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ A2 @ B ) @ R3 )
     => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B @ A2 ) @ ( converse_nat_a @ R3 ) ) ) ).

% converseI
thf(fact_113_converseI,axiom,
    ! [A2: nat,B: nat > nat,R3: set_Pr6370437063884598352at_nat] :
      ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ A2 @ B ) @ R3 )
     => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B @ A2 ) @ ( converse_nat_nat_nat2 @ R3 ) ) ) ).

% converseI
thf(fact_114_converseI,axiom,
    ! [A2: a,B: nat,R3: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ B ) @ R3 )
     => ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ B @ A2 ) @ ( converse_a_nat @ R3 ) ) ) ).

% converseI
thf(fact_115_converseI,axiom,
    ! [A2: nat > nat,B: nat,R3: set_Pr9093778441882193744at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ B ) @ R3 )
     => ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ B @ A2 ) @ ( converse_nat_nat_nat @ R3 ) ) ) ).

% converseI
thf(fact_116_converseI,axiom,
    ! [A2: ground_gterm_a,B: ground_gterm_a,R3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A2 @ B ) @ R3 )
     => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ B @ A2 ) @ ( conver4534901978641943675term_a @ R3 ) ) ) ).

% converseI
thf(fact_117_converseE,axiom,
    ! [Yx: product_prod_nat_a,R3: set_Pr4934435412358123699_a_nat] :
      ( ( member8962352052110095674_nat_a @ Yx @ ( converse_a_nat @ R3 ) )
     => ~ ! [X: a,Y3: nat] :
            ( ( Yx
              = ( product_Pair_nat_a @ Y3 @ X ) )
           => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ X @ Y3 ) @ R3 ) ) ) ).

% converseE
thf(fact_118_converseE,axiom,
    ! [Yx: produc85711943791777264at_nat,R3: set_Pr9093778441882193744at_nat] :
      ( ( member8336108448496249625at_nat @ Yx @ ( converse_nat_nat_nat @ R3 ) )
     => ~ ! [X: nat > nat,Y3: nat] :
            ( ( Yx
              = ( produc7839516862119294504at_nat @ Y3 @ X ) )
           => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X @ Y3 ) @ R3 ) ) ) ).

% converseE
thf(fact_119_converseE,axiom,
    ! [Yx: product_prod_a_nat,R3: set_Pr4193341848836149977_nat_a] :
      ( ( member5724188588386418708_a_nat @ Yx @ ( converse_nat_a @ R3 ) )
     => ~ ! [X: nat,Y3: a] :
            ( ( Yx
              = ( product_Pair_a_nat @ Y3 @ X ) )
           => ~ ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ X @ Y3 ) @ R3 ) ) ) ).

% converseE
thf(fact_120_converseE,axiom,
    ! [Yx: produc8199716216217303280at_nat,R3: set_Pr6370437063884598352at_nat] :
      ( ( member7226740684066999833at_nat @ Yx @ ( converse_nat_nat_nat2 @ R3 ) )
     => ~ ! [X: nat,Y3: nat > nat] :
            ( ( Yx
              = ( produc72220940542539688at_nat @ Y3 @ X ) )
           => ~ ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ X @ Y3 ) @ R3 ) ) ) ).

% converseE
thf(fact_121_converseE,axiom,
    ! [Yx: produc1525979690750518759term_a,R3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ Yx @ ( conver4534901978641943675term_a @ R3 ) )
     => ~ ! [X: ground_gterm_a,Y3: ground_gterm_a] :
            ( ( Yx
              = ( produc7419039783125785943term_a @ Y3 @ X ) )
           => ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X @ Y3 ) @ R3 ) ) ) ).

% converseE
thf(fact_122_converseD,axiom,
    ! [A2: nat,B: a,R3: set_Pr4934435412358123699_a_nat] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ A2 @ B ) @ ( converse_a_nat @ R3 ) )
     => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ B @ A2 ) @ R3 ) ) ).

% converseD
thf(fact_123_converseD,axiom,
    ! [A2: nat,B: nat > nat,R3: set_Pr9093778441882193744at_nat] :
      ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ A2 @ B ) @ ( converse_nat_nat_nat @ R3 ) )
     => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ B @ A2 ) @ R3 ) ) ).

% converseD
thf(fact_124_converseD,axiom,
    ! [A2: a,B: nat,R3: set_Pr4193341848836149977_nat_a] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ B ) @ ( converse_nat_a @ R3 ) )
     => ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ B @ A2 ) @ R3 ) ) ).

% converseD
thf(fact_125_converseD,axiom,
    ! [A2: nat > nat,B: nat,R3: set_Pr6370437063884598352at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ B ) @ ( converse_nat_nat_nat2 @ R3 ) )
     => ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ B @ A2 ) @ R3 ) ) ).

% converseD
thf(fact_126_converseD,axiom,
    ! [A2: ground_gterm_a,B: ground_gterm_a,R3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A2 @ B ) @ ( conver4534901978641943675term_a @ R3 ) )
     => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ B @ A2 ) @ R3 ) ) ).

% converseD
thf(fact_127_converse_Osimps,axiom,
    ! [A1: nat,A22: a,R3: set_Pr4934435412358123699_a_nat] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ A1 @ A22 ) @ ( converse_a_nat @ R3 ) )
      = ( ? [A5: a,B5: nat] :
            ( ( A1 = B5 )
            & ( A22 = A5 )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A5 @ B5 ) @ R3 ) ) ) ) ).

% converse.simps
thf(fact_128_converse_Osimps,axiom,
    ! [A1: nat,A22: nat > nat,R3: set_Pr9093778441882193744at_nat] :
      ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ A1 @ A22 ) @ ( converse_nat_nat_nat @ R3 ) )
      = ( ? [A5: nat > nat,B5: nat] :
            ( ( A1 = B5 )
            & ( A22 = A5 )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A5 @ B5 ) @ R3 ) ) ) ) ).

% converse.simps
thf(fact_129_converse_Osimps,axiom,
    ! [A1: a,A22: nat,R3: set_Pr4193341848836149977_nat_a] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( converse_nat_a @ R3 ) )
      = ( ? [A5: nat,B5: a] :
            ( ( A1 = B5 )
            & ( A22 = A5 )
            & ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ A5 @ B5 ) @ R3 ) ) ) ) ).

% converse.simps
thf(fact_130_converse_Osimps,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr6370437063884598352at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( converse_nat_nat_nat2 @ R3 ) )
      = ( ? [A5: nat,B5: nat > nat] :
            ( ( A1 = B5 )
            & ( A22 = A5 )
            & ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ A5 @ B5 ) @ R3 ) ) ) ) ).

% converse.simps
thf(fact_131_converse_Osimps,axiom,
    ! [A1: ground_gterm_a,A22: ground_gterm_a,R3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A1 @ A22 ) @ ( conver4534901978641943675term_a @ R3 ) )
      = ( ? [A5: ground_gterm_a,B5: ground_gterm_a] :
            ( ( A1 = B5 )
            & ( A22 = A5 )
            & ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A5 @ B5 ) @ R3 ) ) ) ) ).

% converse.simps
thf(fact_132_converse_Ocases,axiom,
    ! [A1: nat,A22: a,R3: set_Pr4934435412358123699_a_nat] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ A1 @ A22 ) @ ( converse_a_nat @ R3 ) )
     => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A22 @ A1 ) @ R3 ) ) ).

% converse.cases
thf(fact_133_converse_Ocases,axiom,
    ! [A1: nat,A22: nat > nat,R3: set_Pr9093778441882193744at_nat] :
      ( ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ A1 @ A22 ) @ ( converse_nat_nat_nat @ R3 ) )
     => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A22 @ A1 ) @ R3 ) ) ).

% converse.cases
thf(fact_134_converse_Ocases,axiom,
    ! [A1: a,A22: nat,R3: set_Pr4193341848836149977_nat_a] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A1 @ A22 ) @ ( converse_nat_a @ R3 ) )
     => ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ A22 @ A1 ) @ R3 ) ) ).

% converse.cases
thf(fact_135_converse_Ocases,axiom,
    ! [A1: nat > nat,A22: nat,R3: set_Pr6370437063884598352at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A1 @ A22 ) @ ( converse_nat_nat_nat2 @ R3 ) )
     => ( member8336108448496249625at_nat @ ( produc7839516862119294504at_nat @ A22 @ A1 ) @ R3 ) ) ).

% converse.cases
thf(fact_136_converse_Ocases,axiom,
    ! [A1: ground_gterm_a,A22: ground_gterm_a,R3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A1 @ A22 ) @ ( conver4534901978641943675term_a @ R3 ) )
     => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A22 @ A1 ) @ R3 ) ) ).

% converse.cases
thf(fact_137_O__mono2,axiom,
    ! [R2: set_Pr8282532413760598727term_a,R4: set_Pr8282532413760598727term_a,T2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ R2 @ R4 )
     => ( ord_le7556488698670074471term_a @ ( relcom4905991001586507054term_a @ R2 @ T2 ) @ ( relcom4905991001586507054term_a @ R4 @ T2 ) ) ) ).

% O_mono2
thf(fact_138_O__mono1,axiom,
    ! [R2: set_Pr8282532413760598727term_a,R4: set_Pr8282532413760598727term_a,S2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ R2 @ R4 )
     => ( ord_le7556488698670074471term_a @ ( relcom4905991001586507054term_a @ S2 @ R2 ) @ ( relcom4905991001586507054term_a @ S2 @ R4 ) ) ) ).

% O_mono1
thf(fact_139_relcomp__mono,axiom,
    ! [R5: set_Pr8282532413760598727term_a,R3: set_Pr8282532413760598727term_a,S3: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ R5 @ R3 )
     => ( ( ord_le7556488698670074471term_a @ S3 @ S )
       => ( ord_le7556488698670074471term_a @ ( relcom4905991001586507054term_a @ R5 @ S3 ) @ ( relcom4905991001586507054term_a @ R3 @ S ) ) ) ) ).

% relcomp_mono
thf(fact_140_ghole__poss__list_Ocases,axiom,
    ! [X3: ground_gmctxt_a] :
      ( ( X3 != ground_GMHole_a )
     => ~ ! [F3: a,Cs3: list_Ground_gmctxt_a] :
            ( X3
           != ( ground_GMFun_a @ F3 @ Cs3 ) ) ) ).

% ghole_poss_list.cases
thf(fact_141_funas__gmctxt_Ocases,axiom,
    ! [X3: ground_gmctxt_a] :
      ( ! [F3: a,Cs2: list_Ground_gmctxt_a] :
          ( X3
         != ( ground_GMFun_a @ F3 @ Cs2 ) )
     => ( X3 = ground_GMHole_a ) ) ).

% funas_gmctxt.cases
thf(fact_142_gmctxt_Oexhaust,axiom,
    ! [Y: ground_gmctxt_a] :
      ( ( Y != ground_GMHole_a )
     => ~ ! [X212: a,X223: list_Ground_gmctxt_a] :
            ( Y
           != ( ground_GMFun_a @ X212 @ X223 ) ) ) ).

% gmctxt.exhaust
thf(fact_143_gmctxt_Odistinct_I1_J,axiom,
    ! [X21: a,X222: list_Ground_gmctxt_a] :
      ( ground_GMHole_a
     != ( ground_GMFun_a @ X21 @ X222 ) ) ).

% gmctxt.distinct(1)
thf(fact_144_converse__subset__swap,axiom,
    ! [R3: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ R3 @ ( conver4534901978641943675term_a @ S ) )
      = ( ord_le7556488698670074471term_a @ ( conver4534901978641943675term_a @ R3 ) @ S ) ) ).

% converse_subset_swap
thf(fact_145_converse__relcomp,axiom,
    ! [R3: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ( conver4534901978641943675term_a @ ( relcom4905991001586507054term_a @ R3 @ S ) )
      = ( relcom4905991001586507054term_a @ ( conver4534901978641943675term_a @ S ) @ ( conver4534901978641943675term_a @ R3 ) ) ) ).

% converse_relcomp
thf(fact_146_symcl__converse,axiom,
    ! [A: set_Pr8282532413760598727term_a] :
      ( ( conver4534901978641943675term_a @ ( sup_su6310922012705202331term_a @ A @ ( conver4534901978641943675term_a @ A ) ) )
      = ( sup_su6310922012705202331term_a @ A @ ( conver4534901978641943675term_a @ A ) ) ) ).

% symcl_converse
thf(fact_147_symcl__Un,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ A @ B4 ) @ ( conver4534901978641943675term_a @ ( sup_su6310922012705202331term_a @ A @ B4 ) ) )
      = ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ A @ ( conver4534901978641943675term_a @ A ) ) @ ( sup_su6310922012705202331term_a @ B4 @ ( conver4534901978641943675term_a @ B4 ) ) ) ) ).

% symcl_Un
thf(fact_148_converse__Un,axiom,
    ! [R3: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ( conver4534901978641943675term_a @ ( sup_su6310922012705202331term_a @ R3 @ S ) )
      = ( sup_su6310922012705202331term_a @ ( conver4534901978641943675term_a @ R3 ) @ ( conver4534901978641943675term_a @ S ) ) ) ).

% converse_Un
thf(fact_149_gmctxt__order__bot_Obot_Oextremum__uniqueI,axiom,
    ! [A2: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A2 @ ground_GMHole_a )
     => ( A2 = ground_GMHole_a ) ) ).

% gmctxt_order_bot.bot.extremum_uniqueI
thf(fact_150_gmctxt__order__bot_Obot_Oextremum__unique,axiom,
    ! [A2: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A2 @ ground_GMHole_a )
      = ( A2 = ground_GMHole_a ) ) ).

% gmctxt_order_bot.bot.extremum_unique
thf(fact_151_gmctxt__order__bot_Obot_Oextremum,axiom,
    ! [A2: ground_gmctxt_a] : ( ord_le1940079914304802430ctxt_a @ ground_GMHole_a @ A2 ) ).

% gmctxt_order_bot.bot.extremum
thf(fact_152_less__eq__gmctxt__intros_I1_J,axiom,
    ! [U: ground_gmctxt_a] : ( ord_le1940079914304802430ctxt_a @ ground_GMHole_a @ U ) ).

% less_eq_gmctxt_intros(1)
thf(fact_153_replicate__length__same,axiom,
    ! [Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ! [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
         => ( X = X3 ) )
     => ( ( replic9205591110366033502ctxt_a @ ( size_s962548663205356226ctxt_a @ Xs ) @ X3 )
        = Xs ) ) ).

% replicate_length_same
thf(fact_154_replicate__length__same,axiom,
    ! [Xs: list_nat,X3: nat] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
         => ( X = X3 ) )
     => ( ( replicate_nat @ ( size_size_list_nat @ Xs ) @ X3 )
        = Xs ) ) ).

% replicate_length_same
thf(fact_155_replicate__eqI,axiom,
    ! [Xs: list_P3592885314253461005_a_nat,N: nat,X3: product_prod_a_nat] :
      ( ( ( size_s984997627204368545_a_nat @ Xs )
        = N )
     => ( ! [Y3: product_prod_a_nat] :
            ( ( member5724188588386418708_a_nat @ Y3 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
           => ( Y3 = X3 ) )
       => ( Xs
          = ( replic5595554873386817213_a_nat @ N @ X3 ) ) ) ) ).

% replicate_eqI
thf(fact_156_replicate__eqI,axiom,
    ! [Xs: list_Ground_gmctxt_a,N: nat,X3: ground_gmctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = N )
     => ( ! [Y3: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ Y3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
           => ( Y3 = X3 ) )
       => ( Xs
          = ( replic9205591110366033502ctxt_a @ N @ X3 ) ) ) ) ).

% replicate_eqI
thf(fact_157_replicate__eqI,axiom,
    ! [Xs: list_nat,N: nat,X3: nat] :
      ( ( ( size_size_list_nat @ Xs )
        = N )
     => ( ! [Y3: nat] :
            ( ( member_nat @ Y3 @ ( set_nat2 @ Xs ) )
           => ( Y3 = X3 ) )
       => ( Xs
          = ( replicate_nat @ N @ X3 ) ) ) ) ).

% replicate_eqI
thf(fact_158_peak__iff,axiom,
    ! [X3: nat,Y: nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y ) @ ( relcomp_nat_a_nat @ ( converse_a_nat @ A ) @ B4 ) )
      = ( ? [U2: a] :
            ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ U2 @ X3 ) @ A )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ U2 @ Y ) @ B4 ) ) ) ) ).

% peak_iff
thf(fact_159_peak__iff,axiom,
    ! [X3: nat,Y: nat,A: set_Pr9093778441882193744at_nat,B4: set_Pr9093778441882193744at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y ) @ ( relcom6405311860805859042at_nat @ ( converse_nat_nat_nat @ A ) @ B4 ) )
      = ( ? [U2: nat > nat] :
            ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ U2 @ X3 ) @ A )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ U2 @ Y ) @ B4 ) ) ) ) ).

% peak_iff
thf(fact_160_peak__iff,axiom,
    ! [X3: a,Y: nat,A: set_Product_prod_a_a,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) @ ( relcomp_a_a_nat @ ( converse_a_a @ A ) @ B4 ) )
      = ( ? [U2: a] :
            ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ U2 @ X3 ) @ A )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ U2 @ Y ) @ B4 ) ) ) ) ).

% peak_iff
thf(fact_161_peak__iff,axiom,
    ! [X3: a,Y: nat,A: set_Pr3254233319718257578_nat_a,B4: set_Pr9093778441882193744at_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) @ ( relcom8552328690651882190at_nat @ ( converse_nat_nat_a @ A ) @ B4 ) )
      = ( ? [U2: nat > nat] :
            ( ( member7754445317155421323_nat_a @ ( produc3941937540969104678_nat_a @ U2 @ X3 ) @ A )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ U2 @ Y ) @ B4 ) ) ) ) ).

% peak_iff
thf(fact_162_peak__iff,axiom,
    ! [X3: nat > nat,Y: nat,A: set_Pr6841066879934740386at_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) @ ( relcom1163327185954966926_a_nat @ ( converse_a_nat_nat @ A ) @ B4 ) )
      = ( ? [U2: a] :
            ( ( member5463269792551873667at_nat @ ( produc7514922136058452582at_nat @ U2 @ X3 ) @ A )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ U2 @ Y ) @ B4 ) ) ) ) ).

% peak_iff
thf(fact_163_peak__iff,axiom,
    ! [X3: nat > nat,Y: nat,A: set_Pr7682762132356531903at_nat,B4: set_Pr9093778441882193744at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) @ ( relcom9054258243621454929at_nat @ ( conver1636425912871821883at_nat @ A ) @ B4 ) )
      = ( ? [U2: nat > nat] :
            ( ( member1096249278104964872at_nat @ ( produc5770335208449155351at_nat @ U2 @ X3 ) @ A )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ U2 @ Y ) @ B4 ) ) ) ) ).

% peak_iff
thf(fact_164_fill__gholes__gmctxt__nHole,axiom,
    ! [C: ground_gmctxt_a,Ds: list_Ground_gmctxt_a] :
      ( ( C != ground_GMHole_a )
     => ( ( ( ground_num_gholes_a @ C )
          = ( size_s962548663205356226ctxt_a @ Ds ) )
       => ( ( ground2530127064035342964ctxt_a @ C @ Ds )
         != ground_GMHole_a ) ) ) ).

% fill_gholes_gmctxt_nHole
thf(fact_165_fill__gholes__gmctxt__less__eq,axiom,
    ! [C: ground_gmctxt_a,Ds: list_Ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s962548663205356226ctxt_a @ Ds ) )
     => ( ord_le1940079914304802430ctxt_a @ C @ ( ground2530127064035342964ctxt_a @ C @ Ds ) ) ) ).

% fill_gholes_gmctxt_less_eq
thf(fact_166_less__eq__to__sup__mctxt__args,axiom,
    ! [C: ground_gmctxt_a,D2: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ D2 )
     => ~ ! [Ds2: list_Ground_gmctxt_a] :
            ( ( ( ground_num_gholes_a @ C )
              = ( size_s962548663205356226ctxt_a @ Ds2 ) )
           => ( D2
             != ( ground2530127064035342964ctxt_a @ C @ Ds2 ) ) ) ) ).

% less_eq_to_sup_mctxt_args
thf(fact_167_Un__subset__iff,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ A @ B4 ) @ C )
      = ( ( ord_le7556488698670074471term_a @ A @ C )
        & ( ord_le7556488698670074471term_a @ B4 @ C ) ) ) ).

% Un_subset_iff
thf(fact_168_sup_Obounded__iff,axiom,
    ! [B: nat,C3: nat,A2: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ B @ C3 ) @ A2 )
      = ( ( ord_less_eq_nat @ B @ A2 )
        & ( ord_less_eq_nat @ C3 @ A2 ) ) ) ).

% sup.bounded_iff
thf(fact_169_sup_Obounded__iff,axiom,
    ! [B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ B @ C3 ) @ A2 )
      = ( ( ord_le7556488698670074471term_a @ B @ A2 )
        & ( ord_le7556488698670074471term_a @ C3 @ A2 ) ) ) ).

% sup.bounded_iff
thf(fact_170_le__sup__iff,axiom,
    ! [X3: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ X3 @ Y ) @ Z2 )
      = ( ( ord_less_eq_nat @ X3 @ Z2 )
        & ( ord_less_eq_nat @ Y @ Z2 ) ) ) ).

% le_sup_iff
thf(fact_171_le__sup__iff,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ X3 @ Y ) @ Z2 )
      = ( ( ord_le7556488698670074471term_a @ X3 @ Z2 )
        & ( ord_le7556488698670074471term_a @ Y @ Z2 ) ) ) ).

% le_sup_iff
thf(fact_172_gcomp__rel__def,axiom,
    ( ground_gcomp_rel_a
    = ( ^ [F4: set_Pr4934435412358123699_a_nat,R6: set_Pr8282532413760598727term_a,S4: set_Pr8282532413760598727term_a] : ( sup_su6310922012705202331term_a @ ( relcom4905991001586507054term_a @ R6 @ ( ground_gmctxt_cl_a @ F4 @ S4 ) ) @ ( relcom4905991001586507054term_a @ ( ground_gmctxt_cl_a @ F4 @ R6 ) @ S4 ) ) ) ) ).

% gcomp_rel_def
thf(fact_173_set__union,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( set_Ground_gmctxt_a2 @ ( union_677461488090446756ctxt_a @ Xs @ Ys ) )
      = ( sup_su721339912568147456ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ ( set_Ground_gmctxt_a2 @ Ys ) ) ) ).

% set_union
thf(fact_174_set__union,axiom,
    ! [Xs: list_P2433084232546440685term_a,Ys: list_P2433084232546440685term_a] :
      ( ( set_Pr5405221470436175740term_a @ ( union_8953718378465966561term_a @ Xs @ Ys ) )
      = ( sup_su6310922012705202331term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ ( set_Pr5405221470436175740term_a @ Ys ) ) ) ).

% set_union
thf(fact_175_diamond__I,axiom,
    ! [R3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( relcom4905991001586507054term_a @ ( conver4534901978641943675term_a @ R3 ) @ R3 ) @ ( relcom4905991001586507054term_a @ R3 @ ( conver4534901978641943675term_a @ R3 ) ) )
     => ( abstra4147439465237605589term_a @ R3 ) ) ).

% diamond_I
thf(fact_176_gcomp__rel,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a,S5: set_Pr8282532413760598727term_a] :
      ( ( ground_gmctxt_cl_a @ F2 @ ( ground_gcomp_rel_a @ F2 @ R @ S5 ) )
      = ( relcom4905991001586507054term_a @ ( ground_gmctxt_cl_a @ F2 @ R ) @ ( ground_gmctxt_cl_a @ F2 @ S5 ) ) ) ).

% gcomp_rel
thf(fact_177_Un__iff,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ ( sup_su459911885395995103_a_nat @ A @ B4 ) )
      = ( ( member5724188588386418708_a_nat @ C3 @ A )
        | ( member5724188588386418708_a_nat @ C3 @ B4 ) ) ) ).

% Un_iff
thf(fact_178_Un__iff,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ ( sup_sup_set_nat @ A @ B4 ) )
      = ( ( member_nat @ C3 @ A )
        | ( member_nat @ C3 @ B4 ) ) ) ).

% Un_iff
thf(fact_179_Un__iff,axiom,
    ! [C3: produc1525979690750518759term_a,A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C3 @ ( sup_su6310922012705202331term_a @ A @ B4 ) )
      = ( ( member4351891425000572176term_a @ C3 @ A )
        | ( member4351891425000572176term_a @ C3 @ B4 ) ) ) ).

% Un_iff
thf(fact_180_UnCI,axiom,
    ! [C3: product_prod_a_nat,B4: set_Pr4934435412358123699_a_nat,A: set_Pr4934435412358123699_a_nat] :
      ( ( ~ ( member5724188588386418708_a_nat @ C3 @ B4 )
       => ( member5724188588386418708_a_nat @ C3 @ A ) )
     => ( member5724188588386418708_a_nat @ C3 @ ( sup_su459911885395995103_a_nat @ A @ B4 ) ) ) ).

% UnCI
thf(fact_181_UnCI,axiom,
    ! [C3: nat,B4: set_nat,A: set_nat] :
      ( ( ~ ( member_nat @ C3 @ B4 )
       => ( member_nat @ C3 @ A ) )
     => ( member_nat @ C3 @ ( sup_sup_set_nat @ A @ B4 ) ) ) ).

% UnCI
thf(fact_182_UnCI,axiom,
    ! [C3: produc1525979690750518759term_a,B4: set_Pr8282532413760598727term_a,A: set_Pr8282532413760598727term_a] :
      ( ( ~ ( member4351891425000572176term_a @ C3 @ B4 )
       => ( member4351891425000572176term_a @ C3 @ A ) )
     => ( member4351891425000572176term_a @ C3 @ ( sup_su6310922012705202331term_a @ A @ B4 ) ) ) ).

% UnCI
thf(fact_183_order__refl,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ X3 @ X3 ) ).

% order_refl
thf(fact_184_order__refl,axiom,
    ! [X3: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ X3 @ X3 ) ).

% order_refl
thf(fact_185_dual__order_Orefl,axiom,
    ! [A2: nat] : ( ord_less_eq_nat @ A2 @ A2 ) ).

% dual_order.refl
thf(fact_186_dual__order_Orefl,axiom,
    ! [A2: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ A2 @ A2 ) ).

% dual_order.refl
thf(fact_187_image__eqI,axiom,
    ! [B: product_prod_a_nat,F: product_prod_a_nat > product_prod_a_nat,X3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat] :
      ( ( B
        = ( F @ X3 ) )
     => ( ( member5724188588386418708_a_nat @ X3 @ A )
       => ( member5724188588386418708_a_nat @ B @ ( image_8708701149064048897_a_nat @ F @ A ) ) ) ) ).

% image_eqI
thf(fact_188_image__eqI,axiom,
    ! [B: nat,F: product_prod_a_nat > nat,X3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat] :
      ( ( B
        = ( F @ X3 ) )
     => ( ( member5724188588386418708_a_nat @ X3 @ A )
       => ( member_nat @ B @ ( image_838238048506182228at_nat @ F @ A ) ) ) ) ).

% image_eqI
thf(fact_189_image__eqI,axiom,
    ! [B: product_prod_a_nat,F: nat > product_prod_a_nat,X3: nat,A: set_nat] :
      ( ( B
        = ( F @ X3 ) )
     => ( ( member_nat @ X3 @ A )
       => ( member5724188588386418708_a_nat @ B @ ( image_5430510455974008148_a_nat @ F @ A ) ) ) ) ).

% image_eqI
thf(fact_190_image__eqI,axiom,
    ! [B: nat,F: nat > nat,X3: nat,A: set_nat] :
      ( ( B
        = ( F @ X3 ) )
     => ( ( member_nat @ X3 @ A )
       => ( member_nat @ B @ ( image_nat_nat @ F @ A ) ) ) ) ).

% image_eqI
thf(fact_191_subset__antisym,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( ord_le7556488698670074471term_a @ B4 @ A )
       => ( A = B4 ) ) ) ).

% subset_antisym
thf(fact_192_sup_Oidem,axiom,
    ! [A2: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ A2 @ A2 )
      = A2 ) ).

% sup.idem
thf(fact_193_sup__idem,axiom,
    ! [X3: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ X3 @ X3 )
      = X3 ) ).

% sup_idem
thf(fact_194_sup_Oleft__idem,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ A2 @ ( sup_su6310922012705202331term_a @ A2 @ B ) )
      = ( sup_su6310922012705202331term_a @ A2 @ B ) ) ).

% sup.left_idem
thf(fact_195_sup__left__idem,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ X3 @ ( sup_su6310922012705202331term_a @ X3 @ Y ) )
      = ( sup_su6310922012705202331term_a @ X3 @ Y ) ) ).

% sup_left_idem
thf(fact_196_sup_Oright__idem,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ A2 @ B ) @ B )
      = ( sup_su6310922012705202331term_a @ A2 @ B ) ) ).

% sup.right_idem
thf(fact_197_sup__gmctxt__MHole,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( sup_su4546239841456773962ctxt_a @ C @ ground_GMHole_a )
      = C ) ).

% sup_gmctxt_MHole
thf(fact_198_sup__gmctxt_Osimps_I1_J,axiom,
    ! [D2: ground_gmctxt_a] :
      ( ( sup_su4546239841456773962ctxt_a @ ground_GMHole_a @ D2 )
      = D2 ) ).

% sup_gmctxt.simps(1)
thf(fact_199_sup__gmctxt_Osimps_I2_J,axiom,
    ! [V: a,Va: list_Ground_gmctxt_a] :
      ( ( sup_su4546239841456773962ctxt_a @ ( ground_GMFun_a @ V @ Va ) @ ground_GMHole_a )
      = ( ground_GMFun_a @ V @ Va ) ) ).

% sup_gmctxt.simps(2)
thf(fact_200_nle__le,axiom,
    ! [A2: nat,B: nat] :
      ( ( ~ ( ord_less_eq_nat @ A2 @ B ) )
      = ( ( ord_less_eq_nat @ B @ A2 )
        & ( B != A2 ) ) ) ).

% nle_le
thf(fact_201_le__cases3,axiom,
    ! [X3: nat,Y: nat,Z2: nat] :
      ( ( ( ord_less_eq_nat @ X3 @ Y )
       => ~ ( ord_less_eq_nat @ Y @ Z2 ) )
     => ( ( ( ord_less_eq_nat @ Y @ X3 )
         => ~ ( ord_less_eq_nat @ X3 @ Z2 ) )
       => ( ( ( ord_less_eq_nat @ X3 @ Z2 )
           => ~ ( ord_less_eq_nat @ Z2 @ Y ) )
         => ( ( ( ord_less_eq_nat @ Z2 @ Y )
             => ~ ( ord_less_eq_nat @ Y @ X3 ) )
           => ( ( ( ord_less_eq_nat @ Y @ Z2 )
               => ~ ( ord_less_eq_nat @ Z2 @ X3 ) )
             => ~ ( ( ord_less_eq_nat @ Z2 @ X3 )
                 => ~ ( ord_less_eq_nat @ X3 @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_202_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z3: nat] : ( Y4 = Z3 ) )
    = ( ^ [X4: nat,Y5: nat] :
          ( ( ord_less_eq_nat @ X4 @ Y5 )
          & ( ord_less_eq_nat @ Y5 @ X4 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_203_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_Pr8282532413760598727term_a,Z3: set_Pr8282532413760598727term_a] : ( Y4 = Z3 ) )
    = ( ^ [X4: set_Pr8282532413760598727term_a,Y5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ X4 @ Y5 )
          & ( ord_le7556488698670074471term_a @ Y5 @ X4 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_204_ord__eq__le__trans,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( A2 = B )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ord_less_eq_nat @ A2 @ C3 ) ) ) ).

% ord_eq_le_trans
thf(fact_205_ord__eq__le__trans,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( A2 = B )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ord_le7556488698670074471term_a @ A2 @ C3 ) ) ) ).

% ord_eq_le_trans
thf(fact_206_ord__le__eq__trans,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( B = C3 )
       => ( ord_less_eq_nat @ A2 @ C3 ) ) ) ).

% ord_le_eq_trans
thf(fact_207_ord__le__eq__trans,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( B = C3 )
       => ( ord_le7556488698670074471term_a @ A2 @ C3 ) ) ) ).

% ord_le_eq_trans
thf(fact_208_order__antisym,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
     => ( ( ord_less_eq_nat @ Y @ X3 )
       => ( X3 = Y ) ) ) ).

% order_antisym
thf(fact_209_order__antisym,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ Y )
     => ( ( ord_le7556488698670074471term_a @ Y @ X3 )
       => ( X3 = Y ) ) ) ).

% order_antisym
thf(fact_210_order_Otrans,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ord_less_eq_nat @ A2 @ C3 ) ) ) ).

% order.trans
thf(fact_211_order_Otrans,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ord_le7556488698670074471term_a @ A2 @ C3 ) ) ) ).

% order.trans
thf(fact_212_order__trans,axiom,
    ! [X3: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z2 )
       => ( ord_less_eq_nat @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_213_order__trans,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ Y )
     => ( ( ord_le7556488698670074471term_a @ Y @ Z2 )
       => ( ord_le7556488698670074471term_a @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_214_linorder__wlog,axiom,
    ! [P: nat > nat > $o,A2: nat,B: nat] :
      ( ! [A4: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A4 @ B3 )
         => ( P @ A4 @ B3 ) )
     => ( ! [A4: nat,B3: nat] :
            ( ( P @ B3 @ A4 )
           => ( P @ A4 @ B3 ) )
       => ( P @ A2 @ B ) ) ) ).

% linorder_wlog
thf(fact_215_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: nat,Z3: nat] : ( Y4 = Z3 ) )
    = ( ^ [A5: nat,B5: nat] :
          ( ( ord_less_eq_nat @ B5 @ A5 )
          & ( ord_less_eq_nat @ A5 @ B5 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_216_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_Pr8282532413760598727term_a,Z3: set_Pr8282532413760598727term_a] : ( Y4 = Z3 ) )
    = ( ^ [A5: set_Pr8282532413760598727term_a,B5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ B5 @ A5 )
          & ( ord_le7556488698670074471term_a @ A5 @ B5 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_217_dual__order_Oantisym,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( ( ord_less_eq_nat @ A2 @ B )
       => ( A2 = B ) ) ) ).

% dual_order.antisym
thf(fact_218_dual__order_Oantisym,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B @ A2 )
     => ( ( ord_le7556488698670074471term_a @ A2 @ B )
       => ( A2 = B ) ) ) ).

% dual_order.antisym
thf(fact_219_dual__order_Otrans,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( ( ord_less_eq_nat @ C3 @ B )
       => ( ord_less_eq_nat @ C3 @ A2 ) ) ) ).

% dual_order.trans
thf(fact_220_dual__order_Otrans,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B @ A2 )
     => ( ( ord_le7556488698670074471term_a @ C3 @ B )
       => ( ord_le7556488698670074471term_a @ C3 @ A2 ) ) ) ).

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

% antisym
thf(fact_222_antisym,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ord_le7556488698670074471term_a @ B @ A2 )
       => ( A2 = B ) ) ) ).

% antisym
thf(fact_223_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z3: nat] : ( Y4 = Z3 ) )
    = ( ^ [A5: nat,B5: nat] :
          ( ( ord_less_eq_nat @ A5 @ B5 )
          & ( ord_less_eq_nat @ B5 @ A5 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_224_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_Pr8282532413760598727term_a,Z3: set_Pr8282532413760598727term_a] : ( Y4 = Z3 ) )
    = ( ^ [A5: set_Pr8282532413760598727term_a,B5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ A5 @ B5 )
          & ( ord_le7556488698670074471term_a @ B5 @ A5 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_225_order__subst1,axiom,
    ! [A2: nat,F: nat > nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_subst1
thf(fact_226_order__subst1,axiom,
    ! [A2: nat,F: set_Pr8282532413760598727term_a > nat,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_less_eq_nat @ A2 @ ( F @ B ) )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_subst1
thf(fact_227_order__subst1,axiom,
    ! [A2: set_Pr8282532413760598727term_a,F: nat > set_Pr8282532413760598727term_a,B: nat,C3: nat] :
      ( ( ord_le7556488698670074471term_a @ A2 @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_subst1
thf(fact_228_order__subst1,axiom,
    ! [A2: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ ( F @ B ) )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_subst1
thf(fact_229_order__subst2,axiom,
    ! [A2: nat,B: nat,F: nat > nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_subst2
thf(fact_230_order__subst2,axiom,
    ! [A2: nat,B: nat,F: nat > set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_le7556488698670074471term_a @ ( F @ B ) @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_subst2
thf(fact_231_order__subst2,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > nat,C3: nat] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_subst2
thf(fact_232_order__subst2,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ord_le7556488698670074471term_a @ ( F @ B ) @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_subst2
thf(fact_233_order__eq__refl,axiom,
    ! [X3: nat,Y: nat] :
      ( ( X3 = Y )
     => ( ord_less_eq_nat @ X3 @ Y ) ) ).

% order_eq_refl
thf(fact_234_order__eq__refl,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( X3 = Y )
     => ( ord_le7556488698670074471term_a @ X3 @ Y ) ) ).

% order_eq_refl
thf(fact_235_linorder__linear,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
      | ( ord_less_eq_nat @ Y @ X3 ) ) ).

% linorder_linear
thf(fact_236_ord__eq__le__subst,axiom,
    ! [A2: nat,F: nat > nat,B: nat,C3: nat] :
      ( ( A2
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_237_ord__eq__le__subst,axiom,
    ! [A2: set_Pr8282532413760598727term_a,F: nat > set_Pr8282532413760598727term_a,B: nat,C3: nat] :
      ( ( A2
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ A2 @ ( F @ C3 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_238_ord__eq__le__subst,axiom,
    ! [A2: nat,F: set_Pr8282532413760598727term_a > nat,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( A2
        = ( F @ B ) )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_239_ord__eq__le__subst,axiom,
    ! [A2: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( A2
        = ( F @ B ) )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ A2 @ ( F @ C3 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_240_ord__le__eq__subst,axiom,
    ! [A2: nat,B: nat,F: nat > nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ( F @ B )
          = C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_241_ord__le__eq__subst,axiom,
    ! [A2: nat,B: nat,F: nat > set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ( F @ B )
          = C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ ( F @ A2 ) @ C3 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_242_ord__le__eq__subst,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > nat,C3: nat] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ( F @ B )
          = C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_243_ord__le__eq__subst,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ( F @ B )
          = C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le7556488698670074471term_a @ ( F @ A2 ) @ C3 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_244_linorder__le__cases,axiom,
    ! [X3: nat,Y: nat] :
      ( ~ ( ord_less_eq_nat @ X3 @ Y )
     => ( ord_less_eq_nat @ Y @ X3 ) ) ).

% linorder_le_cases
thf(fact_245_order__antisym__conv,axiom,
    ! [Y: nat,X3: nat] :
      ( ( ord_less_eq_nat @ Y @ X3 )
     => ( ( ord_less_eq_nat @ X3 @ Y )
        = ( X3 = Y ) ) ) ).

% order_antisym_conv
thf(fact_246_order__antisym__conv,axiom,
    ! [Y: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ Y @ X3 )
     => ( ( ord_le7556488698670074471term_a @ X3 @ Y )
        = ( X3 = Y ) ) ) ).

% order_antisym_conv
thf(fact_247_imageI,axiom,
    ! [X3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,F: product_prod_a_nat > product_prod_a_nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ A )
     => ( member5724188588386418708_a_nat @ ( F @ X3 ) @ ( image_8708701149064048897_a_nat @ F @ A ) ) ) ).

% imageI
thf(fact_248_imageI,axiom,
    ! [X3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,F: product_prod_a_nat > nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ A )
     => ( member_nat @ ( F @ X3 ) @ ( image_838238048506182228at_nat @ F @ A ) ) ) ).

% imageI
thf(fact_249_imageI,axiom,
    ! [X3: nat,A: set_nat,F: nat > product_prod_a_nat] :
      ( ( member_nat @ X3 @ A )
     => ( member5724188588386418708_a_nat @ ( F @ X3 ) @ ( image_5430510455974008148_a_nat @ F @ A ) ) ) ).

% imageI
thf(fact_250_imageI,axiom,
    ! [X3: nat,A: set_nat,F: nat > nat] :
      ( ( member_nat @ X3 @ A )
     => ( member_nat @ ( F @ X3 ) @ ( image_nat_nat @ F @ A ) ) ) ).

% imageI
thf(fact_251_image__iff,axiom,
    ! [Z2: nat,F: nat > nat,A: set_nat] :
      ( ( member_nat @ Z2 @ ( image_nat_nat @ F @ A ) )
      = ( ? [X4: nat] :
            ( ( member_nat @ X4 @ A )
            & ( Z2
              = ( F @ X4 ) ) ) ) ) ).

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

% bex_imageD
thf(fact_253_image__cong,axiom,
    ! [M: set_nat,N2: set_nat,F: nat > nat,G3: nat > nat] :
      ( ( M = N2 )
     => ( ! [X: nat] :
            ( ( member_nat @ X @ N2 )
           => ( ( F @ X )
              = ( G3 @ X ) ) )
       => ( ( image_nat_nat @ F @ M )
          = ( image_nat_nat @ G3 @ N2 ) ) ) ) ).

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

% ball_imageD
thf(fact_255_rev__image__eqI,axiom,
    ! [X3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B: product_prod_a_nat,F: product_prod_a_nat > product_prod_a_nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ A )
     => ( ( B
          = ( F @ X3 ) )
       => ( member5724188588386418708_a_nat @ B @ ( image_8708701149064048897_a_nat @ F @ A ) ) ) ) ).

% rev_image_eqI
thf(fact_256_rev__image__eqI,axiom,
    ! [X3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B: nat,F: product_prod_a_nat > nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ A )
     => ( ( B
          = ( F @ X3 ) )
       => ( member_nat @ B @ ( image_838238048506182228at_nat @ F @ A ) ) ) ) ).

% rev_image_eqI
thf(fact_257_rev__image__eqI,axiom,
    ! [X3: nat,A: set_nat,B: product_prod_a_nat,F: nat > product_prod_a_nat] :
      ( ( member_nat @ X3 @ A )
     => ( ( B
          = ( F @ X3 ) )
       => ( member5724188588386418708_a_nat @ B @ ( image_5430510455974008148_a_nat @ F @ A ) ) ) ) ).

% rev_image_eqI
thf(fact_258_rev__image__eqI,axiom,
    ! [X3: nat,A: set_nat,B: nat,F: nat > nat] :
      ( ( member_nat @ X3 @ A )
     => ( ( B
          = ( F @ X3 ) )
       => ( member_nat @ B @ ( image_nat_nat @ F @ A ) ) ) ) ).

% rev_image_eqI
thf(fact_259_in__mono,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat,X3: product_prod_a_nat] :
      ( ( ord_le8666007276011122963_a_nat @ A @ B4 )
     => ( ( member5724188588386418708_a_nat @ X3 @ A )
       => ( member5724188588386418708_a_nat @ X3 @ B4 ) ) ) ).

% in_mono
thf(fact_260_in__mono,axiom,
    ! [A: set_nat,B4: set_nat,X3: nat] :
      ( ( ord_less_eq_set_nat @ A @ B4 )
     => ( ( member_nat @ X3 @ A )
       => ( member_nat @ X3 @ B4 ) ) ) ).

% in_mono
thf(fact_261_in__mono,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,X3: produc1525979690750518759term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( member4351891425000572176term_a @ X3 @ A )
       => ( member4351891425000572176term_a @ X3 @ B4 ) ) ) ).

% in_mono
thf(fact_262_subsetD,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat,C3: product_prod_a_nat] :
      ( ( ord_le8666007276011122963_a_nat @ A @ B4 )
     => ( ( member5724188588386418708_a_nat @ C3 @ A )
       => ( member5724188588386418708_a_nat @ C3 @ B4 ) ) ) ).

% subsetD
thf(fact_263_subsetD,axiom,
    ! [A: set_nat,B4: set_nat,C3: nat] :
      ( ( ord_less_eq_set_nat @ A @ B4 )
     => ( ( member_nat @ C3 @ A )
       => ( member_nat @ C3 @ B4 ) ) ) ).

% subsetD
thf(fact_264_subsetD,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C3: produc1525979690750518759term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( member4351891425000572176term_a @ C3 @ A )
       => ( member4351891425000572176term_a @ C3 @ B4 ) ) ) ).

% subsetD
thf(fact_265_subsetI,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ! [X: product_prod_a_nat] :
          ( ( member5724188588386418708_a_nat @ X @ A )
         => ( member5724188588386418708_a_nat @ X @ B4 ) )
     => ( ord_le8666007276011122963_a_nat @ A @ B4 ) ) ).

% subsetI
thf(fact_266_subsetI,axiom,
    ! [A: set_nat,B4: set_nat] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ A )
         => ( member_nat @ X @ B4 ) )
     => ( ord_less_eq_set_nat @ A @ B4 ) ) ).

% subsetI
thf(fact_267_subsetI,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ! [X: produc1525979690750518759term_a] :
          ( ( member4351891425000572176term_a @ X @ A )
         => ( member4351891425000572176term_a @ X @ B4 ) )
     => ( ord_le7556488698670074471term_a @ A @ B4 ) ) ).

% subsetI
thf(fact_268_equalityE,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( A = B4 )
     => ~ ( ( ord_le7556488698670074471term_a @ A @ B4 )
         => ~ ( ord_le7556488698670074471term_a @ B4 @ A ) ) ) ).

% equalityE
thf(fact_269_subset__eq,axiom,
    ( ord_le8666007276011122963_a_nat
    = ( ^ [A6: set_Pr4934435412358123699_a_nat,B6: set_Pr4934435412358123699_a_nat] :
        ! [X4: product_prod_a_nat] :
          ( ( member5724188588386418708_a_nat @ X4 @ A6 )
         => ( member5724188588386418708_a_nat @ X4 @ B6 ) ) ) ) ).

% subset_eq
thf(fact_270_subset__eq,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A6: set_nat,B6: set_nat] :
        ! [X4: nat] :
          ( ( member_nat @ X4 @ A6 )
         => ( member_nat @ X4 @ B6 ) ) ) ) ).

% subset_eq
thf(fact_271_subset__eq,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
        ! [X4: produc1525979690750518759term_a] :
          ( ( member4351891425000572176term_a @ X4 @ A6 )
         => ( member4351891425000572176term_a @ X4 @ B6 ) ) ) ) ).

% subset_eq
thf(fact_272_equalityD1,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( A = B4 )
     => ( ord_le7556488698670074471term_a @ A @ B4 ) ) ).

% equalityD1
thf(fact_273_equalityD2,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( A = B4 )
     => ( ord_le7556488698670074471term_a @ B4 @ A ) ) ).

% equalityD2
thf(fact_274_subset__iff,axiom,
    ( ord_le8666007276011122963_a_nat
    = ( ^ [A6: set_Pr4934435412358123699_a_nat,B6: set_Pr4934435412358123699_a_nat] :
        ! [T3: product_prod_a_nat] :
          ( ( member5724188588386418708_a_nat @ T3 @ A6 )
         => ( member5724188588386418708_a_nat @ T3 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_275_subset__iff,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A6: set_nat,B6: set_nat] :
        ! [T3: nat] :
          ( ( member_nat @ T3 @ A6 )
         => ( member_nat @ T3 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_276_subset__iff,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
        ! [T3: produc1525979690750518759term_a] :
          ( ( member4351891425000572176term_a @ T3 @ A6 )
         => ( member4351891425000572176term_a @ T3 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_277_subset__refl,axiom,
    ! [A: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ A @ A ) ).

% subset_refl
thf(fact_278_Collect__mono,axiom,
    ! [P: produc1525979690750518759term_a > $o,Q: produc1525979690750518759term_a > $o] :
      ( ! [X: produc1525979690750518759term_a] :
          ( ( P @ X )
         => ( Q @ X ) )
     => ( ord_le7556488698670074471term_a @ ( collec6713184107424615762term_a @ P ) @ ( collec6713184107424615762term_a @ Q ) ) ) ).

% Collect_mono
thf(fact_279_subset__trans,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( ord_le7556488698670074471term_a @ B4 @ C )
       => ( ord_le7556488698670074471term_a @ A @ C ) ) ) ).

% subset_trans
thf(fact_280_set__eq__subset,axiom,
    ( ( ^ [Y4: set_Pr8282532413760598727term_a,Z3: set_Pr8282532413760598727term_a] : ( Y4 = Z3 ) )
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ A6 @ B6 )
          & ( ord_le7556488698670074471term_a @ B6 @ A6 ) ) ) ) ).

% set_eq_subset
thf(fact_281_Collect__mono__iff,axiom,
    ! [P: produc1525979690750518759term_a > $o,Q: produc1525979690750518759term_a > $o] :
      ( ( ord_le7556488698670074471term_a @ ( collec6713184107424615762term_a @ P ) @ ( collec6713184107424615762term_a @ Q ) )
      = ( ! [X4: produc1525979690750518759term_a] :
            ( ( P @ X4 )
           => ( Q @ X4 ) ) ) ) ).

% Collect_mono_iff
thf(fact_282_inf__sup__aci_I8_J,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ X3 @ ( sup_su6310922012705202331term_a @ X3 @ Y ) )
      = ( sup_su6310922012705202331term_a @ X3 @ Y ) ) ).

% inf_sup_aci(8)
thf(fact_283_inf__sup__aci_I7_J,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ X3 @ ( sup_su6310922012705202331term_a @ Y @ Z2 ) )
      = ( sup_su6310922012705202331term_a @ Y @ ( sup_su6310922012705202331term_a @ X3 @ Z2 ) ) ) ).

% inf_sup_aci(7)
thf(fact_284_inf__sup__aci_I6_J,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ X3 @ Y ) @ Z2 )
      = ( sup_su6310922012705202331term_a @ X3 @ ( sup_su6310922012705202331term_a @ Y @ Z2 ) ) ) ).

% inf_sup_aci(6)
thf(fact_285_inf__sup__aci_I5_J,axiom,
    ( sup_su6310922012705202331term_a
    = ( ^ [X4: set_Pr8282532413760598727term_a,Y5: set_Pr8282532413760598727term_a] : ( sup_su6310922012705202331term_a @ Y5 @ X4 ) ) ) ).

% inf_sup_aci(5)
thf(fact_286_sup_Oassoc,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ A2 @ B ) @ C3 )
      = ( sup_su6310922012705202331term_a @ A2 @ ( sup_su6310922012705202331term_a @ B @ C3 ) ) ) ).

% sup.assoc
thf(fact_287_sup__assoc,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ X3 @ Y ) @ Z2 )
      = ( sup_su6310922012705202331term_a @ X3 @ ( sup_su6310922012705202331term_a @ Y @ Z2 ) ) ) ).

% sup_assoc
thf(fact_288_sup_Ocommute,axiom,
    ( sup_su6310922012705202331term_a
    = ( ^ [A5: set_Pr8282532413760598727term_a,B5: set_Pr8282532413760598727term_a] : ( sup_su6310922012705202331term_a @ B5 @ A5 ) ) ) ).

% sup.commute
thf(fact_289_sup__commute,axiom,
    ( sup_su6310922012705202331term_a
    = ( ^ [X4: set_Pr8282532413760598727term_a,Y5: set_Pr8282532413760598727term_a] : ( sup_su6310922012705202331term_a @ Y5 @ X4 ) ) ) ).

% sup_commute
thf(fact_290_sup_Oleft__commute,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ B @ ( sup_su6310922012705202331term_a @ A2 @ C3 ) )
      = ( sup_su6310922012705202331term_a @ A2 @ ( sup_su6310922012705202331term_a @ B @ C3 ) ) ) ).

% sup.left_commute
thf(fact_291_sup__left__commute,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ X3 @ ( sup_su6310922012705202331term_a @ Y @ Z2 ) )
      = ( sup_su6310922012705202331term_a @ Y @ ( sup_su6310922012705202331term_a @ X3 @ Z2 ) ) ) ).

% sup_left_commute
thf(fact_292_UnE,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ ( sup_su459911885395995103_a_nat @ A @ B4 ) )
     => ( ~ ( member5724188588386418708_a_nat @ C3 @ A )
       => ( member5724188588386418708_a_nat @ C3 @ B4 ) ) ) ).

% UnE
thf(fact_293_UnE,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ ( sup_sup_set_nat @ A @ B4 ) )
     => ( ~ ( member_nat @ C3 @ A )
       => ( member_nat @ C3 @ B4 ) ) ) ).

% UnE
thf(fact_294_UnE,axiom,
    ! [C3: produc1525979690750518759term_a,A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C3 @ ( sup_su6310922012705202331term_a @ A @ B4 ) )
     => ( ~ ( member4351891425000572176term_a @ C3 @ A )
       => ( member4351891425000572176term_a @ C3 @ B4 ) ) ) ).

% UnE
thf(fact_295_UnI1,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ A )
     => ( member5724188588386418708_a_nat @ C3 @ ( sup_su459911885395995103_a_nat @ A @ B4 ) ) ) ).

% UnI1
thf(fact_296_UnI1,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ A )
     => ( member_nat @ C3 @ ( sup_sup_set_nat @ A @ B4 ) ) ) ).

% UnI1
thf(fact_297_UnI1,axiom,
    ! [C3: produc1525979690750518759term_a,A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C3 @ A )
     => ( member4351891425000572176term_a @ C3 @ ( sup_su6310922012705202331term_a @ A @ B4 ) ) ) ).

% UnI1
thf(fact_298_UnI2,axiom,
    ! [C3: product_prod_a_nat,B4: set_Pr4934435412358123699_a_nat,A: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ B4 )
     => ( member5724188588386418708_a_nat @ C3 @ ( sup_su459911885395995103_a_nat @ A @ B4 ) ) ) ).

% UnI2
thf(fact_299_UnI2,axiom,
    ! [C3: nat,B4: set_nat,A: set_nat] :
      ( ( member_nat @ C3 @ B4 )
     => ( member_nat @ C3 @ ( sup_sup_set_nat @ A @ B4 ) ) ) ).

% UnI2
thf(fact_300_UnI2,axiom,
    ! [C3: produc1525979690750518759term_a,B4: set_Pr8282532413760598727term_a,A: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C3 @ B4 )
     => ( member4351891425000572176term_a @ C3 @ ( sup_su6310922012705202331term_a @ A @ B4 ) ) ) ).

% UnI2
thf(fact_301_bex__Un,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,P: produc1525979690750518759term_a > $o] :
      ( ( ? [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ ( sup_su6310922012705202331term_a @ A @ B4 ) )
            & ( P @ X4 ) ) )
      = ( ? [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ A )
            & ( P @ X4 ) )
        | ? [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ B4 )
            & ( P @ X4 ) ) ) ) ).

% bex_Un
thf(fact_302_ball__Un,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,P: produc1525979690750518759term_a > $o] :
      ( ( ! [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ ( sup_su6310922012705202331term_a @ A @ B4 ) )
           => ( P @ X4 ) ) )
      = ( ! [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ A )
           => ( P @ X4 ) )
        & ! [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ B4 )
           => ( P @ X4 ) ) ) ) ).

% ball_Un
thf(fact_303_Un__assoc,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( sup_su6310922012705202331term_a @ A @ B4 ) @ C )
      = ( sup_su6310922012705202331term_a @ A @ ( sup_su6310922012705202331term_a @ B4 @ C ) ) ) ).

% Un_assoc
thf(fact_304_Un__absorb,axiom,
    ! [A: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ A @ A )
      = A ) ).

% Un_absorb
thf(fact_305_Un__commute,axiom,
    ( sup_su6310922012705202331term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] : ( sup_su6310922012705202331term_a @ B6 @ A6 ) ) ) ).

% Un_commute
thf(fact_306_Un__left__absorb,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ A @ ( sup_su6310922012705202331term_a @ A @ B4 ) )
      = ( sup_su6310922012705202331term_a @ A @ B4 ) ) ).

% Un_left_absorb
thf(fact_307_Un__left__commute,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ A @ ( sup_su6310922012705202331term_a @ B4 @ C ) )
      = ( sup_su6310922012705202331term_a @ B4 @ ( sup_su6310922012705202331term_a @ A @ C ) ) ) ).

% Un_left_commute
thf(fact_308_inf__sup__ord_I4_J,axiom,
    ! [Y: nat,X3: nat] : ( ord_less_eq_nat @ Y @ ( sup_sup_nat @ X3 @ Y ) ) ).

% inf_sup_ord(4)
thf(fact_309_inf__sup__ord_I4_J,axiom,
    ! [Y: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ Y @ ( sup_su6310922012705202331term_a @ X3 @ Y ) ) ).

% inf_sup_ord(4)
thf(fact_310_inf__sup__ord_I3_J,axiom,
    ! [X3: nat,Y: nat] : ( ord_less_eq_nat @ X3 @ ( sup_sup_nat @ X3 @ Y ) ) ).

% inf_sup_ord(3)
thf(fact_311_inf__sup__ord_I3_J,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ X3 @ ( sup_su6310922012705202331term_a @ X3 @ Y ) ) ).

% inf_sup_ord(3)
thf(fact_312_le__supE,axiom,
    ! [A2: nat,B: nat,X3: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ A2 @ B ) @ X3 )
     => ~ ( ( ord_less_eq_nat @ A2 @ X3 )
         => ~ ( ord_less_eq_nat @ B @ X3 ) ) ) ).

% le_supE
thf(fact_313_le__supE,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ A2 @ B ) @ X3 )
     => ~ ( ( ord_le7556488698670074471term_a @ A2 @ X3 )
         => ~ ( ord_le7556488698670074471term_a @ B @ X3 ) ) ) ).

% le_supE
thf(fact_314_le__supI,axiom,
    ! [A2: nat,X3: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ X3 )
     => ( ( ord_less_eq_nat @ B @ X3 )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ A2 @ B ) @ X3 ) ) ) ).

% le_supI
thf(fact_315_le__supI,axiom,
    ! [A2: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ X3 )
     => ( ( ord_le7556488698670074471term_a @ B @ X3 )
       => ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ A2 @ B ) @ X3 ) ) ) ).

% le_supI
thf(fact_316_sup__ge1,axiom,
    ! [X3: nat,Y: nat] : ( ord_less_eq_nat @ X3 @ ( sup_sup_nat @ X3 @ Y ) ) ).

% sup_ge1
thf(fact_317_sup__ge1,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ X3 @ ( sup_su6310922012705202331term_a @ X3 @ Y ) ) ).

% sup_ge1
thf(fact_318_sup__ge2,axiom,
    ! [Y: nat,X3: nat] : ( ord_less_eq_nat @ Y @ ( sup_sup_nat @ X3 @ Y ) ) ).

% sup_ge2
thf(fact_319_sup__ge2,axiom,
    ! [Y: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ Y @ ( sup_su6310922012705202331term_a @ X3 @ Y ) ) ).

% sup_ge2
thf(fact_320_le__supI1,axiom,
    ! [X3: nat,A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ X3 @ A2 )
     => ( ord_less_eq_nat @ X3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% le_supI1
thf(fact_321_le__supI1,axiom,
    ! [X3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ A2 )
     => ( ord_le7556488698670074471term_a @ X3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% le_supI1
thf(fact_322_le__supI2,axiom,
    ! [X3: nat,B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ X3 @ B )
     => ( ord_less_eq_nat @ X3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% le_supI2
thf(fact_323_le__supI2,axiom,
    ! [X3: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ B )
     => ( ord_le7556488698670074471term_a @ X3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% le_supI2
thf(fact_324_sup_Omono,axiom,
    ! [C3: nat,A2: nat,D3: nat,B: nat] :
      ( ( ord_less_eq_nat @ C3 @ A2 )
     => ( ( ord_less_eq_nat @ D3 @ B )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ C3 @ D3 ) @ ( sup_sup_nat @ A2 @ B ) ) ) ) ).

% sup.mono
thf(fact_325_sup_Omono,axiom,
    ! [C3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,D3: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ C3 @ A2 )
     => ( ( ord_le7556488698670074471term_a @ D3 @ B )
       => ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ C3 @ D3 ) @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ) ).

% sup.mono
thf(fact_326_sup__mono,axiom,
    ! [A2: nat,C3: nat,B: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A2 @ C3 )
     => ( ( ord_less_eq_nat @ B @ D3 )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ A2 @ B ) @ ( sup_sup_nat @ C3 @ D3 ) ) ) ) ).

% sup_mono
thf(fact_327_sup__mono,axiom,
    ! [A2: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,D3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ C3 )
     => ( ( ord_le7556488698670074471term_a @ B @ D3 )
       => ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ A2 @ B ) @ ( sup_su6310922012705202331term_a @ C3 @ D3 ) ) ) ) ).

% sup_mono
thf(fact_328_sup__least,axiom,
    ! [Y: nat,X3: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ Y @ X3 )
     => ( ( ord_less_eq_nat @ Z2 @ X3 )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ Y @ Z2 ) @ X3 ) ) ) ).

% sup_least
thf(fact_329_sup__least,axiom,
    ! [Y: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ Y @ X3 )
     => ( ( ord_le7556488698670074471term_a @ Z2 @ X3 )
       => ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ Y @ Z2 ) @ X3 ) ) ) ).

% sup_least
thf(fact_330_le__iff__sup,axiom,
    ( ord_less_eq_nat
    = ( ^ [X4: nat,Y5: nat] :
          ( ( sup_sup_nat @ X4 @ Y5 )
          = Y5 ) ) ) ).

% le_iff_sup
thf(fact_331_le__iff__sup,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [X4: set_Pr8282532413760598727term_a,Y5: set_Pr8282532413760598727term_a] :
          ( ( sup_su6310922012705202331term_a @ X4 @ Y5 )
          = Y5 ) ) ) ).

% le_iff_sup
thf(fact_332_sup_OorderE,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( A2
        = ( sup_sup_nat @ A2 @ B ) ) ) ).

% sup.orderE
thf(fact_333_sup_OorderE,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B @ A2 )
     => ( A2
        = ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% sup.orderE
thf(fact_334_sup_OorderI,axiom,
    ! [A2: nat,B: nat] :
      ( ( A2
        = ( sup_sup_nat @ A2 @ B ) )
     => ( ord_less_eq_nat @ B @ A2 ) ) ).

% sup.orderI
thf(fact_335_sup_OorderI,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( A2
        = ( sup_su6310922012705202331term_a @ A2 @ B ) )
     => ( ord_le7556488698670074471term_a @ B @ A2 ) ) ).

% sup.orderI
thf(fact_336_sup__unique,axiom,
    ! [F: nat > nat > nat,X3: nat,Y: nat] :
      ( ! [X: nat,Y3: nat] : ( ord_less_eq_nat @ X @ ( F @ X @ Y3 ) )
     => ( ! [X: nat,Y3: nat] : ( ord_less_eq_nat @ Y3 @ ( F @ X @ Y3 ) )
       => ( ! [X: nat,Y3: nat,Z: nat] :
              ( ( ord_less_eq_nat @ Y3 @ X )
             => ( ( ord_less_eq_nat @ Z @ X )
               => ( ord_less_eq_nat @ ( F @ Y3 @ Z ) @ X ) ) )
         => ( ( sup_sup_nat @ X3 @ Y )
            = ( F @ X3 @ Y ) ) ) ) ) ).

% sup_unique
thf(fact_337_sup__unique,axiom,
    ! [F: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ X @ ( F @ X @ Y3 ) )
     => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ Y3 @ ( F @ X @ Y3 ) )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a,Z: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ Y3 @ X )
             => ( ( ord_le7556488698670074471term_a @ Z @ X )
               => ( ord_le7556488698670074471term_a @ ( F @ Y3 @ Z ) @ X ) ) )
         => ( ( sup_su6310922012705202331term_a @ X3 @ Y )
            = ( F @ X3 @ Y ) ) ) ) ) ).

% sup_unique
thf(fact_338_sup_Oabsorb1,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( ( sup_sup_nat @ A2 @ B )
        = A2 ) ) ).

% sup.absorb1
thf(fact_339_sup_Oabsorb1,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B @ A2 )
     => ( ( sup_su6310922012705202331term_a @ A2 @ B )
        = A2 ) ) ).

% sup.absorb1
thf(fact_340_sup_Oabsorb2,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( sup_sup_nat @ A2 @ B )
        = B ) ) ).

% sup.absorb2
thf(fact_341_sup_Oabsorb2,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( sup_su6310922012705202331term_a @ A2 @ B )
        = B ) ) ).

% sup.absorb2
thf(fact_342_sup__absorb1,axiom,
    ! [Y: nat,X3: nat] :
      ( ( ord_less_eq_nat @ Y @ X3 )
     => ( ( sup_sup_nat @ X3 @ Y )
        = X3 ) ) ).

% sup_absorb1
thf(fact_343_sup__absorb1,axiom,
    ! [Y: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ Y @ X3 )
     => ( ( sup_su6310922012705202331term_a @ X3 @ Y )
        = X3 ) ) ).

% sup_absorb1
thf(fact_344_sup__absorb2,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
     => ( ( sup_sup_nat @ X3 @ Y )
        = Y ) ) ).

% sup_absorb2
thf(fact_345_sup__absorb2,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ Y )
     => ( ( sup_su6310922012705202331term_a @ X3 @ Y )
        = Y ) ) ).

% sup_absorb2
thf(fact_346_sup_OboundedE,axiom,
    ! [B: nat,C3: nat,A2: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ B @ C3 ) @ A2 )
     => ~ ( ( ord_less_eq_nat @ B @ A2 )
         => ~ ( ord_less_eq_nat @ C3 @ A2 ) ) ) ).

% sup.boundedE
thf(fact_347_sup_OboundedE,axiom,
    ! [B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ B @ C3 ) @ A2 )
     => ~ ( ( ord_le7556488698670074471term_a @ B @ A2 )
         => ~ ( ord_le7556488698670074471term_a @ C3 @ A2 ) ) ) ).

% sup.boundedE
thf(fact_348_sup_OboundedI,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( ( ord_less_eq_nat @ C3 @ A2 )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ B @ C3 ) @ A2 ) ) ) ).

% sup.boundedI
thf(fact_349_sup_OboundedI,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B @ A2 )
     => ( ( ord_le7556488698670074471term_a @ C3 @ A2 )
       => ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ B @ C3 ) @ A2 ) ) ) ).

% sup.boundedI
thf(fact_350_sup_Oorder__iff,axiom,
    ( ord_less_eq_nat
    = ( ^ [B5: nat,A5: nat] :
          ( A5
          = ( sup_sup_nat @ A5 @ B5 ) ) ) ) ).

% sup.order_iff
thf(fact_351_sup_Oorder__iff,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [B5: set_Pr8282532413760598727term_a,A5: set_Pr8282532413760598727term_a] :
          ( A5
          = ( sup_su6310922012705202331term_a @ A5 @ B5 ) ) ) ) ).

% sup.order_iff
thf(fact_352_sup_Ocobounded1,axiom,
    ! [A2: nat,B: nat] : ( ord_less_eq_nat @ A2 @ ( sup_sup_nat @ A2 @ B ) ) ).

% sup.cobounded1
thf(fact_353_sup_Ocobounded1,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ A2 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ).

% sup.cobounded1
thf(fact_354_sup_Ocobounded2,axiom,
    ! [B: nat,A2: nat] : ( ord_less_eq_nat @ B @ ( sup_sup_nat @ A2 @ B ) ) ).

% sup.cobounded2
thf(fact_355_sup_Ocobounded2,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ B @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ).

% sup.cobounded2
thf(fact_356_sup_Oabsorb__iff1,axiom,
    ( ord_less_eq_nat
    = ( ^ [B5: nat,A5: nat] :
          ( ( sup_sup_nat @ A5 @ B5 )
          = A5 ) ) ) ).

% sup.absorb_iff1
thf(fact_357_sup_Oabsorb__iff1,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [B5: set_Pr8282532413760598727term_a,A5: set_Pr8282532413760598727term_a] :
          ( ( sup_su6310922012705202331term_a @ A5 @ B5 )
          = A5 ) ) ) ).

% sup.absorb_iff1
thf(fact_358_sup_Oabsorb__iff2,axiom,
    ( ord_less_eq_nat
    = ( ^ [A5: nat,B5: nat] :
          ( ( sup_sup_nat @ A5 @ B5 )
          = B5 ) ) ) ).

% sup.absorb_iff2
thf(fact_359_sup_Oabsorb__iff2,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [A5: set_Pr8282532413760598727term_a,B5: set_Pr8282532413760598727term_a] :
          ( ( sup_su6310922012705202331term_a @ A5 @ B5 )
          = B5 ) ) ) ).

% sup.absorb_iff2
thf(fact_360_sup_OcoboundedI1,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ C3 @ A2 )
     => ( ord_less_eq_nat @ C3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% sup.coboundedI1
thf(fact_361_sup_OcoboundedI1,axiom,
    ! [C3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ C3 @ A2 )
     => ( ord_le7556488698670074471term_a @ C3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% sup.coboundedI1
thf(fact_362_sup_OcoboundedI2,axiom,
    ! [C3: nat,B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ C3 @ B )
     => ( ord_less_eq_nat @ C3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% sup.coboundedI2
thf(fact_363_sup_OcoboundedI2,axiom,
    ! [C3: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ C3 @ B )
     => ( ord_le7556488698670074471term_a @ C3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% sup.coboundedI2
thf(fact_364_image__mono,axiom,
    ! [A: set_nat,B4: set_nat,F: nat > nat] :
      ( ( ord_less_eq_set_nat @ A @ B4 )
     => ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A ) @ ( image_nat_nat @ F @ B4 ) ) ) ).

% image_mono
thf(fact_365_image__mono,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,F: produc1525979690750518759term_a > produc1525979690750518759term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ord_le7556488698670074471term_a @ ( image_9005035479881104325term_a @ F @ A ) @ ( image_9005035479881104325term_a @ F @ B4 ) ) ) ).

% image_mono
thf(fact_366_image__subsetI,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,F: product_prod_a_nat > product_prod_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ! [X: product_prod_a_nat] :
          ( ( member5724188588386418708_a_nat @ X @ A )
         => ( member5724188588386418708_a_nat @ ( F @ X ) @ B4 ) )
     => ( ord_le8666007276011122963_a_nat @ ( image_8708701149064048897_a_nat @ F @ A ) @ B4 ) ) ).

% image_subsetI
thf(fact_367_image__subsetI,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,F: product_prod_a_nat > nat,B4: set_nat] :
      ( ! [X: product_prod_a_nat] :
          ( ( member5724188588386418708_a_nat @ X @ A )
         => ( member_nat @ ( F @ X ) @ B4 ) )
     => ( ord_less_eq_set_nat @ ( image_838238048506182228at_nat @ F @ A ) @ B4 ) ) ).

% image_subsetI
thf(fact_368_image__subsetI,axiom,
    ! [A: set_nat,F: nat > product_prod_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ A )
         => ( member5724188588386418708_a_nat @ ( F @ X ) @ B4 ) )
     => ( ord_le8666007276011122963_a_nat @ ( image_5430510455974008148_a_nat @ F @ A ) @ B4 ) ) ).

% image_subsetI
thf(fact_369_image__subsetI,axiom,
    ! [A: set_nat,F: nat > nat,B4: set_nat] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ A )
         => ( member_nat @ ( F @ X ) @ B4 ) )
     => ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A ) @ B4 ) ) ).

% image_subsetI
thf(fact_370_image__subsetI,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,F: product_prod_a_nat > produc1525979690750518759term_a,B4: set_Pr8282532413760598727term_a] :
      ( ! [X: product_prod_a_nat] :
          ( ( member5724188588386418708_a_nat @ X @ A )
         => ( member4351891425000572176term_a @ ( F @ X ) @ B4 ) )
     => ( ord_le7556488698670074471term_a @ ( image_2429339725723482211term_a @ F @ A ) @ B4 ) ) ).

% image_subsetI
thf(fact_371_image__subsetI,axiom,
    ! [A: set_nat,F: nat > produc1525979690750518759term_a,B4: set_Pr8282532413760598727term_a] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ A )
         => ( member4351891425000572176term_a @ ( F @ X ) @ B4 ) )
     => ( ord_le7556488698670074471term_a @ ( image_5914516136772878288term_a @ F @ A ) @ B4 ) ) ).

% image_subsetI
thf(fact_372_subset__imageE,axiom,
    ! [B4: set_nat,F: nat > nat,A: set_nat] :
      ( ( ord_less_eq_set_nat @ B4 @ ( image_nat_nat @ F @ A ) )
     => ~ ! [C2: set_nat] :
            ( ( ord_less_eq_set_nat @ C2 @ A )
           => ( B4
             != ( image_nat_nat @ F @ C2 ) ) ) ) ).

% subset_imageE
thf(fact_373_subset__imageE,axiom,
    ! [B4: set_Pr8282532413760598727term_a,F: produc1525979690750518759term_a > produc1525979690750518759term_a,A: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B4 @ ( image_9005035479881104325term_a @ F @ A ) )
     => ~ ! [C2: set_Pr8282532413760598727term_a] :
            ( ( ord_le7556488698670074471term_a @ C2 @ A )
           => ( B4
             != ( image_9005035479881104325term_a @ F @ C2 ) ) ) ) ).

% subset_imageE
thf(fact_374_image__subset__iff,axiom,
    ! [F: nat > nat,A: set_nat,B4: set_nat] :
      ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A ) @ B4 )
      = ( ! [X4: nat] :
            ( ( member_nat @ X4 @ A )
           => ( member_nat @ ( F @ X4 ) @ B4 ) ) ) ) ).

% image_subset_iff
thf(fact_375_subset__image__iff,axiom,
    ! [B4: set_nat,F: nat > nat,A: set_nat] :
      ( ( ord_less_eq_set_nat @ B4 @ ( image_nat_nat @ F @ A ) )
      = ( ? [AA: set_nat] :
            ( ( ord_less_eq_set_nat @ AA @ A )
            & ( B4
              = ( image_nat_nat @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_376_subset__image__iff,axiom,
    ! [B4: set_Pr8282532413760598727term_a,F: produc1525979690750518759term_a > produc1525979690750518759term_a,A: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B4 @ ( image_9005035479881104325term_a @ F @ A ) )
      = ( ? [AA: set_Pr8282532413760598727term_a] :
            ( ( ord_le7556488698670074471term_a @ AA @ A )
            & ( B4
              = ( image_9005035479881104325term_a @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_377_image__Un,axiom,
    ! [F: nat > nat,A: set_nat,B4: set_nat] :
      ( ( image_nat_nat @ F @ ( sup_sup_set_nat @ A @ B4 ) )
      = ( sup_sup_set_nat @ ( image_nat_nat @ F @ A ) @ ( image_nat_nat @ F @ B4 ) ) ) ).

% image_Un
thf(fact_378_image__Un,axiom,
    ! [F: produc1525979690750518759term_a > produc1525979690750518759term_a,A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( image_9005035479881104325term_a @ F @ ( sup_su6310922012705202331term_a @ A @ B4 ) )
      = ( sup_su6310922012705202331term_a @ ( image_9005035479881104325term_a @ F @ A ) @ ( image_9005035479881104325term_a @ F @ B4 ) ) ) ).

% image_Un
thf(fact_379_Un__mono,axiom,
    ! [A: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,D2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ C )
     => ( ( ord_le7556488698670074471term_a @ B4 @ D2 )
       => ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ A @ B4 ) @ ( sup_su6310922012705202331term_a @ C @ D2 ) ) ) ) ).

% Un_mono
thf(fact_380_Un__least,axiom,
    ! [A: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ C )
     => ( ( ord_le7556488698670074471term_a @ B4 @ C )
       => ( ord_le7556488698670074471term_a @ ( sup_su6310922012705202331term_a @ A @ B4 ) @ C ) ) ) ).

% Un_least
thf(fact_381_Un__upper1,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ A @ ( sup_su6310922012705202331term_a @ A @ B4 ) ) ).

% Un_upper1
thf(fact_382_Un__upper2,axiom,
    ! [B4: set_Pr8282532413760598727term_a,A: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ B4 @ ( sup_su6310922012705202331term_a @ A @ B4 ) ) ).

% Un_upper2
thf(fact_383_Un__absorb1,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( sup_su6310922012705202331term_a @ A @ B4 )
        = B4 ) ) ).

% Un_absorb1
thf(fact_384_Un__absorb2,axiom,
    ! [B4: set_Pr8282532413760598727term_a,A: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B4 @ A )
     => ( ( sup_su6310922012705202331term_a @ A @ B4 )
        = A ) ) ).

% Un_absorb2
thf(fact_385_subset__UnE,axiom,
    ! [C: set_Pr8282532413760598727term_a,A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ C @ ( sup_su6310922012705202331term_a @ A @ B4 ) )
     => ~ ! [A7: set_Pr8282532413760598727term_a] :
            ( ( ord_le7556488698670074471term_a @ A7 @ A )
           => ! [B7: set_Pr8282532413760598727term_a] :
                ( ( ord_le7556488698670074471term_a @ B7 @ B4 )
               => ( C
                 != ( sup_su6310922012705202331term_a @ A7 @ B7 ) ) ) ) ) ).

% subset_UnE
thf(fact_386_subset__Un__eq,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
          ( ( sup_su6310922012705202331term_a @ A6 @ B6 )
          = B6 ) ) ) ).

% subset_Un_eq
thf(fact_387_diamond__E,axiom,
    ! [R3: set_Pr8282532413760598727term_a] :
      ( ( abstra4147439465237605589term_a @ R3 )
     => ( ord_le7556488698670074471term_a @ ( relcom4905991001586507054term_a @ ( conver4534901978641943675term_a @ R3 ) @ R3 ) @ ( relcom4905991001586507054term_a @ R3 @ ( conver4534901978641943675term_a @ R3 ) ) ) ) ).

% diamond_E
thf(fact_388_diamond__def,axiom,
    ( abstra4147439465237605589term_a
    = ( ^ [R7: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ ( relcom4905991001586507054term_a @ ( conver4534901978641943675term_a @ R7 ) @ R7 ) @ ( relcom4905991001586507054term_a @ R7 @ ( conver4534901978641943675term_a @ R7 ) ) ) ) ) ).

% diamond_def
thf(fact_389_gmctxt__order__bot_Omax__bot,axiom,
    ! [X3: ground_gmctxt_a] :
      ( ( max_Ground_gmctxt_a @ ord_le1940079914304802430ctxt_a @ ground_GMHole_a @ X3 )
      = X3 ) ).

% gmctxt_order_bot.max_bot
thf(fact_390_gmctxt__order__bot_Omin__bot,axiom,
    ! [X3: ground_gmctxt_a] :
      ( ( min_Ground_gmctxt_a @ ord_le1940079914304802430ctxt_a @ ground_GMHole_a @ X3 )
      = ground_GMHole_a ) ).

% gmctxt_order_bot.min_bot
thf(fact_391_gmctxt__order__bot_Omax__bot2,axiom,
    ! [X3: ground_gmctxt_a] :
      ( ( max_Ground_gmctxt_a @ ord_le1940079914304802430ctxt_a @ X3 @ ground_GMHole_a )
      = X3 ) ).

% gmctxt_order_bot.max_bot2
thf(fact_392_gmctxt__order__bot_Omin__bot2,axiom,
    ! [X3: ground_gmctxt_a] :
      ( ( min_Ground_gmctxt_a @ ord_le1940079914304802430ctxt_a @ X3 @ ground_GMHole_a )
      = ground_GMHole_a ) ).

% gmctxt_order_bot.min_bot2
thf(fact_393_gmctxtex__onp__fun__closed,axiom,
    ! [F2: set_Pr9093778441882193744at_nat,P: ground8783299844416014133at_nat > $o,R: set_Pr8144746507299050889at_nat] :
      ( ! [F3: nat > nat,N3: nat] :
          ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F3 @ N3 ) @ F2 )
         => ( ( N3 != zero_zero_nat )
           => ( P @ ( ground_GMFun_nat_nat @ F3 @ ( replic4491578029747908341at_nat @ N3 @ ground5464849307112913552at_nat ) ) ) ) )
     => ( ! [C2: ground8783299844416014133at_nat] :
            ( ( P @ C2 )
           => ! [Ds2: list_G661399839900664635at_nat] :
                ( ( ( ground6437113571659793227at_nat @ C2 )
                  = ( size_s1790761595801015719at_nat @ Ds2 ) )
               => ( ( ord_less_nat @ zero_zero_nat @ ( ground6437113571659793227at_nat @ C2 ) )
                 => ( ! [X2: ground8783299844416014133at_nat] :
                        ( ( member9161526948977260382at_nat @ X2 @ ( set_Gr1116687834474999242at_nat @ Ds2 ) )
                       => ( P @ X2 ) )
                   => ( P @ ( ground1103403263256404297at_nat @ C2 @ Ds2 ) ) ) ) ) )
       => ( contex7067214557799146619at_nat @ F2 @ ( contex5606824393484720404at_nat @ P @ R ) ) ) ) ).

% gmctxtex_onp_fun_closed
thf(fact_394_gmctxtex__onp__fun__closed,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [F3: a,N3: nat] :
          ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ N3 ) @ F2 )
         => ( ( N3 != zero_zero_nat )
           => ( P @ ( ground_GMFun_a @ F3 @ ( replic9205591110366033502ctxt_a @ N3 @ ground_GMHole_a ) ) ) ) )
     => ( ! [C2: ground_gmctxt_a] :
            ( ( P @ C2 )
           => ! [Ds2: list_Ground_gmctxt_a] :
                ( ( ( ground_num_gholes_a @ C2 )
                  = ( size_s962548663205356226ctxt_a @ Ds2 ) )
               => ( ( ord_less_nat @ zero_zero_nat @ ( ground_num_gholes_a @ C2 ) )
                 => ( ! [X2: ground_gmctxt_a] :
                        ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ Ds2 ) )
                       => ( P @ X2 ) )
                   => ( P @ ( ground2530127064035342964ctxt_a @ C2 @ Ds2 ) ) ) ) ) )
       => ( contex5117687592266394818osed_a @ F2 @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ) ).

% gmctxtex_onp_fun_closed
thf(fact_395_all__subset__image,axiom,
    ! [F: nat > nat,A: set_nat,P: set_nat > $o] :
      ( ( ! [B6: set_nat] :
            ( ( ord_less_eq_set_nat @ B6 @ ( image_nat_nat @ F @ A ) )
           => ( P @ B6 ) ) )
      = ( ! [B6: set_nat] :
            ( ( ord_less_eq_set_nat @ B6 @ A )
           => ( P @ ( image_nat_nat @ F @ B6 ) ) ) ) ) ).

% all_subset_image
thf(fact_396_all__subset__image,axiom,
    ! [F: produc1525979690750518759term_a > produc1525979690750518759term_a,A: set_Pr8282532413760598727term_a,P: set_Pr8282532413760598727term_a > $o] :
      ( ( ! [B6: set_Pr8282532413760598727term_a] :
            ( ( ord_le7556488698670074471term_a @ B6 @ ( image_9005035479881104325term_a @ F @ A ) )
           => ( P @ B6 ) ) )
      = ( ! [B6: set_Pr8282532413760598727term_a] :
            ( ( ord_le7556488698670074471term_a @ B6 @ A )
           => ( P @ ( image_9005035479881104325term_a @ F @ B6 ) ) ) ) ) ).

% all_subset_image
thf(fact_397_num__gholes__sup__gmctxt__args,axiom,
    ! [C: ground_gmctxt_a,D2: ground_gmctxt_a] :
      ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ C @ D2 ) @ ground_comp_gmctxt_a )
     => ( ( ground_num_gholes_a @ C )
        = ( size_s962548663205356226ctxt_a @ ( ground7778985915038999110args_a @ C @ D2 ) ) ) ) ).

% num_gholes_sup_gmctxt_args
thf(fact_398_less__sup__gmctxt__args__funas__gmctxt,axiom,
    ! [C: ground_gmctxt_a,D2: ground_gmctxt_a,F2: set_Pr4934435412358123699_a_nat] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ D2 )
     => ( ( ord_le8666007276011122963_a_nat @ ( ground4323624445104842080ctxt_a @ C ) @ F2 )
       => ( ! [X: ground_gmctxt_a] :
              ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C @ D2 ) ) )
             => ( ord_le8666007276011122963_a_nat @ ( ground4323624445104842080ctxt_a @ X ) @ F2 ) )
         => ( ord_le8666007276011122963_a_nat @ ( ground4323624445104842080ctxt_a @ D2 ) @ F2 ) ) ) ) ).

% less_sup_gmctxt_args_funas_gmctxt
thf(fact_399_replicate__eq__replicate,axiom,
    ! [M2: nat,X3: ground_gmctxt_a,N: nat,Y: ground_gmctxt_a] :
      ( ( ( replic9205591110366033502ctxt_a @ M2 @ X3 )
        = ( replic9205591110366033502ctxt_a @ N @ Y ) )
      = ( ( M2 = N )
        & ( ( M2 != zero_zero_nat )
         => ( X3 = Y ) ) ) ) ).

% replicate_eq_replicate
thf(fact_400_replicate__eq__replicate,axiom,
    ! [M2: nat,X3: nat,N: nat,Y: nat] :
      ( ( ( replicate_nat @ M2 @ X3 )
        = ( replicate_nat @ N @ Y ) )
      = ( ( M2 = N )
        & ( ( M2 != zero_zero_nat )
         => ( X3 = Y ) ) ) ) ).

% replicate_eq_replicate
thf(fact_401_Ball__set__replicate,axiom,
    ! [N: nat,A2: ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ( ! [X4: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X4 @ ( set_Ground_gmctxt_a2 @ ( replic9205591110366033502ctxt_a @ N @ A2 ) ) )
           => ( P @ X4 ) ) )
      = ( ( P @ A2 )
        | ( N = zero_zero_nat ) ) ) ).

% Ball_set_replicate
thf(fact_402_Ball__set__replicate,axiom,
    ! [N: nat,A2: nat,P: nat > $o] :
      ( ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_nat2 @ ( replicate_nat @ N @ A2 ) ) )
           => ( P @ X4 ) ) )
      = ( ( P @ A2 )
        | ( N = zero_zero_nat ) ) ) ).

% Ball_set_replicate
thf(fact_403_Bex__set__replicate,axiom,
    ! [N: nat,A2: ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ( ? [X4: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X4 @ ( set_Ground_gmctxt_a2 @ ( replic9205591110366033502ctxt_a @ N @ A2 ) ) )
            & ( P @ X4 ) ) )
      = ( ( P @ A2 )
        & ( N != zero_zero_nat ) ) ) ).

% Bex_set_replicate
thf(fact_404_Bex__set__replicate,axiom,
    ! [N: nat,A2: nat,P: nat > $o] :
      ( ( ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_nat2 @ ( replicate_nat @ N @ A2 ) ) )
            & ( P @ X4 ) ) )
      = ( ( P @ A2 )
        & ( N != zero_zero_nat ) ) ) ).

% Bex_set_replicate
thf(fact_405_in__set__replicate,axiom,
    ! [X3: product_prod_a_nat,N: nat,Y: product_prod_a_nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ ( set_Pr924983374503034536_a_nat @ ( replic5595554873386817213_a_nat @ N @ Y ) ) )
      = ( ( X3 = Y )
        & ( N != zero_zero_nat ) ) ) ).

% in_set_replicate
thf(fact_406_in__set__replicate,axiom,
    ! [X3: ground_gmctxt_a,N: nat,Y: ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ ( replic9205591110366033502ctxt_a @ N @ Y ) ) )
      = ( ( X3 = Y )
        & ( N != zero_zero_nat ) ) ) ).

% in_set_replicate
thf(fact_407_in__set__replicate,axiom,
    ! [X3: nat,N: nat,Y: nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ ( replicate_nat @ N @ Y ) ) )
      = ( ( X3 = Y )
        & ( N != zero_zero_nat ) ) ) ).

% in_set_replicate
thf(fact_408_gt__ex,axiom,
    ! [X3: nat] :
    ? [X_1: nat] : ( ord_less_nat @ X3 @ X_1 ) ).

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

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

% order.asym
thf(fact_411_ord__eq__less__trans,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( A2 = B )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ord_less_nat @ A2 @ C3 ) ) ) ).

% ord_eq_less_trans
thf(fact_412_ord__less__eq__trans,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( B = C3 )
       => ( ord_less_nat @ A2 @ C3 ) ) ) ).

% ord_less_eq_trans
thf(fact_413_less__induct,axiom,
    ! [P: nat > $o,A2: nat] :
      ( ! [X: nat] :
          ( ! [Y6: nat] :
              ( ( ord_less_nat @ Y6 @ X )
             => ( P @ Y6 ) )
         => ( P @ X ) )
     => ( P @ A2 ) ) ).

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

% antisym_conv3
thf(fact_415_linorder__cases,axiom,
    ! [X3: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X3 @ Y )
     => ( ( X3 != Y )
       => ( ord_less_nat @ Y @ X3 ) ) ) ).

% linorder_cases
thf(fact_416_dual__order_Oasym,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_nat @ B @ A2 )
     => ~ ( ord_less_nat @ A2 @ B ) ) ).

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

% dual_order.irrefl
thf(fact_418_exists__least__iff,axiom,
    ( ( ^ [P4: nat > $o] :
        ? [X5: nat] : ( P4 @ X5 ) )
    = ( ^ [P5: nat > $o] :
        ? [N4: nat] :
          ( ( P5 @ N4 )
          & ! [M3: nat] :
              ( ( ord_less_nat @ M3 @ N4 )
             => ~ ( P5 @ M3 ) ) ) ) ) ).

% exists_least_iff
thf(fact_419_linorder__less__wlog,axiom,
    ! [P: nat > nat > $o,A2: nat,B: nat] :
      ( ! [A4: nat,B3: nat] :
          ( ( ord_less_nat @ A4 @ B3 )
         => ( P @ A4 @ B3 ) )
     => ( ! [A4: nat] : ( P @ A4 @ A4 )
       => ( ! [A4: nat,B3: nat] :
              ( ( P @ B3 @ A4 )
             => ( P @ A4 @ B3 ) )
         => ( P @ A2 @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_420_order_Ostrict__trans,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ord_less_nat @ A2 @ C3 ) ) ) ).

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

% not_less_iff_gr_or_eq
thf(fact_422_dual__order_Ostrict__trans,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ord_less_nat @ B @ A2 )
     => ( ( ord_less_nat @ C3 @ B )
       => ( ord_less_nat @ C3 @ A2 ) ) ) ).

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

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

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

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

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

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

% order_less_asym'
thf(fact_429_order__less__trans,axiom,
    ! [X3: nat,Y: nat,Z2: nat] :
      ( ( ord_less_nat @ X3 @ Y )
     => ( ( ord_less_nat @ Y @ Z2 )
       => ( ord_less_nat @ X3 @ Z2 ) ) ) ).

% order_less_trans
thf(fact_430_ord__eq__less__subst,axiom,
    ! [A2: nat,F: nat > nat,B: nat,C3: nat] :
      ( ( A2
        = ( F @ B ) )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_431_ord__less__eq__subst,axiom,
    ! [A2: nat,B: nat,F: nat > nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ( F @ B )
          = C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

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

% order_less_irrefl
thf(fact_433_order__less__subst1,axiom,
    ! [A2: nat,F: nat > nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_less_subst1
thf(fact_434_order__less__subst2,axiom,
    ! [A2: nat,B: nat,F: nat > nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

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

% order_less_not_sym
thf(fact_436_order__less__imp__triv,axiom,
    ! [X3: nat,Y: nat,P: $o] :
      ( ( ord_less_nat @ X3 @ Y )
     => ( ( ord_less_nat @ Y @ X3 )
       => P ) ) ).

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

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

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

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

% order_less_imp_not_less
thf(fact_441_length__pos__if__in__set,axiom,
    ! [X3: product_prod_a_nat,Xs: list_P3592885314253461005_a_nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s984997627204368545_a_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_442_length__pos__if__in__set,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s962548663205356226ctxt_a @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_443_length__pos__if__in__set,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_444_order__le__imp__less__or__eq,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
     => ( ( ord_less_nat @ X3 @ Y )
        | ( X3 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_445_order__le__imp__less__or__eq,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ Y )
     => ( ( ord_le2815447592711331187term_a @ X3 @ Y )
        | ( X3 = Y ) ) ) ).

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

% linorder_le_less_linear
thf(fact_447_order__less__le__subst2,axiom,
    ! [A2: nat,B: nat,F: nat > nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_less_le_subst2
thf(fact_448_order__less__le__subst2,axiom,
    ! [A2: nat,B: nat,F: nat > set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_le7556488698670074471term_a @ ( F @ B ) @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_le2815447592711331187term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le2815447592711331187term_a @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_less_le_subst2
thf(fact_449_order__less__le__subst1,axiom,
    ! [A2: nat,F: nat > nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_450_order__less__le__subst1,axiom,
    ! [A2: set_Pr8282532413760598727term_a,F: nat > set_Pr8282532413760598727term_a,B: nat,C3: nat] :
      ( ( ord_le2815447592711331187term_a @ A2 @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le2815447592711331187term_a @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_451_order__less__le__subst1,axiom,
    ! [A2: nat,F: set_Pr8282532413760598727term_a > nat,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_less_nat @ A2 @ ( F @ B ) )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_452_order__less__le__subst1,axiom,
    ! [A2: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A2 @ ( F @ B ) )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le2815447592711331187term_a @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_453_order__le__less__subst2,axiom,
    ! [A2: nat,B: nat,F: nat > nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_le_less_subst2
thf(fact_454_order__le__less__subst2,axiom,
    ! [A2: nat,B: nat,F: nat > set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_le2815447592711331187term_a @ ( F @ B ) @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le2815447592711331187term_a @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_le_less_subst2
thf(fact_455_order__le__less__subst2,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > nat,C3: nat] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_le_less_subst2
thf(fact_456_order__le__less__subst2,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,F: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ord_le2815447592711331187term_a @ ( F @ B ) @ C3 )
       => ( ! [X: set_Pr8282532413760598727term_a,Y3: set_Pr8282532413760598727term_a] :
              ( ( ord_le7556488698670074471term_a @ X @ Y3 )
             => ( ord_le7556488698670074471term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le2815447592711331187term_a @ ( F @ A2 ) @ C3 ) ) ) ) ).

% order_le_less_subst2
thf(fact_457_order__le__less__subst1,axiom,
    ! [A2: nat,F: nat > nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_458_order__le__less__subst1,axiom,
    ! [A2: set_Pr8282532413760598727term_a,F: nat > set_Pr8282532413760598727term_a,B: nat,C3: nat] :
      ( ( ord_le7556488698670074471term_a @ A2 @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_le2815447592711331187term_a @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_le2815447592711331187term_a @ A2 @ ( F @ C3 ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_459_order__less__le__trans,axiom,
    ! [X3: nat,Y: nat,Z2: nat] :
      ( ( ord_less_nat @ X3 @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z2 )
       => ( ord_less_nat @ X3 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_460_order__less__le__trans,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ X3 @ Y )
     => ( ( ord_le7556488698670074471term_a @ Y @ Z2 )
       => ( ord_le2815447592711331187term_a @ X3 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_461_order__le__less__trans,axiom,
    ! [X3: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
     => ( ( ord_less_nat @ Y @ Z2 )
       => ( ord_less_nat @ X3 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_462_order__le__less__trans,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a,Z2: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ Y )
     => ( ( ord_le2815447592711331187term_a @ Y @ Z2 )
       => ( ord_le2815447592711331187term_a @ X3 @ Z2 ) ) ) ).

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

% order_neq_le_trans
thf(fact_464_order__neq__le__trans,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( A2 != B )
     => ( ( ord_le7556488698670074471term_a @ A2 @ B )
       => ( ord_le2815447592711331187term_a @ A2 @ B ) ) ) ).

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

% order_le_neq_trans
thf(fact_466_order__le__neq__trans,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( A2 != B )
       => ( ord_le2815447592711331187term_a @ A2 @ B ) ) ) ).

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

% order_less_imp_le
thf(fact_468_order__less__imp__le,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ X3 @ Y )
     => ( ord_le7556488698670074471term_a @ X3 @ Y ) ) ).

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

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

% linorder_not_le
thf(fact_471_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X4: nat,Y5: nat] :
          ( ( ord_less_eq_nat @ X4 @ Y5 )
          & ( X4 != Y5 ) ) ) ) ).

% order_less_le
thf(fact_472_order__less__le,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [X4: set_Pr8282532413760598727term_a,Y5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ X4 @ Y5 )
          & ( X4 != Y5 ) ) ) ) ).

% order_less_le
thf(fact_473_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X4: nat,Y5: nat] :
          ( ( ord_less_nat @ X4 @ Y5 )
          | ( X4 = Y5 ) ) ) ) ).

% order_le_less
thf(fact_474_order__le__less,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [X4: set_Pr8282532413760598727term_a,Y5: set_Pr8282532413760598727term_a] :
          ( ( ord_le2815447592711331187term_a @ X4 @ Y5 )
          | ( X4 = Y5 ) ) ) ) ).

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

% dual_order.strict_implies_order
thf(fact_476_dual__order_Ostrict__implies__order,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ B @ A2 )
     => ( ord_le7556488698670074471term_a @ B @ A2 ) ) ).

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

% order.strict_implies_order
thf(fact_478_order_Ostrict__implies__order,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A2 @ B )
     => ( ord_le7556488698670074471term_a @ A2 @ B ) ) ).

% order.strict_implies_order
thf(fact_479_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B5: nat,A5: nat] :
          ( ( ord_less_eq_nat @ B5 @ A5 )
          & ~ ( ord_less_eq_nat @ A5 @ B5 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_480_dual__order_Ostrict__iff__not,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [B5: set_Pr8282532413760598727term_a,A5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ B5 @ A5 )
          & ~ ( ord_le7556488698670074471term_a @ A5 @ B5 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_481_dual__order_Ostrict__trans2,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ord_less_nat @ B @ A2 )
     => ( ( ord_less_eq_nat @ C3 @ B )
       => ( ord_less_nat @ C3 @ A2 ) ) ) ).

% dual_order.strict_trans2
thf(fact_482_dual__order_Ostrict__trans2,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ B @ A2 )
     => ( ( ord_le7556488698670074471term_a @ C3 @ B )
       => ( ord_le2815447592711331187term_a @ C3 @ A2 ) ) ) ).

% dual_order.strict_trans2
thf(fact_483_dual__order_Ostrict__trans1,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( ( ord_less_nat @ C3 @ B )
       => ( ord_less_nat @ C3 @ A2 ) ) ) ).

% dual_order.strict_trans1
thf(fact_484_dual__order_Ostrict__trans1,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ B @ A2 )
     => ( ( ord_le2815447592711331187term_a @ C3 @ B )
       => ( ord_le2815447592711331187term_a @ C3 @ A2 ) ) ) ).

% dual_order.strict_trans1
thf(fact_485_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B5: nat,A5: nat] :
          ( ( ord_less_eq_nat @ B5 @ A5 )
          & ( A5 != B5 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_486_dual__order_Ostrict__iff__order,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [B5: set_Pr8282532413760598727term_a,A5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ B5 @ A5 )
          & ( A5 != B5 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_487_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B5: nat,A5: nat] :
          ( ( ord_less_nat @ B5 @ A5 )
          | ( A5 = B5 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_488_dual__order_Oorder__iff__strict,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [B5: set_Pr8282532413760598727term_a,A5: set_Pr8282532413760598727term_a] :
          ( ( ord_le2815447592711331187term_a @ B5 @ A5 )
          | ( A5 = B5 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_489_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A5: nat,B5: nat] :
          ( ( ord_less_eq_nat @ A5 @ B5 )
          & ~ ( ord_less_eq_nat @ B5 @ A5 ) ) ) ) ).

% order.strict_iff_not
thf(fact_490_order_Ostrict__iff__not,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [A5: set_Pr8282532413760598727term_a,B5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ A5 @ B5 )
          & ~ ( ord_le7556488698670074471term_a @ B5 @ A5 ) ) ) ) ).

% order.strict_iff_not
thf(fact_491_order_Ostrict__trans2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ord_less_nat @ A2 @ C3 ) ) ) ).

% order.strict_trans2
thf(fact_492_order_Ostrict__trans2,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A2 @ B )
     => ( ( ord_le7556488698670074471term_a @ B @ C3 )
       => ( ord_le2815447592711331187term_a @ A2 @ C3 ) ) ) ).

% order.strict_trans2
thf(fact_493_order_Ostrict__trans1,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ord_less_nat @ A2 @ C3 ) ) ) ).

% order.strict_trans1
thf(fact_494_order_Ostrict__trans1,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A2 @ B )
     => ( ( ord_le2815447592711331187term_a @ B @ C3 )
       => ( ord_le2815447592711331187term_a @ A2 @ C3 ) ) ) ).

% order.strict_trans1
thf(fact_495_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A5: nat,B5: nat] :
          ( ( ord_less_eq_nat @ A5 @ B5 )
          & ( A5 != B5 ) ) ) ) ).

% order.strict_iff_order
thf(fact_496_order_Ostrict__iff__order,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [A5: set_Pr8282532413760598727term_a,B5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ A5 @ B5 )
          & ( A5 != B5 ) ) ) ) ).

% order.strict_iff_order
thf(fact_497_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A5: nat,B5: nat] :
          ( ( ord_less_nat @ A5 @ B5 )
          | ( A5 = B5 ) ) ) ) ).

% order.order_iff_strict
thf(fact_498_order_Oorder__iff__strict,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [A5: set_Pr8282532413760598727term_a,B5: set_Pr8282532413760598727term_a] :
          ( ( ord_le2815447592711331187term_a @ A5 @ B5 )
          | ( A5 = B5 ) ) ) ) ).

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

% not_le_imp_less
thf(fact_500_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X4: nat,Y5: nat] :
          ( ( ord_less_eq_nat @ X4 @ Y5 )
          & ~ ( ord_less_eq_nat @ Y5 @ X4 ) ) ) ) ).

% less_le_not_le
thf(fact_501_less__le__not__le,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [X4: set_Pr8282532413760598727term_a,Y5: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ X4 @ Y5 )
          & ~ ( ord_le7556488698670074471term_a @ Y5 @ X4 ) ) ) ) ).

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

% antisym_conv2
thf(fact_503_antisym__conv2,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ X3 @ Y )
     => ( ( ~ ( ord_le2815447592711331187term_a @ X3 @ Y ) )
        = ( X3 = Y ) ) ) ).

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

% antisym_conv1
thf(fact_505_antisym__conv1,axiom,
    ! [X3: set_Pr8282532413760598727term_a,Y: set_Pr8282532413760598727term_a] :
      ( ~ ( ord_le2815447592711331187term_a @ X3 @ Y )
     => ( ( ord_le7556488698670074471term_a @ X3 @ Y )
        = ( X3 = Y ) ) ) ).

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

% nless_le
thf(fact_507_nless__le,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ~ ( ord_le2815447592711331187term_a @ A2 @ B ) )
      = ( ~ ( ord_le7556488698670074471term_a @ A2 @ B )
        | ( A2 = B ) ) ) ).

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

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

% leD
thf(fact_510_leD,axiom,
    ! [Y: set_Pr8282532413760598727term_a,X3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ Y @ X3 )
     => ~ ( ord_le2815447592711331187term_a @ X3 @ Y ) ) ).

% leD
thf(fact_511_sup_Ostrict__coboundedI2,axiom,
    ! [C3: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ C3 @ B )
     => ( ord_le2815447592711331187term_a @ C3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% sup.strict_coboundedI2
thf(fact_512_sup_Ostrict__coboundedI2,axiom,
    ! [C3: nat,B: nat,A2: nat] :
      ( ( ord_less_nat @ C3 @ B )
     => ( ord_less_nat @ C3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% sup.strict_coboundedI2
thf(fact_513_sup_Ostrict__coboundedI1,axiom,
    ! [C3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ C3 @ A2 )
     => ( ord_le2815447592711331187term_a @ C3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% sup.strict_coboundedI1
thf(fact_514_sup_Ostrict__coboundedI1,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_nat @ C3 @ A2 )
     => ( ord_less_nat @ C3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% sup.strict_coboundedI1
thf(fact_515_sup_Ostrict__order__iff,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [B5: set_Pr8282532413760598727term_a,A5: set_Pr8282532413760598727term_a] :
          ( ( A5
            = ( sup_su6310922012705202331term_a @ A5 @ B5 ) )
          & ( A5 != B5 ) ) ) ) ).

% sup.strict_order_iff
thf(fact_516_sup_Ostrict__order__iff,axiom,
    ( ord_less_nat
    = ( ^ [B5: nat,A5: nat] :
          ( ( A5
            = ( sup_sup_nat @ A5 @ B5 ) )
          & ( A5 != B5 ) ) ) ) ).

% sup.strict_order_iff
thf(fact_517_sup_Ostrict__boundedE,axiom,
    ! [B: set_Pr8282532413760598727term_a,C3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ ( sup_su6310922012705202331term_a @ B @ C3 ) @ A2 )
     => ~ ( ( ord_le2815447592711331187term_a @ B @ A2 )
         => ~ ( ord_le2815447592711331187term_a @ C3 @ A2 ) ) ) ).

% sup.strict_boundedE
thf(fact_518_sup_Ostrict__boundedE,axiom,
    ! [B: nat,C3: nat,A2: nat] :
      ( ( ord_less_nat @ ( sup_sup_nat @ B @ C3 ) @ A2 )
     => ~ ( ( ord_less_nat @ B @ A2 )
         => ~ ( ord_less_nat @ C3 @ A2 ) ) ) ).

% sup.strict_boundedE
thf(fact_519_sup_Oabsorb4,axiom,
    ! [A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A2 @ B )
     => ( ( sup_su6310922012705202331term_a @ A2 @ B )
        = B ) ) ).

% sup.absorb4
thf(fact_520_sup_Oabsorb4,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( sup_sup_nat @ A2 @ B )
        = B ) ) ).

% sup.absorb4
thf(fact_521_sup_Oabsorb3,axiom,
    ! [B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ B @ A2 )
     => ( ( sup_su6310922012705202331term_a @ A2 @ B )
        = A2 ) ) ).

% sup.absorb3
thf(fact_522_sup_Oabsorb3,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_nat @ B @ A2 )
     => ( ( sup_sup_nat @ A2 @ B )
        = A2 ) ) ).

% sup.absorb3
thf(fact_523_less__supI2,axiom,
    ! [X3: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ X3 @ B )
     => ( ord_le2815447592711331187term_a @ X3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% less_supI2
thf(fact_524_less__supI2,axiom,
    ! [X3: nat,B: nat,A2: nat] :
      ( ( ord_less_nat @ X3 @ B )
     => ( ord_less_nat @ X3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% less_supI2
thf(fact_525_less__supI1,axiom,
    ! [X3: set_Pr8282532413760598727term_a,A2: set_Pr8282532413760598727term_a,B: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ X3 @ A2 )
     => ( ord_le2815447592711331187term_a @ X3 @ ( sup_su6310922012705202331term_a @ A2 @ B ) ) ) ).

% less_supI1
thf(fact_526_less__supI1,axiom,
    ! [X3: nat,A2: nat,B: nat] :
      ( ( ord_less_nat @ X3 @ A2 )
     => ( ord_less_nat @ X3 @ ( sup_sup_nat @ A2 @ B ) ) ) ).

% less_supI1
thf(fact_527_length__induct,axiom,
    ! [P: list_Ground_gmctxt_a > $o,Xs: list_Ground_gmctxt_a] :
      ( ! [Xs2: list_Ground_gmctxt_a] :
          ( ! [Ys2: list_Ground_gmctxt_a] :
              ( ( ord_less_nat @ ( size_s962548663205356226ctxt_a @ Ys2 ) @ ( size_s962548663205356226ctxt_a @ Xs2 ) )
             => ( P @ Ys2 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_528_length__induct,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ! [Xs2: list_nat] :
          ( ! [Ys2: list_nat] :
              ( ( ord_less_nat @ ( size_size_list_nat @ Ys2 ) @ ( size_size_list_nat @ Xs2 ) )
             => ( P @ Ys2 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_529_comp__gmctxt_OGMHole1,axiom,
    ! [D2: ground_gmctxt_a] : ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ground_GMHole_a @ D2 ) @ ground_comp_gmctxt_a ) ).

% comp_gmctxt.GMHole1
thf(fact_530_comp__gmctxt_OGMHole2,axiom,
    ! [C: ground_gmctxt_a] : ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ C @ ground_GMHole_a ) @ ground_comp_gmctxt_a ) ).

% comp_gmctxt.GMHole2
thf(fact_531_sup__gmctxt__sup__gmctxt__args,axiom,
    ! [C: ground_gmctxt_a,D2: ground_gmctxt_a] :
      ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ C @ D2 ) @ ground_comp_gmctxt_a )
     => ( ( ground2530127064035342964ctxt_a @ C @ ( ground7778985915038999110args_a @ C @ D2 ) )
        = ( sup_su4546239841456773962ctxt_a @ C @ D2 ) ) ) ).

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

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

% neq0_conv
thf(fact_534_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A2: nat] :
      ( ( A2 != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A2 ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_535_not__gr__zero,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

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

% le_zero_eq
thf(fact_537_gmctxt__closing__sup__args__ghole__or__gterm,axiom,
    ! [C: ground_gmctxt_a,D2: ground_gmctxt_a] :
      ( ( ground6954545657870034594sing_a @ C @ D2 )
     => ! [X2: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C @ D2 ) ) )
         => ( ( X2 = ground_GMHole_a )
            | ( ( ground_num_gholes_a @ X2 )
              = zero_zero_nat ) ) ) ) ).

% gmctxt_closing_sup_args_ghole_or_gterm
thf(fact_538_fill__gholes__gmctxt__GMFun__replicate__append,axiom,
    ! [Cs: list_Ground_gmctxt_a,N: nat,Ds: list_Ground_gmctxt_a,F: a] :
      ( ( ( size_s962548663205356226ctxt_a @ Cs )
        = N )
     => ( ! [T4: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ T4 @ ( set_Ground_gmctxt_a2 @ Ds ) )
           => ( ( ground_num_gholes_a @ T4 )
              = zero_zero_nat ) )
       => ( ( ground2530127064035342964ctxt_a @ ( ground_GMFun_a @ F @ ( append5238750768297430211ctxt_a @ ( replic9205591110366033502ctxt_a @ N @ ground_GMHole_a ) @ Ds ) ) @ Cs )
          = ( ground_GMFun_a @ F @ ( append5238750768297430211ctxt_a @ Cs @ Ds ) ) ) ) ) ).

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

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

% bot_nat_0.extremum
thf(fact_541_psubsetI,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( A != B4 )
       => ( ord_le2815447592711331187term_a @ A @ B4 ) ) ) ).

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

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

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

% append_assoc
thf(fact_545_append_Oassoc,axiom,
    ! [A2: list_nat,B: list_nat,C3: list_nat] :
      ( ( append_nat @ ( append_nat @ A2 @ B ) @ C3 )
      = ( append_nat @ A2 @ ( append_nat @ B @ C3 ) ) ) ).

% append.assoc
thf(fact_546_append__eq__append__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Us: list_Ground_gmctxt_a,Vs: list_Ground_gmctxt_a] :
      ( ( ( ( size_s962548663205356226ctxt_a @ Xs )
          = ( size_s962548663205356226ctxt_a @ Ys ) )
        | ( ( size_s962548663205356226ctxt_a @ Us )
          = ( size_s962548663205356226ctxt_a @ Vs ) ) )
     => ( ( ( append5238750768297430211ctxt_a @ Xs @ Us )
          = ( append5238750768297430211ctxt_a @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_547_append__eq__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat,Us: list_nat,Vs: list_nat] :
      ( ( ( ( size_size_list_nat @ Xs )
          = ( size_size_list_nat @ Ys ) )
        | ( ( size_size_list_nat @ Us )
          = ( size_size_list_nat @ Vs ) ) )
     => ( ( ( append_nat @ Xs @ Us )
          = ( append_nat @ Ys @ Vs ) )
        = ( ( Xs = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_548_set__append,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( set_nat2 @ ( append_nat @ Xs @ Ys ) )
      = ( sup_sup_set_nat @ ( set_nat2 @ Xs ) @ ( set_nat2 @ Ys ) ) ) ).

% set_append
thf(fact_549_set__append,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( set_Ground_gmctxt_a2 @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) )
      = ( sup_su721339912568147456ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ ( set_Ground_gmctxt_a2 @ Ys ) ) ) ).

% set_append
thf(fact_550_set__append,axiom,
    ! [Xs: list_P2433084232546440685term_a,Ys: list_P2433084232546440685term_a] :
      ( ( set_Pr5405221470436175740term_a @ ( append7909858224561987714term_a @ Xs @ Ys ) )
      = ( sup_su6310922012705202331term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ ( set_Pr5405221470436175740term_a @ Ys ) ) ) ).

% set_append
thf(fact_551_append__eq__append__conv2,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ts: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Zs @ Ts ) )
      = ( ? [Us2: list_nat] :
            ( ( ( Xs
                = ( append_nat @ Zs @ Us2 ) )
              & ( ( append_nat @ Us2 @ Ys )
                = Ts ) )
            | ( ( ( append_nat @ Xs @ Us2 )
                = Zs )
              & ( Ys
                = ( append_nat @ Us2 @ Ts ) ) ) ) ) ) ).

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

% append_eq_appendI
thf(fact_553_psubsetE,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A @ B4 )
     => ~ ( ( ord_le7556488698670074471term_a @ A @ B4 )
         => ( ord_le7556488698670074471term_a @ B4 @ A ) ) ) ).

% psubsetE
thf(fact_554_psubset__eq,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ A6 @ B6 )
          & ( A6 != B6 ) ) ) ) ).

% psubset_eq
thf(fact_555_psubset__imp__subset,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A @ B4 )
     => ( ord_le7556488698670074471term_a @ A @ B4 ) ) ).

% psubset_imp_subset
thf(fact_556_psubset__subset__trans,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A @ B4 )
     => ( ( ord_le7556488698670074471term_a @ B4 @ C )
       => ( ord_le2815447592711331187term_a @ A @ C ) ) ) ).

% psubset_subset_trans
thf(fact_557_subset__not__subset__eq,axiom,
    ( ord_le2815447592711331187term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
          ( ( ord_le7556488698670074471term_a @ A6 @ B6 )
          & ~ ( ord_le7556488698670074471term_a @ B6 @ A6 ) ) ) ) ).

% subset_not_subset_eq
thf(fact_558_subset__psubset__trans,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( ord_le2815447592711331187term_a @ B4 @ C )
       => ( ord_le2815447592711331187term_a @ A @ C ) ) ) ).

% subset_psubset_trans
thf(fact_559_subset__iff__psubset__eq,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
          ( ( ord_le2815447592711331187term_a @ A6 @ B6 )
          | ( A6 = B6 ) ) ) ) ).

% subset_iff_psubset_eq
thf(fact_560_append__replicate__commute,axiom,
    ! [N: nat,X3: ground_gmctxt_a,K: nat] :
      ( ( append5238750768297430211ctxt_a @ ( replic9205591110366033502ctxt_a @ N @ X3 ) @ ( replic9205591110366033502ctxt_a @ K @ X3 ) )
      = ( append5238750768297430211ctxt_a @ ( replic9205591110366033502ctxt_a @ K @ X3 ) @ ( replic9205591110366033502ctxt_a @ N @ X3 ) ) ) ).

% append_replicate_commute
thf(fact_561_append__replicate__commute,axiom,
    ! [N: nat,X3: nat,K: nat] :
      ( ( append_nat @ ( replicate_nat @ N @ X3 ) @ ( replicate_nat @ K @ X3 ) )
      = ( append_nat @ ( replicate_nat @ K @ X3 ) @ ( replicate_nat @ N @ X3 ) ) ) ).

% append_replicate_commute
thf(fact_562_gmctxt__order__bot_Obot_Oextremum__strict,axiom,
    ! [A2: ground_gmctxt_a] :
      ~ ( ord_le9048903087952742514ctxt_a @ A2 @ ground_GMHole_a ) ).

% gmctxt_order_bot.bot.extremum_strict
thf(fact_563_gmctxt__order__bot_Obot_Onot__eq__extremum,axiom,
    ! [A2: ground_gmctxt_a] :
      ( ( A2 != ground_GMHole_a )
      = ( ord_le9048903087952742514ctxt_a @ ground_GMHole_a @ A2 ) ) ).

% gmctxt_order_bot.bot.not_eq_extremum
thf(fact_564_zero__reorient,axiom,
    ! [X3: nat] :
      ( ( zero_zero_nat = X3 )
      = ( X3 = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_565_size__neq__size__imp__neq,axiom,
    ! [X3: list_Ground_gmctxt_a,Y: list_Ground_gmctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ X3 )
       != ( size_s962548663205356226ctxt_a @ Y ) )
     => ( X3 != Y ) ) ).

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

% size_neq_size_imp_neq
thf(fact_567_size__neq__size__imp__neq,axiom,
    ! [X3: list_nat,Y: list_nat] :
      ( ( ( size_size_list_nat @ X3 )
       != ( size_size_list_nat @ Y ) )
     => ( X3 != Y ) ) ).

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

% le_0_eq
thf(fact_569_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A2: nat] :
      ( ( ord_less_eq_nat @ A2 @ zero_zero_nat )
     => ( A2 = zero_zero_nat ) ) ).

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

% bot_nat_0.extremum_unique
thf(fact_571_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_572_nat__neq__iff,axiom,
    ! [M2: nat,N: nat] :
      ( ( M2 != N )
      = ( ( ord_less_nat @ M2 @ N )
        | ( ord_less_nat @ N @ M2 ) ) ) ).

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

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

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

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

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

% nat_less_induct
thf(fact_578_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ~ ( P @ N3 )
         => ? [M4: nat] :
              ( ( ord_less_nat @ M4 @ N3 )
              & ~ ( P @ M4 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_579_linorder__neqE__nat,axiom,
    ! [X3: nat,Y: nat] :
      ( ( X3 != Y )
     => ( ~ ( ord_less_nat @ X3 @ Y )
       => ( ord_less_nat @ Y @ X3 ) ) ) ).

% linorder_neqE_nat
thf(fact_580_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_581_le__neq__implies__less,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ( M2 != N )
       => ( ord_less_nat @ M2 @ N ) ) ) ).

% le_neq_implies_less
thf(fact_582_less__or__eq__imp__le,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( ord_less_nat @ M2 @ N )
        | ( M2 = N ) )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

% less_or_eq_imp_le
thf(fact_583_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M3: nat,N4: nat] :
          ( ( ord_less_nat @ M3 @ N4 )
          | ( M3 = N4 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_584_less__imp__le__nat,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

% less_imp_le_nat
thf(fact_585_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M3: nat,N4: nat] :
          ( ( ord_less_eq_nat @ M3 @ N4 )
          & ( M3 != N4 ) ) ) ) ).

% nat_less_le
thf(fact_586_zero__le,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X3 ) ).

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

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

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

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

% zero_less_iff_neq_zero
thf(fact_591_bot__nat__0_Oextremum__strict,axiom,
    ! [A2: nat] :
      ~ ( ord_less_nat @ A2 @ zero_zero_nat ) ).

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

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

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

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

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

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

% infinite_descent0
thf(fact_598_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K2 )
               => ~ ( P @ I3 ) )
            & ( P @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_599_inv__imples__ghole__poss__subseteq,axiom,
    ! [C: ground_gmctxt_a,D2: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ D2 )
     => ( ! [X: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C @ D2 ) ) )
           => ( ( X = ground_GMHole_a )
              | ( ( ground_num_gholes_a @ X )
                = zero_zero_nat ) ) )
       => ( ord_le6045566169113846134st_nat @ ( ground_ghole_poss_a @ D2 ) @ ( ground_ghole_poss_a @ C ) ) ) ) ).

% inv_imples_ghole_poss_subseteq
thf(fact_600_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_601_complete__interval,axiom,
    ! [A2: nat,B: nat,P: nat > $o] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( P @ A2 )
       => ( ~ ( P @ B )
         => ? [C5: nat] :
              ( ( ord_less_eq_nat @ A2 @ C5 )
              & ( ord_less_eq_nat @ C5 @ B )
              & ! [X2: nat] :
                  ( ( ( ord_less_eq_nat @ A2 @ X2 )
                    & ( ord_less_nat @ X2 @ C5 ) )
                 => ( P @ X2 ) )
              & ! [D4: nat] :
                  ( ! [X: nat] :
                      ( ( ( ord_less_eq_nat @ A2 @ X )
                        & ( ord_less_nat @ X @ D4 ) )
                     => ( P @ X ) )
                 => ( ord_less_eq_nat @ D4 @ C5 ) ) ) ) ) ) ).

% complete_interval
thf(fact_602_verit__comp__simplify1_I3_J,axiom,
    ! [B2: nat,A3: nat] :
      ( ( ~ ( ord_less_eq_nat @ B2 @ A3 ) )
      = ( ord_less_nat @ A3 @ B2 ) ) ).

% verit_comp_simplify1(3)
thf(fact_603_pinf_I6_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ Z @ X2 )
     => ~ ( ord_less_eq_nat @ X2 @ T ) ) ).

% pinf(6)
thf(fact_604_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_605_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_606_eq__imp__le,axiom,
    ! [M2: nat,N: nat] :
      ( ( M2 = N )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

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

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

% nat_le_linear
thf(fact_609_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y3: nat] :
            ( ( P @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ? [X: nat] :
            ( ( P @ X )
            & ! [Y6: nat] :
                ( ( P @ Y6 )
               => ( ord_less_eq_nat @ Y6 @ X ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_610_psubsetD,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat,C3: product_prod_a_nat] :
      ( ( ord_le2482536469199093511_a_nat @ A @ B4 )
     => ( ( member5724188588386418708_a_nat @ C3 @ A )
       => ( member5724188588386418708_a_nat @ C3 @ B4 ) ) ) ).

% psubsetD
thf(fact_611_psubsetD,axiom,
    ! [A: set_nat,B4: set_nat,C3: nat] :
      ( ( ord_less_set_nat @ A @ B4 )
     => ( ( member_nat @ C3 @ A )
       => ( member_nat @ C3 @ B4 ) ) ) ).

% psubsetD
thf(fact_612_verit__la__disequality,axiom,
    ! [A2: nat,B: nat] :
      ( ( A2 = B )
      | ~ ( ord_less_eq_nat @ A2 @ B )
      | ~ ( ord_less_eq_nat @ B @ A2 ) ) ).

% verit_la_disequality
thf(fact_613_verit__comp__simplify1_I2_J,axiom,
    ! [A2: nat] : ( ord_less_eq_nat @ A2 @ A2 ) ).

% verit_comp_simplify1(2)
thf(fact_614_verit__comp__simplify1_I2_J,axiom,
    ! [A2: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ A2 @ A2 ) ).

% verit_comp_simplify1(2)
thf(fact_615_verit__comp__simplify1_I1_J,axiom,
    ! [A2: nat] :
      ~ ( ord_less_nat @ A2 @ A2 ) ).

% verit_comp_simplify1(1)
thf(fact_616_pinf_I1_J,axiom,
    ! [P: nat > $o,P6: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ Z4 @ X )
         => ( ( P @ X )
            = ( P6 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ Z4 @ X )
           => ( ( Q @ X )
              = ( Q2 @ X ) ) )
       => ? [Z: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ Z @ X2 )
           => ( ( ( P @ X2 )
                & ( Q @ X2 ) )
              = ( ( P6 @ X2 )
                & ( Q2 @ X2 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_617_pinf_I2_J,axiom,
    ! [P: nat > $o,P6: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ Z4 @ X )
         => ( ( P @ X )
            = ( P6 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ Z4 @ X )
           => ( ( Q @ X )
              = ( Q2 @ X ) ) )
       => ? [Z: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ Z @ X2 )
           => ( ( ( P @ X2 )
                | ( Q @ X2 ) )
              = ( ( P6 @ X2 )
                | ( Q2 @ X2 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_618_pinf_I3_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ Z @ X2 )
     => ( X2 != T ) ) ).

% pinf(3)
thf(fact_619_pinf_I4_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ Z @ X2 )
     => ( X2 != T ) ) ).

% pinf(4)
thf(fact_620_pinf_I5_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ Z @ X2 )
     => ~ ( ord_less_nat @ X2 @ T ) ) ).

% pinf(5)
thf(fact_621_pinf_I7_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ Z @ X2 )
     => ( ord_less_nat @ T @ X2 ) ) ).

% pinf(7)
thf(fact_622_minf_I1_J,axiom,
    ! [P: nat > $o,P6: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ X @ Z4 )
         => ( ( P @ X )
            = ( P6 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ X @ Z4 )
           => ( ( Q @ X )
              = ( Q2 @ X ) ) )
       => ? [Z: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ X2 @ Z )
           => ( ( ( P @ X2 )
                & ( Q @ X2 ) )
              = ( ( P6 @ X2 )
                & ( Q2 @ X2 ) ) ) ) ) ) ).

% minf(1)
thf(fact_623_minf_I2_J,axiom,
    ! [P: nat > $o,P6: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ X @ Z4 )
         => ( ( P @ X )
            = ( P6 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ X @ Z4 )
           => ( ( Q @ X )
              = ( Q2 @ X ) ) )
       => ? [Z: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ X2 @ Z )
           => ( ( ( P @ X2 )
                | ( Q @ X2 ) )
              = ( ( P6 @ X2 )
                | ( Q2 @ X2 ) ) ) ) ) ) ).

% minf(2)
thf(fact_624_minf_I3_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ X2 @ Z )
     => ( X2 != T ) ) ).

% minf(3)
thf(fact_625_minf_I4_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ X2 @ Z )
     => ( X2 != T ) ) ).

% minf(4)
thf(fact_626_minf_I5_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ X2 @ Z )
     => ( ord_less_nat @ X2 @ T ) ) ).

% minf(5)
thf(fact_627_minf_I7_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ X2 @ Z )
     => ~ ( ord_less_nat @ T @ X2 ) ) ).

% minf(7)
thf(fact_628_gmctxt_Osize_I3_J,axiom,
    ( ( size_s9020356940445107890ctxt_a @ ground_GMHole_a )
    = zero_zero_nat ) ).

% gmctxt.size(3)
thf(fact_629_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_630_minf_I8_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ X2 @ Z )
     => ~ ( ord_less_eq_nat @ T @ X2 ) ) ).

% minf(8)
thf(fact_631_minf_I6_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ X2 @ Z )
     => ( ord_less_eq_nat @ X2 @ T ) ) ).

% minf(6)
thf(fact_632_pinf_I8_J,axiom,
    ! [T: nat] :
    ? [Z: nat] :
    ! [X2: nat] :
      ( ( ord_less_nat @ Z @ X2 )
     => ( ord_less_eq_nat @ T @ X2 ) ) ).

% pinf(8)
thf(fact_633_fill__gholes__gmctxt__ghole__poss__subseteq,axiom,
    ! [C: ground_gmctxt_a,Ds: list_Ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s962548663205356226ctxt_a @ Ds ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ds ) )
           => ( ( ( nth_Ground_gmctxt_a @ Ds @ I2 )
                = ground_GMHole_a )
              | ( ( ground_num_gholes_a @ ( nth_Ground_gmctxt_a @ Ds @ I2 ) )
                = zero_zero_nat ) ) )
       => ( ord_le6045566169113846134st_nat @ ( ground_ghole_poss_a @ ( ground2530127064035342964ctxt_a @ C @ Ds ) ) @ ( ground_ghole_poss_a @ C ) ) ) ) ).

% fill_gholes_gmctxt_ghole_poss_subseteq
thf(fact_634_size__char__eq__0,axiom,
    ( size_size_char
    = ( ^ [C4: char] : zero_zero_nat ) ) ).

% size_char_eq_0
thf(fact_635_nat__descend__induct,axiom,
    ! [N: nat,P: nat > $o,M2: nat] :
      ( ! [K2: nat] :
          ( ( ord_less_nat @ N @ K2 )
         => ( P @ K2 ) )
     => ( ! [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
           => ( ! [I3: nat] :
                  ( ( ord_less_nat @ K2 @ I3 )
                 => ( P @ I3 ) )
             => ( P @ K2 ) ) )
       => ( P @ M2 ) ) ) ).

% nat_descend_induct
thf(fact_636_nth__replicate,axiom,
    ! [I: nat,N: nat,X3: list_nat] :
      ( ( ord_less_nat @ I @ N )
     => ( ( nth_list_nat @ ( replicate_list_nat @ N @ X3 ) @ I )
        = X3 ) ) ).

% nth_replicate
thf(fact_637_nth__replicate,axiom,
    ! [I: nat,N: nat,X3: ground_gmctxt_a] :
      ( ( ord_less_nat @ I @ N )
     => ( ( nth_Ground_gmctxt_a @ ( replic9205591110366033502ctxt_a @ N @ X3 ) @ I )
        = X3 ) ) ).

% nth_replicate
thf(fact_638_nth__replicate,axiom,
    ! [I: nat,N: nat,X3: nat] :
      ( ( ord_less_nat @ I @ N )
     => ( ( nth_nat @ ( replicate_nat @ N @ X3 ) @ I )
        = X3 ) ) ).

% nth_replicate
thf(fact_639_less__eq__gmctxt_Oind,axiom,
    ! [Cs4: list_Ground_gmctxt_a,Ds3: list_Ground_gmctxt_a,F: a] :
      ( ( ( size_s962548663205356226ctxt_a @ Cs4 )
        = ( size_s962548663205356226ctxt_a @ Ds3 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Cs4 ) )
           => ( ground6477899500129135038ctxt_a @ ( nth_Ground_gmctxt_a @ Cs4 @ I2 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I2 ) ) )
       => ( ground6477899500129135038ctxt_a @ ( ground_GMFun_a @ F @ Cs4 ) @ ( ground_GMFun_a @ F @ Ds3 ) ) ) ) ).

% less_eq_gmctxt.ind
thf(fact_640_nth__equalityI,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( nth_list_nat @ Xs @ I2 )
              = ( nth_list_nat @ Ys @ I2 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_641_nth__equalityI,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
           => ( ( nth_Ground_gmctxt_a @ Xs @ I2 )
              = ( nth_Ground_gmctxt_a @ Ys @ I2 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_642_nth__equalityI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
           => ( ( nth_nat @ Xs @ I2 )
              = ( nth_nat @ Ys @ I2 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_643_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > list_nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X6: list_nat] : ( P @ I4 @ X6 ) ) )
      = ( ? [Xs3: list_list_nat] :
            ( ( ( size_s3023201423986296836st_nat @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P @ I4 @ ( nth_list_nat @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_644_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > ground_gmctxt_a > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X6: ground_gmctxt_a] : ( P @ I4 @ X6 ) ) )
      = ( ? [Xs3: list_Ground_gmctxt_a] :
            ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P @ I4 @ ( nth_Ground_gmctxt_a @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_645_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X6: nat] : ( P @ I4 @ X6 ) ) )
      = ( ? [Xs3: list_nat] :
            ( ( ( size_size_list_nat @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P @ I4 @ ( nth_nat @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_646_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_list_nat,Z3: list_list_nat] : ( Y4 = Z3 ) )
    = ( ^ [Xs3: list_list_nat,Ys3: list_list_nat] :
          ( ( ( size_s3023201423986296836st_nat @ Xs3 )
            = ( size_s3023201423986296836st_nat @ Ys3 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_s3023201423986296836st_nat @ Xs3 ) )
             => ( ( nth_list_nat @ Xs3 @ I4 )
                = ( nth_list_nat @ Ys3 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_647_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_Ground_gmctxt_a,Z3: list_Ground_gmctxt_a] : ( Y4 = Z3 ) )
    = ( ^ [Xs3: list_Ground_gmctxt_a,Ys3: list_Ground_gmctxt_a] :
          ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
            = ( size_s962548663205356226ctxt_a @ Ys3 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs3 ) )
             => ( ( nth_Ground_gmctxt_a @ Xs3 @ I4 )
                = ( nth_Ground_gmctxt_a @ Ys3 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_648_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_nat,Z3: list_nat] : ( Y4 = Z3 ) )
    = ( ^ [Xs3: list_nat,Ys3: list_nat] :
          ( ( ( size_size_list_nat @ Xs3 )
            = ( size_size_list_nat @ Ys3 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs3 ) )
             => ( ( nth_nat @ Xs3 @ I4 )
                = ( nth_nat @ Ys3 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_649_less__eq__gmctxt_Obase,axiom,
    ! [U: ground_gmctxt_a] : ( ground6477899500129135038ctxt_a @ ground_GMHole_a @ U ) ).

% less_eq_gmctxt.base
thf(fact_650_less__eq__gmctxt__Hole,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ground6477899500129135038ctxt_a @ C @ ground_GMHole_a )
     => ( C = ground_GMHole_a ) ) ).

% less_eq_gmctxt_Hole
thf(fact_651_less__eq__gmctxt_Ocases,axiom,
    ! [A1: ground_gmctxt_a,A22: ground_gmctxt_a] :
      ( ( ground6477899500129135038ctxt_a @ A1 @ A22 )
     => ( ( A1 != ground_GMHole_a )
       => ~ ! [Cs3: list_Ground_gmctxt_a,Ds4: list_Ground_gmctxt_a,F3: a] :
              ( ( A1
                = ( ground_GMFun_a @ F3 @ Cs3 ) )
             => ( ( A22
                  = ( ground_GMFun_a @ F3 @ Ds4 ) )
               => ( ( ( size_s962548663205356226ctxt_a @ Cs3 )
                    = ( size_s962548663205356226ctxt_a @ Ds4 ) )
                 => ~ ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Cs3 ) )
                       => ( ground6477899500129135038ctxt_a @ ( nth_Ground_gmctxt_a @ Cs3 @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds4 @ I3 ) ) ) ) ) ) ) ) ).

% less_eq_gmctxt.cases
thf(fact_652_less__eq__gmctxt_Osimps,axiom,
    ( ground6477899500129135038ctxt_a
    = ( ^ [A12: ground_gmctxt_a,A23: ground_gmctxt_a] :
          ( ? [U2: ground_gmctxt_a] :
              ( ( A12 = ground_GMHole_a )
              & ( A23 = U2 ) )
          | ? [Cs5: list_Ground_gmctxt_a,Ds5: list_Ground_gmctxt_a,F5: a] :
              ( ( A12
                = ( ground_GMFun_a @ F5 @ Cs5 ) )
              & ( A23
                = ( ground_GMFun_a @ F5 @ Ds5 ) )
              & ( ( size_s962548663205356226ctxt_a @ Cs5 )
                = ( size_s962548663205356226ctxt_a @ Ds5 ) )
              & ! [X4: nat] :
                  ( ( ord_less_nat @ X4 @ ( size_s962548663205356226ctxt_a @ Cs5 ) )
                 => ( ground6477899500129135038ctxt_a @ ( nth_Ground_gmctxt_a @ Cs5 @ X4 ) @ ( nth_Ground_gmctxt_a @ Ds5 @ X4 ) ) ) ) ) ) ) ).

% less_eq_gmctxt.simps
thf(fact_653_nth__mem,axiom,
    ! [N: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( member_list_nat @ ( nth_list_nat @ Xs @ N ) @ ( set_list_nat2 @ Xs ) ) ) ).

% nth_mem
thf(fact_654_nth__mem,axiom,
    ! [N: nat,Xs: list_P3592885314253461005_a_nat] :
      ( ( ord_less_nat @ N @ ( size_s984997627204368545_a_nat @ Xs ) )
     => ( member5724188588386418708_a_nat @ ( nth_Pr8461465654520414006_a_nat @ Xs @ N ) @ ( set_Pr924983374503034536_a_nat @ Xs ) ) ) ).

% nth_mem
thf(fact_655_nth__mem,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( member3306386364193653941ctxt_a @ ( nth_Ground_gmctxt_a @ Xs @ N ) @ ( set_Ground_gmctxt_a2 @ Xs ) ) ) ).

% nth_mem
thf(fact_656_nth__mem,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( member_nat @ ( nth_nat @ Xs @ N ) @ ( set_nat2 @ Xs ) ) ) ).

% nth_mem
thf(fact_657_list__ball__nth,axiom,
    ! [N: nat,Xs: list_list_nat,P: list_nat > $o] :
      ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( ! [X: list_nat] :
            ( ( member_list_nat @ X @ ( set_list_nat2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_list_nat @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_658_list__ball__nth,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ! [X: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_Ground_gmctxt_a @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_659_list__ball__nth,axiom,
    ! [N: nat,Xs: list_nat,P: nat > $o] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ! [X: nat] :
            ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_nat @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_660_in__set__conv__nth,axiom,
    ! [X3: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xs ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s3023201423986296836st_nat @ Xs ) )
            & ( ( nth_list_nat @ Xs @ I4 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_661_in__set__conv__nth,axiom,
    ! [X3: product_prod_a_nat,Xs: list_P3592885314253461005_a_nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s984997627204368545_a_nat @ Xs ) )
            & ( ( nth_Pr8461465654520414006_a_nat @ Xs @ I4 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_662_in__set__conv__nth,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
            & ( ( nth_Ground_gmctxt_a @ Xs @ I4 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_663_in__set__conv__nth,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
            & ( ( nth_nat @ Xs @ I4 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_664_all__nth__imp__all__set,axiom,
    ! [Xs: list_list_nat,P: list_nat > $o,X3: list_nat] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
         => ( P @ ( nth_list_nat @ Xs @ I2 ) ) )
     => ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_665_all__nth__imp__all__set,axiom,
    ! [Xs: list_P3592885314253461005_a_nat,P: product_prod_a_nat > $o,X3: product_prod_a_nat] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s984997627204368545_a_nat @ Xs ) )
         => ( P @ ( nth_Pr8461465654520414006_a_nat @ Xs @ I2 ) ) )
     => ( ( member5724188588386418708_a_nat @ X3 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_666_all__nth__imp__all__set,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o,X3: ground_gmctxt_a] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
         => ( P @ ( nth_Ground_gmctxt_a @ Xs @ I2 ) ) )
     => ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_667_all__nth__imp__all__set,axiom,
    ! [Xs: list_nat,P: nat > $o,X3: nat] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
         => ( P @ ( nth_nat @ Xs @ I2 ) ) )
     => ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_668_all__set__conv__all__nth,axiom,
    ! [Xs: list_list_nat,P: list_nat > $o] :
      ( ( ! [X4: list_nat] :
            ( ( member_list_nat @ X4 @ ( set_list_nat2 @ Xs ) )
           => ( P @ X4 ) ) )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( P @ ( nth_list_nat @ Xs @ I4 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_669_all__set__conv__all__nth,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ( ! [X4: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X4 @ ( set_Ground_gmctxt_a2 @ Xs ) )
           => ( P @ X4 ) ) )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
           => ( P @ ( nth_Ground_gmctxt_a @ Xs @ I4 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_670_all__set__conv__all__nth,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
           => ( P @ X4 ) ) )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
           => ( P @ ( nth_nat @ Xs @ I4 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_671_less__eq__gmctxt__intros_I2_J,axiom,
    ! [Cs4: list_Ground_gmctxt_a,Ds3: list_Ground_gmctxt_a,F: a] :
      ( ( ( size_s962548663205356226ctxt_a @ Cs4 )
        = ( size_s962548663205356226ctxt_a @ Ds3 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Cs4 ) )
           => ( ord_le1940079914304802430ctxt_a @ ( nth_Ground_gmctxt_a @ Cs4 @ I2 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I2 ) ) )
       => ( ord_le1940079914304802430ctxt_a @ ( ground_GMFun_a @ F @ Cs4 ) @ ( ground_GMFun_a @ F @ Ds3 ) ) ) ) ).

% less_eq_gmctxt_intros(2)
thf(fact_672_less__eq__gmctxt__induct,axiom,
    ! [X1: ground_gmctxt_a,X22: ground_gmctxt_a,P: ground_gmctxt_a > ground_gmctxt_a > $o] :
      ( ( ord_le1940079914304802430ctxt_a @ X1 @ X22 )
     => ( ! [X_1: ground_gmctxt_a] : ( P @ ground_GMHole_a @ X_1 )
       => ( ! [Cs3: list_Ground_gmctxt_a,Ds4: list_Ground_gmctxt_a,F3: a] :
              ( ( ( size_s962548663205356226ctxt_a @ Cs3 )
                = ( size_s962548663205356226ctxt_a @ Ds4 ) )
             => ( ! [I3: nat] :
                    ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Cs3 ) )
                   => ( ord_le1940079914304802430ctxt_a @ ( nth_Ground_gmctxt_a @ Cs3 @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds4 @ I3 ) ) )
               => ( ! [I3: nat] :
                      ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Cs3 ) )
                     => ( P @ ( nth_Ground_gmctxt_a @ Cs3 @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds4 @ I3 ) ) )
                 => ( P @ ( ground_GMFun_a @ F3 @ Cs3 ) @ ( ground_GMFun_a @ F3 @ Ds4 ) ) ) ) )
         => ( P @ X1 @ X22 ) ) ) ) ).

% less_eq_gmctxt_induct
thf(fact_673_comp__gmctxt_OGMFun,axiom,
    ! [F: a,G3: a,Cs: list_Ground_gmctxt_a,Ds: list_Ground_gmctxt_a] :
      ( ( F = G3 )
     => ( ( ( size_s962548663205356226ctxt_a @ Cs )
          = ( size_s962548663205356226ctxt_a @ Ds ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ds ) )
             => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Cs @ I2 ) @ ( nth_Ground_gmctxt_a @ Ds @ I2 ) ) @ ground_comp_gmctxt_a ) )
         => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( ground_GMFun_a @ F @ Cs ) @ ( ground_GMFun_a @ G3 @ Ds ) ) @ ground_comp_gmctxt_a ) ) ) ) ).

% comp_gmctxt.GMFun
thf(fact_674_comp__gmctxt_Ocases,axiom,
    ! [A1: ground_gmctxt_a,A22: ground_gmctxt_a] :
      ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ A1 @ A22 ) @ ground_comp_gmctxt_a )
     => ( ( A1 != ground_GMHole_a )
       => ( ( A22 != ground_GMHole_a )
         => ~ ! [F3: a,G: a,Cs2: list_Ground_gmctxt_a] :
                ( ( A1
                  = ( ground_GMFun_a @ F3 @ Cs2 ) )
               => ! [Ds2: list_Ground_gmctxt_a] :
                    ( ( A22
                      = ( ground_GMFun_a @ G @ Ds2 ) )
                   => ( ( F3 = G )
                     => ( ( ( size_s962548663205356226ctxt_a @ Cs2 )
                          = ( size_s962548663205356226ctxt_a @ Ds2 ) )
                       => ~ ! [I3: nat] :
                              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                             => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Cs2 @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds2 @ I3 ) ) @ ground_comp_gmctxt_a ) ) ) ) ) ) ) ) ) ).

% comp_gmctxt.cases
thf(fact_675_comp__gmctxt_Osimps,axiom,
    ! [A1: ground_gmctxt_a,A22: ground_gmctxt_a] :
      ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ A1 @ A22 ) @ ground_comp_gmctxt_a )
      = ( ? [D5: ground_gmctxt_a] :
            ( ( A1 = ground_GMHole_a )
            & ( A22 = D5 ) )
        | ? [C6: ground_gmctxt_a] :
            ( ( A1 = C6 )
            & ( A22 = ground_GMHole_a ) )
        | ? [F5: a,G4: a,Cs6: list_Ground_gmctxt_a,Ds6: list_Ground_gmctxt_a] :
            ( ( A1
              = ( ground_GMFun_a @ F5 @ Cs6 ) )
            & ( A22
              = ( ground_GMFun_a @ G4 @ Ds6 ) )
            & ( F5 = G4 )
            & ( ( size_s962548663205356226ctxt_a @ Cs6 )
              = ( size_s962548663205356226ctxt_a @ Ds6 ) )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Ds6 ) )
               => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Cs6 @ I4 ) @ ( nth_Ground_gmctxt_a @ Ds6 @ I4 ) ) @ ground_comp_gmctxt_a ) ) ) ) ) ).

% comp_gmctxt.simps
thf(fact_676_subseteq__set__conv__nth,axiom,
    ! [Ss: list_list_nat,T2: set_list_nat] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s3023201423986296836st_nat @ Ss ) )
           => ( member_list_nat @ ( nth_list_nat @ Ss @ I4 ) @ T2 ) ) )
      = ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Ss ) @ T2 ) ) ).

% subseteq_set_conv_nth
thf(fact_677_subseteq__set__conv__nth,axiom,
    ! [Ss: list_P3592885314253461005_a_nat,T2: set_Pr4934435412358123699_a_nat] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s984997627204368545_a_nat @ Ss ) )
           => ( member5724188588386418708_a_nat @ ( nth_Pr8461465654520414006_a_nat @ Ss @ I4 ) @ T2 ) ) )
      = ( ord_le8666007276011122963_a_nat @ ( set_Pr924983374503034536_a_nat @ Ss ) @ T2 ) ) ).

% subseteq_set_conv_nth
thf(fact_678_subseteq__set__conv__nth,axiom,
    ! [Ss: list_Ground_gmctxt_a,T2: set_Ground_gmctxt_a] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Ss ) )
           => ( member3306386364193653941ctxt_a @ ( nth_Ground_gmctxt_a @ Ss @ I4 ) @ T2 ) ) )
      = ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ Ss ) @ T2 ) ) ).

% subseteq_set_conv_nth
thf(fact_679_subseteq__set__conv__nth,axiom,
    ! [Ss: list_nat,T2: set_nat] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Ss ) )
           => ( member_nat @ ( nth_nat @ Ss @ I4 ) @ T2 ) ) )
      = ( ord_less_eq_set_nat @ ( set_nat2 @ Ss ) @ T2 ) ) ).

% subseteq_set_conv_nth
thf(fact_680_subseteq__set__conv__nth,axiom,
    ! [Ss: list_P2433084232546440685term_a,T2: set_Pr8282532413760598727term_a] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s281034491502894169term_a @ Ss ) )
           => ( member4351891425000572176term_a @ ( nth_Pr5943965302187034734term_a @ Ss @ I4 ) @ T2 ) ) )
      = ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ Ss ) @ T2 ) ) ).

% subseteq_set_conv_nth
thf(fact_681_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_list_nat,A: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( member_list_nat @ ( nth_list_nat @ Xs @ I4 ) @ A ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_682_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_P3592885314253461005_a_nat,A: set_Pr4934435412358123699_a_nat] :
      ( ( ord_le8666007276011122963_a_nat @ ( set_Pr924983374503034536_a_nat @ Xs ) @ A )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s984997627204368545_a_nat @ Xs ) )
           => ( member5724188588386418708_a_nat @ ( nth_Pr8461465654520414006_a_nat @ Xs @ I4 ) @ A ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_683_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,A: set_Ground_gmctxt_a] :
      ( ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ A )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
           => ( member3306386364193653941ctxt_a @ ( nth_Ground_gmctxt_a @ Xs @ I4 ) @ A ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_684_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_nat,A: set_nat] :
      ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
           => ( member_nat @ ( nth_nat @ Xs @ I4 ) @ A ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_685_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_P2433084232546440685term_a,A: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ A )
      = ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s281034491502894169term_a @ Xs ) )
           => ( member4351891425000572176term_a @ ( nth_Pr5943965302187034734term_a @ Xs @ I4 ) @ A ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_686_P__as__bs__extend,axiom,
    ! [As: list_list_nat,Bs: list_list_nat,Cs4: list_list_nat,Ds3: list_list_nat,P: list_nat > list_nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ As )
        = ( size_s3023201423986296836st_nat @ Bs ) )
     => ( ( ( size_s3023201423986296836st_nat @ Cs4 )
          = ( size_s3023201423986296836st_nat @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Bs ) )
             => ( P @ ( nth_list_nat @ As @ I2 ) @ ( nth_list_nat @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ds3 ) )
               => ( P @ ( nth_list_nat @ Cs4 @ I2 ) @ ( nth_list_nat @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( append_list_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_list_nat @ ( append_list_nat @ As @ Cs4 ) @ I3 ) @ ( nth_list_nat @ ( append_list_nat @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_687_P__as__bs__extend,axiom,
    ! [As: list_list_nat,Bs: list_Ground_gmctxt_a,Cs4: list_list_nat,Ds3: list_Ground_gmctxt_a,P: list_nat > ground_gmctxt_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ( ( size_s3023201423986296836st_nat @ Cs4 )
          = ( size_s962548663205356226ctxt_a @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Bs ) )
             => ( P @ ( nth_list_nat @ As @ I2 ) @ ( nth_Ground_gmctxt_a @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ds3 ) )
               => ( P @ ( nth_list_nat @ Cs4 @ I2 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_list_nat @ ( append_list_nat @ As @ Cs4 ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_688_P__as__bs__extend,axiom,
    ! [As: list_list_nat,Bs: list_nat,Cs4: list_list_nat,Ds3: list_nat,P: list_nat > nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ( ( size_s3023201423986296836st_nat @ Cs4 )
          = ( size_size_list_nat @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Bs ) )
             => ( P @ ( nth_list_nat @ As @ I2 ) @ ( nth_nat @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ds3 ) )
               => ( P @ ( nth_list_nat @ Cs4 @ I2 ) @ ( nth_nat @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( append_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_list_nat @ ( append_list_nat @ As @ Cs4 ) @ I3 ) @ ( nth_nat @ ( append_nat @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_689_P__as__bs__extend,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_list_nat,Cs4: list_Ground_gmctxt_a,Ds3: list_list_nat,P: ground_gmctxt_a > list_nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_s3023201423986296836st_nat @ Bs ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Cs4 )
          = ( size_s3023201423986296836st_nat @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Bs ) )
             => ( P @ ( nth_Ground_gmctxt_a @ As @ I2 ) @ ( nth_list_nat @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ds3 ) )
               => ( P @ ( nth_Ground_gmctxt_a @ Cs4 @ I2 ) @ ( nth_list_nat @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( append_list_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ As @ Cs4 ) @ I3 ) @ ( nth_list_nat @ ( append_list_nat @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_690_P__as__bs__extend,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_Ground_gmctxt_a,Cs4: list_Ground_gmctxt_a,Ds3: list_Ground_gmctxt_a,P: ground_gmctxt_a > ground_gmctxt_a > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Cs4 )
          = ( size_s962548663205356226ctxt_a @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Bs ) )
             => ( P @ ( nth_Ground_gmctxt_a @ As @ I2 ) @ ( nth_Ground_gmctxt_a @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ds3 ) )
               => ( P @ ( nth_Ground_gmctxt_a @ Cs4 @ I2 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ As @ Cs4 ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_691_P__as__bs__extend,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_nat,Cs4: list_Ground_gmctxt_a,Ds3: list_nat,P: ground_gmctxt_a > nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Cs4 )
          = ( size_size_list_nat @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Bs ) )
             => ( P @ ( nth_Ground_gmctxt_a @ As @ I2 ) @ ( nth_nat @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ds3 ) )
               => ( P @ ( nth_Ground_gmctxt_a @ Cs4 @ I2 ) @ ( nth_nat @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( append_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ As @ Cs4 ) @ I3 ) @ ( nth_nat @ ( append_nat @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_692_P__as__bs__extend,axiom,
    ! [As: list_nat,Bs: list_list_nat,Cs4: list_nat,Ds3: list_list_nat,P: nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ As )
        = ( size_s3023201423986296836st_nat @ Bs ) )
     => ( ( ( size_size_list_nat @ Cs4 )
          = ( size_s3023201423986296836st_nat @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Bs ) )
             => ( P @ ( nth_nat @ As @ I2 ) @ ( nth_list_nat @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ds3 ) )
               => ( P @ ( nth_nat @ Cs4 @ I2 ) @ ( nth_list_nat @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( append_list_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_nat @ ( append_nat @ As @ Cs4 ) @ I3 ) @ ( nth_list_nat @ ( append_list_nat @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_693_P__as__bs__extend,axiom,
    ! [As: list_nat,Bs: list_Ground_gmctxt_a,Cs4: list_nat,Ds3: list_Ground_gmctxt_a,P: nat > ground_gmctxt_a > $o] :
      ( ( ( size_size_list_nat @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ( ( size_size_list_nat @ Cs4 )
          = ( size_s962548663205356226ctxt_a @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Bs ) )
             => ( P @ ( nth_nat @ As @ I2 ) @ ( nth_Ground_gmctxt_a @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ds3 ) )
               => ( P @ ( nth_nat @ Cs4 @ I2 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_nat @ ( append_nat @ As @ Cs4 ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_694_P__as__bs__extend,axiom,
    ! [As: list_nat,Bs: list_nat,Cs4: list_nat,Ds3: list_nat,P: nat > nat > $o] :
      ( ( ( size_size_list_nat @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ( ( size_size_list_nat @ Cs4 )
          = ( size_size_list_nat @ Ds3 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Bs ) )
             => ( P @ ( nth_nat @ As @ I2 ) @ ( nth_nat @ Bs @ I2 ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ds3 ) )
               => ( P @ ( nth_nat @ Cs4 @ I2 ) @ ( nth_nat @ Ds3 @ I2 ) ) )
           => ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( append_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_nat @ ( append_nat @ As @ Cs4 ) @ I3 ) @ ( nth_nat @ ( append_nat @ Bs @ Ds3 ) @ I3 ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_695_in__set__idx,axiom,
    ! [X3: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xs ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
          & ( ( nth_list_nat @ Xs @ I2 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_696_in__set__idx,axiom,
    ! [X3: product_prod_a_nat,Xs: list_P3592885314253461005_a_nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s984997627204368545_a_nat @ Xs ) )
          & ( ( nth_Pr8461465654520414006_a_nat @ Xs @ I2 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_697_in__set__idx,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
          & ( ( nth_Ground_gmctxt_a @ Xs @ I2 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_698_in__set__idx,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
          & ( ( nth_nat @ Xs @ I2 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_699_Ex__list__of__length__P,axiom,
    ! [N: nat,P: list_nat > nat > $o] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ N )
         => ? [X2: list_nat] : ( P @ X2 @ I2 ) )
     => ? [Xs2: list_list_nat] :
          ( ( ( size_s3023201423986296836st_nat @ Xs2 )
            = N )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ N )
             => ( P @ ( nth_list_nat @ Xs2 @ I3 ) @ I3 ) ) ) ) ).

% Ex_list_of_length_P
thf(fact_700_Ex__list__of__length__P,axiom,
    ! [N: nat,P: ground_gmctxt_a > nat > $o] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ N )
         => ? [X2: ground_gmctxt_a] : ( P @ X2 @ I2 ) )
     => ? [Xs2: list_Ground_gmctxt_a] :
          ( ( ( size_s962548663205356226ctxt_a @ Xs2 )
            = N )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ N )
             => ( P @ ( nth_Ground_gmctxt_a @ Xs2 @ I3 ) @ I3 ) ) ) ) ).

% Ex_list_of_length_P
thf(fact_701_Ex__list__of__length__P,axiom,
    ! [N: nat,P: nat > nat > $o] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ N )
         => ? [X2: nat] : ( P @ X2 @ I2 ) )
     => ? [Xs2: list_nat] :
          ( ( ( size_size_list_nat @ Xs2 )
            = N )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ N )
             => ( P @ ( nth_nat @ Xs2 @ I3 ) @ I3 ) ) ) ) ).

% Ex_list_of_length_P
thf(fact_702_nth__equalityE,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat] :
      ( ( Xs = Ys )
     => ~ ( ( ( size_s3023201423986296836st_nat @ Xs )
            = ( size_s3023201423986296836st_nat @ Ys ) )
         => ~ ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
               => ( ( nth_list_nat @ Xs @ I3 )
                  = ( nth_list_nat @ Ys @ I3 ) ) ) ) ) ).

% nth_equalityE
thf(fact_703_nth__equalityE,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( Xs = Ys )
     => ~ ( ( ( size_s962548663205356226ctxt_a @ Xs )
            = ( size_s962548663205356226ctxt_a @ Ys ) )
         => ~ ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Xs ) )
               => ( ( nth_Ground_gmctxt_a @ Xs @ I3 )
                  = ( nth_Ground_gmctxt_a @ Ys @ I3 ) ) ) ) ) ).

% nth_equalityE
thf(fact_704_nth__equalityE,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs = Ys )
     => ~ ( ( ( size_size_list_nat @ Xs )
            = ( size_size_list_nat @ Ys ) )
         => ~ ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
               => ( ( nth_nat @ Xs @ I3 )
                  = ( nth_nat @ Ys @ I3 ) ) ) ) ) ).

% nth_equalityE
thf(fact_705_ex__set__conv__ex__nth,axiom,
    ! [Xs: list_list_nat,P: list_nat > $o] :
      ( ( ? [X4: list_nat] :
            ( ( member_list_nat @ X4 @ ( set_list_nat2 @ Xs ) )
            & ( P @ X4 ) ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s3023201423986296836st_nat @ Xs ) )
            & ( P @ ( nth_list_nat @ Xs @ I4 ) ) ) ) ) ).

% ex_set_conv_ex_nth
thf(fact_706_ex__set__conv__ex__nth,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ( ? [X4: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X4 @ ( set_Ground_gmctxt_a2 @ Xs ) )
            & ( P @ X4 ) ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
            & ( P @ ( nth_Ground_gmctxt_a @ Xs @ I4 ) ) ) ) ) ).

% ex_set_conv_ex_nth
thf(fact_707_ex__set__conv__ex__nth,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
            & ( P @ X4 ) ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
            & ( P @ ( nth_nat @ Xs @ I4 ) ) ) ) ) ).

% ex_set_conv_ex_nth
thf(fact_708_size_H__char__eq__0,axiom,
    ( size_char
    = ( ^ [C4: char] : zero_zero_nat ) ) ).

% size'_char_eq_0
thf(fact_709_set__list__union,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( set_Ground_gmctxt_a2 @ ( missin8077391221698061592ctxt_a @ Xs @ Ys ) )
      = ( sup_su721339912568147456ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ ( set_Ground_gmctxt_a2 @ Ys ) ) ) ).

% set_list_union
thf(fact_710_set__list__union,axiom,
    ! [Xs: list_P2433084232546440685term_a,Ys: list_P2433084232546440685term_a] :
      ( ( set_Pr5405221470436175740term_a @ ( missin6538601846109302125term_a @ Xs @ Ys ) )
      = ( sup_su6310922012705202331term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ ( set_Pr5405221470436175740term_a @ Ys ) ) ) ).

% set_list_union
thf(fact_711_gmctxtex__onp__doubleE,axiom,
    ! [S: ground_gterm_a,T: ground_gterm_a,P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( contex3086340098647126761_onp_a @ P @ ( contex3086340098647126761_onp_a @ Q @ R ) ) )
     => ~ ! [C2: ground_gmctxt_a,Ds2: list_Ground_gmctxt_a,Ss2: list_Ground_gterm_a] :
            ( ( ground_eq_gfill_a @ S @ ( produc4720362732934906942term_a @ C2 @ Ss2 ) )
           => ! [Ts2: list_Ground_gterm_a] :
                ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ C2 @ Ts2 ) )
               => ( ( P @ C2 )
                 => ( ! [X2: ground_gmctxt_a] :
                        ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ Ds2 ) )
                       => ( Q @ X2 ) )
                   => ( ( ( ground_num_gholes_a @ C2 )
                        = ( size_s962548663205356226ctxt_a @ Ds2 ) )
                     => ( ( ( size_s962548663205356226ctxt_a @ Ds2 )
                          = ( size_s1893836384466666913term_a @ Ss2 ) )
                       => ( ( ( size_s1893836384466666913term_a @ Ss2 )
                            = ( size_s1893836384466666913term_a @ Ts2 ) )
                         => ! [Us3: list_l4678906206682822203term_a] :
                              ( ( ( size_s1893836384466666913term_a @ Ts2 )
                                = ( size_s5321119603959729319term_a @ Us3 ) )
                             => ! [Vs2: list_l4678906206682822203term_a] :
                                  ( ( ( size_s5321119603959729319term_a @ Us3 )
                                    = ( size_s5321119603959729319term_a @ Vs2 ) )
                                 => ( ! [I3: nat] :
                                        ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                                       => ( ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ss2 @ I3 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I3 ) @ ( nth_li6172171122907299772term_a @ Us3 @ I3 ) ) )
                                          & ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts2 @ I3 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I3 ) @ ( nth_li6172171122907299772term_a @ Vs2 @ I3 ) ) ) ) )
                                   => ~ ! [I3: nat] :
                                          ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                                         => ! [J3: nat] :
                                              ( ( ord_less_nat @ J3 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Vs2 @ I3 ) ) )
                                             => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Us3 @ I3 ) @ J3 ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Vs2 @ I3 ) @ J3 ) ) @ R ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% gmctxtex_onp_doubleE
thf(fact_712_permut__sound,axiom,
    ! [I: nat,As: list_list_nat,F: nat > nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ As ) )
     => ( ( nth_list_nat @ ( missin2960327169605006088st_nat @ As @ F ) @ I )
        = ( nth_list_nat @ As @ ( F @ I ) ) ) ) ).

% permut_sound
thf(fact_713_permut__sound,axiom,
    ! [I: nat,As: list_Ground_gmctxt_a,F: nat > nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ As ) )
     => ( ( nth_Ground_gmctxt_a @ ( missin4491563000646178374ctxt_a @ As @ F ) @ I )
        = ( nth_Ground_gmctxt_a @ As @ ( F @ I ) ) ) ) ).

% permut_sound
thf(fact_714_permut__sound,axiom,
    ! [I: nat,As: list_nat,F: nat > nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ As ) )
     => ( ( nth_nat @ ( missing_permut_nat @ As @ F ) @ I )
        = ( nth_nat @ As @ ( F @ I ) ) ) ) ).

% permut_sound
thf(fact_715_gmctxtex__onpI2,axiom,
    ! [P: ground_gmctxt_a > $o,C: ground_gmctxt_a,S: ground_gterm_a,Ss: list_Ground_gterm_a,T: ground_gterm_a,Ts: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( P @ C )
     => ( ( ground_eq_gfill_a @ S @ ( produc4720362732934906942term_a @ C @ Ss ) )
       => ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ C @ Ts ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ts ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss @ I2 ) @ ( nth_Ground_gterm_a @ Ts @ I2 ) ) @ R ) )
           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ) ) ) ).

% gmctxtex_onpI2
thf(fact_716_eqgfE_I2_J,axiom,
    ! [T: ground_gterm_a,D2: ground_gmctxt_a,Ss: list_Ground_gterm_a] :
      ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ D2 @ Ss ) )
     => ( ( ground_num_gholes_a @ D2 )
        = ( size_s1893836384466666913term_a @ Ss ) ) ) ).

% eqgfE(2)
thf(fact_717_gmctxtex__onpE2,axiom,
    ! [S: ground_gterm_a,T: ground_gterm_a,P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( contex3086340098647126761_onp_a @ P @ R ) )
     => ~ ! [C2: ground_gmctxt_a,Us3: list_Ground_gterm_a] :
            ( ( ground_eq_gfill_a @ S @ ( produc4720362732934906942term_a @ C2 @ Us3 ) )
           => ! [Vs2: list_Ground_gterm_a] :
                ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ C2 @ Vs2 ) )
               => ( ( P @ C2 )
                 => ~ ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Vs2 ) )
                       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Us3 @ I3 ) @ ( nth_Ground_gterm_a @ Vs2 @ I3 ) ) @ R ) ) ) ) ) ) ).

% gmctxtex_onpE2
thf(fact_718_gmctxtex__onp__listE,axiom,
    ! [Ts: list_Ground_gterm_a,Ss: list_Ground_gterm_a,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ts ) )
         => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss @ I2 ) @ ( nth_Ground_gterm_a @ Ts @ I2 ) ) @ ( contex3086340098647126761_onp_a @ Q @ R ) ) )
     => ( ( ( size_s1893836384466666913term_a @ Ss )
          = ( size_s1893836384466666913term_a @ Ts ) )
       => ~ ! [Ds2: list_Ground_gmctxt_a] :
              ( ( ( size_s1893836384466666913term_a @ Ts )
                = ( size_s962548663205356226ctxt_a @ Ds2 ) )
             => ! [Sss: list_l4678906206682822203term_a] :
                  ( ( ( size_s962548663205356226ctxt_a @ Ds2 )
                    = ( size_s5321119603959729319term_a @ Sss ) )
                 => ! [Tss: list_l4678906206682822203term_a] :
                      ( ( ( size_s5321119603959729319term_a @ Sss )
                        = ( size_s5321119603959729319term_a @ Tss ) )
                     => ( ! [I3: nat] :
                            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Tss ) )
                           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Sss @ I3 ) )
                              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Tss @ I3 ) ) ) )
                       => ( ! [X2: ground_gmctxt_a] :
                              ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ Ds2 ) )
                             => ( Q @ X2 ) )
                         => ( ! [I3: nat] :
                                ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Tss ) )
                               => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ss @ I3 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I3 ) @ ( nth_li6172171122907299772term_a @ Sss @ I3 ) ) ) )
                           => ( ! [I3: nat] :
                                  ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Tss ) )
                                 => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts @ I3 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I3 ) @ ( nth_li6172171122907299772term_a @ Tss @ I3 ) ) ) )
                             => ~ ! [I3: nat] :
                                    ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Tss ) ) )
                                   => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Sss ) @ I3 ) @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Tss ) @ I3 ) ) @ R ) ) ) ) ) ) ) ) ) ) ) ).

% gmctxtex_onp_listE
thf(fact_719_gmctxtex__onpI,axiom,
    ! [P: ground_gmctxt_a > $o,C: ground_gmctxt_a,Us: list_Ground_gterm_a,Vs: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( P @ C )
     => ( ( ( ground_num_gholes_a @ C )
          = ( size_s1893836384466666913term_a @ Us ) )
       => ( ( ( size_s1893836384466666913term_a @ Us )
            = ( size_s1893836384466666913term_a @ Vs ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Vs ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Us @ I2 ) @ ( nth_Ground_gterm_a @ Vs @ I2 ) ) @ R ) )
           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_fill_gholes_a @ C @ Us ) @ ( ground_fill_gholes_a @ C @ Vs ) ) @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ) ) ) ).

% gmctxtex_onpI
thf(fact_720_comp__gmctxtp_Ocases,axiom,
    ! [A1: ground_gmctxt_a,A22: ground_gmctxt_a] :
      ( ( ground4927988881900525590txtp_a @ A1 @ A22 )
     => ( ( A1 != ground_GMHole_a )
       => ( ( A22 != ground_GMHole_a )
         => ~ ! [F3: a,G: a,Cs2: list_Ground_gmctxt_a] :
                ( ( A1
                  = ( ground_GMFun_a @ F3 @ Cs2 ) )
               => ! [Ds2: list_Ground_gmctxt_a] :
                    ( ( A22
                      = ( ground_GMFun_a @ G @ Ds2 ) )
                   => ( ( F3 = G )
                     => ( ( ( size_s962548663205356226ctxt_a @ Cs2 )
                          = ( size_s962548663205356226ctxt_a @ Ds2 ) )
                       => ~ ! [I3: nat] :
                              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                             => ( ground4927988881900525590txtp_a @ ( nth_Ground_gmctxt_a @ Cs2 @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds2 @ I3 ) ) ) ) ) ) ) ) ) ) ).

% comp_gmctxtp.cases
thf(fact_721_comp__gmctxtp_Osimps,axiom,
    ( ground4927988881900525590txtp_a
    = ( ^ [A12: ground_gmctxt_a,A23: ground_gmctxt_a] :
          ( ? [D5: ground_gmctxt_a] :
              ( ( A12 = ground_GMHole_a )
              & ( A23 = D5 ) )
          | ? [C6: ground_gmctxt_a] :
              ( ( A12 = C6 )
              & ( A23 = ground_GMHole_a ) )
          | ? [F5: a,G4: a,Cs6: list_Ground_gmctxt_a,Ds6: list_Ground_gmctxt_a] :
              ( ( A12
                = ( ground_GMFun_a @ F5 @ Cs6 ) )
              & ( A23
                = ( ground_GMFun_a @ G4 @ Ds6 ) )
              & ( F5 = G4 )
              & ( ( size_s962548663205356226ctxt_a @ Cs6 )
                = ( size_s962548663205356226ctxt_a @ Ds6 ) )
              & ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Ds6 ) )
                 => ( ground4927988881900525590txtp_a @ ( nth_Ground_gmctxt_a @ Cs6 @ I4 ) @ ( nth_Ground_gmctxt_a @ Ds6 @ I4 ) ) ) ) ) ) ) ).

% comp_gmctxtp.simps
thf(fact_722_concat__append,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat] :
      ( ( concat_nat @ ( append_list_nat @ Xs @ Ys ) )
      = ( append_nat @ ( concat_nat @ Xs ) @ ( concat_nat @ Ys ) ) ) ).

% concat_append
thf(fact_723_comm__append__are__replicate,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Ys @ Xs ) )
     => ? [M5: nat,N3: nat,Zs2: list_nat] :
          ( ( ( concat_nat @ ( replicate_list_nat @ M5 @ Zs2 ) )
            = Xs )
          & ( ( concat_nat @ ( replicate_list_nat @ N3 @ Zs2 ) )
            = Ys ) ) ) ).

% comm_append_are_replicate
thf(fact_724_comp__gmctxtp_OGMHole2,axiom,
    ! [C: ground_gmctxt_a] : ( ground4927988881900525590txtp_a @ C @ ground_GMHole_a ) ).

% comp_gmctxtp.GMHole2
thf(fact_725_comp__gmctxtp_OGMHole1,axiom,
    ! [D2: ground_gmctxt_a] : ( ground4927988881900525590txtp_a @ ground_GMHole_a @ D2 ) ).

% comp_gmctxtp.GMHole1
thf(fact_726_eq__length__concat__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) ) ) )
       => ( ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) )
          = ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_727_eq__length__concat__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_list_nat] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) ) ) )
       => ( ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) )
          = ( size_size_list_nat @ ( concat_nat @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_728_eq__length__concat__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) ) ) )
       => ( ( size_size_list_nat @ ( concat_nat @ Xs ) )
          = ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_729_eq__length__concat__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) ) ) )
       => ( ( size_size_list_nat @ ( concat_nat @ Xs ) )
          = ( size_size_list_nat @ ( concat_nat @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_730_concat__nth__nthI,axiom,
    ! [Ss: list_list_list_nat,Ts: list_list_list_nat,P: list_nat > list_nat > $o] :
      ( ( ( size_s6248950052170075156st_nat @ Ss )
        = ( size_s6248950052170075156st_nat @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Ts ) )
           => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ss @ I2 ) )
              = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ts @ I2 ) ) )
                 => ( P @ ( nth_list_nat @ ( nth_list_list_nat @ Ss @ I2 ) @ J2 ) @ ( nth_list_nat @ ( nth_list_list_nat @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Ts ) ) )
             => ( P @ ( nth_list_nat @ ( concat_list_nat @ Ss ) @ I3 ) @ ( nth_list_nat @ ( concat_list_nat @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_731_concat__nth__nthI,axiom,
    ! [Ss: list_list_list_nat,Ts: list_l1578326660578982846ctxt_a,P: list_nat > ground_gmctxt_a > $o] :
      ( ( ( size_s6248950052170075156st_nat @ Ss )
        = ( size_s6994882312647770194ctxt_a @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Ts ) )
           => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ss @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) ) )
                 => ( P @ ( nth_list_nat @ ( nth_list_list_nat @ Ss @ I2 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ts ) ) )
             => ( P @ ( nth_list_nat @ ( concat_list_nat @ Ss ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_732_concat__nth__nthI,axiom,
    ! [Ss: list_list_list_nat,Ts: list_list_nat,P: list_nat > nat > $o] :
      ( ( ( size_s6248950052170075156st_nat @ Ss )
        = ( size_s3023201423986296836st_nat @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ts ) )
           => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ss @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Ts @ I2 ) ) )
                 => ( P @ ( nth_list_nat @ ( nth_list_list_nat @ Ss @ I2 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( concat_nat @ Ts ) ) )
             => ( P @ ( nth_list_nat @ ( concat_list_nat @ Ss ) @ I3 ) @ ( nth_nat @ ( concat_nat @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_733_concat__nth__nthI,axiom,
    ! [Ss: list_l1578326660578982846ctxt_a,Ts: list_list_list_nat,P: ground_gmctxt_a > list_nat > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Ss )
        = ( size_s6248950052170075156st_nat @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Ts ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) )
              = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ts @ I2 ) ) )
                 => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) @ J2 ) @ ( nth_list_nat @ ( nth_list_list_nat @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Ts ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ss ) @ I3 ) @ ( nth_list_nat @ ( concat_list_nat @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_734_concat__nth__nthI,axiom,
    ! [Ss: list_l1578326660578982846ctxt_a,Ts: list_l1578326660578982846ctxt_a,P: ground_gmctxt_a > ground_gmctxt_a > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Ss )
        = ( size_s6994882312647770194ctxt_a @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Ts ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) ) )
                 => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ts ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ss ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_735_concat__nth__nthI,axiom,
    ! [Ss: list_l1578326660578982846ctxt_a,Ts: list_list_nat,P: ground_gmctxt_a > nat > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Ss )
        = ( size_s3023201423986296836st_nat @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ts ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Ts @ I2 ) ) )
                 => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( concat_nat @ Ts ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ss ) @ I3 ) @ ( nth_nat @ ( concat_nat @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_736_concat__nth__nthI,axiom,
    ! [Ss: list_list_nat,Ts: list_list_list_nat,P: nat > list_nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Ss )
        = ( size_s6248950052170075156st_nat @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Ts ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Ss @ I2 ) )
              = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ts @ I2 ) ) )
                 => ( P @ ( nth_nat @ ( nth_list_nat @ Ss @ I2 ) @ J2 ) @ ( nth_list_nat @ ( nth_list_list_nat @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Ts ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Ss ) @ I3 ) @ ( nth_list_nat @ ( concat_list_nat @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_737_concat__nth__nthI,axiom,
    ! [Ss: list_list_nat,Ts: list_l1578326660578982846ctxt_a,P: nat > ground_gmctxt_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Ss )
        = ( size_s6994882312647770194ctxt_a @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Ts ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Ss @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) ) )
                 => ( P @ ( nth_nat @ ( nth_list_nat @ Ss @ I2 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ts ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Ss ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_738_concat__nth__nthI,axiom,
    ! [Ss: list_list_nat,Ts: list_list_nat,P: nat > nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Ss )
        = ( size_s3023201423986296836st_nat @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ts ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Ss @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ts @ I2 ) ) ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Ts ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Ts @ I2 ) ) )
                 => ( P @ ( nth_nat @ ( nth_list_nat @ Ss @ I2 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ts @ I2 ) @ J2 ) ) ) )
         => ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( concat_nat @ Ts ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Ss ) @ I3 ) @ ( nth_nat @ ( concat_nat @ Ts ) @ I3 ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_739_concat__all__nth,axiom,
    ! [Xs: list_list_list_nat,Ys: list_list_list_nat,P: list_nat > list_nat > $o] :
      ( ( ( size_s6248950052170075156st_nat @ Xs )
        = ( size_s6248950052170075156st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
           => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) )
              = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) ) )
               => ( P @ ( nth_list_nat @ ( nth_list_list_nat @ Xs @ I2 ) @ J2 ) @ ( nth_list_nat @ ( nth_list_list_nat @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
             => ( P @ ( nth_list_nat @ ( concat_list_nat @ Xs ) @ K3 ) @ ( nth_list_nat @ ( concat_list_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_740_concat__all__nth,axiom,
    ! [Xs: list_list_list_nat,Ys: list_l1578326660578982846ctxt_a,P: list_nat > ground_gmctxt_a > $o] :
      ( ( ( size_s6248950052170075156st_nat @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
           => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) ) )
               => ( P @ ( nth_list_nat @ ( nth_list_list_nat @ Xs @ I2 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
             => ( P @ ( nth_list_nat @ ( concat_list_nat @ Xs ) @ K3 ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_741_concat__all__nth,axiom,
    ! [Xs: list_list_list_nat,Ys: list_list_nat,P: list_nat > nat > $o] :
      ( ( ( size_s6248950052170075156st_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
           => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) ) )
               => ( P @ ( nth_list_nat @ ( nth_list_list_nat @ Xs @ I2 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
             => ( P @ ( nth_list_nat @ ( concat_list_nat @ Xs ) @ K3 ) @ ( nth_nat @ ( concat_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_742_concat__all__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_list_list_nat,P: ground_gmctxt_a > list_nat > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s6248950052170075156st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) )
              = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) @ J2 ) @ ( nth_list_nat @ ( nth_list_list_nat @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ K3 ) @ ( nth_list_nat @ ( concat_list_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_743_concat__all__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_l1578326660578982846ctxt_a,P: ground_gmctxt_a > ground_gmctxt_a > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ K3 ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_744_concat__all__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_list_nat,P: ground_gmctxt_a > nat > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ K3 ) @ ( nth_nat @ ( concat_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_745_concat__all__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_list_list_nat,P: nat > list_nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s6248950052170075156st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) )
              = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) ) )
               => ( P @ ( nth_nat @ ( nth_list_nat @ Xs @ I2 ) @ J2 ) @ ( nth_list_nat @ ( nth_list_list_nat @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Xs ) @ K3 ) @ ( nth_list_nat @ ( concat_list_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_746_concat__all__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_l1578326660578982846ctxt_a,P: nat > ground_gmctxt_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) ) )
               => ( P @ ( nth_nat @ ( nth_list_nat @ Xs @ I2 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Xs ) @ K3 ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_747_concat__all__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat,P: nat > nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) ) ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) ) )
               => ( P @ ( nth_nat @ ( nth_list_nat @ Xs @ I2 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ys @ I2 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Xs ) @ K3 ) @ ( nth_nat @ ( concat_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_748_nth__concat__split,axiom,
    ! [I: nat,Xs: list_list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
     => ? [J2: nat,K2: nat] :
          ( ( ord_less_nat @ J2 @ ( size_s6248950052170075156st_nat @ Xs ) )
          & ( ord_less_nat @ K2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ J2 ) ) )
          & ( ( nth_list_nat @ ( concat_list_nat @ Xs ) @ I )
            = ( nth_list_nat @ ( nth_list_list_nat @ Xs @ J2 ) @ K2 ) ) ) ) ).

% nth_concat_split
thf(fact_749_nth__concat__split,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ? [J2: nat,K2: nat] :
          ( ( ord_less_nat @ J2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
          & ( ord_less_nat @ K2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) ) )
          & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I )
            = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) ) ) ) ).

% nth_concat_split
thf(fact_750_nth__concat__split,axiom,
    ! [I: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ? [J2: nat,K2: nat] :
          ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ Xs ) )
          & ( ord_less_nat @ K2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ J2 ) ) )
          & ( ( nth_nat @ ( concat_nat @ Xs ) @ I )
            = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) ) ) ) ).

% nth_concat_split
thf(fact_751_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_list_list_nat,Ys: list_list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
     => ( ( ( size_s6248950052170075156st_nat @ Ys )
          = ( size_s6248950052170075156st_nat @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
             => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ys @ I2 ) )
                = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s6248950052170075156st_nat @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ J2 ) ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Xs ) @ I )
                = ( nth_list_nat @ ( nth_list_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Ys ) @ I )
                = ( nth_list_nat @ ( nth_list_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_752_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_list_list_nat,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Ys )
          = ( size_s6248950052170075156st_nat @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) )
                = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s6248950052170075156st_nat @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ J2 ) ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Xs ) @ I )
                = ( nth_list_nat @ ( nth_list_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ I )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_753_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_list_list_nat,Ys: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Ys )
          = ( size_s6248950052170075156st_nat @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6248950052170075156st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) )
                = ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s6248950052170075156st_nat @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ J2 ) ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Xs ) @ I )
                = ( nth_list_nat @ ( nth_list_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_nat @ ( concat_nat @ Ys ) @ I )
                = ( nth_nat @ ( nth_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_754_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6248950052170075156st_nat @ Ys )
          = ( size_s6994882312647770194ctxt_a @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ys @ I2 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Ys ) @ I )
                = ( nth_list_nat @ ( nth_list_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_755_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Ys )
          = ( size_s6994882312647770194ctxt_a @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ I )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_756_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Ys )
          = ( size_s6994882312647770194ctxt_a @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_nat @ ( concat_nat @ Ys ) @ I )
                = ( nth_nat @ ( nth_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_757_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_list_nat,Ys: list_list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s6248950052170075156st_nat @ Ys )
          = ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Ys @ I2 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ J2 ) ) )
              & ( ( nth_nat @ ( concat_nat @ Xs ) @ I )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Ys ) @ I )
                = ( nth_list_nat @ ( nth_list_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_758_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_list_nat,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Ys )
          = ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ J2 ) ) )
              & ( ( nth_nat @ ( concat_nat @ Xs ) @ I )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ I )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_759_nth__concat__two__lists,axiom,
    ! [I: nat,Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Ys )
          = ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s3023201423986296836st_nat @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ J2 ) ) )
              & ( ( nth_nat @ ( concat_nat @ Xs ) @ I )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_nat @ ( concat_nat @ Ys ) @ I )
                = ( nth_nat @ ( nth_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_760_nth__concat__diff,axiom,
    ! [I1: nat,Xs: list_list_list_nat,I22: nat] :
      ( ( ord_less_nat @ I1 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
     => ( ( ord_less_nat @ I22 @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
       => ( ( I1 != I22 )
         => ? [J1: nat,K1: nat,J22: nat,K22: nat] :
              ( ( ( product_Pair_nat_nat @ J1 @ K1 )
               != ( product_Pair_nat_nat @ J22 @ K22 ) )
              & ( ord_less_nat @ J1 @ ( size_s6248950052170075156st_nat @ Xs ) )
              & ( ord_less_nat @ J22 @ ( size_s6248950052170075156st_nat @ Xs ) )
              & ( ord_less_nat @ K1 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ J1 ) ) )
              & ( ord_less_nat @ K22 @ ( size_s3023201423986296836st_nat @ ( nth_list_list_nat @ Xs @ J22 ) ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Xs ) @ I1 )
                = ( nth_list_nat @ ( nth_list_list_nat @ Xs @ J1 ) @ K1 ) )
              & ( ( nth_list_nat @ ( concat_list_nat @ Xs ) @ I22 )
                = ( nth_list_nat @ ( nth_list_list_nat @ Xs @ J22 ) @ K22 ) ) ) ) ) ) ).

% nth_concat_diff
thf(fact_761_nth__concat__diff,axiom,
    ! [I1: nat,Xs: list_l1578326660578982846ctxt_a,I22: nat] :
      ( ( ord_less_nat @ I1 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ord_less_nat @ I22 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
       => ( ( I1 != I22 )
         => ? [J1: nat,K1: nat,J22: nat,K22: nat] :
              ( ( ( product_Pair_nat_nat @ J1 @ K1 )
               != ( product_Pair_nat_nat @ J22 @ K22 ) )
              & ( ord_less_nat @ J1 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
              & ( ord_less_nat @ J22 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
              & ( ord_less_nat @ K1 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J1 ) ) )
              & ( ord_less_nat @ K22 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J22 ) ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I1 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J1 ) @ K1 ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I22 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J22 ) @ K22 ) ) ) ) ) ) ).

% nth_concat_diff
thf(fact_762_nth__concat__diff,axiom,
    ! [I1: nat,Xs: list_list_nat,I22: nat] :
      ( ( ord_less_nat @ I1 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ord_less_nat @ I22 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
       => ( ( I1 != I22 )
         => ? [J1: nat,K1: nat,J22: nat,K22: nat] :
              ( ( ( product_Pair_nat_nat @ J1 @ K1 )
               != ( product_Pair_nat_nat @ J22 @ K22 ) )
              & ( ord_less_nat @ J1 @ ( size_s3023201423986296836st_nat @ Xs ) )
              & ( ord_less_nat @ J22 @ ( size_s3023201423986296836st_nat @ Xs ) )
              & ( ord_less_nat @ K1 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ J1 ) ) )
              & ( ord_less_nat @ K22 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ J22 ) ) )
              & ( ( nth_nat @ ( concat_nat @ Xs ) @ I1 )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J1 ) @ K1 ) )
              & ( ( nth_nat @ ( concat_nat @ Xs ) @ I22 )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J22 ) @ K22 ) ) ) ) ) ) ).

% nth_concat_diff
thf(fact_763_eq__gfill_Ointros,axiom,
    ! [T: ground_gterm_a,D2: ground_gmctxt_a,Ss: list_Ground_gterm_a] :
      ( ( T
        = ( ground_fill_gholes_a @ D2 @ Ss ) )
     => ( ( ( ground_num_gholes_a @ D2 )
          = ( size_s1893836384466666913term_a @ Ss ) )
       => ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ D2 @ Ss ) ) ) ) ).

% eq_gfill.intros
thf(fact_764_eq__gfill_Osimps,axiom,
    ( ground_eq_gfill_a
    = ( ^ [A12: ground_gterm_a,A23: produc2459281416120113548term_a] :
        ? [T3: ground_gterm_a,D5: ground_gmctxt_a,Ss3: list_Ground_gterm_a] :
          ( ( A12 = T3 )
          & ( A23
            = ( produc4720362732934906942term_a @ D5 @ Ss3 ) )
          & ( T3
            = ( ground_fill_gholes_a @ D5 @ Ss3 ) )
          & ( ( ground_num_gholes_a @ D5 )
            = ( size_s1893836384466666913term_a @ Ss3 ) ) ) ) ) ).

% eq_gfill.simps
thf(fact_765_eq__gfill_Ocases,axiom,
    ! [A1: ground_gterm_a,A22: produc2459281416120113548term_a] :
      ( ( ground_eq_gfill_a @ A1 @ A22 )
     => ~ ! [D: ground_gmctxt_a,Ss2: list_Ground_gterm_a] :
            ( ( A22
              = ( produc4720362732934906942term_a @ D @ Ss2 ) )
           => ( ( A1
                = ( ground_fill_gholes_a @ D @ Ss2 ) )
             => ( ( ground_num_gholes_a @ D )
               != ( size_s1893836384466666913term_a @ Ss2 ) ) ) ) ) ).

% eq_gfill.cases
thf(fact_766_fill__gholes__gmctxt__sound,axiom,
    ! [Ds: list_Ground_gmctxt_a,C: ground_gmctxt_a,Sss2: list_l4678906206682822203term_a,Ts: list_Ground_gterm_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Ds )
        = ( ground_num_gholes_a @ C ) )
     => ( ( ( size_s5321119603959729319term_a @ Sss2 )
          = ( ground_num_gholes_a @ C ) )
       => ( ( ( size_s1893836384466666913term_a @ Ts )
            = ( ground_num_gholes_a @ C ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ds ) )
               => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts @ I2 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds @ I2 ) @ ( nth_li6172171122907299772term_a @ Sss2 @ I2 ) ) ) )
           => ( ground_eq_gfill_a @ ( ground_fill_gholes_a @ C @ Ts ) @ ( produc4720362732934906942term_a @ ( ground2530127064035342964ctxt_a @ C @ Ds ) @ ( concat1399541994378716528term_a @ Sss2 ) ) ) ) ) ) ) ).

% fill_gholes_gmctxt_sound
thf(fact_767_comp__gmctxtp_OGMFun,axiom,
    ! [F: a,G3: a,Cs: list_Ground_gmctxt_a,Ds: list_Ground_gmctxt_a] :
      ( ( F = G3 )
     => ( ( ( size_s962548663205356226ctxt_a @ Cs )
          = ( size_s962548663205356226ctxt_a @ Ds ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ds ) )
             => ( ground4927988881900525590txtp_a @ ( nth_Ground_gmctxt_a @ Cs @ I2 ) @ ( nth_Ground_gmctxt_a @ Ds @ I2 ) ) )
         => ( ground4927988881900525590txtp_a @ ( ground_GMFun_a @ F @ Cs ) @ ( ground_GMFun_a @ G3 @ Ds ) ) ) ) ) ).

% comp_gmctxtp.GMFun
thf(fact_768_gmctxtex__onpE,axiom,
    ! [S: ground_gterm_a,T: ground_gterm_a,P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( contex3086340098647126761_onp_a @ P @ R ) )
     => ~ ! [C2: ground_gmctxt_a,Us3: list_Ground_gterm_a] :
            ( ( S
              = ( ground_fill_gholes_a @ C2 @ Us3 ) )
           => ! [Vs2: list_Ground_gterm_a] :
                ( ( T
                  = ( ground_fill_gholes_a @ C2 @ Vs2 ) )
               => ( ( ( ground_num_gholes_a @ C2 )
                    = ( size_s1893836384466666913term_a @ Us3 ) )
                 => ( ( ( size_s1893836384466666913term_a @ Us3 )
                      = ( size_s1893836384466666913term_a @ Vs2 ) )
                   => ( ( P @ C2 )
                     => ~ ! [I3: nat] :
                            ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Vs2 ) )
                           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Us3 @ I3 ) @ ( nth_Ground_gterm_a @ Vs2 @ I3 ) ) @ R ) ) ) ) ) ) ) ) ).

% gmctxtex_onpE
thf(fact_769_gmctxtex__onp__closure__predI,axiom,
    ! [P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [C2: ground_gmctxt_a,Ss2: list_Ground_gterm_a,Ts2: list_Ground_gterm_a] :
          ( ( P @ C2 )
         => ( ( ( ground_num_gholes_a @ C2 )
              = ( size_s1893836384466666913term_a @ Ss2 ) )
           => ( ( ( size_s1893836384466666913term_a @ Ss2 )
                = ( size_s1893836384466666913term_a @ Ts2 ) )
             => ( ! [I3: nat] :
                    ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ts2 ) )
                   => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss2 @ I3 ) @ ( nth_Ground_gterm_a @ Ts2 @ I3 ) ) @ R ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_fill_gholes_a @ C2 @ Ss2 ) @ ( ground_fill_gholes_a @ C2 @ Ts2 ) ) @ R ) ) ) ) )
     => ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ R ) @ R ) ) ).

% gmctxtex_onp_closure_predI
thf(fact_770_eqgf__GMFunI,axiom,
    ! [Cs: list_Ground_gmctxt_a,Ss: list_Ground_gterm_a,Ts: list_l4678906206682822203term_a,F: a] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Cs ) )
         => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ss @ I2 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Cs @ I2 ) @ ( nth_li6172171122907299772term_a @ Ts @ I2 ) ) ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Cs )
          = ( size_s1893836384466666913term_a @ Ss ) )
       => ( ( ( size_s1893836384466666913term_a @ Ss )
            = ( size_s5321119603959729319term_a @ Ts ) )
         => ( ground_eq_gfill_a @ ( ground_GFun_a @ F @ Ss ) @ ( produc4720362732934906942term_a @ ( ground_GMFun_a @ F @ Cs ) @ ( concat1399541994378716528term_a @ Ts ) ) ) ) ) ) ).

% eqgf_GMFunI
thf(fact_771_eqgf__GMFunE,axiom,
    ! [S: ground_gterm_a,F: a,Cs: list_Ground_gmctxt_a,Ss: list_Ground_gterm_a] :
      ( ( ground_eq_gfill_a @ S @ ( produc4720362732934906942term_a @ ( ground_GMFun_a @ F @ Cs ) @ Ss ) )
     => ~ ! [Ts2: list_Ground_gterm_a] :
            ( ( S
              = ( ground_GFun_a @ F @ Ts2 ) )
           => ( ( ( size_s1893836384466666913term_a @ Ts2 )
                = ( size_s962548663205356226ctxt_a @ Cs ) )
             => ! [Sss: list_l4678906206682822203term_a] :
                  ( ( ( size_s5321119603959729319term_a @ Sss )
                    = ( size_s962548663205356226ctxt_a @ Cs ) )
                 => ( ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Cs ) )
                       => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts2 @ I3 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Cs @ I3 ) @ ( nth_li6172171122907299772term_a @ Sss @ I3 ) ) ) )
                   => ( Ss
                     != ( concat1399541994378716528term_a @ Sss ) ) ) ) ) ) ) ).

% eqgf_GMFunE
thf(fact_772_concat__index__split__less__length__concat_I4_J,axiom,
    ! [I: nat,Xs: list_list_list_nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ ( concat_list_nat @ Xs ) ) )
     => ( ( ( concat5120376260311099874st_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ( nth_list_nat @ ( concat_list_nat @ Xs ) @ I )
          = ( nth_list_nat @ ( nth_list_list_nat @ Xs @ M2 ) @ N ) ) ) ) ).

% concat_index_split_less_length_concat(4)
thf(fact_773_concat__index__split__less__length__concat_I4_J,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I )
          = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ M2 ) @ N ) ) ) ) ).

% concat_index_split_less_length_concat(4)
thf(fact_774_concat__index__split__less__length__concat_I4_J,axiom,
    ! [I: nat,Xs: list_list_nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ( nth_nat @ ( concat_nat @ Xs ) @ I )
          = ( nth_nat @ ( nth_list_nat @ Xs @ M2 ) @ N ) ) ) ) ).

% concat_index_split_less_length_concat(4)
thf(fact_775_function__closed__def,axiom,
    ( contex7067214557799146619at_nat
    = ( ^ [F4: set_Pr9093778441882193744at_nat,R8: set_Pr8144746507299050889at_nat] :
        ! [F5: nat > nat,Ss3: list_G4348582881148899572at_nat,Ts3: list_G4348582881148899572at_nat] :
          ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F5 @ ( size_s4398795127965361032at_nat @ Ts3 ) ) @ F4 )
         => ( ( zero_zero_nat
             != ( size_s4398795127965361032at_nat @ Ts3 ) )
           => ( ( ( size_s4398795127965361032at_nat @ Ss3 )
                = ( size_s4398795127965361032at_nat @ Ts3 ) )
             => ( ! [I4: nat] :
                    ( ( ord_less_nat @ I4 @ ( size_s4398795127965361032at_nat @ Ts3 ) )
                   => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss3 @ I4 ) @ ( nth_Gr572344633313914269at_nat @ Ts3 @ I4 ) ) @ R8 ) )
               => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( ground_GFun_nat_nat @ F5 @ Ss3 ) @ ( ground_GFun_nat_nat @ F5 @ Ts3 ) ) @ R8 ) ) ) ) ) ) ) ).

% function_closed_def
thf(fact_776_function__closed__def,axiom,
    ( contex5117687592266394818osed_a
    = ( ^ [F4: set_Pr4934435412358123699_a_nat,R8: set_Pr8282532413760598727term_a] :
        ! [F5: a,Ss3: list_Ground_gterm_a,Ts3: list_Ground_gterm_a] :
          ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F5 @ ( size_s1893836384466666913term_a @ Ts3 ) ) @ F4 )
         => ( ( zero_zero_nat
             != ( size_s1893836384466666913term_a @ Ts3 ) )
           => ( ( ( size_s1893836384466666913term_a @ Ss3 )
                = ( size_s1893836384466666913term_a @ Ts3 ) )
             => ( ! [I4: nat] :
                    ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Ts3 ) )
                   => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss3 @ I4 ) @ ( nth_Ground_gterm_a @ Ts3 @ I4 ) ) @ R8 ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F5 @ Ss3 ) @ ( ground_GFun_a @ F5 @ Ts3 ) ) @ R8 ) ) ) ) ) ) ) ).

% function_closed_def
thf(fact_777_fill__gholes__replicate,axiom,
    ! [N: nat,Ss: list_Ground_gterm_a,F: a] :
      ( ( N
        = ( size_s1893836384466666913term_a @ Ss ) )
     => ( ( ground_fill_gholes_a @ ( ground_GMFun_a @ F @ ( replic9205591110366033502ctxt_a @ N @ ground_GMHole_a ) ) @ Ss )
        = ( ground_GFun_a @ F @ Ss ) ) ) ).

% fill_gholes_replicate
thf(fact_778_concat__index__split__larger__lists,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,N: nat,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ ( append272212692390751315ctxt_a @ Xs @ Ys ) )
        = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ Xs ) ) ) ).

% concat_index_split_larger_lists
thf(fact_779_concat__index__split__larger__lists,axiom,
    ! [I: nat,Xs: list_list_nat,N: nat,Ys: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ ( append_list_nat @ Xs @ Ys ) )
        = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ Xs ) ) ) ).

% concat_index_split_larger_lists
thf(fact_780_unfill__gholes_Ocases,axiom,
    ! [X3: produc4612632926506977542term_a] :
      ( ! [T4: ground_gterm_a] :
          ( X3
         != ( produc7893155741350732600term_a @ ground_GMHole_a @ T4 ) )
     => ~ ! [G: a,Cs2: list_Ground_gmctxt_a,F3: a,Ts2: list_Ground_gterm_a] :
            ( X3
           != ( produc7893155741350732600term_a @ ( ground_GMFun_a @ G @ Cs2 ) @ ( ground_GFun_a @ F3 @ Ts2 ) ) ) ) ).

% unfill_gholes.cases
thf(fact_781_gmctxtex__onp__neq__rootE,axiom,
    ! [F: a,Ss: list_Ground_gterm_a,G3: a,Ts: list_Ground_gterm_a,P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_GFun_a @ G3 @ Ts ) ) @ ( contex3086340098647126761_onp_a @ P @ R ) )
     => ( ( F != G3 )
       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_GFun_a @ G3 @ Ts ) ) @ R ) ) ) ).

% gmctxtex_onp_neq_rootE
thf(fact_782_gmctxtex__onp__neq__lengthE,axiom,
    ! [F: a,Ss: list_Ground_gterm_a,G3: a,Ts: list_Ground_gterm_a,P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_GFun_a @ G3 @ Ts ) ) @ ( contex3086340098647126761_onp_a @ P @ R ) )
     => ( ( ( size_s1893836384466666913term_a @ Ss )
         != ( size_s1893836384466666913term_a @ Ts ) )
       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_GFun_a @ G3 @ Ts ) ) @ R ) ) ) ).

% gmctxtex_onp_neq_lengthE
thf(fact_783_fill__gholes__gmctxt__MFun,axiom,
    ! [Cs: list_Ground_gmctxt_a,Ts: list_Ground_gmctxt_a,Ss: list_l1578326660578982846ctxt_a,F: a] :
      ( ( ( size_s962548663205356226ctxt_a @ Cs )
        = ( size_s962548663205356226ctxt_a @ Ts ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Ss )
          = ( size_s962548663205356226ctxt_a @ Ts ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ts ) )
             => ( ( ( ground_num_gholes_a @ ( nth_Ground_gmctxt_a @ Cs @ I2 ) )
                  = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) ) )
                & ( ( ground2530127064035342964ctxt_a @ ( nth_Ground_gmctxt_a @ Cs @ I2 ) @ ( nth_li6678718213161987943ctxt_a @ Ss @ I2 ) )
                  = ( nth_Ground_gmctxt_a @ Ts @ I2 ) ) ) )
         => ( ( ground2530127064035342964ctxt_a @ ( ground_GMFun_a @ F @ Cs ) @ ( concat3993834769610107037ctxt_a @ Ss ) )
            = ( ground_GMFun_a @ F @ Ts ) ) ) ) ) ).

% fill_gholes_gmctxt_MFun
thf(fact_784_gmctxt__cl_Ostep,axiom,
    ! [Ss: list_G4348582881148899572at_nat,Ts: list_G4348582881148899572at_nat,F2: set_Pr9093778441882193744at_nat,R: set_Pr8144746507299050889at_nat,F: nat > nat] :
      ( ( ( size_s4398795127965361032at_nat @ Ss )
        = ( size_s4398795127965361032at_nat @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s4398795127965361032at_nat @ Ts ) )
           => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss @ I2 ) @ ( nth_Gr572344633313914269at_nat @ Ts @ I2 ) ) @ ( ground1030676277180445380at_nat @ F2 @ R ) ) )
       => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F @ ( size_s4398795127965361032at_nat @ Ss ) ) @ F2 )
         => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( ground_GFun_nat_nat @ F @ Ss ) @ ( ground_GFun_nat_nat @ F @ Ts ) ) @ ( ground1030676277180445380at_nat @ F2 @ R ) ) ) ) ) ).

% gmctxt_cl.step
thf(fact_785_gmctxt__cl_Ostep,axiom,
    ! [Ss: list_Ground_gterm_a,Ts: list_Ground_gterm_a,F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a,F: a] :
      ( ( ( size_s1893836384466666913term_a @ Ss )
        = ( size_s1893836384466666913term_a @ Ts ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ts ) )
           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss @ I2 ) @ ( nth_Ground_gterm_a @ Ts @ I2 ) ) @ ( ground_gmctxt_cl_a @ F2 @ R ) ) )
       => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( size_s1893836384466666913term_a @ Ss ) ) @ F2 )
         => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_GFun_a @ F @ Ts ) ) @ ( ground_gmctxt_cl_a @ F2 @ R ) ) ) ) ) ).

% gmctxt_cl.step
thf(fact_786_gmctxt__cl_Ocases,axiom,
    ! [A1: ground_gterm_nat_nat,A22: ground_gterm_nat_nat,F2: set_Pr9093778441882193744at_nat,R: set_Pr8144746507299050889at_nat] :
      ( ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ A1 @ A22 ) @ ( ground1030676277180445380at_nat @ F2 @ R ) )
     => ( ~ ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ A1 @ A22 ) @ R )
       => ~ ! [Ss2: list_G4348582881148899572at_nat,Ts2: list_G4348582881148899572at_nat,F3: nat > nat] :
              ( ( A1
                = ( ground_GFun_nat_nat @ F3 @ Ss2 ) )
             => ( ( A22
                  = ( ground_GFun_nat_nat @ F3 @ Ts2 ) )
               => ( ( ( size_s4398795127965361032at_nat @ Ss2 )
                    = ( size_s4398795127965361032at_nat @ Ts2 ) )
                 => ( ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s4398795127965361032at_nat @ Ts2 ) )
                       => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss2 @ I3 ) @ ( nth_Gr572344633313914269at_nat @ Ts2 @ I3 ) ) @ ( ground1030676277180445380at_nat @ F2 @ R ) ) )
                   => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F3 @ ( size_s4398795127965361032at_nat @ Ss2 ) ) @ F2 ) ) ) ) ) ) ) ).

% gmctxt_cl.cases
thf(fact_787_gmctxt__cl_Ocases,axiom,
    ! [A1: ground_gterm_a,A22: ground_gterm_a,F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A1 @ A22 ) @ ( ground_gmctxt_cl_a @ F2 @ R ) )
     => ( ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A1 @ A22 ) @ R )
       => ~ ! [Ss2: list_Ground_gterm_a,Ts2: list_Ground_gterm_a,F3: a] :
              ( ( A1
                = ( ground_GFun_a @ F3 @ Ss2 ) )
             => ( ( A22
                  = ( ground_GFun_a @ F3 @ Ts2 ) )
               => ( ( ( size_s1893836384466666913term_a @ Ss2 )
                    = ( size_s1893836384466666913term_a @ Ts2 ) )
                 => ( ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ts2 ) )
                       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss2 @ I3 ) @ ( nth_Ground_gterm_a @ Ts2 @ I3 ) ) @ ( ground_gmctxt_cl_a @ F2 @ R ) ) )
                   => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( size_s1893836384466666913term_a @ Ss2 ) ) @ F2 ) ) ) ) ) ) ) ).

% gmctxt_cl.cases
thf(fact_788_gmctxt__cl_Osimps,axiom,
    ! [A1: ground_gterm_nat_nat,A22: ground_gterm_nat_nat,F2: set_Pr9093778441882193744at_nat,R: set_Pr8144746507299050889at_nat] :
      ( ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ A1 @ A22 ) @ ( ground1030676277180445380at_nat @ F2 @ R ) )
      = ( ? [S6: ground_gterm_nat_nat,T3: ground_gterm_nat_nat] :
            ( ( A1 = S6 )
            & ( A22 = T3 )
            & ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ S6 @ T3 ) @ R ) )
        | ? [Ss3: list_G4348582881148899572at_nat,Ts3: list_G4348582881148899572at_nat,F5: nat > nat] :
            ( ( A1
              = ( ground_GFun_nat_nat @ F5 @ Ss3 ) )
            & ( A22
              = ( ground_GFun_nat_nat @ F5 @ Ts3 ) )
            & ( ( size_s4398795127965361032at_nat @ Ss3 )
              = ( size_s4398795127965361032at_nat @ Ts3 ) )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ ( size_s4398795127965361032at_nat @ Ts3 ) )
               => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss3 @ I4 ) @ ( nth_Gr572344633313914269at_nat @ Ts3 @ I4 ) ) @ ( ground1030676277180445380at_nat @ F2 @ R ) ) )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F5 @ ( size_s4398795127965361032at_nat @ Ss3 ) ) @ F2 ) ) ) ) ).

% gmctxt_cl.simps
thf(fact_789_gmctxt__cl_Osimps,axiom,
    ! [A1: ground_gterm_a,A22: ground_gterm_a,F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A1 @ A22 ) @ ( ground_gmctxt_cl_a @ F2 @ R ) )
      = ( ? [S6: ground_gterm_a,T3: ground_gterm_a] :
            ( ( A1 = S6 )
            & ( A22 = T3 )
            & ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S6 @ T3 ) @ R ) )
        | ? [Ss3: list_Ground_gterm_a,Ts3: list_Ground_gterm_a,F5: a] :
            ( ( A1
              = ( ground_GFun_a @ F5 @ Ss3 ) )
            & ( A22
              = ( ground_GFun_a @ F5 @ Ts3 ) )
            & ( ( size_s1893836384466666913term_a @ Ss3 )
              = ( size_s1893836384466666913term_a @ Ts3 ) )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Ts3 ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss3 @ I4 ) @ ( nth_Ground_gterm_a @ Ts3 @ I4 ) ) @ ( ground_gmctxt_cl_a @ F2 @ R ) ) )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F5 @ ( size_s1893836384466666913term_a @ Ss3 ) ) @ F2 ) ) ) ) ).

% gmctxt_cl.simps
thf(fact_790_all__ctxt__closedD,axiom,
    ! [F6: set_Pr9093778441882193744at_nat,R3: set_Pr8144746507299050889at_nat,F: nat > nat,Ss: list_G4348582881148899572at_nat,Ts: list_G4348582881148899572at_nat] :
      ( ( ground2327783556906289298at_nat @ F6 @ R3 )
     => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F @ ( size_s4398795127965361032at_nat @ Ss ) ) @ F6 )
       => ( ( ( size_s4398795127965361032at_nat @ Ss )
            = ( size_s4398795127965361032at_nat @ Ts ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s4398795127965361032at_nat @ Ts ) )
               => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss @ I2 ) @ ( nth_Gr572344633313914269at_nat @ Ts @ I2 ) ) @ R3 ) )
           => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( ground_GFun_nat_nat @ F @ Ss ) @ ( ground_GFun_nat_nat @ F @ Ts ) ) @ R3 ) ) ) ) ) ).

% all_ctxt_closedD
thf(fact_791_all__ctxt__closedD,axiom,
    ! [F6: set_Pr4934435412358123699_a_nat,R3: set_Pr8282532413760598727term_a,F: a,Ss: list_Ground_gterm_a,Ts: list_Ground_gterm_a] :
      ( ( ground3158306204687651307osed_a @ F6 @ R3 )
     => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( size_s1893836384466666913term_a @ Ss ) ) @ F6 )
       => ( ( ( size_s1893836384466666913term_a @ Ss )
            = ( size_s1893836384466666913term_a @ Ts ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ts ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss @ I2 ) @ ( nth_Ground_gterm_a @ Ts @ I2 ) ) @ R3 ) )
           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_GFun_a @ F @ Ts ) ) @ R3 ) ) ) ) ) ).

% all_ctxt_closedD
thf(fact_792_all__ctxt__closedI,axiom,
    ! [F2: set_Pr9093778441882193744at_nat,R3: set_Pr8144746507299050889at_nat] :
      ( ! [F3: nat > nat,Ss2: list_G4348582881148899572at_nat,Ts2: list_G4348582881148899572at_nat] :
          ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F3 @ ( size_s4398795127965361032at_nat @ Ss2 ) ) @ F2 )
         => ( ( ( size_s4398795127965361032at_nat @ Ss2 )
              = ( size_s4398795127965361032at_nat @ Ts2 ) )
           => ( ! [I3: nat] :
                  ( ( ord_less_nat @ I3 @ ( size_s4398795127965361032at_nat @ Ts2 ) )
                 => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss2 @ I3 ) @ ( nth_Gr572344633313914269at_nat @ Ts2 @ I3 ) ) @ R3 ) )
             => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( ground_GFun_nat_nat @ F3 @ Ss2 ) @ ( ground_GFun_nat_nat @ F3 @ Ts2 ) ) @ R3 ) ) ) )
     => ( ground2327783556906289298at_nat @ F2 @ R3 ) ) ).

% all_ctxt_closedI
thf(fact_793_all__ctxt__closedI,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R3: set_Pr8282532413760598727term_a] :
      ( ! [F3: a,Ss2: list_Ground_gterm_a,Ts2: list_Ground_gterm_a] :
          ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( size_s1893836384466666913term_a @ Ss2 ) ) @ F2 )
         => ( ( ( size_s1893836384466666913term_a @ Ss2 )
              = ( size_s1893836384466666913term_a @ Ts2 ) )
           => ( ! [I3: nat] :
                  ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ts2 ) )
                 => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss2 @ I3 ) @ ( nth_Ground_gterm_a @ Ts2 @ I3 ) ) @ R3 ) )
             => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F3 @ Ss2 ) @ ( ground_GFun_a @ F3 @ Ts2 ) ) @ R3 ) ) ) )
     => ( ground3158306204687651307osed_a @ F2 @ R3 ) ) ).

% all_ctxt_closedI
thf(fact_794_all__ctxt__closed__def,axiom,
    ( ground2327783556906289298at_nat
    = ( ^ [F7: set_Pr9093778441882193744at_nat,R7: set_Pr8144746507299050889at_nat] :
        ! [F5: nat > nat,Ts3: list_G4348582881148899572at_nat,Ss3: list_G4348582881148899572at_nat] :
          ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F5 @ ( size_s4398795127965361032at_nat @ Ss3 ) ) @ F7 )
         => ( ( ( size_s4398795127965361032at_nat @ Ss3 )
              = ( size_s4398795127965361032at_nat @ Ts3 ) )
           => ( ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ ( size_s4398795127965361032at_nat @ Ts3 ) )
                 => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss3 @ I4 ) @ ( nth_Gr572344633313914269at_nat @ Ts3 @ I4 ) ) @ R7 ) )
             => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( ground_GFun_nat_nat @ F5 @ Ss3 ) @ ( ground_GFun_nat_nat @ F5 @ Ts3 ) ) @ R7 ) ) ) ) ) ) ).

% all_ctxt_closed_def
thf(fact_795_all__ctxt__closed__def,axiom,
    ( ground3158306204687651307osed_a
    = ( ^ [F7: set_Pr4934435412358123699_a_nat,R7: set_Pr8282532413760598727term_a] :
        ! [F5: a,Ts3: list_Ground_gterm_a,Ss3: list_Ground_gterm_a] :
          ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F5 @ ( size_s1893836384466666913term_a @ Ss3 ) ) @ F7 )
         => ( ( ( size_s1893836384466666913term_a @ Ss3 )
              = ( size_s1893836384466666913term_a @ Ts3 ) )
           => ( ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Ts3 ) )
                 => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss3 @ I4 ) @ ( nth_Ground_gterm_a @ Ts3 @ I4 ) ) @ R7 ) )
             => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F5 @ Ss3 ) @ ( ground_GFun_a @ F5 @ Ts3 ) ) @ R7 ) ) ) ) ) ) ).

% all_ctxt_closed_def
thf(fact_796_concat__index__split__less__length__concat_I3_J,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ M2 ) ) ) ) ) ).

% concat_index_split_less_length_concat(3)
thf(fact_797_concat__index__split__less__length__concat_I3_J,axiom,
    ! [I: nat,Xs: list_list_nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ N @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ M2 ) ) ) ) ) ).

% concat_index_split_less_length_concat(3)
thf(fact_798_concat__index__split__less__length__concat_I2_J,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ M2 @ ( size_s6994882312647770194ctxt_a @ Xs ) ) ) ) ).

% concat_index_split_less_length_concat(2)
thf(fact_799_concat__index__split__less__length__concat_I2_J,axiom,
    ! [I: nat,Xs: list_list_nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ M2 @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ) ).

% concat_index_split_less_length_concat(2)
thf(fact_800_concat__index__split__unique,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_l1578326660578982846ctxt_a,N: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Xs )
          = ( size_s6994882312647770194ctxt_a @ Ys ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) ) ) )
         => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ Xs )
            = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_801_concat__index__split__unique,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Xs )
          = ( size_s3023201423986296836st_nat @ Ys ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I2 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) ) ) )
         => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ Xs )
            = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_802_concat__index__split__unique,axiom,
    ! [I: nat,Xs: list_list_nat,Ys: list_l1578326660578982846ctxt_a,N: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Xs )
          = ( size_s6994882312647770194ctxt_a @ Ys ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I2 ) ) ) )
         => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ Xs )
            = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_803_concat__index__split__unique,axiom,
    ! [I: nat,Xs: list_list_nat,Ys: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Xs )
          = ( size_s3023201423986296836st_nat @ Ys ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I2 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I2 ) ) ) )
         => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ Xs )
            = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_804_function__closedD,axiom,
    ! [F2: set_Pr9093778441882193744at_nat,R: set_Pr8144746507299050889at_nat,F: nat > nat,Ts: list_G4348582881148899572at_nat,Ss: list_G4348582881148899572at_nat] :
      ( ( contex7067214557799146619at_nat @ F2 @ R )
     => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F @ ( size_s4398795127965361032at_nat @ Ts ) ) @ F2 )
       => ( ( zero_zero_nat
           != ( size_s4398795127965361032at_nat @ Ts ) )
         => ( ( ( size_s4398795127965361032at_nat @ Ss )
              = ( size_s4398795127965361032at_nat @ Ts ) )
           => ( ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ ( size_s4398795127965361032at_nat @ Ts ) )
                 => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( nth_Gr572344633313914269at_nat @ Ss @ I2 ) @ ( nth_Gr572344633313914269at_nat @ Ts @ I2 ) ) @ R ) )
             => ( member7111719770234083026at_nat @ ( produc156577712479908705at_nat @ ( ground_GFun_nat_nat @ F @ Ss ) @ ( ground_GFun_nat_nat @ F @ Ts ) ) @ R ) ) ) ) ) ) ).

% function_closedD
thf(fact_805_function__closedD,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a,F: a,Ts: list_Ground_gterm_a,Ss: list_Ground_gterm_a] :
      ( ( contex5117687592266394818osed_a @ F2 @ R )
     => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( size_s1893836384466666913term_a @ Ts ) ) @ F2 )
       => ( ( zero_zero_nat
           != ( size_s1893836384466666913term_a @ Ts ) )
         => ( ( ( size_s1893836384466666913term_a @ Ss )
              = ( size_s1893836384466666913term_a @ Ts ) )
           => ( ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ts ) )
                 => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss @ I2 ) @ ( nth_Ground_gterm_a @ Ts @ I2 ) ) @ R ) )
             => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_GFun_a @ F @ Ts ) ) @ R ) ) ) ) ) ) ).

% function_closedD
thf(fact_806_concat__index__split__sound__fst__arg,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs ) ) @ ( size_s6994882312647770194ctxt_a @ Xs ) ) ) ).

% concat_index_split_sound_fst_arg
thf(fact_807_concat__index__split__sound__fst__arg,axiom,
    ! [I: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs ) ) @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ).

% concat_index_split_sound_fst_arg
thf(fact_808_fst__eqD,axiom,
    ! [X3: a,Y: nat,A2: a] :
      ( ( ( product_fst_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) )
        = A2 )
     => ( X3 = A2 ) ) ).

% fst_eqD
thf(fact_809_fst__eqD,axiom,
    ! [X3: nat > nat,Y: nat,A2: nat > nat] :
      ( ( ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) )
        = A2 )
     => ( X3 = A2 ) ) ).

% fst_eqD
thf(fact_810_fst__conv,axiom,
    ! [X1: a,X22: nat] :
      ( ( product_fst_a_nat @ ( product_Pair_a_nat @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_811_fst__conv,axiom,
    ! [X1: nat > nat,X22: nat] :
      ( ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_812_concat__index__split__mono__first__arg,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,O_idx: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_eq_nat @ O_idx @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ O_idx @ I ) @ Xs ) ) ) ) ).

% concat_index_split_mono_first_arg
thf(fact_813_concat__index__split__mono__first__arg,axiom,
    ! [I: nat,Xs: list_list_nat,O_idx: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_eq_nat @ O_idx @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ O_idx @ I ) @ Xs ) ) ) ) ).

% concat_index_split_mono_first_arg
thf(fact_814_concat__index__split__sound__snd__arg,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs ) ) @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs ) ) ) ) ) ) ).

% concat_index_split_sound_snd_arg
thf(fact_815_concat__index__split__sound__snd__arg,axiom,
    ! [I: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs ) ) @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I ) @ Xs ) ) ) ) ) ) ).

% concat_index_split_sound_snd_arg
thf(fact_816_concat__index__split__sound__fst__arg__aux,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,O_idx: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ O_idx @ I ) @ Xs ) ) @ ( plus_plus_nat @ ( size_s6994882312647770194ctxt_a @ Xs ) @ O_idx ) ) ) ).

% concat_index_split_sound_fst_arg_aux
thf(fact_817_concat__index__split__sound__fst__arg__aux,axiom,
    ! [I: nat,Xs: list_list_nat,O_idx: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ O_idx @ I ) @ Xs ) ) @ ( plus_plus_nat @ ( size_s3023201423986296836st_nat @ Xs ) @ O_idx ) ) ) ).

% concat_index_split_sound_fst_arg_aux
thf(fact_818_groot_Oelims,axiom,
    ! [X3: ground_gterm_a,Y: product_prod_a_nat] :
      ( ( ( ground_groot_a @ X3 )
        = Y )
     => ~ ! [F3: a,Ts2: list_Ground_gterm_a] :
            ( ( X3
              = ( ground_GFun_a @ F3 @ Ts2 ) )
           => ( Y
             != ( product_Pair_a_nat @ F3 @ ( size_s1893836384466666913term_a @ Ts2 ) ) ) ) ) ).

% groot.elims
thf(fact_819_groot_Oelims,axiom,
    ! [X3: ground_gterm_nat_nat,Y: produc8199716216217303280at_nat] :
      ( ( ( ground_groot_nat_nat @ X3 )
        = Y )
     => ~ ! [F3: nat > nat,Ts2: list_G4348582881148899572at_nat] :
            ( ( X3
              = ( ground_GFun_nat_nat @ F3 @ Ts2 ) )
           => ( Y
             != ( produc72220940542539688at_nat @ F3 @ ( size_s4398795127965361032at_nat @ Ts2 ) ) ) ) ) ).

% groot.elims
thf(fact_820_groot_Osimps,axiom,
    ! [F: a,Ts: list_Ground_gterm_a] :
      ( ( ground_groot_a @ ( ground_GFun_a @ F @ Ts ) )
      = ( product_Pair_a_nat @ F @ ( size_s1893836384466666913term_a @ Ts ) ) ) ).

% groot.simps
thf(fact_821_groot_Osimps,axiom,
    ! [F: nat > nat,Ts: list_G4348582881148899572at_nat] :
      ( ( ground_groot_nat_nat @ ( ground_GFun_nat_nat @ F @ Ts ) )
      = ( produc72220940542539688at_nat @ F @ ( size_s4398795127965361032at_nat @ Ts ) ) ) ).

% groot.simps
thf(fact_822_add__right__cancel,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ( plus_plus_nat @ B @ A2 )
        = ( plus_plus_nat @ C3 @ A2 ) )
      = ( B = C3 ) ) ).

% add_right_cancel
thf(fact_823_add__left__cancel,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ A2 @ C3 ) )
      = ( B = C3 ) ) ).

% add_left_cancel
thf(fact_824_add__le__cancel__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
      = ( ord_less_eq_nat @ A2 @ B ) ) ).

% add_le_cancel_left
thf(fact_825_add__le__cancel__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
      = ( ord_less_eq_nat @ A2 @ B ) ) ).

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

% add.right_neutral
thf(fact_827_add__cancel__left__left,axiom,
    ! [B: nat,A2: nat] :
      ( ( ( plus_plus_nat @ B @ A2 )
        = A2 )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_left
thf(fact_828_add__cancel__left__right,axiom,
    ! [A2: nat,B: nat] :
      ( ( ( plus_plus_nat @ A2 @ B )
        = A2 )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_right
thf(fact_829_add__cancel__right__left,axiom,
    ! [A2: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ B @ A2 ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_left
thf(fact_830_add__cancel__right__right,axiom,
    ! [A2: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ A2 @ B ) )
      = ( B = zero_zero_nat ) ) ).

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

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

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

% add_0
thf(fact_834_add__less__cancel__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
      = ( ord_less_nat @ A2 @ B ) ) ).

% add_less_cancel_left
thf(fact_835_add__less__cancel__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
      = ( ord_less_nat @ A2 @ B ) ) ).

% add_less_cancel_right
thf(fact_836_add__is__0,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( plus_plus_nat @ M2 @ N )
        = zero_zero_nat )
      = ( ( M2 = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_837_Nat_Oadd__0__right,axiom,
    ! [M2: nat] :
      ( ( plus_plus_nat @ M2 @ zero_zero_nat )
      = M2 ) ).

% Nat.add_0_right
thf(fact_838_nat__add__left__cancel__less,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M2 ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M2 @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_839_nat__add__left__cancel__le,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M2 ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M2 @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_840_le__add__same__cancel2,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ ( plus_plus_nat @ B @ A2 ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel2
thf(fact_841_le__add__same__cancel1,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ ( plus_plus_nat @ A2 @ B ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel1
thf(fact_842_add__le__same__cancel2,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ B ) @ B )
      = ( ord_less_eq_nat @ A2 @ zero_zero_nat ) ) ).

% add_le_same_cancel2
thf(fact_843_add__le__same__cancel1,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B @ A2 ) @ B )
      = ( ord_less_eq_nat @ A2 @ zero_zero_nat ) ) ).

% add_le_same_cancel1
thf(fact_844_add__less__same__cancel1,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B @ A2 ) @ B )
      = ( ord_less_nat @ A2 @ zero_zero_nat ) ) ).

% add_less_same_cancel1
thf(fact_845_add__less__same__cancel2,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A2 @ B ) @ B )
      = ( ord_less_nat @ A2 @ zero_zero_nat ) ) ).

% add_less_same_cancel2
thf(fact_846_less__add__same__cancel1,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ ( plus_plus_nat @ A2 @ B ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel1
thf(fact_847_less__add__same__cancel2,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ ( plus_plus_nat @ B @ A2 ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel2
thf(fact_848_image__add__0,axiom,
    ! [S2: set_nat] :
      ( ( image_nat_nat @ ( plus_plus_nat @ zero_zero_nat ) @ S2 )
      = S2 ) ).

% image_add_0
thf(fact_849_add__gr__0,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M2 @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M2 )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_850_length__append,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ ( size_s962548663205356226ctxt_a @ Ys ) ) ) ).

% length_append
thf(fact_851_length__append,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( size_size_list_nat @ ( append_nat @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ ( size_size_list_nat @ Ys ) ) ) ).

% length_append
thf(fact_852_prod_Ocollapse,axiom,
    ! [Prod: product_prod_a_nat] :
      ( ( product_Pair_a_nat @ ( product_fst_a_nat @ Prod ) @ ( product_snd_a_nat @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_853_prod_Ocollapse,axiom,
    ! [Prod: produc8199716216217303280at_nat] :
      ( ( produc72220940542539688at_nat @ ( produc6156676138143019412at_nat @ Prod ) @ ( produc1852801350702243542at_nat @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_854_nth__upt,axiom,
    ! [I: nat,K: nat,J: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J )
     => ( ( nth_nat @ ( upt @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ K ) ) ) ).

% nth_upt
thf(fact_855_nth__append__length__plus,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat,N: nat] :
      ( ( nth_list_nat @ ( append_list_nat @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_s3023201423986296836st_nat @ Xs ) @ N ) )
      = ( nth_list_nat @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_856_nth__append__length__plus,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,N: nat] :
      ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ N ) )
      = ( nth_Ground_gmctxt_a @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_857_nth__append__length__plus,axiom,
    ! [Xs: list_nat,Ys: list_nat,N: nat] :
      ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ N ) )
      = ( nth_nat @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_858_snd__eqD,axiom,
    ! [X3: a,Y: nat,A2: nat] :
      ( ( ( product_snd_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_859_snd__eqD,axiom,
    ! [X3: nat > nat,Y: nat,A2: nat] :
      ( ( ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_860_snd__conv,axiom,
    ! [X1: a,X22: nat] :
      ( ( product_snd_a_nat @ ( product_Pair_a_nat @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_861_snd__conv,axiom,
    ! [X1: nat > nat,X22: nat] :
      ( ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_862_add__leE,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M2 @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M2 @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_863_le__add1,axiom,
    ! [N: nat,M2: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M2 ) ) ).

% le_add1
thf(fact_864_le__add2,axiom,
    ! [N: nat,M2: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M2 @ N ) ) ).

% le_add2
thf(fact_865_add__leD1,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M2 @ K ) @ N )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

% add_leD1
thf(fact_866_add__leD2,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M2 @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_867_le__Suc__ex,axiom,
    ! [K: nat,L2: nat] :
      ( ( ord_less_eq_nat @ K @ L2 )
     => ? [N3: nat] :
          ( L2
          = ( plus_plus_nat @ K @ N3 ) ) ) ).

% le_Suc_ex
thf(fact_868_add__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L2 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ) ).

% add_le_mono
thf(fact_869_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_870_trans__le__add1,axiom,
    ! [I: nat,J: nat,M2: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J @ M2 ) ) ) ).

% trans_le_add1
thf(fact_871_trans__le__add2,axiom,
    ! [I: nat,J: nat,M2: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M2 @ J ) ) ) ).

% trans_le_add2
thf(fact_872_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M3: nat,N4: nat] :
        ? [K4: nat] :
          ( N4
          = ( plus_plus_nat @ M3 @ K4 ) ) ) ) ).

% nat_le_iff_add
thf(fact_873_verit__sum__simplify,axiom,
    ! [A2: nat] :
      ( ( plus_plus_nat @ A2 @ zero_zero_nat )
      = A2 ) ).

% verit_sum_simplify
thf(fact_874_add__le__imp__le__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
     => ( ord_less_eq_nat @ A2 @ B ) ) ).

% add_le_imp_le_right
thf(fact_875_add__le__imp__le__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
     => ( ord_less_eq_nat @ A2 @ B ) ) ).

% add_le_imp_le_left
thf(fact_876_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A5: nat,B5: nat] :
        ? [C4: nat] :
          ( B5
          = ( plus_plus_nat @ A5 @ C4 ) ) ) ) ).

% le_iff_add
thf(fact_877_add__right__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add_right_mono
thf(fact_878_less__eqE,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ~ ! [C5: nat] :
            ( B
           != ( plus_plus_nat @ A2 @ C5 ) ) ) ).

% less_eqE
thf(fact_879_add__left__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) ) ) ).

% add_left_mono
thf(fact_880_add__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ D3 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D3 ) ) ) ) ).

% add_mono
thf(fact_881_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L2 ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_882_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( I = J )
        & ( ord_less_eq_nat @ K @ L2 ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_883_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( K = L2 ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_884_comm__monoid__add__class_Oadd__0,axiom,
    ! [A2: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A2 )
      = A2 ) ).

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

% add.comm_neutral
thf(fact_886_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_887_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( I = J )
        & ( ord_less_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_888_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( K = L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_889_add__strict__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_nat @ C3 @ D3 )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D3 ) ) ) ) ).

% add_strict_mono
thf(fact_890_add__strict__left__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) ) ) ).

% add_strict_left_mono
thf(fact_891_add__strict__right__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add_strict_right_mono
thf(fact_892_add__less__imp__less__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
     => ( ord_less_nat @ A2 @ B ) ) ).

% add_less_imp_less_left
thf(fact_893_add__less__imp__less__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
     => ( ord_less_nat @ A2 @ B ) ) ).

% add_less_imp_less_right
thf(fact_894_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_895_add__eq__self__zero,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( plus_plus_nat @ M2 @ N )
        = M2 )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_896_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_897_add__less__mono,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ K @ L2 )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ) ).

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

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

% not_add_less2
thf(fact_900_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_901_trans__less__add1,axiom,
    ! [I: nat,J: nat,M2: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M2 ) ) ) ).

% trans_less_add1
thf(fact_902_trans__less__add2,axiom,
    ! [I: nat,J: nat,M2: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M2 @ J ) ) ) ).

% trans_less_add2
thf(fact_903_less__add__eq__less,axiom,
    ! [K: nat,L2: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ K @ L2 )
     => ( ( ( plus_plus_nat @ M2 @ L2 )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M2 @ N ) ) ) ).

% less_add_eq_less
thf(fact_904_add__right__imp__eq,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ( plus_plus_nat @ B @ A2 )
        = ( plus_plus_nat @ C3 @ A2 ) )
     => ( B = C3 ) ) ).

% add_right_imp_eq
thf(fact_905_add__left__imp__eq,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ A2 @ C3 ) )
     => ( B = C3 ) ) ).

% add_left_imp_eq
thf(fact_906_add_Oleft__commute,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) )
      = ( plus_plus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add.left_commute
thf(fact_907_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A5: nat,B5: nat] : ( plus_plus_nat @ B5 @ A5 ) ) ) ).

% add.commute
thf(fact_908_add_Oassoc,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A2 @ B ) @ C3 )
      = ( plus_plus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add.assoc
thf(fact_909_group__cancel_Oadd2,axiom,
    ! [B4: nat,K: nat,B: nat,A2: nat] :
      ( ( B4
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A2 @ B4 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_910_group__cancel_Oadd1,axiom,
    ! [A: nat,K: nat,A2: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ K @ A2 ) )
     => ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_911_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( I = J )
        & ( K = L2 ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_912_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A2 @ B ) @ C3 )
      = ( plus_plus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_913_surjective__pairing,axiom,
    ! [T: product_prod_a_nat] :
      ( T
      = ( product_Pair_a_nat @ ( product_fst_a_nat @ T ) @ ( product_snd_a_nat @ T ) ) ) ).

% surjective_pairing
thf(fact_914_surjective__pairing,axiom,
    ! [T: produc8199716216217303280at_nat] :
      ( T
      = ( produc72220940542539688at_nat @ ( produc6156676138143019412at_nat @ T ) @ ( produc1852801350702243542at_nat @ T ) ) ) ).

% surjective_pairing
thf(fact_915_prod_Oexhaust__sel,axiom,
    ! [Prod: product_prod_a_nat] :
      ( Prod
      = ( product_Pair_a_nat @ ( product_fst_a_nat @ Prod ) @ ( product_snd_a_nat @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_916_prod_Oexhaust__sel,axiom,
    ! [Prod: produc8199716216217303280at_nat] :
      ( Prod
      = ( produc72220940542539688at_nat @ ( produc6156676138143019412at_nat @ Prod ) @ ( produc1852801350702243542at_nat @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_917_add__nonpos__eq__0__iff,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X3 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X3 @ Y )
            = zero_zero_nat )
          = ( ( X3 = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_918_add__nonneg__eq__0__iff,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X3 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y )
       => ( ( ( plus_plus_nat @ X3 @ Y )
            = zero_zero_nat )
          = ( ( X3 = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_919_add__nonpos__nonpos,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_nonpos
thf(fact_920_add__nonneg__nonneg,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

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

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

% add_decreasing2
thf(fact_923_add__increasing,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) ) ) ) ).

% add_increasing
thf(fact_924_add__decreasing,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ C3 @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ B ) ) ) ).

% add_decreasing
thf(fact_925_add__less__le__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ D3 )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D3 ) ) ) ) ).

% add_less_le_mono
thf(fact_926_add__le__less__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_nat @ C3 @ D3 )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D3 ) ) ) ) ).

% add_le_less_mono
thf(fact_927_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_928_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L2: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L2 ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_929_add__neg__neg,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_neg
thf(fact_930_add__pos__pos,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% add_pos_pos
thf(fact_931_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ~ ! [C5: nat] :
            ( ( B
              = ( plus_plus_nat @ A2 @ C5 ) )
           => ( C5 = zero_zero_nat ) ) ) ).

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

% pos_add_strict
thf(fact_933_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_934_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M2: nat,K: nat] :
      ( ! [M5: nat,N3: nat] :
          ( ( ord_less_nat @ M5 @ N3 )
         => ( ord_less_nat @ ( F @ M5 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M2 ) @ K ) @ ( F @ ( plus_plus_nat @ M2 @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_935_upt__add__eq__append,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( upt @ I @ ( plus_plus_nat @ J @ K ) )
        = ( append_nat @ ( upt @ I @ J ) @ ( upt @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).

% upt_add_eq_append
thf(fact_936_replicate__add,axiom,
    ! [N: nat,M2: nat,X3: ground_gmctxt_a] :
      ( ( replic9205591110366033502ctxt_a @ ( plus_plus_nat @ N @ M2 ) @ X3 )
      = ( append5238750768297430211ctxt_a @ ( replic9205591110366033502ctxt_a @ N @ X3 ) @ ( replic9205591110366033502ctxt_a @ M2 @ X3 ) ) ) ).

% replicate_add
thf(fact_937_replicate__add,axiom,
    ! [N: nat,M2: nat,X3: nat] :
      ( ( replicate_nat @ ( plus_plus_nat @ N @ M2 ) @ X3 )
      = ( append_nat @ ( replicate_nat @ N @ X3 ) @ ( replicate_nat @ M2 @ X3 ) ) ) ).

% replicate_add
thf(fact_938_add__strict__increasing2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) ) ) ) ).

% add_strict_increasing2
thf(fact_939_add__strict__increasing,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) ) ) ) ).

% add_strict_increasing
thf(fact_940_add__pos__nonneg,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_941_add__nonpos__neg,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_neg
thf(fact_942_add__nonneg__pos,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_943_add__neg__nonpos,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_nonpos
thf(fact_944_prod_Oswap__def,axiom,
    ( product_swap_nat_a
    = ( ^ [P7: product_prod_nat_a] : ( product_Pair_a_nat @ ( product_snd_nat_a @ P7 ) @ ( product_fst_nat_a @ P7 ) ) ) ) ).

% prod.swap_def
thf(fact_945_prod_Oswap__def,axiom,
    ( produc3547366087443502024at_nat
    = ( ^ [P7: produc85711943791777264at_nat] : ( produc72220940542539688at_nat @ ( produc396725235424222550at_nat @ P7 ) @ ( produc4700600022864998420at_nat @ P7 ) ) ) ) ).

% prod.swap_def
thf(fact_946_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: a > nat > $o,X3: a,Y: nat,A2: product_prod_a_nat] :
      ( ( P @ X3 @ Y )
     => ( ( A2
          = ( product_Pair_a_nat @ X3 @ Y ) )
       => ( P @ ( product_fst_a_nat @ A2 ) @ ( product_snd_a_nat @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_947_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ( nat > nat ) > nat > $o,X3: nat > nat,Y: nat,A2: produc8199716216217303280at_nat] :
      ( ( P @ X3 @ Y )
     => ( ( A2
          = ( produc72220940542539688at_nat @ X3 @ Y ) )
       => ( P @ ( produc6156676138143019412at_nat @ A2 ) @ ( produc1852801350702243542at_nat @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_948_conjI__realizer,axiom,
    ! [P: a > $o,P3: a,Q: nat > $o,Q3: nat] :
      ( ( P @ P3 )
     => ( ( Q @ Q3 )
       => ( ( P @ ( product_fst_a_nat @ ( product_Pair_a_nat @ P3 @ Q3 ) ) )
          & ( Q @ ( product_snd_a_nat @ ( product_Pair_a_nat @ P3 @ Q3 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_949_conjI__realizer,axiom,
    ! [P: ( nat > nat ) > $o,P3: nat > nat,Q: nat > $o,Q3: nat] :
      ( ( P @ P3 )
     => ( ( Q @ Q3 )
       => ( ( P @ ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ P3 @ Q3 ) ) )
          & ( Q @ ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ P3 @ Q3 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_950_exI__realizer,axiom,
    ! [P: nat > a > $o,Y: nat,X3: a] :
      ( ( P @ Y @ X3 )
     => ( P @ ( product_snd_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) ) @ ( product_fst_a_nat @ ( product_Pair_a_nat @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_951_exI__realizer,axiom,
    ! [P: nat > ( nat > nat ) > $o,Y: nat,X3: nat > nat] :
      ( ( P @ Y @ X3 )
     => ( P @ ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) ) @ ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_952_concat__index__split__sound__snd__arg__aux,axiom,
    ! [I: nat,Xs: list_l1578326660578982846ctxt_a,N: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ Xs ) ) @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I ) @ Xs ) ) @ N ) ) ) ) ) ).

% concat_index_split_sound_snd_arg_aux
thf(fact_953_concat__index__split__sound__snd__arg__aux,axiom,
    ! [I: nat,Xs: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ Xs ) ) @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I ) @ Xs ) ) @ N ) ) ) ) ) ).

% concat_index_split_sound_snd_arg_aux
thf(fact_954_nth__enumerate__eq,axiom,
    ! [M2: nat,Xs: list_list_nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( ( nth_Pr8640280872377703576st_nat @ ( enumerate_list_nat @ N @ Xs ) @ M2 )
        = ( produc8282810413953273033st_nat @ ( plus_plus_nat @ N @ M2 ) @ ( nth_list_nat @ Xs @ M2 ) ) ) ) ).

% nth_enumerate_eq
thf(fact_955_nth__enumerate__eq,axiom,
    ! [M2: nat,Xs: list_Ground_gmctxt_a,N: nat] :
      ( ( ord_less_nat @ M2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Pr3641570550162790742ctxt_a @ ( enumer3922341085786344185ctxt_a @ N @ Xs ) @ M2 )
        = ( produc3104537575318011527ctxt_a @ ( plus_plus_nat @ N @ M2 ) @ ( nth_Ground_gmctxt_a @ Xs @ M2 ) ) ) ) ).

% nth_enumerate_eq
thf(fact_956_nth__enumerate__eq,axiom,
    ! [M2: nat,Xs: list_nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_Pr7617993195940197384at_nat @ ( enumerate_nat @ N @ Xs ) @ M2 )
        = ( product_Pair_nat_nat @ ( plus_plus_nat @ N @ M2 ) @ ( nth_nat @ Xs @ M2 ) ) ) ) ).

% nth_enumerate_eq
thf(fact_957_zero__diff,axiom,
    ! [A2: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A2 )
      = zero_zero_nat ) ).

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

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

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_960_add__diff__cancel__right_H,axiom,
    ! [A2: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A2 @ B ) @ B )
      = A2 ) ).

% add_diff_cancel_right'
thf(fact_961_add__diff__cancel__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
      = ( minus_minus_nat @ A2 @ B ) ) ).

% add_diff_cancel_right
thf(fact_962_add__diff__cancel__left_H,axiom,
    ! [A2: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A2 @ B ) @ A2 )
      = B ) ).

% add_diff_cancel_left'
thf(fact_963_add__diff__cancel__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
      = ( minus_minus_nat @ A2 @ B ) ) ).

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

% diff_0_eq_0
thf(fact_965_diff__self__eq__0,axiom,
    ! [M2: nat] :
      ( ( minus_minus_nat @ M2 @ M2 )
      = zero_zero_nat ) ).

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

% diff_diff_cancel
thf(fact_967_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_968_length__upt,axiom,
    ! [I: nat,J: nat] :
      ( ( size_size_list_nat @ ( upt @ I @ J ) )
      = ( minus_minus_nat @ J @ I ) ) ).

% length_upt
thf(fact_969_length__enumerate,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( size_s4225619979278260545ctxt_a @ ( enumer3922341085786344185ctxt_a @ N @ Xs ) )
      = ( size_s962548663205356226ctxt_a @ Xs ) ) ).

% length_enumerate
thf(fact_970_length__enumerate,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( size_s5460976970255530739at_nat @ ( enumerate_nat @ N @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_enumerate
thf(fact_971_le__add__diff__inverse2,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ A2 @ B ) @ B )
        = A2 ) ) ).

% le_add_diff_inverse2
thf(fact_972_le__add__diff__inverse,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ B @ A2 )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A2 @ B ) )
        = A2 ) ) ).

% le_add_diff_inverse
thf(fact_973_diff__add__zero,axiom,
    ! [A2: nat,B: nat] :
      ( ( minus_minus_nat @ A2 @ ( plus_plus_nat @ A2 @ B ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_974_zero__less__diff,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M2 ) )
      = ( ord_less_nat @ M2 @ N ) ) ).

% zero_less_diff
thf(fact_975_diff__is__0__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( minus_minus_nat @ M2 @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M2 @ N ) ) ).

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

% diff_is_0_eq'
thf(fact_977_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_978_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_979_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_980_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A2: nat,B: nat] :
      ( ~ ( ord_less_nat @ A2 @ B )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A2 @ B ) )
        = A2 ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_981_add__le__add__imp__diff__le,axiom,
    ! [I: nat,K: nat,N: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_982_add__le__imp__le__diff,axiom,
    ! [I: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ord_less_eq_nat @ I @ ( minus_minus_nat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_983_diff__add__inverse2,axiom,
    ! [M2: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M2 @ N ) @ N )
      = M2 ) ).

% diff_add_inverse2
thf(fact_984_diff__add__inverse,axiom,
    ! [N: nat,M2: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M2 ) @ N )
      = M2 ) ).

% diff_add_inverse
thf(fact_985_diff__diff__eq,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A2 @ B ) @ C3 )
      = ( minus_minus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% diff_diff_eq
thf(fact_986_diff__cancel2,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M2 @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M2 @ N ) ) ).

% diff_cancel2
thf(fact_987_Nat_Odiff__cancel,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M2 ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M2 @ N ) ) ).

% Nat.diff_cancel
thf(fact_988_add__implies__diff,axiom,
    ! [C3: nat,B: nat,A2: nat] :
      ( ( ( plus_plus_nat @ C3 @ B )
        = A2 )
     => ( C3
        = ( minus_minus_nat @ A2 @ B ) ) ) ).

% add_implies_diff
thf(fact_989_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ A2 @ B )
       => ( ( ( minus_minus_nat @ B @ A2 )
            = C3 )
          = ( B
            = ( plus_plus_nat @ C3 @ A2 ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_990_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( plus_plus_nat @ A2 @ ( minus_minus_nat @ B @ A2 ) )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_991_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( minus_minus_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C3 @ A2 ) @ B ) ) ) ).

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

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_993_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A2 ) @ C3 )
        = ( minus_minus_nat @ ( plus_plus_nat @ B @ C3 ) @ A2 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_994_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C3 @ B ) @ A2 )
        = ( plus_plus_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_995_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( plus_plus_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C3 @ B ) @ A2 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_996_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_997_le__add__diff,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ord_less_eq_nat @ C3 @ ( minus_minus_nat @ ( plus_plus_nat @ B @ C3 ) @ A2 ) ) ) ).

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

% diff_add
thf(fact_999_eq__diff__iff,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M2 )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M2 @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M2 = N ) ) ) ) ).

% eq_diff_iff
thf(fact_1000_le__diff__iff,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M2 )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M2 @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M2 @ N ) ) ) ) ).

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

% Nat.diff_diff_eq
thf(fact_1002_diff__le__mono,axiom,
    ! [M2: nat,N: nat,L2: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M2 @ L2 ) @ ( minus_minus_nat @ N @ L2 ) ) ) ).

% diff_le_mono
thf(fact_1003_diff__le__self,axiom,
    ! [M2: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M2 @ N ) @ M2 ) ).

% diff_le_self
thf(fact_1004_le__diff__iff_H,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ C3 )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C3 @ A2 ) @ ( minus_minus_nat @ C3 @ B ) )
          = ( ord_less_eq_nat @ B @ A2 ) ) ) ) ).

% le_diff_iff'
thf(fact_1005_diff__le__mono2,axiom,
    ! [M2: nat,N: nat,L2: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L2 @ N ) @ ( minus_minus_nat @ L2 @ M2 ) ) ) ).

% diff_le_mono2
thf(fact_1006_minus__nat_Odiff__0,axiom,
    ! [M2: nat] :
      ( ( minus_minus_nat @ M2 @ zero_zero_nat )
      = M2 ) ).

% minus_nat.diff_0
thf(fact_1007_diffs0__imp__equal,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( minus_minus_nat @ M2 @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M2 )
          = zero_zero_nat )
       => ( M2 = N ) ) ) ).

% diffs0_imp_equal
thf(fact_1008_diff__less__mono2,axiom,
    ! [M2: nat,N: nat,L2: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ( ord_less_nat @ M2 @ L2 )
       => ( ord_less_nat @ ( minus_minus_nat @ L2 @ N ) @ ( minus_minus_nat @ L2 @ M2 ) ) ) ) ).

% diff_less_mono2
thf(fact_1009_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_1010_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_1011_diff__right__commute,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A2 @ C3 ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A2 @ B ) @ C3 ) ) ).

% diff_right_commute
thf(fact_1012_diff__less,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M2 )
       => ( ord_less_nat @ ( minus_minus_nat @ M2 @ N ) @ M2 ) ) ) ).

% diff_less
thf(fact_1013_diff__add__0,axiom,
    ! [N: nat,M2: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M2 ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_1014_less__diff__iff,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M2 )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M2 @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M2 @ N ) ) ) ) ).

% less_diff_iff
thf(fact_1015_diff__less__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ A2 )
       => ( ord_less_nat @ ( minus_minus_nat @ A2 @ C3 ) @ ( minus_minus_nat @ B @ C3 ) ) ) ) ).

% diff_less_mono
thf(fact_1016_add__diff__inverse__nat,axiom,
    ! [M2: nat,N: nat] :
      ( ~ ( ord_less_nat @ M2 @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M2 @ N ) )
        = M2 ) ) ).

% add_diff_inverse_nat
thf(fact_1017_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_1018_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_1019_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_1020_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_1021_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_1022_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_1023_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A2: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A2 @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A2 @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D6: nat] :
                ( ( A2
                  = ( plus_plus_nat @ B @ D6 ) )
                & ~ ( P @ D6 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_1024_nat__diff__split,axiom,
    ! [P: nat > $o,A2: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A2 @ B ) )
      = ( ( ( ord_less_nat @ A2 @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D6: nat] :
            ( ( A2
              = ( plus_plus_nat @ B @ D6 ) )
           => ( P @ D6 ) ) ) ) ).

% nat_diff_split
thf(fact_1025_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_1026_nth__append,axiom,
    ! [N: nat,Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ( nth_list_nat @ ( append_list_nat @ Xs @ Ys ) @ N )
          = ( nth_list_nat @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ( nth_list_nat @ ( append_list_nat @ Xs @ Ys ) @ N )
          = ( nth_list_nat @ Ys @ ( minus_minus_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_1027_nth__append,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) @ N )
          = ( nth_Ground_gmctxt_a @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) @ N )
          = ( nth_Ground_gmctxt_a @ Ys @ ( minus_minus_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_1028_nth__append,axiom,
    ! [N: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ N )
          = ( nth_nat @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ N )
          = ( nth_nat @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_1029_enumerate__append__eq,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( enumer3922341085786344185ctxt_a @ N @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) )
      = ( append2243830650925735786ctxt_a @ ( enumer3922341085786344185ctxt_a @ N @ Xs ) @ ( enumer3922341085786344185ctxt_a @ ( plus_plus_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_1030_enumerate__append__eq,axiom,
    ! [N: nat,Xs: list_nat,Ys: list_nat] :
      ( ( enumerate_nat @ N @ ( append_nat @ Xs @ Ys ) )
      = ( append985823374593552924at_nat @ ( enumerate_nat @ N @ Xs ) @ ( enumerate_nat @ ( plus_plus_nat @ N @ ( size_size_list_nat @ Xs ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_1031_in__set__enumerate__eq,axiom,
    ! [P3: produc4575160907756185873st_nat,N: nat,Xs: list_list_nat] :
      ( ( member1631564025489475386st_nat @ P3 @ ( set_Pr1526418413117253030st_nat @ ( enumerate_list_nat @ N @ Xs ) ) )
      = ( ( ord_less_eq_nat @ N @ ( produc8283513326151283381st_nat @ P3 ) )
        & ( ord_less_nat @ ( produc8283513326151283381st_nat @ P3 ) @ ( plus_plus_nat @ ( size_s3023201423986296836st_nat @ Xs ) @ N ) )
        & ( ( nth_list_nat @ Xs @ ( minus_minus_nat @ ( produc8283513326151283381st_nat @ P3 ) @ N ) )
          = ( produc1177724860032999927st_nat @ P3 ) ) ) ) ).

% in_set_enumerate_eq
thf(fact_1032_in__set__enumerate__eq,axiom,
    ! [P3: produc932717863267311695ctxt_a,N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( member2885886537299685624ctxt_a @ P3 @ ( set_Pr3995427970001988964ctxt_a @ ( enumer3922341085786344185ctxt_a @ N @ Xs ) ) )
      = ( ( ord_less_eq_nat @ N @ ( produc8631767124948943475ctxt_a @ P3 ) )
        & ( ord_less_nat @ ( produc8631767124948943475ctxt_a @ P3 ) @ ( plus_plus_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ N ) )
        & ( ( nth_Ground_gmctxt_a @ Xs @ ( minus_minus_nat @ ( produc8631767124948943475ctxt_a @ P3 ) @ N ) )
          = ( produc3552744573514591925ctxt_a @ P3 ) ) ) ) ).

% in_set_enumerate_eq
thf(fact_1033_in__set__enumerate__eq,axiom,
    ! [P3: product_prod_nat_nat,N: nat,Xs: list_nat] :
      ( ( member8440522571783428010at_nat @ P3 @ ( set_Pr5648618587558075414at_nat @ ( enumerate_nat @ N @ Xs ) ) )
      = ( ( ord_less_eq_nat @ N @ ( product_fst_nat_nat @ P3 ) )
        & ( ord_less_nat @ ( product_fst_nat_nat @ P3 ) @ ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ N ) )
        & ( ( nth_nat @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ P3 ) @ N ) )
          = ( product_snd_nat_nat @ P3 ) ) ) ) ).

% in_set_enumerate_eq
thf(fact_1034_inf__pigeonhole__principle,axiom,
    ! [N: nat,F: nat > nat > $o] :
      ( ! [K2: nat] :
        ? [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
          & ( F @ K2 @ I3 ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ N )
          & ! [K3: nat] :
            ? [K5: nat] :
              ( ( ord_less_eq_nat @ K3 @ K5 )
              & ( F @ K5 @ I2 ) ) ) ) ).

% inf_pigeonhole_principle
thf(fact_1035_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A2: nat,B: nat] :
      ( ! [A4: nat,B3: nat] :
          ( ( P @ A4 @ B3 )
          = ( P @ B3 @ A4 ) )
     => ( ! [A4: nat] : ( P @ A4 @ zero_zero_nat )
       => ( ! [A4: nat,B3: nat] :
              ( ( P @ A4 @ B3 )
             => ( P @ A4 @ ( plus_plus_nat @ A4 @ B3 ) ) )
         => ( P @ A2 @ B ) ) ) ) ).

% Euclid_induct
thf(fact_1036_Un__Diff__cancel2,axiom,
    ! [B4: set_Pr8282532413760598727term_a,A: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ ( minus_551215046067487790term_a @ B4 @ A ) @ A )
      = ( sup_su6310922012705202331term_a @ B4 @ A ) ) ).

% Un_Diff_cancel2
thf(fact_1037_Un__Diff__cancel,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( sup_su6310922012705202331term_a @ A @ ( minus_551215046067487790term_a @ B4 @ A ) )
      = ( sup_su6310922012705202331term_a @ A @ B4 ) ) ).

% Un_Diff_cancel
thf(fact_1038_psubset__imp__ex__mem,axiom,
    ! [A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( ord_le2482536469199093511_a_nat @ A @ B4 )
     => ? [B3: product_prod_a_nat] : ( member5724188588386418708_a_nat @ B3 @ ( minus_8630901905721465484_a_nat @ B4 @ A ) ) ) ).

% psubset_imp_ex_mem
thf(fact_1039_psubset__imp__ex__mem,axiom,
    ! [A: set_nat,B4: set_nat] :
      ( ( ord_less_set_nat @ A @ B4 )
     => ? [B3: nat] : ( member_nat @ B3 @ ( minus_minus_set_nat @ B4 @ A ) ) ) ).

% psubset_imp_ex_mem
thf(fact_1040_double__diff,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( ord_le7556488698670074471term_a @ B4 @ C )
       => ( ( minus_551215046067487790term_a @ B4 @ ( minus_551215046067487790term_a @ C @ A ) )
          = A ) ) ) ).

% double_diff
thf(fact_1041_Diff__subset,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] : ( ord_le7556488698670074471term_a @ ( minus_551215046067487790term_a @ A @ B4 ) @ A ) ).

% Diff_subset
thf(fact_1042_Diff__mono,axiom,
    ! [A: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a,D2: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ C )
     => ( ( ord_le7556488698670074471term_a @ D2 @ B4 )
       => ( ord_le7556488698670074471term_a @ ( minus_551215046067487790term_a @ A @ B4 ) @ ( minus_551215046067487790term_a @ C @ D2 ) ) ) ) ).

% Diff_mono
thf(fact_1043_Un__Diff,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( minus_551215046067487790term_a @ ( sup_su6310922012705202331term_a @ A @ B4 ) @ C )
      = ( sup_su6310922012705202331term_a @ ( minus_551215046067487790term_a @ A @ C ) @ ( minus_551215046067487790term_a @ B4 @ C ) ) ) ).

% Un_Diff
thf(fact_1044_image__diff__subset,axiom,
    ! [F: nat > nat,A: set_nat,B4: set_nat] : ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ ( image_nat_nat @ F @ A ) @ ( image_nat_nat @ F @ B4 ) ) @ ( image_nat_nat @ F @ ( minus_minus_set_nat @ A @ B4 ) ) ) ).

% image_diff_subset
thf(fact_1045_Diff__subset__conv,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a,C: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( minus_551215046067487790term_a @ A @ B4 ) @ C )
      = ( ord_le7556488698670074471term_a @ A @ ( sup_su6310922012705202331term_a @ B4 @ C ) ) ) ).

% Diff_subset_conv
thf(fact_1046_Diff__partition,axiom,
    ! [A: set_Pr8282532413760598727term_a,B4: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ A @ B4 )
     => ( ( sup_su6310922012705202331term_a @ A @ ( minus_551215046067487790term_a @ B4 @ A ) )
        = B4 ) ) ).

% Diff_partition
thf(fact_1047_Diff__iff,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ ( minus_8630901905721465484_a_nat @ A @ B4 ) )
      = ( ( member5724188588386418708_a_nat @ C3 @ A )
        & ~ ( member5724188588386418708_a_nat @ C3 @ B4 ) ) ) ).

% Diff_iff
thf(fact_1048_Diff__iff,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ ( minus_minus_set_nat @ A @ B4 ) )
      = ( ( member_nat @ C3 @ A )
        & ~ ( member_nat @ C3 @ B4 ) ) ) ).

% Diff_iff
thf(fact_1049_DiffI,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ A )
     => ( ~ ( member5724188588386418708_a_nat @ C3 @ B4 )
       => ( member5724188588386418708_a_nat @ C3 @ ( minus_8630901905721465484_a_nat @ A @ B4 ) ) ) ) ).

% DiffI
thf(fact_1050_DiffI,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ A )
     => ( ~ ( member_nat @ C3 @ B4 )
       => ( member_nat @ C3 @ ( minus_minus_set_nat @ A @ B4 ) ) ) ) ).

% DiffI
thf(fact_1051_append_Oright__neutral,axiom,
    ! [A2: list_nat] :
      ( ( append_nat @ A2 @ nil_nat )
      = A2 ) ).

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

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

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

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

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

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

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

% append_is_Nil_conv
thf(fact_1059_concat__eq__Nil__conv,axiom,
    ! [Xss: list_list_nat] :
      ( ( ( concat_nat @ Xss )
        = nil_nat )
      = ( ! [X4: list_nat] :
            ( ( member_list_nat @ X4 @ ( set_list_nat2 @ Xss ) )
           => ( X4 = nil_nat ) ) ) ) ).

% concat_eq_Nil_conv
thf(fact_1060_Nil__eq__concat__conv,axiom,
    ! [Xss: list_list_nat] :
      ( ( nil_nat
        = ( concat_nat @ Xss ) )
      = ( ! [X4: list_nat] :
            ( ( member_list_nat @ X4 @ ( set_list_nat2 @ Xss ) )
           => ( X4 = nil_nat ) ) ) ) ).

% Nil_eq_concat_conv
thf(fact_1061_enumerate__simps_I1_J,axiom,
    ! [N: nat] :
      ( ( enumerate_nat @ N @ nil_nat )
      = nil_Pr5478986624290739719at_nat ) ).

% enumerate_simps(1)
thf(fact_1062_length__0__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Ground_gmctxt_a ) ) ).

% length_0_conv
thf(fact_1063_length__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_nat ) ) ).

% length_0_conv
thf(fact_1064_replicate__empty,axiom,
    ! [N: nat,X3: ground_gmctxt_a] :
      ( ( ( replic9205591110366033502ctxt_a @ N @ X3 )
        = nil_Ground_gmctxt_a )
      = ( N = zero_zero_nat ) ) ).

% replicate_empty
thf(fact_1065_replicate__empty,axiom,
    ! [N: nat,X3: nat] :
      ( ( ( replicate_nat @ N @ X3 )
        = nil_nat )
      = ( N = zero_zero_nat ) ) ).

% replicate_empty
thf(fact_1066_empty__replicate,axiom,
    ! [N: nat,X3: ground_gmctxt_a] :
      ( ( nil_Ground_gmctxt_a
        = ( replic9205591110366033502ctxt_a @ N @ X3 ) )
      = ( N = zero_zero_nat ) ) ).

% empty_replicate
thf(fact_1067_empty__replicate,axiom,
    ! [N: nat,X3: nat] :
      ( ( nil_nat
        = ( replicate_nat @ N @ X3 ) )
      = ( N = zero_zero_nat ) ) ).

% empty_replicate
thf(fact_1068_concat__replicate__trivial,axiom,
    ! [I: nat] :
      ( ( concat_nat @ ( replicate_list_nat @ I @ nil_nat ) )
      = nil_nat ) ).

% concat_replicate_trivial
thf(fact_1069_length__greater__0__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s962548663205356226ctxt_a @ Xs ) )
      = ( Xs != nil_Ground_gmctxt_a ) ) ).

% length_greater_0_conv
thf(fact_1070_length__greater__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) )
      = ( Xs != nil_nat ) ) ).

% length_greater_0_conv
thf(fact_1071_DiffD2,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ ( minus_8630901905721465484_a_nat @ A @ B4 ) )
     => ~ ( member5724188588386418708_a_nat @ C3 @ B4 ) ) ).

% DiffD2
thf(fact_1072_DiffD2,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ ( minus_minus_set_nat @ A @ B4 ) )
     => ~ ( member_nat @ C3 @ B4 ) ) ).

% DiffD2
thf(fact_1073_DiffD1,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ ( minus_8630901905721465484_a_nat @ A @ B4 ) )
     => ( member5724188588386418708_a_nat @ C3 @ A ) ) ).

% DiffD1
thf(fact_1074_DiffD1,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ ( minus_minus_set_nat @ A @ B4 ) )
     => ( member_nat @ C3 @ A ) ) ).

% DiffD1
thf(fact_1075_DiffE,axiom,
    ! [C3: product_prod_a_nat,A: set_Pr4934435412358123699_a_nat,B4: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ C3 @ ( minus_8630901905721465484_a_nat @ A @ B4 ) )
     => ~ ( ( member5724188588386418708_a_nat @ C3 @ A )
         => ( member5724188588386418708_a_nat @ C3 @ B4 ) ) ) ).

% DiffE
thf(fact_1076_DiffE,axiom,
    ! [C3: nat,A: set_nat,B4: set_nat] :
      ( ( member_nat @ C3 @ ( minus_minus_set_nat @ A @ B4 ) )
     => ~ ( ( member_nat @ C3 @ A )
         => ( member_nat @ C3 @ B4 ) ) ) ).

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

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

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

% append_Nil
thf(fact_1080_list_Osize_I3_J,axiom,
    ( ( size_s962548663205356226ctxt_a @ nil_Ground_gmctxt_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1081_list_Osize_I3_J,axiom,
    ( ( size_size_list_nat @ nil_nat )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1082_replicate__0,axiom,
    ! [X3: ground_gmctxt_a] :
      ( ( replic9205591110366033502ctxt_a @ zero_zero_nat @ X3 )
      = nil_Ground_gmctxt_a ) ).

% replicate_0
thf(fact_1083_replicate__0,axiom,
    ! [X3: nat] :
      ( ( replicate_nat @ zero_zero_nat @ X3 )
      = nil_nat ) ).

% replicate_0
thf(fact_1084_concat_Osimps_I1_J,axiom,
    ( ( concat_nat @ nil_list_nat )
    = nil_nat ) ).

% concat.simps(1)
thf(fact_1085_set__list__diff,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( set_Ground_gmctxt_a2 @ ( missin6797617701560608538ctxt_a @ Xs @ Ys ) )
      = ( minus_4616606335744337325ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ ( set_Ground_gmctxt_a2 @ Ys ) ) ) ).

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

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

% upt_eq_Nil_conv
thf(fact_1088_fill__gholes__gmctxt__no__holes,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = zero_zero_nat )
     => ( ( ground2530127064035342964ctxt_a @ C @ nil_Ground_gmctxt_a )
        = C ) ) ).

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

% upt_0
thf(fact_1090_fill__gholes__gmctxt_Osimps_I1_J,axiom,
    ( ( ground2530127064035342964ctxt_a @ ground_GMHole_a @ nil_Ground_gmctxt_a )
    = ground_GMHole_a ) ).

% fill_gholes_gmctxt.simps(1)
thf(fact_1091_gmctxt__subtgm__at__fill__args__empty__pos,axiom,
    ! [C: ground_gmctxt_a,Ts: list_Ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s962548663205356226ctxt_a @ Ts ) )
     => ( ( ground6121243438039047541ctxt_a @ nil_nat @ C @ Ts )
        = Ts ) ) ).

% gmctxt_subtgm_at_fill_args_empty_pos
thf(fact_1092_gmctxt__subtgm__at__fill__args__empty__pos,axiom,
    ! [C: ground_gmctxt_a,Ts: list_nat] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_size_list_nat @ Ts ) )
     => ( ( ground6209547762876788007_a_nat @ nil_nat @ C @ Ts )
        = Ts ) ) ).

% gmctxt_subtgm_at_fill_args_empty_pos
thf(fact_1093_fill__gholes__no__holes,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = zero_zero_nat )
     => ( ( ground_fill_gholes_a @ C @ nil_Ground_gterm_a )
        = ( ground2297065866753446215ctxt_a @ C ) ) ) ).

% fill_gholes_no_holes
thf(fact_1094__092_060T_062_092_060_094sub_062G_Osimps,axiom,
    ! [A2: ground_gterm_a,F2: set_Pr4934435412358123699_a_nat] :
      ( ( member5261315023172567896term_a @ A2 @ ( ground_T_G_a @ F2 ) )
      = ( ? [A5: a] :
            ( ( A2
              = ( ground_GFun_a @ A5 @ nil_Ground_gterm_a ) )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A5 @ zero_zero_nat ) @ F2 ) )
        | ? [F5: a,N4: nat,Ss3: list_Ground_gterm_a] :
            ( ( A2
              = ( ground_GFun_a @ F5 @ Ss3 ) )
            & ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F5 @ N4 ) @ F2 )
            & ( ( size_s1893836384466666913term_a @ Ss3 )
              = N4 )
            & ! [X4: nat] :
                ( ( ord_less_nat @ X4 @ ( size_s1893836384466666913term_a @ Ss3 ) )
               => ( member5261315023172567896term_a @ ( nth_Ground_gterm_a @ Ss3 @ X4 ) @ ( ground_T_G_a @ F2 ) ) ) ) ) ) ).

% \<T>\<^sub>G.simps
thf(fact_1095__092_060T_062_092_060_094sub_062G_Osimps,axiom,
    ! [A2: ground_gterm_nat_nat,F2: set_Pr9093778441882193744at_nat] :
      ( ( member4528447914156422779at_nat @ A2 @ ( ground_T_G_nat_nat @ F2 ) )
      = ( ? [A5: nat > nat] :
            ( ( A2
              = ( ground_GFun_nat_nat @ A5 @ nil_Gr7643157726654171486at_nat ) )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A5 @ zero_zero_nat ) @ F2 ) )
        | ? [F5: nat > nat,N4: nat,Ss3: list_G4348582881148899572at_nat] :
            ( ( A2
              = ( ground_GFun_nat_nat @ F5 @ Ss3 ) )
            & ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F5 @ N4 ) @ F2 )
            & ( ( size_s4398795127965361032at_nat @ Ss3 )
              = N4 )
            & ! [X4: nat] :
                ( ( ord_less_nat @ X4 @ ( size_s4398795127965361032at_nat @ Ss3 ) )
               => ( member4528447914156422779at_nat @ ( nth_Gr572344633313914269at_nat @ Ss3 @ X4 ) @ ( ground_T_G_nat_nat @ F2 ) ) ) ) ) ) ).

% \<T>\<^sub>G.simps
thf(fact_1096_all__ctxt__closed__refl__on,axiom,
    ! [F2: set_Pr4934435412358123699_a_nat,R3: set_Pr8282532413760598727term_a,S: ground_gterm_a] :
      ( ( ground3158306204687651307osed_a @ F2 @ R3 )
     => ( ( member5261315023172567896term_a @ S @ ( ground_T_G_a @ F2 ) )
       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ S ) @ R3 ) ) ) ).

% all_ctxt_closed_refl_on
thf(fact_1097__092_060T_062_092_060_094sub_062G_Oconst,axiom,
    ! [A2: a,F2: set_Pr4934435412358123699_a_nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A2 @ zero_zero_nat ) @ F2 )
     => ( member5261315023172567896term_a @ ( ground_GFun_a @ A2 @ nil_Ground_gterm_a ) @ ( ground_T_G_a @ F2 ) ) ) ).

% \<T>\<^sub>G.const
thf(fact_1098__092_060T_062_092_060_094sub_062G_Oconst,axiom,
    ! [A2: nat > nat,F2: set_Pr9093778441882193744at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A2 @ zero_zero_nat ) @ F2 )
     => ( member4528447914156422779at_nat @ ( ground_GFun_nat_nat @ A2 @ nil_Gr7643157726654171486at_nat ) @ ( ground_T_G_nat_nat @ F2 ) ) ) ).

% \<T>\<^sub>G.const
thf(fact_1099__092_060T_062_092_060_094sub_062G_Oind,axiom,
    ! [F: a,N: nat,F2: set_Pr4934435412358123699_a_nat,Ss: list_Ground_gterm_a] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ N ) @ F2 )
     => ( ( ( size_s1893836384466666913term_a @ Ss )
          = N )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ss ) )
             => ( member5261315023172567896term_a @ ( nth_Ground_gterm_a @ Ss @ I2 ) @ ( ground_T_G_a @ F2 ) ) )
         => ( member5261315023172567896term_a @ ( ground_GFun_a @ F @ Ss ) @ ( ground_T_G_a @ F2 ) ) ) ) ) ).

% \<T>\<^sub>G.ind
thf(fact_1100__092_060T_062_092_060_094sub_062G_Oind,axiom,
    ! [F: nat > nat,N: nat,F2: set_Pr9093778441882193744at_nat,Ss: list_G4348582881148899572at_nat] :
      ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F @ N ) @ F2 )
     => ( ( ( size_s4398795127965361032at_nat @ Ss )
          = N )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s4398795127965361032at_nat @ Ss ) )
             => ( member4528447914156422779at_nat @ ( nth_Gr572344633313914269at_nat @ Ss @ I2 ) @ ( ground_T_G_nat_nat @ F2 ) ) )
         => ( member4528447914156422779at_nat @ ( ground_GFun_nat_nat @ F @ Ss ) @ ( ground_T_G_nat_nat @ F2 ) ) ) ) ) ).

% \<T>\<^sub>G.ind
thf(fact_1101__092_060T_062_092_060_094sub_062G_Ocases,axiom,
    ! [A2: ground_gterm_a,F2: set_Pr4934435412358123699_a_nat] :
      ( ( member5261315023172567896term_a @ A2 @ ( ground_T_G_a @ F2 ) )
     => ( ! [A4: a] :
            ( ( A2
              = ( ground_GFun_a @ A4 @ nil_Ground_gterm_a ) )
           => ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ A4 @ zero_zero_nat ) @ F2 ) )
       => ~ ! [F3: a,N3: nat,Ss2: list_Ground_gterm_a] :
              ( ( A2
                = ( ground_GFun_a @ F3 @ Ss2 ) )
             => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ N3 ) @ F2 )
               => ( ( ( size_s1893836384466666913term_a @ Ss2 )
                    = N3 )
                 => ~ ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ss2 ) )
                       => ( member5261315023172567896term_a @ ( nth_Ground_gterm_a @ Ss2 @ I3 ) @ ( ground_T_G_a @ F2 ) ) ) ) ) ) ) ) ).

% \<T>\<^sub>G.cases
thf(fact_1102__092_060T_062_092_060_094sub_062G_Ocases,axiom,
    ! [A2: ground_gterm_nat_nat,F2: set_Pr9093778441882193744at_nat] :
      ( ( member4528447914156422779at_nat @ A2 @ ( ground_T_G_nat_nat @ F2 ) )
     => ( ! [A4: nat > nat] :
            ( ( A2
              = ( ground_GFun_nat_nat @ A4 @ nil_Gr7643157726654171486at_nat ) )
           => ~ ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ A4 @ zero_zero_nat ) @ F2 ) )
       => ~ ! [F3: nat > nat,N3: nat,Ss2: list_G4348582881148899572at_nat] :
              ( ( A2
                = ( ground_GFun_nat_nat @ F3 @ Ss2 ) )
             => ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ F3 @ N3 ) @ F2 )
               => ( ( ( size_s4398795127965361032at_nat @ Ss2 )
                    = N3 )
                 => ~ ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s4398795127965361032at_nat @ Ss2 ) )
                       => ( member4528447914156422779at_nat @ ( nth_Gr572344633313914269at_nat @ Ss2 @ I3 ) @ ( ground_T_G_nat_nat @ F2 ) ) ) ) ) ) ) ) ).

% \<T>\<^sub>G.cases
thf(fact_1103_funas__gterm__gterm__of__gmctxt,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = zero_zero_nat )
     => ( ( ground_funas_gterm_a @ ( ground2297065866753446215ctxt_a @ C ) )
        = ( ground4323624445104842080ctxt_a @ C ) ) ) ).

% funas_gterm_gterm_of_gmctxt
thf(fact_1104_sndI,axiom,
    ! [X3: product_prod_a_nat,Y: a,Z2: nat] :
      ( ( X3
        = ( product_Pair_a_nat @ Y @ Z2 ) )
     => ( ( product_snd_a_nat @ X3 )
        = Z2 ) ) ).

% sndI
thf(fact_1105_sndI,axiom,
    ! [X3: produc8199716216217303280at_nat,Y: nat > nat,Z2: nat] :
      ( ( X3
        = ( produc72220940542539688at_nat @ Y @ Z2 ) )
     => ( ( produc1852801350702243542at_nat @ X3 )
        = Z2 ) ) ).

% sndI
thf(fact_1106_gmctxt__cl__refl,axiom,
    ! [T: ground_gterm_a,F2: set_Pr4934435412358123699_a_nat,R: set_Pr8282532413760598727term_a] :
      ( ( ord_le8666007276011122963_a_nat @ ( ground_funas_gterm_a @ T ) @ F2 )
     => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ T @ T ) @ ( ground_gmctxt_cl_a @ F2 @ R ) ) ) ).

% gmctxt_cl_refl
thf(fact_1107_fstI,axiom,
    ! [X3: product_prod_a_nat,Y: a,Z2: nat] :
      ( ( X3
        = ( product_Pair_a_nat @ Y @ Z2 ) )
     => ( ( product_fst_a_nat @ X3 )
        = Y ) ) ).

% fstI
thf(fact_1108_fstI,axiom,
    ! [X3: produc8199716216217303280at_nat,Y: nat > nat,Z2: nat] :
      ( ( X3
        = ( produc72220940542539688at_nat @ Y @ Z2 ) )
     => ( ( produc6156676138143019412at_nat @ X3 )
        = Y ) ) ).

% fstI
thf(fact_1109_eq__snd__iff,axiom,
    ! [B: nat,P3: product_prod_a_nat] :
      ( ( B
        = ( product_snd_a_nat @ P3 ) )
      = ( ? [A5: a] :
            ( P3
            = ( product_Pair_a_nat @ A5 @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_1110_eq__snd__iff,axiom,
    ! [B: nat,P3: produc8199716216217303280at_nat] :
      ( ( B
        = ( produc1852801350702243542at_nat @ P3 ) )
      = ( ? [A5: nat > nat] :
            ( P3
            = ( produc72220940542539688at_nat @ A5 @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_1111_eq__fst__iff,axiom,
    ! [A2: a,P3: product_prod_a_nat] :
      ( ( A2
        = ( product_fst_a_nat @ P3 ) )
      = ( ? [B5: nat] :
            ( P3
            = ( product_Pair_a_nat @ A2 @ B5 ) ) ) ) ).

% eq_fst_iff
thf(fact_1112_eq__fst__iff,axiom,
    ! [A2: nat > nat,P3: produc8199716216217303280at_nat] :
      ( ( A2
        = ( produc6156676138143019412at_nat @ P3 ) )
      = ( ? [B5: nat] :
            ( P3
            = ( produc72220940542539688at_nat @ A2 @ B5 ) ) ) ) ).

% eq_fst_iff
thf(fact_1113_no__gholes__gmctxt__of__gterm__gterm__of__gmctxt__id,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = zero_zero_nat )
     => ( ( ground582559344758063963term_a @ ( ground2297065866753446215ctxt_a @ C ) )
        = C ) ) ).

% no_gholes_gmctxt_of_gterm_gterm_of_gmctxt_id
thf(fact_1114_fill__gholes__GMHole,axiom,
    ! [Ss: list_Ground_gterm_a] :
      ( ( ( size_s1893836384466666913term_a @ Ss )
        = ( suc @ zero_zero_nat ) )
     => ( ( ground_fill_gholes_a @ ground_GMHole_a @ Ss )
        = ( nth_Ground_gterm_a @ Ss @ zero_zero_nat ) ) ) ).

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

% old.nat.inject
thf(fact_1116_nat_Oinject,axiom,
    ! [X22: nat,Y2: nat] :
      ( ( ( suc @ X22 )
        = ( suc @ Y2 ) )
      = ( X22 = Y2 ) ) ).

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

% lessI
thf(fact_1118_Suc__mono,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N ) ) ) ).

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

% Suc_less_eq
thf(fact_1120_Suc__le__mono,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M2 ) )
      = ( ord_less_eq_nat @ N @ M2 ) ) ).

% Suc_le_mono
thf(fact_1121_add__Suc__right,axiom,
    ! [M2: nat,N: nat] :
      ( ( plus_plus_nat @ M2 @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M2 @ N ) ) ) ).

% add_Suc_right
thf(fact_1122_diff__Suc__Suc,axiom,
    ! [M2: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M2 ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M2 @ N ) ) ).

% diff_Suc_Suc
thf(fact_1123_Suc__diff__diff,axiom,
    ! [M2: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M2 ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M2 @ N ) @ K ) ) ).

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

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

% less_Suc0
thf(fact_1126_num__holes__mctxt__of__term,axiom,
    ! [T: ground_gterm_a] :
      ( ( ground_num_gholes_a @ ( ground582559344758063963term_a @ T ) )
      = zero_zero_nat ) ).

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

% Suc_pred
thf(fact_1128_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_1129_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_1130_ex__Suc__conv,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P @ I4 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P @ ( suc @ I4 ) ) ) ) ) ).

% ex_Suc_conv
thf(fact_1131_all__Suc__conv,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P @ I4 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P @ ( suc @ I4 ) ) ) ) ) ).

% all_Suc_conv
thf(fact_1132_all__less__two,axiom,
    ! [P: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ ( suc @ zero_zero_nat ) ) )
           => ( P @ I4 ) ) )
      = ( ( P @ zero_zero_nat )
        & ( P @ ( suc @ zero_zero_nat ) ) ) ) ).

% all_less_two
thf(fact_1133_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M2: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M2 ) )
        = ( ord_less_nat @ N @ M2 ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_1134_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N5: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ N @ N5 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N5 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_1135_less__Suc__eq__0__disj,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
      = ( ( M2 = zero_zero_nat )
        | ? [J4: nat] :
            ( ( M2
              = ( suc @ J4 ) )
            & ( ord_less_nat @ J4 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_1136_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M5: nat] :
          ( N
          = ( suc @ M5 ) ) ) ).

% gr0_implies_Suc
thf(fact_1137_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M3: nat] :
            ( N
            = ( suc @ M3 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_1138_one__is__add,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M2 @ N ) )
      = ( ( ( M2
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M2 = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_1139_add__is__1,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( plus_plus_nat @ M2 @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M2
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M2 = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_1140_less__natE,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ~ ! [Q4: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M2 @ Q4 ) ) ) ) ).

% less_natE
thf(fact_1141_less__add__Suc1,axiom,
    ! [I: nat,M2: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M2 ) ) ) ).

% less_add_Suc1
thf(fact_1142_less__add__Suc2,axiom,
    ! [I: nat,M2: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M2 @ I ) ) ) ).

% less_add_Suc2
thf(fact_1143_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M3: nat,N4: nat] :
        ? [K4: nat] :
          ( N4
          = ( suc @ ( plus_plus_nat @ M3 @ K4 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_1144_less__imp__Suc__add,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ? [K2: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M2 @ K2 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_1145_add__Suc__shift,axiom,
    ! [M2: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M2 ) @ N )
      = ( plus_plus_nat @ M2 @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_1146_add__Suc,axiom,
    ! [M2: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M2 ) @ N )
      = ( suc @ ( plus_plus_nat @ M2 @ N ) ) ) ).

% add_Suc
thf(fact_1147_nat__arith_Osuc1,axiom,
    ! [A: nat,K: nat,A2: nat] :
      ( ( A
        = ( plus_plus_nat @ K @ A2 ) )
     => ( ( suc @ A )
        = ( plus_plus_nat @ K @ ( suc @ A2 ) ) ) ) ).

% nat_arith.suc1
thf(fact_1148_nat_Odistinct_I1_J,axiom,
    ! [X22: nat] :
      ( zero_zero_nat
     != ( suc @ X22 ) ) ).

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

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

% old.nat.distinct(1)
thf(fact_1151_nat_OdiscI,axiom,
    ! [Nat: nat,X22: nat] :
      ( ( Nat
        = ( suc @ X22 ) )
     => ( Nat != zero_zero_nat ) ) ).

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

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

% nat_induct
thf(fact_1154_diff__induct,axiom,
    ! [P: nat > nat > $o,M2: nat,N: nat] :
      ( ! [X: nat] : ( P @ X @ zero_zero_nat )
     => ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
       => ( ! [X: nat,Y3: nat] :
              ( ( P @ X @ Y3 )
             => ( P @ ( suc @ X ) @ ( suc @ Y3 ) ) )
         => ( P @ M2 @ N ) ) ) ) ).

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

% zero_induct
thf(fact_1156_Suc__neq__Zero,axiom,
    ! [M2: nat] :
      ( ( suc @ M2 )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_1157_Zero__neq__Suc,axiom,
    ! [M2: nat] :
      ( zero_zero_nat
     != ( suc @ M2 ) ) ).

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

% Zero_not_Suc
thf(fact_1159_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M5: nat] :
          ( N
          = ( suc @ M5 ) ) ) ).

% not0_implies_Suc
thf(fact_1160_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_1161_Suc__lessD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ N )
     => ( ord_less_nat @ M2 @ N ) ) ).

% Suc_lessD
thf(fact_1162_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_1163_Suc__lessI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ( ( suc @ M2 )
         != N )
       => ( ord_less_nat @ ( suc @ M2 ) @ N ) ) ) ).

% Suc_lessI
thf(fact_1164_less__SucE,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M2 @ N )
       => ( M2 = N ) ) ) ).

% less_SucE
thf(fact_1165_less__SucI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_nat @ M2 @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_1166_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P @ I4 ) ) )
      = ( ( P @ N )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P @ I4 ) ) ) ) ).

% Ex_less_Suc
thf(fact_1167_less__Suc__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
      = ( ( ord_less_nat @ M2 @ N )
        | ( M2 = N ) ) ) ).

% less_Suc_eq
thf(fact_1168_not__less__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M2 @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M2 ) ) ) ).

% not_less_eq
thf(fact_1169_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P @ I4 ) ) )
      = ( ( P @ N )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P @ I4 ) ) ) ) ).

% All_less_Suc
thf(fact_1170_Suc__less__eq2,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M2 )
      = ( ? [M6: nat] :
            ( ( M2
              = ( suc @ M6 ) )
            & ( ord_less_nat @ N @ M6 ) ) ) ) ).

% Suc_less_eq2
thf(fact_1171_less__antisym,axiom,
    ! [N: nat,M2: nat] :
      ( ~ ( ord_less_nat @ N @ M2 )
     => ( ( ord_less_nat @ N @ ( suc @ M2 ) )
       => ( M2 = N ) ) ) ).

% less_antisym
thf(fact_1172_Suc__less__SucD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N ) )
     => ( ord_less_nat @ M2 @ N ) ) ).

% Suc_less_SucD
thf(fact_1173_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_1174_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I2: nat] : ( P @ I2 @ ( suc @ I2 ) )
       => ( ! [I2: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I2 @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P @ I2 @ J2 )
                 => ( ( P @ J2 @ K2 )
                   => ( P @ I2 @ K2 ) ) ) ) )
         => ( P @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_1175_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I2: nat] :
            ( ( J
              = ( suc @ I2 ) )
           => ( P @ I2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ J )
             => ( ( P @ ( suc @ I2 ) )
               => ( P @ I2 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_1176_not__less__less__Suc__eq,axiom,
    ! [N: nat,M2: nat] :
      ( ~ ( ord_less_nat @ N @ M2 )
     => ( ( ord_less_nat @ N @ ( suc @ M2 ) )
        = ( N = M2 ) ) ) ).

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

% n_not_Suc_n
thf(fact_1178_Suc__inject,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ( suc @ X3 )
        = ( suc @ Y ) )
     => ( X3 = Y ) ) ).

% Suc_inject
thf(fact_1179_diff__less__Suc,axiom,
    ! [M2: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M2 @ N ) @ ( suc @ M2 ) ) ).

% diff_less_Suc
thf(fact_1180_Suc__diff__Suc,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ N @ M2 )
     => ( ( suc @ ( minus_minus_nat @ M2 @ ( suc @ N ) ) )
        = ( minus_minus_nat @ M2 @ N ) ) ) ).

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

% zero_induct_lemma
thf(fact_1182_Suc__diff__le,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_eq_nat @ N @ M2 )
     => ( ( minus_minus_nat @ ( suc @ M2 ) @ N )
        = ( suc @ ( minus_minus_nat @ M2 @ N ) ) ) ) ).

% Suc_diff_le
thf(fact_1183_transitive__stepwise__le,axiom,
    ! [M2: nat,N: nat,R2: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ! [X: nat] : ( R2 @ X @ X )
       => ( ! [X: nat,Y3: nat,Z: nat] :
              ( ( R2 @ X @ Y3 )
             => ( ( R2 @ Y3 @ Z )
               => ( R2 @ X @ Z ) ) )
         => ( ! [N3: nat] : ( R2 @ N3 @ ( suc @ N3 ) )
           => ( R2 @ M2 @ N ) ) ) ) ) ).

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

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

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

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

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

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

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

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

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

% Suc_leD
thf(fact_1193_Suc__leI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_eq_nat @ ( suc @ M2 ) @ N ) ) ).

% Suc_leI
thf(fact_1194_Suc__le__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M2 ) @ N )
      = ( ord_less_nat @ M2 @ N ) ) ).

% Suc_le_eq
thf(fact_1195_dec__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ I )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P @ N3 )
                 => ( P @ ( suc @ N3 ) ) ) ) )
         => ( P @ J ) ) ) ) ).

% dec_induct
thf(fact_1196_inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ J )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P @ ( suc @ N3 ) )
                 => ( P @ N3 ) ) ) )
         => ( P @ I ) ) ) ) ).

% inc_induct
thf(fact_1197_Suc__le__lessD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M2 ) @ N )
     => ( ord_less_nat @ M2 @ N ) ) ).

% Suc_le_lessD
thf(fact_1198_le__less__Suc__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ( ord_less_nat @ N @ ( suc @ M2 ) )
        = ( N = M2 ) ) ) ).

% le_less_Suc_eq
thf(fact_1199_less__Suc__eq__le,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
      = ( ord_less_eq_nat @ M2 @ N ) ) ).

% less_Suc_eq_le
thf(fact_1200_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N4: nat] : ( ord_less_eq_nat @ ( suc @ N4 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_1201_le__imp__less__Suc,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ord_less_nat @ M2 @ ( suc @ N ) ) ) ).

% le_imp_less_Suc
thf(fact_1202_Abstract__Rewriting_Ochain__mono,axiom,
    ! [R4: set_Pr8282532413760598727term_a,R2: set_Pr8282532413760598727term_a,Seq: nat > ground_gterm_a] :
      ( ( ord_le7556488698670074471term_a @ R4 @ R2 )
     => ( ! [I2: nat] : ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( Seq @ I2 ) @ ( Seq @ ( suc @ I2 ) ) ) @ R4 )
       => ! [I3: nat] : ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( Seq @ I3 ) @ ( Seq @ ( suc @ I3 ) ) ) @ R2 ) ) ) ).

% Abstract_Rewriting.chain_mono
thf(fact_1203_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N5: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N5 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N5 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_1204_lift__Suc__mono__le,axiom,
    ! [F: nat > set_Pr8282532413760598727term_a,N: nat,N5: nat] :
      ( ! [N3: nat] : ( ord_le7556488698670074471term_a @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N5 )
       => ( ord_le7556488698670074471term_a @ ( F @ N ) @ ( F @ N5 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_1205_lift__Suc__antimono__le,axiom,
    ! [F: nat > nat,N: nat,N5: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N5 )
       => ( ord_less_eq_nat @ ( F @ N5 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_1206_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_Pr8282532413760598727term_a,N: nat,N5: nat] :
      ( ! [N3: nat] : ( ord_le7556488698670074471term_a @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N5 )
       => ( ord_le7556488698670074471term_a @ ( F @ N5 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_1207_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I3: nat] :
                ( ( ord_less_eq_nat @ I3 @ K2 )
               => ~ ( P @ I3 ) )
            & ( P @ ( suc @ K2 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_1208_diff__Suc__less,axiom,
    ! [N: nat,I: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_1209_num__gholes_Osimps_I1_J,axiom,
    ( ( ground_num_gholes_a @ ground_GMHole_a )
    = ( suc @ zero_zero_nat ) ) ).

% num_gholes.simps(1)
thf(fact_1210_length__unfill__gholes,axiom,
    ! [C: ground_gmctxt_a,T: ground_gterm_a] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ ( ground582559344758063963term_a @ T ) )
     => ( ( size_s1893836384466666913term_a @ ( ground8214737007138946830oles_a @ C @ T ) )
        = ( ground_num_gholes_a @ C ) ) ) ).

% length_unfill_gholes
thf(fact_1211_adjust__idx__rev__def,axiom,
    ( missin3815256168798769645dx_rev
    = ( ^ [I4: nat,J4: nat] : ( if_nat @ ( ord_less_nat @ J4 @ I4 ) @ J4 @ ( minus_minus_nat @ J4 @ ( suc @ zero_zero_nat ) ) ) ) ) ).

% adjust_idx_rev_def
thf(fact_1212_inf__concat__simple_Ocases,axiom,
    ! [X3: produc8199716216217303280at_nat] :
      ( ! [F3: nat > nat] :
          ( X3
         != ( produc72220940542539688at_nat @ F3 @ zero_zero_nat ) )
     => ~ ! [F3: nat > nat,N3: nat] :
            ( X3
           != ( produc72220940542539688at_nat @ F3 @ ( suc @ N3 ) ) ) ) ).

% inf_concat_simple.cases
thf(fact_1213_remove__nth__sound__r,axiom,
    ! [N: nat,P3: nat,Xs: list_list_nat] :
      ( ( ord_less_eq_nat @ N @ P3 )
     => ( ( ord_less_nat @ P3 @ ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ( nth_list_nat @ ( missin5133812807938250791st_nat @ N @ Xs ) @ P3 )
          = ( nth_list_nat @ Xs @ ( suc @ P3 ) ) ) ) ) ).

% remove_nth_sound_r
thf(fact_1214_remove__nth__sound__r,axiom,
    ! [N: nat,P3: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ N @ P3 )
     => ( ( ord_less_nat @ P3 @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ N @ Xs ) @ P3 )
          = ( nth_Ground_gmctxt_a @ Xs @ ( suc @ P3 ) ) ) ) ) ).

% remove_nth_sound_r
thf(fact_1215_remove__nth__sound__r,axiom,
    ! [N: nat,P3: nat,Xs: list_nat] :
      ( ( ord_less_eq_nat @ N @ P3 )
     => ( ( ord_less_nat @ P3 @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) @ P3 )
          = ( nth_nat @ Xs @ ( suc @ P3 ) ) ) ) ) ).

% remove_nth_sound_r
thf(fact_1216_gmctxt_Osize_I4_J,axiom,
    ! [X21: a,X222: list_Ground_gmctxt_a] :
      ( ( size_s9020356940445107890ctxt_a @ ( ground_GMFun_a @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_l1580428505752620566ctxt_a @ size_s9020356940445107890ctxt_a @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% gmctxt.size(4)
thf(fact_1217_size__list__append,axiom,
    ! [F: nat > nat,Xs: list_nat,Ys: list_nat] :
      ( ( size_list_nat @ F @ ( append_nat @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_list_nat @ F @ Xs ) @ ( size_list_nat @ F @ Ys ) ) ) ).

% size_list_append
thf(fact_1218_size__list__estimation_H,axiom,
    ! [X3: product_prod_a_nat,Xs: list_P3592885314253461005_a_nat,Y: nat,F: product_prod_a_nat > nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
     => ( ( ord_less_eq_nat @ Y @ ( F @ X3 ) )
       => ( ord_less_eq_nat @ Y @ ( size_l179396747238966901_a_nat @ F @ Xs ) ) ) ) ).

% size_list_estimation'
thf(fact_1219_size__list__estimation_H,axiom,
    ! [X3: nat,Xs: list_nat,Y: nat,F: nat > nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
     => ( ( ord_less_eq_nat @ Y @ ( F @ X3 ) )
       => ( ord_less_eq_nat @ Y @ ( size_list_nat @ F @ Xs ) ) ) ) ).

% size_list_estimation'
thf(fact_1220_size__list__estimation_H,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a,Y: nat,F: ground_gmctxt_a > nat] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ( ( ord_less_eq_nat @ Y @ ( F @ X3 ) )
       => ( ord_less_eq_nat @ Y @ ( size_l1580428505752620566ctxt_a @ F @ Xs ) ) ) ) ).

% size_list_estimation'
thf(fact_1221_size__list__pointwise,axiom,
    ! [Xs: list_P3592885314253461005_a_nat,F: product_prod_a_nat > nat,G3: product_prod_a_nat > nat] :
      ( ! [X: product_prod_a_nat] :
          ( ( member5724188588386418708_a_nat @ X @ ( set_Pr924983374503034536_a_nat @ Xs ) )
         => ( ord_less_eq_nat @ ( F @ X ) @ ( G3 @ X ) ) )
     => ( ord_less_eq_nat @ ( size_l179396747238966901_a_nat @ F @ Xs ) @ ( size_l179396747238966901_a_nat @ G3 @ Xs ) ) ) ).

% size_list_pointwise
thf(fact_1222_size__list__pointwise,axiom,
    ! [Xs: list_nat,F: nat > nat,G3: nat > nat] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
         => ( ord_less_eq_nat @ ( F @ X ) @ ( G3 @ X ) ) )
     => ( ord_less_eq_nat @ ( size_list_nat @ F @ Xs ) @ ( size_list_nat @ G3 @ Xs ) ) ) ).

% size_list_pointwise
thf(fact_1223_size__list__pointwise,axiom,
    ! [Xs: list_Ground_gmctxt_a,F: ground_gmctxt_a > nat,G3: ground_gmctxt_a > nat] :
      ( ! [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
         => ( ord_less_eq_nat @ ( F @ X ) @ ( G3 @ X ) ) )
     => ( ord_less_eq_nat @ ( size_l1580428505752620566ctxt_a @ F @ Xs ) @ ( size_l1580428505752620566ctxt_a @ G3 @ Xs ) ) ) ).

% size_list_pointwise
thf(fact_1224_list_Osize__gen_I1_J,axiom,
    ! [X3: nat > nat] :
      ( ( size_list_nat @ X3 @ nil_nat )
      = zero_zero_nat ) ).

% list.size_gen(1)
thf(fact_1225_size__list__estimation,axiom,
    ! [X3: product_prod_a_nat,Xs: list_P3592885314253461005_a_nat,Y: nat,F: product_prod_a_nat > nat] :
      ( ( member5724188588386418708_a_nat @ X3 @ ( set_Pr924983374503034536_a_nat @ Xs ) )
     => ( ( ord_less_nat @ Y @ ( F @ X3 ) )
       => ( ord_less_nat @ Y @ ( size_l179396747238966901_a_nat @ F @ Xs ) ) ) ) ).

% size_list_estimation
thf(fact_1226_size__list__estimation,axiom,
    ! [X3: nat,Xs: list_nat,Y: nat,F: nat > nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
     => ( ( ord_less_nat @ Y @ ( F @ X3 ) )
       => ( ord_less_nat @ Y @ ( size_list_nat @ F @ Xs ) ) ) ) ).

% size_list_estimation
thf(fact_1227_size__list__estimation,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a,Y: nat,F: ground_gmctxt_a > nat] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ( ( ord_less_nat @ Y @ ( F @ X3 ) )
       => ( ord_less_nat @ Y @ ( size_l1580428505752620566ctxt_a @ F @ Xs ) ) ) ) ).

% size_list_estimation
thf(fact_1228_remove__nth__id,axiom,
    ! [Xs: list_Ground_gmctxt_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ N )
     => ( ( missin7823264313509747941ctxt_a @ N @ Xs )
        = Xs ) ) ).

% remove_nth_id
thf(fact_1229_remove__nth__id,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N )
     => ( ( missin7175274867594579095th_nat @ N @ Xs )
        = Xs ) ) ).

% remove_nth_id
thf(fact_1230_remove__nth__sound__l,axiom,
    ! [P3: nat,N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ P3 @ N )
     => ( ( nth_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) @ P3 )
        = ( nth_nat @ Xs @ P3 ) ) ) ).

% remove_nth_sound_l
thf(fact_1231_remove__nth__sound__l,axiom,
    ! [P3: nat,N: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ P3 @ N )
     => ( ( nth_list_nat @ ( missin5133812807938250791st_nat @ N @ Xs ) @ P3 )
        = ( nth_list_nat @ Xs @ P3 ) ) ) ).

% remove_nth_sound_l
thf(fact_1232_remove__nth__len,axiom,
    ! [I: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( suc @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ I @ Xs ) ) ) ) ) ).

% remove_nth_len
thf(fact_1233_remove__nth__len,axiom,
    ! [I: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( size_size_list_nat @ Xs )
        = ( suc @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ I @ Xs ) ) ) ) ) ).

% remove_nth_len
thf(fact_1234_remove__nth__P__compat,axiom,
    ! [As: list_list_nat,Bs: list_list_nat,P: list_nat > list_nat > $o,P3: nat] :
      ( ( ( size_s3023201423986296836st_nat @ As )
        = ( size_s3023201423986296836st_nat @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ As ) )
           => ( P @ ( nth_list_nat @ As @ I2 ) @ ( nth_list_nat @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( missin5133812807938250791st_nat @ P3 @ As ) ) )
           => ( P @ ( nth_list_nat @ ( missin5133812807938250791st_nat @ P3 @ As ) @ I3 ) @ ( nth_list_nat @ ( missin5133812807938250791st_nat @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1235_remove__nth__P__compat,axiom,
    ! [As: list_list_nat,Bs: list_Ground_gmctxt_a,P: list_nat > ground_gmctxt_a > $o,P3: nat] :
      ( ( ( size_s3023201423986296836st_nat @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ As ) )
           => ( P @ ( nth_list_nat @ As @ I2 ) @ ( nth_Ground_gmctxt_a @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( missin5133812807938250791st_nat @ P3 @ As ) ) )
           => ( P @ ( nth_list_nat @ ( missin5133812807938250791st_nat @ P3 @ As ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1236_remove__nth__P__compat,axiom,
    ! [As: list_list_nat,Bs: list_nat,P: list_nat > nat > $o,P3: nat] :
      ( ( ( size_s3023201423986296836st_nat @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ As ) )
           => ( P @ ( nth_list_nat @ As @ I2 ) @ ( nth_nat @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ ( missin5133812807938250791st_nat @ P3 @ As ) ) )
           => ( P @ ( nth_list_nat @ ( missin5133812807938250791st_nat @ P3 @ As ) @ I3 ) @ ( nth_nat @ ( missin7175274867594579095th_nat @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1237_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_list_nat,P: ground_gmctxt_a > list_nat > $o,P3: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_s3023201423986296836st_nat @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ As ) )
           => ( P @ ( nth_Ground_gmctxt_a @ As @ I2 ) @ ( nth_list_nat @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ As ) ) )
           => ( P @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ As ) @ I3 ) @ ( nth_list_nat @ ( missin5133812807938250791st_nat @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1238_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_Ground_gmctxt_a,P: ground_gmctxt_a > ground_gmctxt_a > $o,P3: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ As ) )
           => ( P @ ( nth_Ground_gmctxt_a @ As @ I2 ) @ ( nth_Ground_gmctxt_a @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ As ) ) )
           => ( P @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ As ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1239_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_nat,P: ground_gmctxt_a > nat > $o,P3: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ As ) )
           => ( P @ ( nth_Ground_gmctxt_a @ As @ I2 ) @ ( nth_nat @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ As ) ) )
           => ( P @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ As ) @ I3 ) @ ( nth_nat @ ( missin7175274867594579095th_nat @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1240_remove__nth__P__compat,axiom,
    ! [As: list_nat,Bs: list_list_nat,P: nat > list_nat > $o,P3: nat] :
      ( ( ( size_size_list_nat @ As )
        = ( size_s3023201423986296836st_nat @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ As ) )
           => ( P @ ( nth_nat @ As @ I2 ) @ ( nth_list_nat @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ P3 @ As ) ) )
           => ( P @ ( nth_nat @ ( missin7175274867594579095th_nat @ P3 @ As ) @ I3 ) @ ( nth_list_nat @ ( missin5133812807938250791st_nat @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1241_remove__nth__P__compat,axiom,
    ! [As: list_nat,Bs: list_Ground_gmctxt_a,P: nat > ground_gmctxt_a > $o,P3: nat] :
      ( ( ( size_size_list_nat @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ As ) )
           => ( P @ ( nth_nat @ As @ I2 ) @ ( nth_Ground_gmctxt_a @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ P3 @ As ) ) )
           => ( P @ ( nth_nat @ ( missin7175274867594579095th_nat @ P3 @ As ) @ I3 ) @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1242_remove__nth__P__compat,axiom,
    ! [As: list_nat,Bs: list_nat,P: nat > nat > $o,P3: nat] :
      ( ( ( size_size_list_nat @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ As ) )
           => ( P @ ( nth_nat @ As @ I2 ) @ ( nth_nat @ Bs @ I2 ) ) )
       => ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ P3 @ As ) ) )
           => ( P @ ( nth_nat @ ( missin7175274867594579095th_nat @ P3 @ As ) @ I3 ) @ ( nth_nat @ ( missin7175274867594579095th_nat @ P3 @ Bs ) @ I3 ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_1243_adjust__idx__rev__length,axiom,
    ! [I: nat,Xs: list_Ground_gmctxt_a,J: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( ord_less_nat @ J @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( J != I )
         => ( ord_less_nat @ ( missin3815256168798769645dx_rev @ I @ J ) @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ I @ Xs ) ) ) ) ) ) ).

% adjust_idx_rev_length
thf(fact_1244_adjust__idx__rev__length,axiom,
    ! [I: nat,Xs: list_nat,J: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
       => ( ( J != I )
         => ( ord_less_nat @ ( missin3815256168798769645dx_rev @ I @ J ) @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ I @ Xs ) ) ) ) ) ) ).

% adjust_idx_rev_length
thf(fact_1245_nth__remove__nth__conv,axiom,
    ! [I: nat,N: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ ( missin5133812807938250791st_nat @ N @ Xs ) ) )
     => ( ( nth_list_nat @ ( missin5133812807938250791st_nat @ N @ Xs ) @ I )
        = ( nth_list_nat @ Xs @ ( if_nat @ ( ord_less_nat @ I @ N ) @ I @ ( suc @ I ) ) ) ) ) ).

% nth_remove_nth_conv
thf(fact_1246_nth__remove__nth__conv,axiom,
    ! [I: nat,N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ N @ Xs ) ) )
     => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ N @ Xs ) @ I )
        = ( nth_Ground_gmctxt_a @ Xs @ ( if_nat @ ( ord_less_nat @ I @ N ) @ I @ ( suc @ I ) ) ) ) ) ).

% nth_remove_nth_conv
thf(fact_1247_nth__remove__nth__conv,axiom,
    ! [I: nat,N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) ) )
     => ( ( nth_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) @ I )
        = ( nth_nat @ Xs @ ( if_nat @ ( ord_less_nat @ I @ N ) @ I @ ( suc @ I ) ) ) ) ) ).

% nth_remove_nth_conv
thf(fact_1248_adjust__idx__rev__nth,axiom,
    ! [I: nat,Xs: list_list_nat,J: nat] :
      ( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( ( J != I )
       => ( ( nth_list_nat @ ( missin5133812807938250791st_nat @ I @ Xs ) @ ( missin3815256168798769645dx_rev @ I @ J ) )
          = ( nth_list_nat @ Xs @ J ) ) ) ) ).

% adjust_idx_rev_nth
thf(fact_1249_adjust__idx__rev__nth,axiom,
    ! [I: nat,Xs: list_Ground_gmctxt_a,J: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( J != I )
       => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ I @ Xs ) @ ( missin3815256168798769645dx_rev @ I @ J ) )
          = ( nth_Ground_gmctxt_a @ Xs @ J ) ) ) ) ).

% adjust_idx_rev_nth
thf(fact_1250_adjust__idx__rev__nth,axiom,
    ! [I: nat,Xs: list_nat,J: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( J != I )
       => ( ( nth_nat @ ( missin7175274867594579095th_nat @ I @ Xs ) @ ( missin3815256168798769645dx_rev @ I @ J ) )
          = ( nth_nat @ Xs @ J ) ) ) ) ).

% adjust_idx_rev_nth
thf(fact_1251_size__simp2,axiom,
    ! [T: char,Ts: list_char,S: char] :
      ( ( member_char @ T @ ( set_char2 @ Ts ) )
     => ( ord_less_nat @ ( size_size_char @ T ) @ ( suc @ ( suc @ ( plus_plus_nat @ ( size_size_char @ S ) @ ( size_list_char @ size_size_char @ Ts ) ) ) ) ) ) ).

% size_simp2
thf(fact_1252_size__simp2,axiom,
    ! [T: char,Ts: list_char,S: list_nat] :
      ( ( member_char @ T @ ( set_char2 @ Ts ) )
     => ( ord_less_nat @ ( size_size_char @ T ) @ ( suc @ ( suc @ ( plus_plus_nat @ ( size_size_list_nat @ S ) @ ( size_list_char @ size_size_char @ Ts ) ) ) ) ) ) ).

% size_simp2
thf(fact_1253_size__simp2,axiom,
    ! [T: list_nat,Ts: list_list_nat,S: list_Ground_gmctxt_a] :
      ( ( member_list_nat @ T @ ( set_list_nat2 @ Ts ) )
     => ( ord_less_nat @ ( size_size_list_nat @ T ) @ ( suc @ ( suc @ ( plus_plus_nat @ ( size_s962548663205356226ctxt_a @ S ) @ ( size_list_list_nat @ size_size_list_nat @ Ts ) ) ) ) ) ) ).

% size_simp2
thf(fact_1254_size__simp2,axiom,
    ! [T: list_nat,Ts: list_list_nat,S: char] :
      ( ( member_list_nat @ T @ ( set_list_nat2 @ Ts ) )
     => ( ord_less_nat @ ( size_size_list_nat @ T ) @ ( suc @ ( suc @ ( plus_plus_nat @ ( size_size_char @ S ) @ ( size_list_list_nat @ size_size_list_nat @ Ts ) ) ) ) ) ) ).

% size_simp2
thf(fact_1255_size__simp2,axiom,
    ! [T: list_nat,Ts: list_list_nat,S: list_nat] :
      ( ( member_list_nat @ T @ ( set_list_nat2 @ Ts ) )
     => ( ord_less_nat @ ( size_size_list_nat @ T ) @ ( suc @ ( suc @ ( plus_plus_nat @ ( size_size_list_nat @ S ) @ ( size_list_list_nat @ size_size_list_nat @ Ts ) ) ) ) ) ) ).

% size_simp2
thf(fact_1256_adjust__idx__def,axiom,
    ( missing_adjust_idx
    = ( ^ [I4: nat,J4: nat] : ( if_nat @ ( ord_less_nat @ J4 @ I4 ) @ J4 @ ( suc @ J4 ) ) ) ) ).

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

% exists_least_lemma
thf(fact_1258_zero__notin__Suc__image,axiom,
    ! [A: set_nat] :
      ~ ( member_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ A ) ) ).

% zero_notin_Suc_image
thf(fact_1259_list__decode_Ocases,axiom,
    ! [X3: nat] :
      ( ( X3 != zero_zero_nat )
     => ~ ! [N3: nat] :
            ( X3
           != ( suc @ N3 ) ) ) ).

% list_decode.cases
thf(fact_1260_partition__by__idx__def,axiom,
    ( multih7279076602905066526by_idx
    = ( ^ [L3: nat,Ys3: list_nat,I4: nat] : ( nth_nat @ ( nth_list_nat @ ( multih8544690682651757648by_nat @ ( upt @ zero_zero_nat @ L3 ) @ Ys3 ) @ I4 ) ) ) ) ).

% partition_by_idx_def
thf(fact_1261_sum__list__replicate__length_H,axiom,
    ! [N: nat] :
      ( ( groups4561878855575611511st_nat @ ( replicate_nat @ N @ ( suc @ zero_zero_nat ) ) )
      = N ) ).

% sum_list_replicate_length'
thf(fact_1262_sum__list__1__E,axiom,
    ! [Xs: list_nat] :
      ( ( ( groups4561878855575611511st_nat @ Xs )
        = ( suc @ zero_zero_nat ) )
     => ~ ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
           => ( ( ( nth_nat @ Xs @ I2 )
                = ( suc @ zero_zero_nat ) )
             => ~ ! [J3: nat] :
                    ( ( ord_less_nat @ J3 @ ( size_size_list_nat @ Xs ) )
                   => ( ( J3 != I2 )
                     => ( ( nth_nat @ Xs @ J3 )
                        = zero_zero_nat ) ) ) ) ) ) ).

% sum_list_1_E

% Helper facts (3)
thf(help_If_3_1_If_001t__Nat__Onat_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

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

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

% Conjectures (1)
thf(conj_0,conjecture,
    ground3158306204687651307osed_a @ f @ ( contex3086340098647126761_onp_a @ p @ r ) ).

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