TPTP Problem File: SLH0083^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_00327_013822__18614298_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1612 ( 402 unt; 349 typ;   0 def)
%            Number of atoms       : 3985 (1740 equ;   0 cnn)
%            Maximal formula atoms :   16 (   3 avg)
%            Number of connectives : 17264 ( 416   ~;  71   |; 378   &;14141   @)
%                                         (   0 <=>;2258  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   37 (   8 avg)
%            Number of types       :   61 (  60 usr)
%            Number of type conns  : 1040 (1040   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  292 ( 289 usr;  23 con; 0-3 aty)
%            Number of variables   : 4632 ( 117   ^;4190   !; 325   ?;4632   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 12:01:47.605
%------------------------------------------------------------------------------
% Could-be-implicit typings (60)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J_J,type,
    set_Pr3704946587519556825term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    produc138662389636003193term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_Mt__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    set_Pr5156918327056800967term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_Mt__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    produc789695711980045543term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_J_J,type,
    set_Pr7047708467701517959at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_Mt__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J_J,type,
    set_Pr8594894544342482375term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_J,type,
    produc492020038885415591at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J_J,type,
    produc7181046999888328871term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_Mt__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    produc7706083274472794855term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J_J,type,
    produc5265534648641515246ctxt_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Pr8693737435421807431at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    produc1930351079584355489term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_Mt__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J_J,type,
    set_Pr8687807964536448157ctxt_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    set_Pr2711430308268100935term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc859450856879609959at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_Mt__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    produc1017277696136915517ctxt_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    produc6008132053207661927term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    set_Pr6749809045309873730term_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    produc3922691147685405600st_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__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    list_P3326626112079836010term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    set_Pr5723739931173529104term_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    set_Pr3451248702717554689st_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____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc1525979690750518759term_a: $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__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    produc7252121546586809946term_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    list_P1634760256947977060term_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_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    set_Pr1502840878978300170term_a: $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__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc1828647624359046049st_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    list_l5172476077732501185term_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    set_li2593837317708494491term_a: $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_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc7109479242990851284term_a: $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__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__Set__Oset_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    set_li3075106635084045668ctxt_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    set_li8588095516285831957term_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__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__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__Ground____Ctxt__Ogctxt_Itf__a_J,type,
    ground_gctxt_a: $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 ).

% Explicit typings (289)
thf(sy_c_Abstract__Rewriting_Omeet_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    abstra1295463122436168940term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Abstract__Rewriting_Omeet_001t__Nat__Onat,type,
    abstract_meet_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Basic__Utils_Oadd__elem__list__lists_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    basic_1848475516845296949ctxt_a: ground_gmctxt_a > list_Ground_gmctxt_a > list_l1578326660578982846ctxt_a ).

thf(sy_c_Basic__Utils_Oadd__elem__list__lists_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    basic_7490683292590119640term_a: ground_gterm_a > list_Ground_gterm_a > list_l4678906206682822203term_a ).

thf(sy_c_Basic__Utils_Oadd__elem__list__lists_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    basic_352925816409123806term_a: list_Ground_gterm_a > list_l4678906206682822203term_a > list_l5172476077732501185term_a ).

thf(sy_c_Basic__Utils_Oadd__elem__list__lists_001t__Nat__Onat,type,
    basic_4874698711677410535ts_nat: nat > list_nat > list_list_nat ).

thf(sy_c_Conditionally__Complete__Lattices_Opreorder_Obdd__below_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    condit5323614196651773062ctxt_a: ( ground_gmctxt_a > ground_gmctxt_a > $o ) > set_Ground_gmctxt_a > $o ).

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__Ctxt_Ogctxt__apply__term_001tf__a,type,
    ground5122445521002937143term_a: ground_gctxt_a > ground_gterm_a > ground_gterm_a ).

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_001tf__a,type,
    ground2530127064035342964ctxt_a: ground_gmctxt_a > list_Ground_gmctxt_a > ground_gmctxt_a ).

thf(sy_c_Ground__MCtxt_Ogctxt__of__gmctxt_001tf__a,type,
    ground5333112502500237606ctxt_a: ground_gmctxt_a > ground_gctxt_a ).

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_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__gctxt_001tf__a,type,
    ground5442125528501538874ctxt_a: ground_gctxt_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__Ground____Terms__Ogterm_Itf__a_J,type,
    ground8448531477516352152term_a: list_nat > ground_gmctxt_a > list_Ground_gterm_a > list_Ground_gterm_a ).

thf(sy_c_Ground__MCtxt_Ogmctxt__subtgm__at__fill__args_001tf__a_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    ground8506523905942776734term_a: list_nat > ground_gmctxt_a > list_l4678906206682822203term_a > list_l4678906206682822203term_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_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_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__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_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

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

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

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

thf(sy_c_HOL_Oundefined_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    undefi3946296454836805481at_nat: product_prod_nat_nat ).

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

thf(sy_c_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    if_Pro6206227464963214023at_nat: $o > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_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__Ground____Terms__Ogterm_Itf__a_J,type,
    append7798372865478268874term_a: list_Ground_gterm_a > list_Ground_gterm_a > list_Ground_gterm_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__Ground____Terms__Ogterm_Itf__a_J_J,type,
    append488786809011849168term_a: list_l4678906206682822203term_a > list_l4678906206682822203term_a > list_l4678906206682822203term_a ).

thf(sy_c_List_Oappend_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    append7609275726793042774term_a: list_l5172476077732501185term_a > list_l5172476077732501185term_a > list_l5172476077732501185term_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__Ground____Terms__Ogterm_Itf__a_J_J,type,
    append7642382048406593273term_a: list_P1634760256947977060term_a > list_P1634760256947977060term_a > list_P1634760256947977060term_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    append6435179048203901439term_a: list_P3326626112079836010term_a > list_P3326626112079836010term_a > list_P3326626112079836010term_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__Ground____Terms__Ogterm_Itf__a_J_J,type,
    concat5214662034885773942term_a: list_l5172476077732501185term_a > list_l4678906206682822203term_a ).

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__Ground____Terms__Ogterm_Itf__a_J,type,
    enumer8595146184022354964term_a: nat > list_Ground_gterm_a > list_P1634760256947977060term_a ).

thf(sy_c_List_Oenumerate_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    enumer2156928005790035738term_a: nat > list_l4678906206682822203term_a > list_P3326626112079836010term_a ).

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

thf(sy_c_List_Olast_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    last_Ground_gmctxt_a: list_Ground_gmctxt_a > ground_gmctxt_a ).

thf(sy_c_List_Olast_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    last_Ground_gterm_a: list_Ground_gterm_a > ground_gterm_a ).

thf(sy_c_List_Olast_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    last_l3433759110902854356term_a: list_l4678906206682822203term_a > list_Ground_gterm_a ).

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

thf(sy_c_List_Olast_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    last_P5697554543439633286term_a: list_P2433084232546440685term_a > produc1525979690750518759term_a ).

thf(sy_c_List_Olenlex_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    lenlex1266891566717636179ctxt_a: set_Pr8705490787052945405ctxt_a > set_Pr8687807964536448157ctxt_a ).

thf(sy_c_List_Olenlex_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    lenlex5309932337917522490term_a: set_Pr8282532413760598727term_a > set_Pr2711430308268100935term_a ).

thf(sy_c_List_Olenlex_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    lenlex7322141736387652160term_a: set_Pr2711430308268100935term_a > set_Pr8594894544342482375term_a ).

thf(sy_c_List_Olenlex_001t__Nat__Onat,type,
    lenlex_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_List_Olex_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    lex_Ground_gmctxt_a: set_Pr8705490787052945405ctxt_a > set_Pr8687807964536448157ctxt_a ).

thf(sy_c_List_Olex_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    lex_Ground_gterm_a: set_Pr8282532413760598727term_a > set_Pr2711430308268100935term_a ).

thf(sy_c_List_Olex_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    lex_li1046265222154031007term_a: set_Pr2711430308268100935term_a > set_Pr8594894544342482375term_a ).

thf(sy_c_List_Olex_001t__Nat__Onat,type,
    lex_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_List_Olist_OCons_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    cons_Ground_gmctxt_a: ground_gmctxt_a > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Olist_OCons_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    cons_Ground_gterm_a: ground_gterm_a > list_Ground_gterm_a > list_Ground_gterm_a ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    cons_l2925462854866423288ctxt_a: list_Ground_gmctxt_a > list_l1578326660578982846ctxt_a > list_l1578326660578982846ctxt_a ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    cons_l7239566772969696491term_a: list_Ground_gterm_a > list_l4678906206682822203term_a > list_l4678906206682822203term_a ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    cons_l1075082019044443889term_a: list_l4678906206682822203term_a > list_l5172476077732501185term_a > list_l5172476077732501185term_a ).

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

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

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    cons_P5554873272834883997term_a: produc1525979690750518759term_a > list_P2433084232546440685term_a > list_P2433084232546440685term_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    cons_P6512896166579812791at_nat: product_prod_nat_nat > list_P6011104703257516679at_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_Itf__a_J,type,
    nil_Ground_gterm_a: list_Ground_gterm_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    nil_li5566661803063418280ctxt_a: list_l1578326660578982846ctxt_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    nil_li1555898576520524091term_a: list_l4678906206682822203term_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    nil_li3774524310483215169term_a: list_l5172476077732501185term_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__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    nil_Pr1701271659634034157term_a: list_P2433084232546440685term_a ).

thf(sy_c_List_Olist_Omap_001t__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    map_Gr980675717119874050ctxt_a: ( ground_gmctxt_a > ground_gmctxt_a ) > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Olist_Omap_001t__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    map_Gr8458857686193410251term_a: ( ground_gmctxt_a > ground_gterm_a ) > list_Ground_gmctxt_a > list_Ground_gterm_a ).

thf(sy_c_List_Olist_Omap_001t__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__Nat__Onat,type,
    map_Gr1679544123147727284_a_nat: ( ground_gmctxt_a > nat ) > list_Ground_gmctxt_a > list_nat ).

thf(sy_c_List_Olist_Omap_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    map_Gr6591338906797447177ctxt_a: ( ground_gterm_a > ground_gmctxt_a ) > list_Ground_gterm_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Olist_Omap_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    map_Gr5920649409875942148term_a: ( ground_gterm_a > ground_gterm_a ) > list_Ground_gterm_a > list_Ground_gterm_a ).

thf(sy_c_List_Olist_Omap_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Nat__Onat,type,
    map_Gr9003416157176963003_a_nat: ( ground_gterm_a > nat ) > list_Ground_gterm_a > list_nat ).

thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_001t__Nat__Onat,type,
    map_li8467591744059766721_a_nat: ( list_Ground_gterm_a > nat ) > list_l4678906206682822203term_a > list_nat ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    map_na2753241459123782580ctxt_a: ( nat > ground_gmctxt_a ) > list_nat > list_Ground_gmctxt_a ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    map_na7668277823733732505term_a: ( nat > ground_gterm_a ) > list_nat > list_Ground_gterm_a ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    map_na3194843725302796575term_a: ( nat > list_Ground_gterm_a ) > list_nat > list_l4678906206682822203term_a ).

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

thf(sy_c_List_Olist_Omap_001t__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,
    map_Pr9200830483196091396term_a: ( produc1525979690750518759term_a > produc1525979690750518759term_a ) > list_P2433084232546440685term_a > list_P2433084232546440685term_a ).

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__Ground____Terms__Ogterm_Itf__a_J,type,
    set_Ground_gterm_a2: list_Ground_gterm_a > set_Ground_gterm_a ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    set_li3057194059929822169ctxt_a: list_l1578326660578982846ctxt_a > set_li3075106635084045668ctxt_a ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    set_li7546925467519454922term_a: list_l4678906206682822203term_a > set_li8588095516285831957term_a ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    set_li8466561177209531728term_a: list_l5172476077732501185term_a > set_li2593837317708494491term_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__Ground____Terms__Ogterm_Itf__a_J_J,type,
    set_Pr3203312087732499071term_a: list_P1634760256947977060term_a > set_Pr1502840878978300170term_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    set_Pr4194642937221624453term_a: list_P3326626112079836010term_a > set_Pr5723739931173529104term_a ).

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__update_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    list_u7950812632479372336ctxt_a: list_Ground_gmctxt_a > nat > ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_List_Olist__update_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    list_u6582344683876525341term_a: list_Ground_gterm_a > nat > ground_gterm_a > list_Ground_gterm_a ).

thf(sy_c_List_Olist__update_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    list_u412135983231242147term_a: list_l4678906206682822203term_a > nat > list_Ground_gterm_a > list_l4678906206682822203term_a ).

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

thf(sy_c_List_Olist__update_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    list_u8102571067576484949term_a: list_P2433084232546440685term_a > nat > produc1525979690750518759term_a > list_P2433084232546440685term_a ).

thf(sy_c_List_Olistrel1_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    listre839271074516595327ctxt_a: set_Pr8705490787052945405ctxt_a > set_Pr8687807964536448157ctxt_a ).

thf(sy_c_List_Olistrel1_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    listre9104501415344685838term_a: set_Pr8282532413760598727term_a > set_Pr2711430308268100935term_a ).

thf(sy_c_List_Olistrel1_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    listre1188387051607982356term_a: set_Pr2711430308268100935term_a > set_Pr8594894544342482375term_a ).

thf(sy_c_List_Olistrel1_001t__Nat__Onat,type,
    listrel1_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_List_On__lists_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    n_list4828808560468397712ctxt_a: nat > list_Ground_gmctxt_a > list_l1578326660578982846ctxt_a ).

thf(sy_c_List_On__lists_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    n_list1804630026390934205term_a: nat > list_Ground_gterm_a > list_l4678906206682822203term_a ).

thf(sy_c_List_On__lists_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    n_list8386693656151141699term_a: nat > list_l4678906206682822203term_a > list_l5172476077732501185term_a ).

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

thf(sy_c_List_Onth_001t__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_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__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    nth_li9096660926740921666term_a: list_l5172476077732501185term_a > nat > list_l4678906206682822203term_a ).

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__Ground____Terms__Ogterm_Itf__a_J_J,type,
    nth_Pr5718682320234703373term_a: list_P1634760256947977060term_a > nat > produc7109479242990851284term_a ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    nth_Pr7045840962053786387term_a: list_P3326626112079836010term_a > nat > produc7252121546586809946term_a ).

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_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_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__Ground____Terms__Ogterm_Itf__a_J,type,
    missin5607496018787941767term_a: list_Ground_gterm_a > ( nat > nat ) > list_Ground_gterm_a ).

thf(sy_c_Missing__List_Opermut_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    missin103505523753413389term_a: list_l4678906206682822203term_a > ( nat > nat ) > list_l4678906206682822203term_a ).

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

thf(sy_c_Missing__List_Opermut__aux_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    missin1343833451449182556ctxt_a: list_Ground_gmctxt_a > ( nat > nat ) > list_Ground_gmctxt_a > list_Ground_gmctxt_a ).

thf(sy_c_Missing__List_Opermut__aux_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    missin7316750521486066929term_a: list_Ground_gterm_a > ( nat > nat ) > list_Ground_gterm_a > list_Ground_gterm_a ).

thf(sy_c_Missing__List_Opermut__aux_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    missin8070190275936138615term_a: list_l4678906206682822203term_a > ( nat > nat ) > list_l4678906206682822203term_a > list_l4678906206682822203term_a ).

thf(sy_c_Missing__List_Opermut__aux_001t__Nat__Onat,type,
    missin1888654203714970382ux_nat: list_nat > ( nat > nat ) > list_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__Ground____Terms__Ogterm_Itf__a_J,type,
    missin1630609993678954280term_a: nat > list_Ground_gterm_a > list_Ground_gterm_a ).

thf(sy_c_Missing__List_Oremove__nth_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    missin8797143349754660910term_a: nat > list_l4678906206682822203term_a > list_l4678906206682822203term_a ).

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

thf(sy_c_Nat_OSuc,type,
    suc: 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_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__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    size_s3474408278181496621term_a: list_l5172476077732501185term_a > 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__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    size_s2378411291002718200term_a: list_P1634760256947977060term_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    size_s2253831711320483326term_a: list_P3326626112079836010term_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__String__Ochar,type,
    size_size_char: char > nat ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux,type,
    nat_prod_decode_aux: nat > nat > product_prod_nat_nat ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux__rel,type,
    nat_pr5047031295181774490ux_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

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__List__Olist_It__Nat__Onat_J,type,
    ord_less_list_nat: list_nat > list_nat > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__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__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_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J_J,type,
    ord_le5604493270027003598_nat_o: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    ord_le704812498762024988_nat_o: ( product_prod_nat_nat > $o ) > ( product_prod_nat_nat > $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__List__Olist_It__Nat__Onat_J,type,
    ord_less_eq_list_nat: list_nat > list_nat > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__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__Ground____Terms__Ogterm_Itf__a_J_J,type,
    ord_le2380367239515552431term_a: set_Ground_gterm_a > set_Ground_gterm_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    ord_le1527559921741259445term_a: set_li8588095516285831957term_a > set_li8588095516285831957term_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____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    ord_le8148545718494969506term_a: set_Pr6749809045309873730term_a > set_Pr6749809045309873730term_a > $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_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ord_le3146513528884898305at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > $o ).

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_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__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_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__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    produc4772472886035905909ctxt_a: list_Ground_gmctxt_a > list_Ground_gmctxt_a > produc1017277696136915517ctxt_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc6818685258692100823term_a: list_Ground_gterm_a > list_Ground_gterm_a > produc6008132053207661927term_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    produc6239833450114252375term_a: list_l4678906206682822203term_a > list_l4678906206682822203term_a > produc7706083274472794855term_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc2694037385005941721st_nat: list_nat > list_nat > produc1828647624359046049st_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__Ground____Terms__Ogterm_Itf__a_J,type,
    produc4697074808646628614term_a: nat > ground_gterm_a > produc7109479242990851284term_a ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc1055361199944718092term_a: nat > list_Ground_gterm_a > produc7252121546586809946term_a ).

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__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
    produc2768974569381949847at_nat: produc8199716216217303280at_nat > produc8199716216217303280at_nat > produc492020038885415591at_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    produc524587728620742321term_a: produc2459281416120113548term_a > produc2459281416120113548term_a > produc138662389636003193term_a ).

thf(sy_c_Product__Type_OPair_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,
    produc4593192926746741591term_a: produc1525979690750518759term_a > produc1525979690750518759term_a > produc789695711980045543term_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__List__Olist_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    produc2021719058512462696ctxt_a: product_prod_nat_nat > list_l1578326660578982846ctxt_a > produc5265534648641515246ctxt_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    produc159813579597784081term_a: product_prod_nat_nat > list_l4678906206682822203term_a > produc1930351079584355489term_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__List__Olist_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    produc689260213220024727term_a: product_prod_nat_nat > list_l5172476077732501185term_a > produc7181046999888328871term_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    produc8649917717998259994st_nat: product_prod_nat_nat > list_list_nat > produc3922691147685405600st_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc6161850002892822231at_nat: product_prod_nat_nat > product_prod_nat_nat > produc859450856879609959at_nat ).

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__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc8428836298496521042term_a: produc2459281416120113548term_a > ground_gmctxt_a ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    produc5097907526672912195term_a: produc1525979690750518759term_a > ground_gterm_a ).

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__Ground____Terms__Ogterm_Itf__a_J,type,
    produc6672059348947727898term_a: produc7109479242990851284term_a > nat ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc5587245019348778528term_a: produc7252121546586809946term_a > 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_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__Ground____MCtxt__Ogmctxt_Itf__a_J_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc7861257790526860176term_a: produc2459281416120113548term_a > list_Ground_gterm_a ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Ground____Terms__Ogterm_Itf__a_J_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    produc5323275678763266181term_a: produc1525979690750518759term_a > ground_gterm_a ).

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__Ground____Terms__Ogterm_Itf__a_J,type,
    produc4207926146178914648term_a: produc7109479242990851284term_a > ground_gterm_a ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    produc8862243304664279646term_a: produc7252121546586809946term_a > list_Ground_gterm_a ).

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_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_Transitive__Closure_Ortrancl_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    transi2468631686036622171ctxt_a: set_Pr8705490787052945405ctxt_a > set_Pr8705490787052945405ctxt_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    transi7074228654303032114term_a: set_Pr8282532413760598727term_a > set_Pr8282532413760598727term_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    transi5398267936246972139ctxt_a: set_Pr8687807964536448157ctxt_a > set_Pr8687807964536448157ctxt_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    transi1606512847155760952term_a: set_Pr2711430308268100935term_a > set_Pr2711430308268100935term_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    transi364289950432583358term_a: set_Pr8594894544342482375term_a > set_Pr8594894544342482375term_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__List__Olist_It__Nat__Onat_J,type,
    transi5285580207609517981st_nat: set_Pr3451248702717554689st_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Nat__Onat,type,
    transi2905341329935302413cl_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
    transi3422749762518297843at_nat: set_Pr7047708467701517959at_nat > set_Pr7047708467701517959at_nat ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    transi7798120181674390985term_a: set_Pr3704946587519556825term_a > set_Pr3704946587519556825term_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J,type,
    transi4338356288242649066term_a: set_Pr5156918327056800967term_a > set_Pr5156918327056800967term_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    transi8609417484261754244at_nat: set_Pr8693737435421807431at_nat > set_Pr8693737435421807431at_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__Ground____Terms__Ogterm_Itf__a_J,type,
    concat4415380251885098797term_a: product_prod_nat_nat > list_l4678906206682822203term_a > product_prod_nat_nat ).

thf(sy_c_Utils_Oconcat__index__split_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    concat5187525703047707059term_a: product_prod_nat_nat > list_l5172476077732501185term_a > 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_Utils_Oconcat__index__split__rel_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    concat4449597247567141783ctxt_a: produc5265534648641515246ctxt_a > produc5265534648641515246ctxt_a > $o ).

thf(sy_c_Utils_Oconcat__index__split__rel_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    concat1048605534348661750term_a: produc1930351079584355489term_a > produc1930351079584355489term_a > $o ).

thf(sy_c_Utils_Oconcat__index__split__rel_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    concat4988383578334559740term_a: produc7181046999888328871term_a > produc7181046999888328871term_a > $o ).

thf(sy_c_Utils_Oconcat__index__split__rel_001t__Nat__Onat,type,
    concat1575402509940520777el_nat: produc3922691147685405600st_nat > produc3922691147685405600st_nat > $o ).

thf(sy_c_Utils_Otrancl__list_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    trancl6028151697025156246ctxt_a: set_Pr8705490787052945405ctxt_a > set_Pr8687807964536448157ctxt_a ).

thf(sy_c_Utils_Otrancl__list_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    trancl1902929335784340279term_a: set_Pr8282532413760598727term_a > set_Pr2711430308268100935term_a ).

thf(sy_c_Utils_Otrancl__list_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    trancl5818250397338112189term_a: set_Pr2711430308268100935term_a > set_Pr8594894544342482375term_a ).

thf(sy_c_Utils_Otrancl__list_001t__Nat__Onat,type,
    trancl_list_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_Utils_Otrancl__listp_001t__Ground____MCtxt__Ogmctxt_Itf__a_J,type,
    trancl3815965565430463256ctxt_a: ( ground_gmctxt_a > ground_gmctxt_a > $o ) > list_Ground_gmctxt_a > list_Ground_gmctxt_a > $o ).

thf(sy_c_Utils_Otrancl__listp_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    trancl3536835252858651701term_a: ( ground_gterm_a > ground_gterm_a > $o ) > list_Ground_gterm_a > list_Ground_gterm_a > $o ).

thf(sy_c_Utils_Otrancl__listp_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    trancl1148691031646339771term_a: ( list_Ground_gterm_a > list_Ground_gterm_a > $o ) > list_l4678906206682822203term_a > list_l4678906206682822203term_a > $o ).

thf(sy_c_Utils_Otrancl__listp_001t__Nat__Onat,type,
    trancl_listp_nat: ( nat > nat > $o ) > list_nat > list_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    accp_P4275260045618599050at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J_J,type,
    accp_P932351830650692389ctxt_a: ( produc5265534648641515246ctxt_a > produc5265534648641515246ctxt_a > $o ) > produc5265534648641515246ctxt_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    accp_P4948735776064185002term_a: ( produc1930351079584355489term_a > produc1930351079584355489term_a > $o ) > produc1930351079584355489term_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J_J,type,
    accp_P1298813572345179696term_a: ( produc7181046999888328871term_a > produc7181046999888328871term_a > $o ) > produc7181046999888328871term_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    accp_P6748712283191960023st_nat: ( produc3922691147685405600st_nat > produc3922691147685405600st_nat > $o ) > produc3922691147685405600st_nat > $o ).

thf(sy_c_Wellfounded_Omeasure_001t__Ground____Terms__Ogterm_Itf__a_J,type,
    measur8260484504157126775term_a: ( ground_gterm_a > nat ) > set_Pr8282532413760598727term_a ).

thf(sy_c_Wellfounded_Omeasure_001t__Nat__Onat,type,
    measure_nat: ( nat > nat ) > set_Pr1261947904930325089at_nat ).

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_Itf__a_J,type,
    member5261315023172567896term_a: ground_gterm_a > set_Ground_gterm_a > $o ).

thf(sy_c_member_001t__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J,type,
    member2714729351964853061ctxt_a: list_Ground_gmctxt_a > set_li3075106635084045668ctxt_a > $o ).

thf(sy_c_member_001t__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J,type,
    member5011579089780872286term_a: list_Ground_gterm_a > set_li8588095516285831957term_a > $o ).

thf(sy_c_member_001t__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    member6060894471016913124term_a: list_l4678906206682822203term_a > set_li2593837317708494491term_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_Mt__Nat__Onat_J,type,
    member7226740684066999833at_nat: produc8199716216217303280at_nat > set_Pr9093778441882193744at_nat > $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____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    member8767046467196472611term_a: produc2459281416120113548term_a > set_Pr6749809045309873730term_a > $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__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_Mt__List__Olist_It__Ground____MCtxt__Ogmctxt_Itf__a_J_J_J,type,
    member6597889099603620838ctxt_a: produc1017277696136915517ctxt_a > set_Pr8687807964536448157ctxt_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    member3518026002450860944term_a: produc6008132053207661927term_a > set_Pr2711430308268100935term_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_Mt__List__Olist_It__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    member3396161095182428176term_a: produc7706083274472794855term_a > set_Pr8594894544342482375term_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member7340969449405702474st_nat: produc1828647624359046049st_nat > set_Pr3451248702717554689st_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__Ground____Terms__Ogterm_Itf__a_J_J,type,
    member6622040750283622891term_a: produc7109479242990851284term_a > set_Pr1502840878978300170term_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    member825974164662248433term_a: produc7252121546586809946term_a > set_Pr5723739931173529104term_a > $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__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J_J,type,
    member3795392313164512464at_nat: produc492020038885415591at_nat > set_Pr7047708467701517959at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Ground____MCtxt__Ogmctxt_Itf__a_J_Mt__List__Olist_It__Ground____Terms__Ogterm_Itf__a_J_J_J_J,type,
    member3109151654205658658term_a: produc138662389636003193term_a > set_Pr3704946587519556825term_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_Mt__Product____Type__Oprod_It__Ground____Terms__Ogterm_Itf__a_J_Mt__Ground____Terms__Ogterm_Itf__a_J_J_J,type,
    member4810723946494196496term_a: produc789695711980045543term_a > set_Pr5156918327056800967term_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member8206827879206165904at_nat: produc859450856879609959at_nat > set_Pr8693737435421807431at_nat > $o ).

thf(sy_v_C____,type,
    c: ground_gmctxt_a ).

thf(sy_v_Ds____,type,
    ds: list_Ground_gmctxt_a ).

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

thf(sy_v_Q,type,
    q: ground_gmctxt_a > $o ).

thf(sy_v__092_060R_062,type,
    r: set_Pr8282532413760598727term_a ).

thf(sy_v_s____,type,
    s: ground_gterm_a ).

thf(sy_v_ss____,type,
    ss: list_Ground_gterm_a ).

thf(sy_v_t____,type,
    t: ground_gterm_a ).

thf(sy_v_ts____,type,
    ts: list_Ground_gterm_a ).

thf(sy_v_us____,type,
    us: list_l4678906206682822203term_a ).

thf(sy_v_vs____,type,
    vs: list_l4678906206682822203term_a ).

% Relevant facts (1257)
thf(fact_0_pred_I2_J,axiom,
    ! [X: ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ ds ) )
     => ( q @ X ) ) ).

% pred(2)
thf(fact_1_len_I2_J,axiom,
    ( ( size_s962548663205356226ctxt_a @ ds )
    = ( size_s1893836384466666913term_a @ ss ) ) ).

% len(2)
thf(fact_2_len_I1_J,axiom,
    ( ( ground_num_gholes_a @ c )
    = ( size_s962548663205356226ctxt_a @ ds ) ) ).

% len(1)
thf(fact_3_pred_I1_J,axiom,
    p @ c ).

% pred(1)
thf(fact_4__092_060open_062_092_060lbrakk_062C_A_092_060le_062_Afill__gholes__gmctxt_AC_ADs_059_A_092_060forall_062Ds_092_060in_062set_A_Isup__gmctxt__args_AC_A_Ifill__gholes__gmctxt_AC_ADs_J_J_O_AQ_ADs_092_060rbrakk_062_A_092_060Longrightarrow_062_AP_A_Ifill__gholes__gmctxt_AC_ADs_J_092_060close_062,axiom,
    ( ( ord_le1940079914304802430ctxt_a @ c @ ( ground2530127064035342964ctxt_a @ c @ ds ) )
   => ( ! [X2: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ c @ ( ground2530127064035342964ctxt_a @ c @ ds ) ) ) )
         => ( q @ X2 ) )
     => ( p @ ( ground2530127064035342964ctxt_a @ c @ ds ) ) ) ) ).

% \<open>\<lbrakk>C \<le> fill_gholes_gmctxt C Ds; \<forall>Ds\<in>set (sup_gmctxt_args C (fill_gholes_gmctxt C Ds)). Q Ds\<rbrakk> \<Longrightarrow> P (fill_gholes_gmctxt C Ds)\<close>
thf(fact_5_assms,axiom,
    ! [C: ground_gmctxt_a,D: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ D )
     => ( ( p @ C )
       => ( ! [X2: ground_gmctxt_a] :
              ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C @ D ) ) )
             => ( q @ X2 ) )
         => ( p @ D ) ) ) ) ).

% assms
thf(fact_6_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_7__092_060open_062_Is_M_At_J_A_092_060in_062_Agmctxtex__onp_AP_A_Igmctxtex__onp_AQ_A_092_060R_062_J_092_060close_062,axiom,
    member4351891425000572176term_a @ ( produc7419039783125785943term_a @ s @ t ) @ ( contex3086340098647126761_onp_a @ p @ ( contex3086340098647126761_onp_a @ q @ r ) ) ).

% \<open>(s, t) \<in> gmctxtex_onp P (gmctxtex_onp Q \<R>)\<close>
thf(fact_8_less__eq__to__sup__mctxt__args,axiom,
    ! [C: ground_gmctxt_a,D: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ D )
     => ~ ! [Ds2: list_Ground_gmctxt_a] :
            ( ( ( ground_num_gholes_a @ C )
              = ( size_s962548663205356226ctxt_a @ Ds2 ) )
           => ( D
             != ( ground2530127064035342964ctxt_a @ C @ Ds2 ) ) ) ) ).

% less_eq_to_sup_mctxt_args
thf(fact_9_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_10_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_11_local_Orec,axiom,
    ! [I: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ds ) )
     => ! [J: nat] :
          ( ( ord_less_nat @ J @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ vs @ I ) ) )
         => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ us @ I ) @ J ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ vs @ I ) @ J ) ) @ r ) ) ) ).

% local.rec
thf(fact_12_len_I3_J,axiom,
    ( ( size_s1893836384466666913term_a @ ss )
    = ( size_s1893836384466666913term_a @ ts ) ) ).

% len(3)
thf(fact_13_len_I4_J,axiom,
    ( ( size_s1893836384466666913term_a @ ts )
    = ( size_s5321119603959729319term_a @ us ) ) ).

% len(4)
thf(fact_14_len_I5_J,axiom,
    ( ( size_s5321119603959729319term_a @ us )
    = ( size_s5321119603959729319term_a @ vs ) ) ).

% len(5)
thf(fact_15_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_16_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_17_gmctxt__order__bot_Obot_Oextremum,axiom,
    ! [A: ground_gmctxt_a] : ( ord_le1940079914304802430ctxt_a @ ground_GMHole_a @ A ) ).

% gmctxt_order_bot.bot.extremum
thf(fact_18_gmctxt__order__bot_Obot_Oextremum__unique,axiom,
    ! [A: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ ground_GMHole_a )
      = ( A = ground_GMHole_a ) ) ).

% gmctxt_order_bot.bot.extremum_unique
thf(fact_19_gmctxt__order__bot_Obot_Oextremum__uniqueI,axiom,
    ! [A: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ ground_GMHole_a )
     => ( A = ground_GMHole_a ) ) ).

% gmctxt_order_bot.bot.extremum_uniqueI
thf(fact_20_nth__mem,axiom,
    ! [N: nat,Xs: list_P2433084232546440685term_a] :
      ( ( ord_less_nat @ N @ ( size_s281034491502894169term_a @ Xs ) )
     => ( member4351891425000572176term_a @ ( nth_Pr5943965302187034734term_a @ Xs @ N ) @ ( set_Pr5405221470436175740term_a @ Xs ) ) ) ).

% nth_mem
thf(fact_21_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_22_nth__mem,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a] :
      ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( member5261315023172567896term_a @ ( nth_Ground_gterm_a @ Xs @ N ) @ ( set_Ground_gterm_a2 @ Xs ) ) ) ).

% nth_mem
thf(fact_23_nth__mem,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( member5011579089780872286term_a @ ( nth_li6172171122907299772term_a @ Xs @ N ) @ ( set_li7546925467519454922term_a @ Xs ) ) ) ).

% nth_mem
thf(fact_24_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_25_list__ball__nth,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ! [X2: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ Xs ) )
           => ( P @ X2 ) )
       => ( P @ ( nth_Ground_gmctxt_a @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_26_list__ball__nth,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,P: ground_gterm_a > $o] :
      ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ! [X2: ground_gterm_a] :
            ( ( member5261315023172567896term_a @ X2 @ ( set_Ground_gterm_a2 @ Xs ) )
           => ( P @ X2 ) )
       => ( P @ ( nth_Ground_gterm_a @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_27_list__ball__nth,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a,P: list_Ground_gterm_a > $o] :
      ( ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ! [X2: list_Ground_gterm_a] :
            ( ( member5011579089780872286term_a @ X2 @ ( set_li7546925467519454922term_a @ Xs ) )
           => ( P @ X2 ) )
       => ( P @ ( nth_li6172171122907299772term_a @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_28_list__ball__nth,axiom,
    ! [N: nat,Xs: list_nat,P: nat > $o] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
           => ( P @ X2 ) )
       => ( P @ ( nth_nat @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_29_in__set__conv__nth,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
      = ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s281034491502894169term_a @ Xs ) )
            & ( ( nth_Pr5943965302187034734term_a @ Xs @ I2 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_30_in__set__conv__nth,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_conv_nth
thf(fact_31_in__set__conv__nth,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a] :
      ( ( member5261315023172567896term_a @ X3 @ ( set_Ground_gterm_a2 @ Xs ) )
      = ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Xs ) )
            & ( ( nth_Ground_gterm_a @ Xs @ I2 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_32_in__set__conv__nth,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a] :
      ( ( member5011579089780872286term_a @ X3 @ ( set_li7546925467519454922term_a @ Xs ) )
      = ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Xs ) )
            & ( ( nth_li6172171122907299772term_a @ Xs @ I2 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_33_in__set__conv__nth,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_conv_nth
thf(fact_34_in__set__idx,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
     => ? [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s281034491502894169term_a @ Xs ) )
          & ( ( nth_Pr5943965302187034734term_a @ Xs @ I3 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_35_in__set__idx,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ? [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Xs ) )
          & ( ( nth_Ground_gmctxt_a @ Xs @ I3 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_36_in__set__idx,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a] :
      ( ( member5261315023172567896term_a @ X3 @ ( set_Ground_gterm_a2 @ Xs ) )
     => ? [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Xs ) )
          & ( ( nth_Ground_gterm_a @ Xs @ I3 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_37_in__set__idx,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a] :
      ( ( member5011579089780872286term_a @ X3 @ ( set_li7546925467519454922term_a @ Xs ) )
     => ? [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
          & ( ( nth_li6172171122907299772term_a @ Xs @ I3 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_38_in__set__idx,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
     => ? [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
          & ( ( nth_nat @ Xs @ I3 )
            = X3 ) ) ) ).

% in_set_idx
thf(fact_39_all__nth__imp__all__set,axiom,
    ! [Xs: list_P2433084232546440685term_a,P: produc1525979690750518759term_a > $o,X3: produc1525979690750518759term_a] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s281034491502894169term_a @ Xs ) )
         => ( P @ ( nth_Pr5943965302187034734term_a @ Xs @ I3 ) ) )
     => ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_40_all__nth__imp__all__set,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o,X3: ground_gmctxt_a] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Xs ) )
         => ( P @ ( nth_Ground_gmctxt_a @ Xs @ I3 ) ) )
     => ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_41_all__nth__imp__all__set,axiom,
    ! [Xs: list_Ground_gterm_a,P: ground_gterm_a > $o,X3: ground_gterm_a] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Xs ) )
         => ( P @ ( nth_Ground_gterm_a @ Xs @ I3 ) ) )
     => ( ( member5261315023172567896term_a @ X3 @ ( set_Ground_gterm_a2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_42_all__nth__imp__all__set,axiom,
    ! [Xs: list_l4678906206682822203term_a,P: list_Ground_gterm_a > $o,X3: list_Ground_gterm_a] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
         => ( P @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) ) )
     => ( ( member5011579089780872286term_a @ X3 @ ( set_li7546925467519454922term_a @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_43_all__nth__imp__all__set,axiom,
    ! [Xs: list_nat,P: nat > $o,X3: nat] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
         => ( P @ ( nth_nat @ Xs @ I3 ) ) )
     => ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_44_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 ) ) )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
           => ( P @ ( nth_Ground_gmctxt_a @ Xs @ I2 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_45_all__set__conv__all__nth,axiom,
    ! [Xs: list_Ground_gterm_a,P: ground_gterm_a > $o] :
      ( ( ! [X4: ground_gterm_a] :
            ( ( member5261315023172567896term_a @ X4 @ ( set_Ground_gterm_a2 @ Xs ) )
           => ( P @ X4 ) ) )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Xs ) )
           => ( P @ ( nth_Ground_gterm_a @ Xs @ I2 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_46_all__set__conv__all__nth,axiom,
    ! [Xs: list_l4678906206682822203term_a,P: list_Ground_gterm_a > $o] :
      ( ( ! [X4: list_Ground_gterm_a] :
            ( ( member5011579089780872286term_a @ X4 @ ( set_li7546925467519454922term_a @ Xs ) )
           => ( P @ X4 ) ) )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Xs ) )
           => ( P @ ( nth_li6172171122907299772term_a @ Xs @ I2 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_47_all__set__conv__all__nth,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ! [X4: nat] :
            ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
           => ( P @ X4 ) ) )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
           => ( P @ ( nth_nat @ Xs @ I2 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_48_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 ) ) )
      = ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
            & ( P @ ( nth_Ground_gmctxt_a @ Xs @ I2 ) ) ) ) ) ).

% ex_set_conv_ex_nth
thf(fact_49_ex__set__conv__ex__nth,axiom,
    ! [Xs: list_Ground_gterm_a,P: ground_gterm_a > $o] :
      ( ( ? [X4: ground_gterm_a] :
            ( ( member5261315023172567896term_a @ X4 @ ( set_Ground_gterm_a2 @ Xs ) )
            & ( P @ X4 ) ) )
      = ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Xs ) )
            & ( P @ ( nth_Ground_gterm_a @ Xs @ I2 ) ) ) ) ) ).

% ex_set_conv_ex_nth
thf(fact_50_ex__set__conv__ex__nth,axiom,
    ! [Xs: list_l4678906206682822203term_a,P: list_Ground_gterm_a > $o] :
      ( ( ? [X4: list_Ground_gterm_a] :
            ( ( member5011579089780872286term_a @ X4 @ ( set_li7546925467519454922term_a @ Xs ) )
            & ( P @ X4 ) ) )
      = ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Xs ) )
            & ( P @ ( nth_li6172171122907299772term_a @ Xs @ I2 ) ) ) ) ) ).

% ex_set_conv_ex_nth
thf(fact_51_ex__set__conv__ex__nth,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
            & ( P @ X4 ) ) )
      = ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
            & ( P @ ( nth_nat @ Xs @ I2 ) ) ) ) ) ).

% ex_set_conv_ex_nth
thf(fact_52_nth__equalityI,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( ( 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 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_53_nth__equalityI,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Xs ) )
           => ( ( nth_Ground_gterm_a @ Xs @ I3 )
              = ( nth_Ground_gterm_a @ Ys @ I3 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_54_nth__equalityI,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
           => ( ( nth_li6172171122907299772term_a @ Xs @ I3 )
              = ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_55_nth__equalityI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( 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 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_56_nth__equalityE,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( Xs = Ys )
     => ~ ( ( ( size_s962548663205356226ctxt_a @ Xs )
            = ( size_s962548663205356226ctxt_a @ Ys ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Xs ) )
               => ( ( nth_Ground_gmctxt_a @ Xs @ I )
                  = ( nth_Ground_gmctxt_a @ Ys @ I ) ) ) ) ) ).

% nth_equalityE
thf(fact_57_nth__equalityE,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( Xs = Ys )
     => ~ ( ( ( size_s1893836384466666913term_a @ Xs )
            = ( size_s1893836384466666913term_a @ Ys ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ Xs ) )
               => ( ( nth_Ground_gterm_a @ Xs @ I )
                  = ( nth_Ground_gterm_a @ Ys @ I ) ) ) ) ) ).

% nth_equalityE
thf(fact_58_nth__equalityE,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( Xs = Ys )
     => ~ ( ( ( size_s5321119603959729319term_a @ Xs )
            = ( size_s5321119603959729319term_a @ Ys ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ Xs ) )
               => ( ( nth_li6172171122907299772term_a @ Xs @ I )
                  = ( nth_li6172171122907299772term_a @ Ys @ I ) ) ) ) ) ).

% nth_equalityE
thf(fact_59_nth__equalityE,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs = Ys )
     => ~ ( ( ( size_size_list_nat @ Xs )
            = ( size_size_list_nat @ Ys ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
               => ( ( nth_nat @ Xs @ I )
                  = ( nth_nat @ Ys @ I ) ) ) ) ) ).

% nth_equalityE
thf(fact_60_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > ground_gmctxt_a > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X5: ground_gmctxt_a] : ( P @ I2 @ X5 ) ) )
      = ( ? [Xs2: list_Ground_gmctxt_a] :
            ( ( ( size_s962548663205356226ctxt_a @ Xs2 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_Ground_gmctxt_a @ Xs2 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_61_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > ground_gterm_a > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X5: ground_gterm_a] : ( P @ I2 @ X5 ) ) )
      = ( ? [Xs2: list_Ground_gterm_a] :
            ( ( ( size_s1893836384466666913term_a @ Xs2 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_Ground_gterm_a @ Xs2 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_62_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > list_Ground_gterm_a > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X5: list_Ground_gterm_a] : ( P @ I2 @ X5 ) ) )
      = ( ? [Xs2: list_l4678906206682822203term_a] :
            ( ( ( size_s5321119603959729319term_a @ Xs2 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_li6172171122907299772term_a @ Xs2 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_63_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X5: nat] : ( P @ I2 @ X5 ) ) )
      = ( ? [Xs2: list_nat] :
            ( ( ( size_size_list_nat @ Xs2 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_nat @ Xs2 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_64_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y: list_Ground_gmctxt_a,Z: list_Ground_gmctxt_a] : ( Y = Z ) )
    = ( ^ [Xs2: list_Ground_gmctxt_a,Ys2: list_Ground_gmctxt_a] :
          ( ( ( size_s962548663205356226ctxt_a @ Xs2 )
            = ( size_s962548663205356226ctxt_a @ Ys2 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Xs2 ) )
             => ( ( nth_Ground_gmctxt_a @ Xs2 @ I2 )
                = ( nth_Ground_gmctxt_a @ Ys2 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_65_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y: list_Ground_gterm_a,Z: list_Ground_gterm_a] : ( Y = Z ) )
    = ( ^ [Xs2: list_Ground_gterm_a,Ys2: list_Ground_gterm_a] :
          ( ( ( size_s1893836384466666913term_a @ Xs2 )
            = ( size_s1893836384466666913term_a @ Ys2 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Xs2 ) )
             => ( ( nth_Ground_gterm_a @ Xs2 @ I2 )
                = ( nth_Ground_gterm_a @ Ys2 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_66_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y: list_l4678906206682822203term_a,Z: list_l4678906206682822203term_a] : ( Y = Z ) )
    = ( ^ [Xs2: list_l4678906206682822203term_a,Ys2: list_l4678906206682822203term_a] :
          ( ( ( size_s5321119603959729319term_a @ Xs2 )
            = ( size_s5321119603959729319term_a @ Ys2 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Xs2 ) )
             => ( ( nth_li6172171122907299772term_a @ Xs2 @ I2 )
                = ( nth_li6172171122907299772term_a @ Ys2 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_67_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y: list_nat,Z: list_nat] : ( Y = Z ) )
    = ( ^ [Xs2: list_nat,Ys2: list_nat] :
          ( ( ( size_size_list_nat @ Xs2 )
            = ( size_size_list_nat @ Ys2 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs2 ) )
             => ( ( nth_nat @ Xs2 @ I2 )
                = ( nth_nat @ Ys2 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_68_Ex__list__of__length__P,axiom,
    ! [N: nat,P: ground_gmctxt_a > nat > $o] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ? [X: ground_gmctxt_a] : ( P @ X @ I3 ) )
     => ? [Xs3: list_Ground_gmctxt_a] :
          ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
            = N )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ N )
             => ( P @ ( nth_Ground_gmctxt_a @ Xs3 @ I ) @ I ) ) ) ) ).

% Ex_list_of_length_P
thf(fact_69_Ex__list__of__length__P,axiom,
    ! [N: nat,P: ground_gterm_a > nat > $o] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ? [X: ground_gterm_a] : ( P @ X @ I3 ) )
     => ? [Xs3: list_Ground_gterm_a] :
          ( ( ( size_s1893836384466666913term_a @ Xs3 )
            = N )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ N )
             => ( P @ ( nth_Ground_gterm_a @ Xs3 @ I ) @ I ) ) ) ) ).

% Ex_list_of_length_P
thf(fact_70_Ex__list__of__length__P,axiom,
    ! [N: nat,P: list_Ground_gterm_a > nat > $o] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ? [X: list_Ground_gterm_a] : ( P @ X @ I3 ) )
     => ? [Xs3: list_l4678906206682822203term_a] :
          ( ( ( size_s5321119603959729319term_a @ Xs3 )
            = N )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ N )
             => ( P @ ( nth_li6172171122907299772term_a @ Xs3 @ I ) @ I ) ) ) ) ).

% Ex_list_of_length_P
thf(fact_71_Ex__list__of__length__P,axiom,
    ! [N: nat,P: nat > nat > $o] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ? [X: nat] : ( P @ X @ I3 ) )
     => ? [Xs3: list_nat] :
          ( ( ( size_size_list_nat @ Xs3 )
            = N )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ N )
             => ( P @ ( nth_nat @ Xs3 @ I ) @ I ) ) ) ) ).

% Ex_list_of_length_P
thf(fact_72_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_73_neq__if__length__neq,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
       != ( size_s1893836384466666913term_a @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_74_neq__if__length__neq,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
       != ( size_s5321119603959729319term_a @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_75_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_76_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs3: list_Ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ Xs3 )
      = N ) ).

% Ex_list_of_length
thf(fact_77_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs3: list_Ground_gterm_a] :
      ( ( size_s1893836384466666913term_a @ Xs3 )
      = N ) ).

% Ex_list_of_length
thf(fact_78_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs3: list_l4678906206682822203term_a] :
      ( ( size_s5321119603959729319term_a @ Xs3 )
      = N ) ).

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

% Ex_list_of_length
thf(fact_80_length__induct,axiom,
    ! [P: list_Ground_gmctxt_a > $o,Xs: list_Ground_gmctxt_a] :
      ( ! [Xs3: list_Ground_gmctxt_a] :
          ( ! [Ys3: list_Ground_gmctxt_a] :
              ( ( ord_less_nat @ ( size_s962548663205356226ctxt_a @ Ys3 ) @ ( size_s962548663205356226ctxt_a @ Xs3 ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs3 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_81_length__induct,axiom,
    ! [P: list_Ground_gterm_a > $o,Xs: list_Ground_gterm_a] :
      ( ! [Xs3: list_Ground_gterm_a] :
          ( ! [Ys3: list_Ground_gterm_a] :
              ( ( ord_less_nat @ ( size_s1893836384466666913term_a @ Ys3 ) @ ( size_s1893836384466666913term_a @ Xs3 ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs3 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_82_length__induct,axiom,
    ! [P: list_l4678906206682822203term_a > $o,Xs: list_l4678906206682822203term_a] :
      ( ! [Xs3: list_l4678906206682822203term_a] :
          ( ! [Ys3: list_l4678906206682822203term_a] :
              ( ( ord_less_nat @ ( size_s5321119603959729319term_a @ Ys3 ) @ ( size_s5321119603959729319term_a @ Xs3 ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs3 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_83_length__induct,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ! [Xs3: list_nat] :
          ( ! [Ys3: list_nat] :
              ( ( ord_less_nat @ ( size_size_list_nat @ Ys3 ) @ ( size_size_list_nat @ Xs3 ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs3 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_84_split_H,axiom,
    ! [I: nat] :
      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ds ) )
     => ( ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ ss @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ ds @ I ) @ ( nth_li6172171122907299772term_a @ us @ I ) ) )
        & ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ ts @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ ds @ I ) @ ( nth_li6172171122907299772term_a @ vs @ I ) ) ) ) ) ).

% split'
thf(fact_85__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062C_ADs_Ass_Ats_Aus_Avs_O_A_092_060lbrakk_062s_A_061_092_060_094sub_062G_092_060_094sub_062f_A_IC_M_Ass_J_059_At_A_061_092_060_094sub_062G_092_060_094sub_062f_A_IC_M_Ats_J_059_Anum__gholes_AC_A_061_Alength_ADs_059_Alength_ADs_A_061_Alength_Ass_059_Alength_Ass_A_061_Alength_Ats_059_Alength_Ats_A_061_Alength_Aus_059_Alength_Aus_A_061_Alength_Avs_059_AP_AC_059_A_092_060forall_062D_092_060in_062set_ADs_O_AQ_AD_059_A_092_060forall_062i_060length_ADs_O_Ass_A_B_Ai_A_061_092_060_094sub_062G_092_060_094sub_062f_A_IDs_A_B_Ai_M_Aus_A_B_Ai_J_A_092_060and_062_Ats_A_B_Ai_A_061_092_060_094sub_062G_092_060_094sub_062f_A_IDs_A_B_Ai_M_Avs_A_B_Ai_J_059_A_092_060forall_062i_060length_ADs_O_A_092_060forall_062j_060length_A_Ivs_A_B_Ai_J_O_A_Ius_A_B_Ai_A_B_Aj_M_Avs_A_B_Ai_A_B_Aj_J_A_092_060in_062_A_092_060R_062_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
    ~ ! [C2: ground_gmctxt_a,Ds2: list_Ground_gmctxt_a,Ss: list_Ground_gterm_a] :
        ( ( ground_eq_gfill_a @ s @ ( produc4720362732934906942term_a @ C2 @ Ss ) )
       => ! [Ts: list_Ground_gterm_a] :
            ( ( ground_eq_gfill_a @ t @ ( produc4720362732934906942term_a @ C2 @ Ts ) )
           => ( ( ( ground_num_gholes_a @ C2 )
                = ( size_s962548663205356226ctxt_a @ Ds2 ) )
             => ( ( ( size_s962548663205356226ctxt_a @ Ds2 )
                  = ( size_s1893836384466666913term_a @ Ss ) )
               => ( ( ( size_s1893836384466666913term_a @ Ss )
                    = ( size_s1893836384466666913term_a @ Ts ) )
                 => ! [Us: list_l4678906206682822203term_a] :
                      ( ( ( size_s1893836384466666913term_a @ Ts )
                        = ( size_s5321119603959729319term_a @ Us ) )
                     => ! [Vs: list_l4678906206682822203term_a] :
                          ( ( ( size_s5321119603959729319term_a @ Us )
                            = ( size_s5321119603959729319term_a @ Vs ) )
                         => ( ( p @ C2 )
                           => ( ! [X: ground_gmctxt_a] :
                                  ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Ds2 ) )
                                 => ( q @ X ) )
                             => ( ! [I: nat] :
                                    ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                                   => ( ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ss @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I ) @ ( nth_li6172171122907299772term_a @ Us @ I ) ) )
                                      & ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I ) @ ( nth_li6172171122907299772term_a @ Vs @ I ) ) ) ) )
                               => ~ ! [I: nat] :
                                      ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                                     => ! [J: nat] :
                                          ( ( ord_less_nat @ J @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Vs @ I ) ) )
                                         => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Us @ I ) @ J ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Vs @ I ) @ J ) ) @ r ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% \<open>\<And>thesis. (\<And>C Ds ss ts us vs. \<lbrakk>s =\<^sub>G\<^sub>f (C, ss); t =\<^sub>G\<^sub>f (C, ts); num_gholes C = length Ds; length Ds = length ss; length ss = length ts; length ts = length us; length us = length vs; P C; \<forall>D\<in>set Ds. Q D; \<forall>i<length Ds. ss ! i =\<^sub>G\<^sub>f (Ds ! i, us ! i) \<and> ts ! i =\<^sub>G\<^sub>f (Ds ! i, vs ! i); \<forall>i<length Ds. \<forall>j<length (vs ! i). (us ! i ! j, vs ! i ! j) \<in> \<R>\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_86_gmctxtex__onpI,axiom,
    ! [P: ground_gmctxt_a > $o,C: ground_gmctxt_a,Us2: list_Ground_gterm_a,Vs2: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( P @ C )
     => ( ( ( ground_num_gholes_a @ C )
          = ( size_s1893836384466666913term_a @ Us2 ) )
       => ( ( ( size_s1893836384466666913term_a @ Us2 )
            = ( size_s1893836384466666913term_a @ Vs2 ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Vs2 ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Us2 @ I3 ) @ ( nth_Ground_gterm_a @ Vs2 @ I3 ) ) @ R ) )
           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_fill_gholes_a @ C @ Us2 ) @ ( ground_fill_gholes_a @ C @ Vs2 ) ) @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ) ) ) ).

% gmctxtex_onpI
thf(fact_87_permut__sound,axiom,
    ! [I4: nat,As: list_Ground_gmctxt_a,F: nat > nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ As ) )
     => ( ( nth_Ground_gmctxt_a @ ( missin4491563000646178374ctxt_a @ As @ F ) @ I4 )
        = ( nth_Ground_gmctxt_a @ As @ ( F @ I4 ) ) ) ) ).

% permut_sound
thf(fact_88_permut__sound,axiom,
    ! [I4: nat,As: list_Ground_gterm_a,F: nat > nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ As ) )
     => ( ( nth_Ground_gterm_a @ ( missin5607496018787941767term_a @ As @ F ) @ I4 )
        = ( nth_Ground_gterm_a @ As @ ( F @ I4 ) ) ) ) ).

% permut_sound
thf(fact_89_permut__sound,axiom,
    ! [I4: nat,As: list_l4678906206682822203term_a,F: nat > nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ As ) )
     => ( ( nth_li6172171122907299772term_a @ ( missin103505523753413389term_a @ As @ F ) @ I4 )
        = ( nth_li6172171122907299772term_a @ As @ ( F @ I4 ) ) ) ) ).

% permut_sound
thf(fact_90_permut__sound,axiom,
    ! [I4: nat,As: list_nat,F: nat > nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ As ) )
     => ( ( nth_nat @ ( missing_permut_nat @ As @ F ) @ I4 )
        = ( nth_nat @ As @ ( F @ I4 ) ) ) ) ).

% permut_sound
thf(fact_91_old_Oprod_Oinject,axiom,
    ! [A: ground_gterm_a,B: ground_gterm_a,A2: ground_gterm_a,B2: ground_gterm_a] :
      ( ( ( produc7419039783125785943term_a @ A @ B )
        = ( produc7419039783125785943term_a @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_92_old_Oprod_Oinject,axiom,
    ! [A: ground_gmctxt_a,B: list_Ground_gterm_a,A2: ground_gmctxt_a,B2: list_Ground_gterm_a] :
      ( ( ( produc4720362732934906942term_a @ A @ B )
        = ( produc4720362732934906942term_a @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_93_old_Oprod_Oinject,axiom,
    ! [A: nat,B: nat,A2: nat,B2: nat] :
      ( ( ( product_Pair_nat_nat @ A @ B )
        = ( product_Pair_nat_nat @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

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

% old.prod.inject
thf(fact_95_prod_Oinject,axiom,
    ! [X1: ground_gterm_a,X22: ground_gterm_a,Y1: ground_gterm_a,Y2: ground_gterm_a] :
      ( ( ( produc7419039783125785943term_a @ X1 @ X22 )
        = ( produc7419039783125785943term_a @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.inject
thf(fact_96_prod_Oinject,axiom,
    ! [X1: ground_gmctxt_a,X22: list_Ground_gterm_a,Y1: ground_gmctxt_a,Y2: list_Ground_gterm_a] :
      ( ( ( produc4720362732934906942term_a @ X1 @ X22 )
        = ( produc4720362732934906942term_a @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

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

% prod.inject
thf(fact_98_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_99_dual__order_Orefl,axiom,
    ! [A: ground_gmctxt_a] : ( ord_le1940079914304802430ctxt_a @ A @ A ) ).

% dual_order.refl
thf(fact_100_dual__order_Orefl,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% dual_order.refl
thf(fact_101_order__refl,axiom,
    ! [X3: ground_gmctxt_a] : ( ord_le1940079914304802430ctxt_a @ X3 @ X3 ) ).

% order_refl
thf(fact_102_order__refl,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ X3 @ X3 ) ).

% order_refl
thf(fact_103_gmctxt__order__bot_Obdd__below__bot,axiom,
    ! [A3: set_Ground_gmctxt_a] : ( condit5323614196651773062ctxt_a @ ord_le1940079914304802430ctxt_a @ A3 ) ).

% gmctxt_order_bot.bdd_below_bot
thf(fact_104_mem__Collect__eq,axiom,
    ! [A: produc1525979690750518759term_a,P: produc1525979690750518759term_a > $o] :
      ( ( member4351891425000572176term_a @ A @ ( collec6713184107424615762term_a @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_105_Collect__mem__eq,axiom,
    ! [A3: set_Pr8282532413760598727term_a] :
      ( ( collec6713184107424615762term_a
        @ ^ [X4: produc1525979690750518759term_a] : ( member4351891425000572176term_a @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_106_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_107_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_108_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_109_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_110_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_111_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_112_gmctxtex__onpI2,axiom,
    ! [P: ground_gmctxt_a > $o,C: ground_gmctxt_a,S: ground_gterm_a,Ss2: list_Ground_gterm_a,T: ground_gterm_a,Ts2: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( P @ C )
     => ( ( ground_eq_gfill_a @ S @ ( produc4720362732934906942term_a @ C @ Ss2 ) )
       => ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ C @ 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 @ S @ T ) @ ( contex3086340098647126761_onp_a @ P @ R ) ) ) ) ) ) ).

% gmctxtex_onpI2
thf(fact_113_eqgfE_I1_J,axiom,
    ! [T: ground_gterm_a,D: ground_gmctxt_a,Ss2: list_Ground_gterm_a] :
      ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ D @ Ss2 ) )
     => ( T
        = ( ground_fill_gholes_a @ D @ Ss2 ) ) ) ).

% eqgfE(1)
thf(fact_114_eq__gfill_Ocases,axiom,
    ! [A1: ground_gterm_a,A22: produc2459281416120113548term_a] :
      ( ( ground_eq_gfill_a @ A1 @ A22 )
     => ~ ! [D2: ground_gmctxt_a,Ss: list_Ground_gterm_a] :
            ( ( A22
              = ( produc4720362732934906942term_a @ D2 @ Ss ) )
           => ( ( A1
                = ( ground_fill_gholes_a @ D2 @ Ss ) )
             => ( ( ground_num_gholes_a @ D2 )
               != ( size_s1893836384466666913term_a @ Ss ) ) ) ) ) ).

% eq_gfill.cases
thf(fact_115_eq__gfill_Osimps,axiom,
    ( ground_eq_gfill_a
    = ( ^ [A12: ground_gterm_a,A23: produc2459281416120113548term_a] :
        ? [T2: ground_gterm_a,D3: ground_gmctxt_a,Ss3: list_Ground_gterm_a] :
          ( ( A12 = T2 )
          & ( A23
            = ( produc4720362732934906942term_a @ D3 @ Ss3 ) )
          & ( T2
            = ( ground_fill_gholes_a @ D3 @ Ss3 ) )
          & ( ( ground_num_gholes_a @ D3 )
            = ( size_s1893836384466666913term_a @ Ss3 ) ) ) ) ) ).

% eq_gfill.simps
thf(fact_116_eq__gfill_Ointros,axiom,
    ! [T: ground_gterm_a,D: ground_gmctxt_a,Ss2: list_Ground_gterm_a] :
      ( ( T
        = ( ground_fill_gholes_a @ D @ Ss2 ) )
     => ( ( ( ground_num_gholes_a @ D )
          = ( size_s1893836384466666913term_a @ Ss2 ) )
       => ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ D @ Ss2 ) ) ) ) ).

% eq_gfill.intros
thf(fact_117_eqgfE_I2_J,axiom,
    ! [T: ground_gterm_a,D: ground_gmctxt_a,Ss2: list_Ground_gterm_a] :
      ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ D @ Ss2 ) )
     => ( ( ground_num_gholes_a @ D )
        = ( size_s1893836384466666913term_a @ Ss2 ) ) ) ).

% eqgfE(2)
thf(fact_118_subset__code_I1_J,axiom,
    ! [Xs: list_P2433084232546440685term_a,B3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ B3 )
      = ( ! [X4: produc1525979690750518759term_a] :
            ( ( member4351891425000572176term_a @ X4 @ ( set_Pr5405221470436175740term_a @ Xs ) )
           => ( member4351891425000572176term_a @ X4 @ B3 ) ) ) ) ).

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

% subset_code(1)
thf(fact_120_less__gmctxt__def,axiom,
    ( ord_le9048903087952742514ctxt_a
    = ( ^ [C3: ground_gmctxt_a,D3: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ C3 @ D3 )
          & ~ ( ord_le1940079914304802430ctxt_a @ D3 @ C3 ) ) ) ) ).

% less_gmctxt_def
thf(fact_121_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_122_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_123_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,Us: list_Ground_gterm_a] :
            ( ( ground_eq_gfill_a @ S @ ( produc4720362732934906942term_a @ C2 @ Us ) )
           => ! [Vs: list_Ground_gterm_a] :
                ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ C2 @ Vs ) )
               => ( ( P @ C2 )
                 => ~ ! [I: nat] :
                        ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ Vs ) )
                       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Us @ I ) @ ( nth_Ground_gterm_a @ Vs @ I ) ) @ R ) ) ) ) ) ) ).

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

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

% le_cases3
thf(fact_126_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y: ground_gmctxt_a,Z: ground_gmctxt_a] : ( Y = Z ) )
    = ( ^ [X4: ground_gmctxt_a,Y4: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ X4 @ Y4 )
          & ( ord_le1940079914304802430ctxt_a @ Y4 @ X4 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_127_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y: nat,Z: nat] : ( Y = Z ) )
    = ( ^ [X4: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X4 @ Y4 )
          & ( ord_less_eq_nat @ Y4 @ X4 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_128_ord__eq__le__trans,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( A = B )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ord_le1940079914304802430ctxt_a @ A @ C4 ) ) ) ).

% ord_eq_le_trans
thf(fact_129_ord__eq__le__trans,axiom,
    ! [A: nat,B: nat,C4: nat] :
      ( ( A = B )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ord_less_eq_nat @ A @ C4 ) ) ) ).

% ord_eq_le_trans
thf(fact_130_ord__le__eq__trans,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( B = C4 )
       => ( ord_le1940079914304802430ctxt_a @ A @ C4 ) ) ) ).

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

% ord_le_eq_trans
thf(fact_132_order__antisym,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 )
     => ( ( ord_le1940079914304802430ctxt_a @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_133_order__antisym,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_nat @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_134_order_Otrans,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ord_le1940079914304802430ctxt_a @ A @ C4 ) ) ) ).

% order.trans
thf(fact_135_order_Otrans,axiom,
    ! [A: nat,B: nat,C4: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ord_less_eq_nat @ A @ C4 ) ) ) ).

% order.trans
thf(fact_136_order__trans,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a,Z2: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 )
     => ( ( ord_le1940079914304802430ctxt_a @ Y3 @ Z2 )
       => ( ord_le1940079914304802430ctxt_a @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_137_order__trans,axiom,
    ! [X3: nat,Y3: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_nat @ Y3 @ Z2 )
       => ( ord_less_eq_nat @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_138_linorder__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B4: nat] :
          ( ( ord_less_eq_nat @ A4 @ B4 )
         => ( P @ A4 @ B4 ) )
     => ( ! [A4: nat,B4: nat] :
            ( ( P @ B4 @ A4 )
           => ( P @ A4 @ B4 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_139_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y: ground_gmctxt_a,Z: ground_gmctxt_a] : ( Y = Z ) )
    = ( ^ [A5: ground_gmctxt_a,B5: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ B5 @ A5 )
          & ( ord_le1940079914304802430ctxt_a @ A5 @ B5 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_140_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y: nat,Z: nat] : ( Y = Z ) )
    = ( ^ [A5: nat,B5: nat] :
          ( ( ord_less_eq_nat @ B5 @ A5 )
          & ( ord_less_eq_nat @ A5 @ B5 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_141_dual__order_Oantisym,axiom,
    ! [B: ground_gmctxt_a,A: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ B @ A )
     => ( ( ord_le1940079914304802430ctxt_a @ A @ B )
       => ( A = B ) ) ) ).

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

% dual_order.antisym
thf(fact_143_dual__order_Otrans,axiom,
    ! [B: ground_gmctxt_a,A: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ B @ A )
     => ( ( ord_le1940079914304802430ctxt_a @ C4 @ B )
       => ( ord_le1940079914304802430ctxt_a @ C4 @ A ) ) ) ).

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

% dual_order.trans
thf(fact_145_antisym,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ A )
       => ( A = B ) ) ) ).

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

% antisym
thf(fact_147_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y: ground_gmctxt_a,Z: ground_gmctxt_a] : ( Y = Z ) )
    = ( ^ [A5: ground_gmctxt_a,B5: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ A5 @ B5 )
          & ( ord_le1940079914304802430ctxt_a @ B5 @ A5 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_148_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y: nat,Z: nat] : ( Y = Z ) )
    = ( ^ [A5: nat,B5: nat] :
          ( ( ord_less_eq_nat @ A5 @ B5 )
          & ( ord_less_eq_nat @ B5 @ A5 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_149_order__subst1,axiom,
    ! [A: ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ ( F @ B ) )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ A @ ( F @ C4 ) ) ) ) ) ).

% order_subst1
thf(fact_150_order__subst1,axiom,
    ! [A: ground_gmctxt_a,F: nat > ground_gmctxt_a,B: nat,C4: nat] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ A @ ( F @ C4 ) ) ) ) ) ).

% order_subst1
thf(fact_151_order__subst1,axiom,
    ! [A: nat,F: ground_gmctxt_a > nat,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% order_subst1
thf(fact_152_order__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C4: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% order_subst1
thf(fact_153_order__subst2,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ord_le1940079914304802430ctxt_a @ ( F @ B ) @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ ( F @ A ) @ C4 ) ) ) ) ).

% order_subst2
thf(fact_154_order__subst2,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,F: ground_gmctxt_a > nat,C4: nat] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C4 ) ) ) ) ).

% order_subst2
thf(fact_155_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_le1940079914304802430ctxt_a @ ( F @ B ) @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ ( F @ A ) @ C4 ) ) ) ) ).

% order_subst2
thf(fact_156_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C4: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C4 ) ) ) ) ).

% order_subst2
thf(fact_157_order__eq__refl,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a] :
      ( ( X3 = Y3 )
     => ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_158_order__eq__refl,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( X3 = Y3 )
     => ( ord_less_eq_nat @ X3 @ Y3 ) ) ).

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

% linorder_linear
thf(fact_160_ord__eq__le__subst,axiom,
    ! [A: ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ A @ ( F @ C4 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_161_ord__eq__le__subst,axiom,
    ! [A: nat,F: ground_gmctxt_a > nat,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_162_ord__eq__le__subst,axiom,
    ! [A: ground_gmctxt_a,F: nat > ground_gmctxt_a,B: nat,C4: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ A @ ( F @ C4 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_163_ord__eq__le__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C4: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_164_ord__le__eq__subst,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ( F @ B )
          = C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ ( F @ A ) @ C4 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_165_ord__le__eq__subst,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,F: ground_gmctxt_a > nat,C4: nat] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ( F @ B )
          = C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C4 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_166_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le1940079914304802430ctxt_a @ ( F @ A ) @ C4 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_167_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C4: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C4 ) ) ) ) ).

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

% linorder_le_cases
thf(fact_169_order__antisym__conv,axiom,
    ! [Y3: ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ Y3 @ X3 )
     => ( ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_170_order__antisym__conv,axiom,
    ! [Y3: nat,X3: nat] :
      ( ( ord_less_eq_nat @ Y3 @ X3 )
     => ( ( ord_less_eq_nat @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_171_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc1525979690750518759term_a] :
      ~ ! [A4: ground_gterm_a,B4: ground_gterm_a] :
          ( Y3
         != ( produc7419039783125785943term_a @ A4 @ B4 ) ) ).

% old.prod.exhaust
thf(fact_172_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc2459281416120113548term_a] :
      ~ ! [A4: ground_gmctxt_a,B4: list_Ground_gterm_a] :
          ( Y3
         != ( produc4720362732934906942term_a @ A4 @ B4 ) ) ).

% old.prod.exhaust
thf(fact_173_old_Oprod_Oexhaust,axiom,
    ! [Y3: product_prod_nat_nat] :
      ~ ! [A4: nat,B4: nat] :
          ( Y3
         != ( product_Pair_nat_nat @ A4 @ B4 ) ) ).

% old.prod.exhaust
thf(fact_174_old_Oprod_Oexhaust,axiom,
    ! [Y3: produc8199716216217303280at_nat] :
      ~ ! [A4: nat > nat,B4: nat] :
          ( Y3
         != ( produc72220940542539688at_nat @ A4 @ B4 ) ) ).

% old.prod.exhaust
thf(fact_175_surj__pair,axiom,
    ! [P2: produc1525979690750518759term_a] :
    ? [X2: ground_gterm_a,Y5: ground_gterm_a] :
      ( P2
      = ( produc7419039783125785943term_a @ X2 @ Y5 ) ) ).

% surj_pair
thf(fact_176_surj__pair,axiom,
    ! [P2: produc2459281416120113548term_a] :
    ? [X2: ground_gmctxt_a,Y5: list_Ground_gterm_a] :
      ( P2
      = ( produc4720362732934906942term_a @ X2 @ Y5 ) ) ).

% surj_pair
thf(fact_177_surj__pair,axiom,
    ! [P2: product_prod_nat_nat] :
    ? [X2: nat,Y5: nat] :
      ( P2
      = ( product_Pair_nat_nat @ X2 @ Y5 ) ) ).

% surj_pair
thf(fact_178_surj__pair,axiom,
    ! [P2: produc8199716216217303280at_nat] :
    ? [X2: nat > nat,Y5: nat] :
      ( P2
      = ( produc72220940542539688at_nat @ X2 @ Y5 ) ) ).

% surj_pair
thf(fact_179_prod__cases,axiom,
    ! [P: produc1525979690750518759term_a > $o,P2: produc1525979690750518759term_a] :
      ( ! [A4: ground_gterm_a,B4: ground_gterm_a] : ( P @ ( produc7419039783125785943term_a @ A4 @ B4 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_180_prod__cases,axiom,
    ! [P: produc2459281416120113548term_a > $o,P2: produc2459281416120113548term_a] :
      ( ! [A4: ground_gmctxt_a,B4: list_Ground_gterm_a] : ( P @ ( produc4720362732934906942term_a @ A4 @ B4 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_181_prod__cases,axiom,
    ! [P: product_prod_nat_nat > $o,P2: product_prod_nat_nat] :
      ( ! [A4: nat,B4: nat] : ( P @ ( product_Pair_nat_nat @ A4 @ B4 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_182_prod__cases,axiom,
    ! [P: produc8199716216217303280at_nat > $o,P2: produc8199716216217303280at_nat] :
      ( ! [A4: nat > nat,B4: nat] : ( P @ ( produc72220940542539688at_nat @ A4 @ B4 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_183_Pair__inject,axiom,
    ! [A: ground_gterm_a,B: ground_gterm_a,A2: ground_gterm_a,B2: ground_gterm_a] :
      ( ( ( produc7419039783125785943term_a @ A @ B )
        = ( produc7419039783125785943term_a @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_184_Pair__inject,axiom,
    ! [A: ground_gmctxt_a,B: list_Ground_gterm_a,A2: ground_gmctxt_a,B2: list_Ground_gterm_a] :
      ( ( ( produc4720362732934906942term_a @ A @ B )
        = ( produc4720362732934906942term_a @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_185_Pair__inject,axiom,
    ! [A: nat,B: nat,A2: nat,B2: nat] :
      ( ( ( product_Pair_nat_nat @ A @ B )
        = ( product_Pair_nat_nat @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

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

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

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

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

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

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

% ord_less_eq_trans
thf(fact_192_less__induct,axiom,
    ! [P: nat > $o,A: nat] :
      ( ! [X2: nat] :
          ( ! [Y6: nat] :
              ( ( ord_less_nat @ Y6 @ X2 )
             => ( P @ Y6 ) )
         => ( P @ X2 ) )
     => ( P @ A ) ) ).

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

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

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

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

% dual_order.irrefl
thf(fact_197_exists__least__iff,axiom,
    ( ( ^ [P3: nat > $o] :
        ? [X6: nat] : ( P3 @ X6 ) )
    = ( ^ [P4: nat > $o] :
        ? [N2: nat] :
          ( ( P4 @ N2 )
          & ! [M: nat] :
              ( ( ord_less_nat @ M @ N2 )
             => ~ ( P4 @ M ) ) ) ) ) ).

% exists_least_iff
thf(fact_198_linorder__less__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B4: nat] :
          ( ( ord_less_nat @ A4 @ B4 )
         => ( P @ A4 @ B4 ) )
     => ( ! [A4: nat] : ( P @ A4 @ A4 )
       => ( ! [A4: nat,B4: nat] :
              ( ( P @ B4 @ A4 )
             => ( P @ A4 @ B4 ) )
         => ( P @ A @ B ) ) ) ) ).

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

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

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

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

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

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

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

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

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

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

% order_less_trans
thf(fact_209_ord__eq__less__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C4: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_210_ord__less__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C4: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ( F @ B )
          = C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C4 ) ) ) ) ).

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

% order_less_irrefl
thf(fact_212_order__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C4: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% order_less_subst1
thf(fact_213_order__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C4: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C4 ) ) ) ) ).

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

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

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

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

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

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

% order_less_imp_not_less
thf(fact_220_gmctxtex__onp__closure__predI,axiom,
    ! [P: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [C2: ground_gmctxt_a,Ss: list_Ground_gterm_a,Ts: list_Ground_gterm_a] :
          ( ( P @ C2 )
         => ( ( ( ground_num_gholes_a @ C2 )
              = ( size_s1893836384466666913term_a @ Ss ) )
           => ( ( ( size_s1893836384466666913term_a @ Ss )
                = ( size_s1893836384466666913term_a @ Ts ) )
             => ( ! [I: nat] :
                    ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ Ts ) )
                   => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ss @ I ) @ ( nth_Ground_gterm_a @ Ts @ I ) ) @ R ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( ground_fill_gholes_a @ C2 @ Ss ) @ ( ground_fill_gholes_a @ C2 @ Ts ) ) @ R ) ) ) ) )
     => ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ R ) @ R ) ) ).

% gmctxtex_onp_closure_predI
thf(fact_221_subseteq__set__conv__nth,axiom,
    ! [Ss2: list_P2433084232546440685term_a,T3: set_Pr8282532413760598727term_a] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s281034491502894169term_a @ Ss2 ) )
           => ( member4351891425000572176term_a @ ( nth_Pr5943965302187034734term_a @ Ss2 @ I2 ) @ T3 ) ) )
      = ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ Ss2 ) @ T3 ) ) ).

% subseteq_set_conv_nth
thf(fact_222_subseteq__set__conv__nth,axiom,
    ! [Ss2: list_Ground_gmctxt_a,T3: set_Ground_gmctxt_a] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ss2 ) )
           => ( member3306386364193653941ctxt_a @ ( nth_Ground_gmctxt_a @ Ss2 @ I2 ) @ T3 ) ) )
      = ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ Ss2 ) @ T3 ) ) ).

% subseteq_set_conv_nth
thf(fact_223_subseteq__set__conv__nth,axiom,
    ! [Ss2: list_Ground_gterm_a,T3: set_Ground_gterm_a] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ss2 ) )
           => ( member5261315023172567896term_a @ ( nth_Ground_gterm_a @ Ss2 @ I2 ) @ T3 ) ) )
      = ( ord_le2380367239515552431term_a @ ( set_Ground_gterm_a2 @ Ss2 ) @ T3 ) ) ).

% subseteq_set_conv_nth
thf(fact_224_subseteq__set__conv__nth,axiom,
    ! [Ss2: list_l4678906206682822203term_a,T3: set_li8588095516285831957term_a] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Ss2 ) )
           => ( member5011579089780872286term_a @ ( nth_li6172171122907299772term_a @ Ss2 @ I2 ) @ T3 ) ) )
      = ( ord_le1527559921741259445term_a @ ( set_li7546925467519454922term_a @ Ss2 ) @ T3 ) ) ).

% subseteq_set_conv_nth
thf(fact_225_subseteq__set__conv__nth,axiom,
    ! [Ss2: list_nat,T3: set_nat] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ss2 ) )
           => ( member_nat @ ( nth_nat @ Ss2 @ I2 ) @ T3 ) ) )
      = ( ord_less_eq_set_nat @ ( set_nat2 @ Ss2 ) @ T3 ) ) ).

% subseteq_set_conv_nth
thf(fact_226_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_P2433084232546440685term_a,A3: set_Pr8282532413760598727term_a] :
      ( ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ A3 )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s281034491502894169term_a @ Xs ) )
           => ( member4351891425000572176term_a @ ( nth_Pr5943965302187034734term_a @ Xs @ I2 ) @ A3 ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_227_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,A3: set_Ground_gmctxt_a] :
      ( ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ A3 )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
           => ( member3306386364193653941ctxt_a @ ( nth_Ground_gmctxt_a @ Xs @ I2 ) @ A3 ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_228_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_Ground_gterm_a,A3: set_Ground_gterm_a] :
      ( ( ord_le2380367239515552431term_a @ ( set_Ground_gterm_a2 @ Xs ) @ A3 )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Xs ) )
           => ( member5261315023172567896term_a @ ( nth_Ground_gterm_a @ Xs @ I2 ) @ A3 ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_229_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_l4678906206682822203term_a,A3: set_li8588095516285831957term_a] :
      ( ( ord_le1527559921741259445term_a @ ( set_li7546925467519454922term_a @ Xs ) @ A3 )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Xs ) )
           => ( member5011579089780872286term_a @ ( nth_li6172171122907299772term_a @ Xs @ I2 ) @ A3 ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_230_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_nat,A3: set_nat] :
      ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ A3 )
      = ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
           => ( member_nat @ ( nth_nat @ Xs @ I2 ) @ A3 ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_231_gmctxtex__pred__cmp__subseteq,axiom,
    ! [P: ground_gmctxt_a > $o,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [C2: ground_gmctxt_a,D2: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ C2 @ D2 )
         => ( ( P @ C2 )
           => ( ! [X: ground_gmctxt_a] :
                  ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C2 @ D2 ) ) )
                 => ( Q @ X ) )
             => ( Q @ D2 ) ) ) )
     => ( ord_le7556488698670074471term_a @ ( contex3086340098647126761_onp_a @ P @ ( contex3086340098647126761_onp_a @ Q @ R ) ) @ ( contex3086340098647126761_onp_a @ Q @ R ) ) ) ).

% gmctxtex_pred_cmp_subseteq
thf(fact_232_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,Ss: list_Ground_gterm_a] :
            ( ( ground_eq_gfill_a @ S @ ( produc4720362732934906942term_a @ C2 @ Ss ) )
           => ! [Ts: list_Ground_gterm_a] :
                ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ C2 @ Ts ) )
               => ( ( P @ C2 )
                 => ( ! [X: ground_gmctxt_a] :
                        ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Ds2 ) )
                       => ( Q @ X ) )
                   => ( ( ( ground_num_gholes_a @ C2 )
                        = ( size_s962548663205356226ctxt_a @ Ds2 ) )
                     => ( ( ( size_s962548663205356226ctxt_a @ Ds2 )
                          = ( size_s1893836384466666913term_a @ Ss ) )
                       => ( ( ( size_s1893836384466666913term_a @ Ss )
                            = ( size_s1893836384466666913term_a @ Ts ) )
                         => ! [Us: list_l4678906206682822203term_a] :
                              ( ( ( size_s1893836384466666913term_a @ Ts )
                                = ( size_s5321119603959729319term_a @ Us ) )
                             => ! [Vs: list_l4678906206682822203term_a] :
                                  ( ( ( size_s5321119603959729319term_a @ Us )
                                    = ( size_s5321119603959729319term_a @ Vs ) )
                                 => ( ! [I: nat] :
                                        ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                                       => ( ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ss @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I ) @ ( nth_li6172171122907299772term_a @ Us @ I ) ) )
                                          & ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I ) @ ( nth_li6172171122907299772term_a @ Vs @ I ) ) ) ) )
                                   => ~ ! [I: nat] :
                                          ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ Ds2 ) )
                                         => ! [J: nat] :
                                              ( ( ord_less_nat @ J @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Vs @ I ) ) )
                                             => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Us @ I ) @ J ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Vs @ I ) @ J ) ) @ R ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% gmctxtex_onp_doubleE
thf(fact_233_leD,axiom,
    ! [Y3: ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ Y3 @ X3 )
     => ~ ( ord_le9048903087952742514ctxt_a @ X3 @ Y3 ) ) ).

% leD
thf(fact_234_leD,axiom,
    ! [Y3: nat,X3: nat] :
      ( ( ord_less_eq_nat @ Y3 @ X3 )
     => ~ ( ord_less_nat @ X3 @ Y3 ) ) ).

% leD
thf(fact_235_leI,axiom,
    ! [X3: nat,Y3: nat] :
      ( ~ ( ord_less_nat @ X3 @ Y3 )
     => ( ord_less_eq_nat @ Y3 @ X3 ) ) ).

% leI
thf(fact_236_nless__le,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a] :
      ( ( ~ ( ord_le9048903087952742514ctxt_a @ A @ B ) )
      = ( ~ ( ord_le1940079914304802430ctxt_a @ A @ B )
        | ( A = B ) ) ) ).

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

% nless_le
thf(fact_238_antisym__conv1,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a] :
      ( ~ ( ord_le9048903087952742514ctxt_a @ X3 @ Y3 )
     => ( ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv1
thf(fact_239_antisym__conv1,axiom,
    ! [X3: nat,Y3: nat] :
      ( ~ ( ord_less_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_nat @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv1
thf(fact_240_antisym__conv2,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 )
     => ( ( ~ ( ord_le9048903087952742514ctxt_a @ X3 @ Y3 ) )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv2
thf(fact_241_antisym__conv2,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ~ ( ord_less_nat @ X3 @ Y3 ) )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv2
thf(fact_242_less__le__not__le,axiom,
    ( ord_le9048903087952742514ctxt_a
    = ( ^ [X4: ground_gmctxt_a,Y4: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ X4 @ Y4 )
          & ~ ( ord_le1940079914304802430ctxt_a @ Y4 @ X4 ) ) ) ) ).

% less_le_not_le
thf(fact_243_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X4: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X4 @ Y4 )
          & ~ ( ord_less_eq_nat @ Y4 @ X4 ) ) ) ) ).

% less_le_not_le
thf(fact_244_not__le__imp__less,axiom,
    ! [Y3: nat,X3: nat] :
      ( ~ ( ord_less_eq_nat @ Y3 @ X3 )
     => ( ord_less_nat @ X3 @ Y3 ) ) ).

% not_le_imp_less
thf(fact_245_order_Oorder__iff__strict,axiom,
    ( ord_le1940079914304802430ctxt_a
    = ( ^ [A5: ground_gmctxt_a,B5: ground_gmctxt_a] :
          ( ( ord_le9048903087952742514ctxt_a @ A5 @ B5 )
          | ( A5 = B5 ) ) ) ) ).

% order.order_iff_strict
thf(fact_246_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_247_order_Ostrict__iff__order,axiom,
    ( ord_le9048903087952742514ctxt_a
    = ( ^ [A5: ground_gmctxt_a,B5: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ A5 @ B5 )
          & ( A5 != B5 ) ) ) ) ).

% order.strict_iff_order
thf(fact_248_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_249_order_Ostrict__trans1,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ord_le9048903087952742514ctxt_a @ B @ C4 )
       => ( ord_le9048903087952742514ctxt_a @ A @ C4 ) ) ) ).

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

% order.strict_trans1
thf(fact_251_order_Ostrict__trans2,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le9048903087952742514ctxt_a @ A @ B )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ord_le9048903087952742514ctxt_a @ A @ C4 ) ) ) ).

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

% order.strict_trans2
thf(fact_253_order_Ostrict__iff__not,axiom,
    ( ord_le9048903087952742514ctxt_a
    = ( ^ [A5: ground_gmctxt_a,B5: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ A5 @ B5 )
          & ~ ( ord_le1940079914304802430ctxt_a @ B5 @ A5 ) ) ) ) ).

% order.strict_iff_not
thf(fact_254_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_255_dual__order_Oorder__iff__strict,axiom,
    ( ord_le1940079914304802430ctxt_a
    = ( ^ [B5: ground_gmctxt_a,A5: ground_gmctxt_a] :
          ( ( ord_le9048903087952742514ctxt_a @ B5 @ A5 )
          | ( A5 = B5 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_256_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_257_dual__order_Ostrict__iff__order,axiom,
    ( ord_le9048903087952742514ctxt_a
    = ( ^ [B5: ground_gmctxt_a,A5: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ B5 @ A5 )
          & ( A5 != B5 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_258_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_259_dual__order_Ostrict__trans1,axiom,
    ! [B: ground_gmctxt_a,A: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ B @ A )
     => ( ( ord_le9048903087952742514ctxt_a @ C4 @ B )
       => ( ord_le9048903087952742514ctxt_a @ C4 @ A ) ) ) ).

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

% dual_order.strict_trans1
thf(fact_261_dual__order_Ostrict__trans2,axiom,
    ! [B: ground_gmctxt_a,A: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le9048903087952742514ctxt_a @ B @ A )
     => ( ( ord_le1940079914304802430ctxt_a @ C4 @ B )
       => ( ord_le9048903087952742514ctxt_a @ C4 @ A ) ) ) ).

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

% dual_order.strict_trans2
thf(fact_263_dual__order_Ostrict__iff__not,axiom,
    ( ord_le9048903087952742514ctxt_a
    = ( ^ [B5: ground_gmctxt_a,A5: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ B5 @ A5 )
          & ~ ( ord_le1940079914304802430ctxt_a @ A5 @ B5 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_264_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_265_order_Ostrict__implies__order,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a] :
      ( ( ord_le9048903087952742514ctxt_a @ A @ B )
     => ( ord_le1940079914304802430ctxt_a @ A @ B ) ) ).

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

% order.strict_implies_order
thf(fact_267_dual__order_Ostrict__implies__order,axiom,
    ! [B: ground_gmctxt_a,A: ground_gmctxt_a] :
      ( ( ord_le9048903087952742514ctxt_a @ B @ A )
     => ( ord_le1940079914304802430ctxt_a @ B @ A ) ) ).

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

% dual_order.strict_implies_order
thf(fact_269_order__le__less,axiom,
    ( ord_le1940079914304802430ctxt_a
    = ( ^ [X4: ground_gmctxt_a,Y4: ground_gmctxt_a] :
          ( ( ord_le9048903087952742514ctxt_a @ X4 @ Y4 )
          | ( X4 = Y4 ) ) ) ) ).

% order_le_less
thf(fact_270_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X4: nat,Y4: nat] :
          ( ( ord_less_nat @ X4 @ Y4 )
          | ( X4 = Y4 ) ) ) ) ).

% order_le_less
thf(fact_271_order__less__le,axiom,
    ( ord_le9048903087952742514ctxt_a
    = ( ^ [X4: ground_gmctxt_a,Y4: ground_gmctxt_a] :
          ( ( ord_le1940079914304802430ctxt_a @ X4 @ Y4 )
          & ( X4 != Y4 ) ) ) ) ).

% order_less_le
thf(fact_272_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X4: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X4 @ Y4 )
          & ( X4 != Y4 ) ) ) ) ).

% order_less_le
thf(fact_273_linorder__not__le,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ~ ( ord_less_eq_nat @ X3 @ Y3 ) )
      = ( ord_less_nat @ Y3 @ X3 ) ) ).

% linorder_not_le
thf(fact_274_linorder__not__less,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ~ ( ord_less_nat @ X3 @ Y3 ) )
      = ( ord_less_eq_nat @ Y3 @ X3 ) ) ).

% linorder_not_less
thf(fact_275_order__less__imp__le,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a] :
      ( ( ord_le9048903087952742514ctxt_a @ X3 @ Y3 )
     => ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 ) ) ).

% order_less_imp_le
thf(fact_276_order__less__imp__le,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( ord_less_eq_nat @ X3 @ Y3 ) ) ).

% order_less_imp_le
thf(fact_277_order__le__neq__trans,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( A != B )
       => ( ord_le9048903087952742514ctxt_a @ A @ B ) ) ) ).

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

% order_le_neq_trans
thf(fact_279_order__neq__le__trans,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a] :
      ( ( A != B )
     => ( ( ord_le1940079914304802430ctxt_a @ A @ B )
       => ( ord_le9048903087952742514ctxt_a @ A @ B ) ) ) ).

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

% order_neq_le_trans
thf(fact_281_order__le__less__trans,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a,Z2: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 )
     => ( ( ord_le9048903087952742514ctxt_a @ Y3 @ Z2 )
       => ( ord_le9048903087952742514ctxt_a @ X3 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_282_order__le__less__trans,axiom,
    ! [X3: nat,Y3: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_nat @ Y3 @ Z2 )
       => ( ord_less_nat @ X3 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_283_order__less__le__trans,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a,Z2: ground_gmctxt_a] :
      ( ( ord_le9048903087952742514ctxt_a @ X3 @ Y3 )
     => ( ( ord_le1940079914304802430ctxt_a @ Y3 @ Z2 )
       => ( ord_le9048903087952742514ctxt_a @ X3 @ Z2 ) ) ) ).

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

% order_less_le_trans
thf(fact_285_order__le__less__subst1,axiom,
    ! [A: ground_gmctxt_a,F: nat > ground_gmctxt_a,B: nat,C4: nat] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_le9048903087952742514ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le9048903087952742514ctxt_a @ A @ ( F @ C4 ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_286_order__le__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C4: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_287_order__le__less__subst2,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ord_le9048903087952742514ctxt_a @ ( F @ B ) @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le9048903087952742514ctxt_a @ ( F @ A ) @ C4 ) ) ) ) ).

% order_le_less_subst2
thf(fact_288_order__le__less__subst2,axiom,
    ! [A: ground_gmctxt_a,B: ground_gmctxt_a,F: ground_gmctxt_a > nat,C4: nat] :
      ( ( ord_le1940079914304802430ctxt_a @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C4 ) ) ) ) ).

% order_le_less_subst2
thf(fact_289_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_le9048903087952742514ctxt_a @ ( F @ B ) @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le9048903087952742514ctxt_a @ ( F @ A ) @ C4 ) ) ) ) ).

% order_le_less_subst2
thf(fact_290_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C4: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C4 ) ) ) ) ).

% order_le_less_subst2
thf(fact_291_order__less__le__subst1,axiom,
    ! [A: ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_le9048903087952742514ctxt_a @ A @ ( F @ B ) )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le9048903087952742514ctxt_a @ A @ ( F @ C4 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_292_order__less__le__subst1,axiom,
    ! [A: nat,F: ground_gmctxt_a > nat,B: ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_le1940079914304802430ctxt_a @ B @ C4 )
       => ( ! [X2: ground_gmctxt_a,Y5: ground_gmctxt_a] :
              ( ( ord_le1940079914304802430ctxt_a @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_293_order__less__le__subst1,axiom,
    ! [A: ground_gmctxt_a,F: nat > ground_gmctxt_a,B: nat,C4: nat] :
      ( ( ord_le9048903087952742514ctxt_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_le1940079914304802430ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le9048903087952742514ctxt_a @ A @ ( F @ C4 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_294_order__less__le__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C4: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y5 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ A @ ( F @ C4 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_295_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > ground_gmctxt_a,C4: ground_gmctxt_a] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_le1940079914304802430ctxt_a @ ( F @ B ) @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_le9048903087952742514ctxt_a @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_le9048903087952742514ctxt_a @ ( F @ A ) @ C4 ) ) ) ) ).

% order_less_le_subst2
thf(fact_296_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C4: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C4 )
       => ( ! [X2: nat,Y5: nat] :
              ( ( ord_less_nat @ X2 @ Y5 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y5 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C4 ) ) ) ) ).

% order_less_le_subst2
thf(fact_297_linorder__le__less__linear,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
      | ( ord_less_nat @ Y3 @ X3 ) ) ).

% linorder_le_less_linear
thf(fact_298_order__le__imp__less__or__eq,axiom,
    ! [X3: ground_gmctxt_a,Y3: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ X3 @ Y3 )
     => ( ( ord_le9048903087952742514ctxt_a @ X3 @ Y3 )
        | ( X3 = Y3 ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_299_order__le__imp__less__or__eq,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_nat @ X3 @ Y3 )
        | ( X3 = Y3 ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_300_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,Us: list_Ground_gterm_a] :
            ( ( S
              = ( ground_fill_gholes_a @ C2 @ Us ) )
           => ! [Vs: list_Ground_gterm_a] :
                ( ( T
                  = ( ground_fill_gholes_a @ C2 @ Vs ) )
               => ( ( ( ground_num_gholes_a @ C2 )
                    = ( size_s1893836384466666913term_a @ Us ) )
                 => ( ( ( size_s1893836384466666913term_a @ Us )
                      = ( size_s1893836384466666913term_a @ Vs ) )
                   => ( ( P @ C2 )
                     => ~ ! [I: nat] :
                            ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ Vs ) )
                           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Us @ I ) @ ( nth_Ground_gterm_a @ Vs @ I ) ) @ R ) ) ) ) ) ) ) ) ).

% gmctxtex_onpE
thf(fact_301_gmctxtex__onp__listE,axiom,
    ! [Ts2: list_Ground_gterm_a,Ss2: list_Ground_gterm_a,Q: ground_gmctxt_a > $o,R: set_Pr8282532413760598727term_a] :
      ( ! [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 ) ) @ ( contex3086340098647126761_onp_a @ Q @ R ) ) )
     => ( ( ( size_s1893836384466666913term_a @ Ss2 )
          = ( size_s1893836384466666913term_a @ Ts2 ) )
       => ~ ! [Ds2: list_Ground_gmctxt_a] :
              ( ( ( size_s1893836384466666913term_a @ Ts2 )
                = ( 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 ) )
                     => ( ! [I: nat] :
                            ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ Tss ) )
                           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Sss @ I ) )
                              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Tss @ I ) ) ) )
                       => ( ! [X: ground_gmctxt_a] :
                              ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Ds2 ) )
                             => ( Q @ X ) )
                         => ( ! [I: nat] :
                                ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ Tss ) )
                               => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ss2 @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I ) @ ( nth_li6172171122907299772term_a @ Sss @ I ) ) ) )
                           => ( ! [I: nat] :
                                  ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ Tss ) )
                                 => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts2 @ I ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds2 @ I ) @ ( nth_li6172171122907299772term_a @ Tss @ I ) ) ) )
                             => ~ ! [I: nat] :
                                    ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Tss ) ) )
                                   => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Sss ) @ I ) @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Tss ) @ I ) ) @ R ) ) ) ) ) ) ) ) ) ) ) ).

% gmctxtex_onp_listE
thf(fact_302_fill__gholes__gmctxt__sound,axiom,
    ! [Ds: list_Ground_gmctxt_a,C: ground_gmctxt_a,Sss2: list_l4678906206682822203term_a,Ts2: 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 @ Ts2 )
            = ( ground_num_gholes_a @ C ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds ) )
               => ( ground_eq_gfill_a @ ( nth_Ground_gterm_a @ Ts2 @ I3 ) @ ( produc4720362732934906942term_a @ ( nth_Ground_gmctxt_a @ Ds @ I3 ) @ ( nth_li6172171122907299772term_a @ Sss2 @ I3 ) ) ) )
           => ( ground_eq_gfill_a @ ( ground_fill_gholes_a @ C @ Ts2 ) @ ( produc4720362732934906942term_a @ ( ground2530127064035342964ctxt_a @ C @ Ds ) @ ( concat1399541994378716528term_a @ Sss2 ) ) ) ) ) ) ) ).

% fill_gholes_gmctxt_sound
thf(fact_303_minf_I8_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ X @ Z3 )
     => ~ ( ord_less_eq_nat @ T @ X ) ) ).

% minf(8)
thf(fact_304_minf_I6_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ X @ Z3 )
     => ( ord_less_eq_nat @ X @ T ) ) ).

% minf(6)
thf(fact_305_pinf_I8_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ Z3 @ X )
     => ( ord_less_eq_nat @ T @ X ) ) ).

% pinf(8)
thf(fact_306_pinf_I6_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ Z3 @ X )
     => ~ ( ord_less_eq_nat @ X @ T ) ) ).

% pinf(6)
thf(fact_307_verit__comp__simplify1_I3_J,axiom,
    ! [B2: nat,A2: nat] :
      ( ( ~ ( ord_less_eq_nat @ B2 @ A2 ) )
      = ( ord_less_nat @ A2 @ B2 ) ) ).

% verit_comp_simplify1(3)
thf(fact_308_complete__interval,axiom,
    ! [A: nat,B: nat,P: nat > $o] :
      ( ( ord_less_nat @ A @ B )
     => ( ( P @ A )
       => ( ~ ( P @ B )
         => ? [C5: nat] :
              ( ( ord_less_eq_nat @ A @ C5 )
              & ( ord_less_eq_nat @ C5 @ B )
              & ! [X: nat] :
                  ( ( ( ord_less_eq_nat @ A @ X )
                    & ( ord_less_nat @ X @ C5 ) )
                 => ( P @ X ) )
              & ! [D4: nat] :
                  ( ! [X2: nat] :
                      ( ( ( ord_less_eq_nat @ A @ X2 )
                        & ( ord_less_nat @ X2 @ D4 ) )
                     => ( P @ X2 ) )
                 => ( ord_less_eq_nat @ D4 @ C5 ) ) ) ) ) ) ).

% complete_interval
thf(fact_309_permut__aux__sound,axiom,
    ! [I4: nat,As: list_Ground_gmctxt_a,F: nat > nat,Bs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ As ) )
     => ( ( nth_Ground_gmctxt_a @ ( missin1343833451449182556ctxt_a @ As @ F @ Bs ) @ I4 )
        = ( nth_Ground_gmctxt_a @ Bs @ ( F @ I4 ) ) ) ) ).

% permut_aux_sound
thf(fact_310_permut__aux__sound,axiom,
    ! [I4: nat,As: list_Ground_gterm_a,F: nat > nat,Bs: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ As ) )
     => ( ( nth_Ground_gterm_a @ ( missin7316750521486066929term_a @ As @ F @ Bs ) @ I4 )
        = ( nth_Ground_gterm_a @ Bs @ ( F @ I4 ) ) ) ) ).

% permut_aux_sound
thf(fact_311_permut__aux__sound,axiom,
    ! [I4: nat,As: list_l4678906206682822203term_a,F: nat > nat,Bs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ As ) )
     => ( ( nth_li6172171122907299772term_a @ ( missin8070190275936138615term_a @ As @ F @ Bs ) @ I4 )
        = ( nth_li6172171122907299772term_a @ Bs @ ( F @ I4 ) ) ) ) ).

% permut_aux_sound
thf(fact_312_permut__aux__sound,axiom,
    ! [I4: nat,As: list_nat,F: nat > nat,Bs: list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ As ) )
     => ( ( nth_nat @ ( missin1888654203714970382ux_nat @ As @ F @ Bs ) @ I4 )
        = ( nth_nat @ Bs @ ( F @ I4 ) ) ) ) ).

% permut_aux_sound
thf(fact_313_Utils_Otrancl__list_Obase,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,R: set_Pr8705490787052945405ctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ys ) )
           => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Xs @ I3 ) @ ( nth_Ground_gmctxt_a @ Ys @ I3 ) ) @ R ) )
       => ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs @ Ys ) @ ( trancl6028151697025156246ctxt_a @ R ) ) ) ) ).

% Utils.trancl_list.base
thf(fact_314_Utils_Otrancl__list_Obase,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ys ) )
           => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Xs @ I3 ) @ ( nth_Ground_gterm_a @ Ys @ I3 ) ) @ R ) )
       => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( trancl1902929335784340279term_a @ R ) ) ) ) ).

% Utils.trancl_list.base
thf(fact_315_Utils_Otrancl__list_Obase,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,R: set_Pr2711430308268100935term_a] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ys ) )
           => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) @ R ) )
       => ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs @ Ys ) @ ( trancl5818250397338112189term_a @ R ) ) ) ) ).

% Utils.trancl_list.base
thf(fact_316_Utils_Otrancl__list_Obase,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ys ) )
           => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Xs @ I3 ) @ ( nth_nat @ Ys @ I3 ) ) @ R ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( trancl_list_nat @ R ) ) ) ) ).

% Utils.trancl_list.base
thf(fact_317_verit__la__disequality,axiom,
    ! [A: nat,B: nat] :
      ( ( A = B )
      | ~ ( ord_less_eq_nat @ A @ B )
      | ~ ( ord_less_eq_nat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_318_verit__comp__simplify1_I2_J,axiom,
    ! [A: ground_gmctxt_a] : ( ord_le1940079914304802430ctxt_a @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_319_verit__comp__simplify1_I2_J,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_320_verit__comp__simplify1_I1_J,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_321_pinf_I1_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ Z4 @ X2 )
         => ( ( P @ X2 )
            = ( P5 @ X2 ) ) )
     => ( ? [Z4: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ Z4 @ X2 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ Z3 @ X )
           => ( ( ( P @ X )
                & ( Q @ X ) )
              = ( ( P5 @ X )
                & ( Q2 @ X ) ) ) ) ) ) ).

% pinf(1)
thf(fact_322_pinf_I2_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ Z4 @ X2 )
         => ( ( P @ X2 )
            = ( P5 @ X2 ) ) )
     => ( ? [Z4: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ Z4 @ X2 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ Z3 @ X )
           => ( ( ( P @ X )
                | ( Q @ X ) )
              = ( ( P5 @ X )
                | ( Q2 @ X ) ) ) ) ) ) ).

% pinf(2)
thf(fact_323_pinf_I3_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ Z3 @ X )
     => ( X != T ) ) ).

% pinf(3)
thf(fact_324_pinf_I4_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ Z3 @ X )
     => ( X != T ) ) ).

% pinf(4)
thf(fact_325_pinf_I5_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ Z3 @ X )
     => ~ ( ord_less_nat @ X @ T ) ) ).

% pinf(5)
thf(fact_326_pinf_I7_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ Z3 @ X )
     => ( ord_less_nat @ T @ X ) ) ).

% pinf(7)
thf(fact_327_minf_I1_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ X2 @ Z4 )
         => ( ( P @ X2 )
            = ( P5 @ X2 ) ) )
     => ( ? [Z4: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ X2 @ Z4 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ X @ Z3 )
           => ( ( ( P @ X )
                & ( Q @ X ) )
              = ( ( P5 @ X )
                & ( Q2 @ X ) ) ) ) ) ) ).

% minf(1)
thf(fact_328_minf_I2_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z4: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ X2 @ Z4 )
         => ( ( P @ X2 )
            = ( P5 @ X2 ) ) )
     => ( ? [Z4: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ X2 @ Z4 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ X @ Z3 )
           => ( ( ( P @ X )
                | ( Q @ X ) )
              = ( ( P5 @ X )
                | ( Q2 @ X ) ) ) ) ) ) ).

% minf(2)
thf(fact_329_minf_I3_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ X @ Z3 )
     => ( X != T ) ) ).

% minf(3)
thf(fact_330_minf_I4_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ X @ Z3 )
     => ( X != T ) ) ).

% minf(4)
thf(fact_331_minf_I5_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ X @ Z3 )
     => ( ord_less_nat @ X @ T ) ) ).

% minf(5)
thf(fact_332_minf_I7_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X: nat] :
      ( ( ord_less_nat @ X @ Z3 )
     => ~ ( ord_less_nat @ T @ X ) ) ).

% minf(7)
thf(fact_333_eq__length__concat__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ( size_size_list_nat @ ( concat_nat @ Xs ) )
          = ( size_size_list_nat @ ( concat_nat @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_334_eq__length__concat__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_list_nat] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) )
          = ( size_size_list_nat @ ( concat_nat @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_335_eq__length__concat__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
       => ( ( size_size_list_nat @ ( concat_nat @ Xs ) )
          = ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_336_eq__length__concat__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_l4678906206682822203term_a] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) ) )
       => ( ( size_size_list_nat @ ( concat_nat @ Xs ) )
          = ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_337_eq__length__concat__nth,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_list_nat] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) )
          = ( size_size_list_nat @ ( concat_nat @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_338_eq__length__concat__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
       => ( ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) )
          = ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_339_eq__length__concat__nth,axiom,
    ! [Xs: list_l5172476077732501185term_a,Ys: list_list_nat] :
      ( ( ( size_s3474408278181496621term_a @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3474408278181496621term_a @ Xs ) )
           => ( ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) )
          = ( size_size_list_nat @ ( concat_nat @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_340_eq__length__concat__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_l5172476077732501185term_a] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s3474408278181496621term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Ys @ I3 ) ) ) )
       => ( ( size_size_list_nat @ ( concat_nat @ Xs ) )
          = ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_341_eq__length__concat__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_l4678906206682822203term_a] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) ) )
       => ( ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) )
          = ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_342_eq__length__concat__nth,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
       => ( ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) )
          = ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) ) ) ) ) ).

% eq_length_concat_nth
thf(fact_343_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Ys )
          = ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) ) ) )
         => ? [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 ) @ I4 )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_nat @ ( concat_nat @ Ys ) @ I4 )
                = ( nth_nat @ ( nth_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_344_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Ys )
          = ( size_s6994882312647770194ctxt_a @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) ) ) )
         => ? [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 ) @ I4 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_nat @ ( concat_nat @ Ys ) @ I4 )
                = ( nth_nat @ ( nth_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_345_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Ys: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Ys )
          = ( size_s5321119603959729319term_a @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) )
                = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s5321119603959729319term_a @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ I4 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_nat @ ( concat_nat @ Ys ) @ I4 )
                = ( nth_nat @ ( nth_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_346_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_list_nat,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Ys )
          = ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) ) ) )
         => ? [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 ) @ I4 )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ I4 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_347_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_list_nat,Ys: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s5321119603959729319term_a @ Ys )
          = ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) ) ) )
         => ? [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 ) @ I4 )
                = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ys ) @ I4 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_348_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Ys )
          = ( size_s6994882312647770194ctxt_a @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) ) ) )
         => ? [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 ) @ I4 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ I4 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_349_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s5321119603959729319term_a @ Ys )
          = ( size_s6994882312647770194ctxt_a @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) ) ) )
         => ? [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 ) @ I4 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ys ) @ I4 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_350_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Ys )
          = ( size_s5321119603959729319term_a @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) )
                = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s5321119603959729319term_a @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ I4 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ I4 )
                = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_351_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( size_s5321119603959729319term_a @ Ys )
          = ( size_s5321119603959729319term_a @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) )
                = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s5321119603959729319term_a @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ I4 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ys ) @ I4 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_352_nth__concat__two__lists,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,Ys: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Ys )
          = ( size_s3474408278181496621term_a @ Xs ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3474408278181496621term_a @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) )
                = ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ I3 ) ) ) )
         => ? [J2: nat,K2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s3474408278181496621term_a @ Xs ) )
              & ( ord_less_nat @ K2 @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ J2 ) ) )
              & ( ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Xs ) @ I4 )
                = ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Xs @ J2 ) @ K2 ) )
              & ( ( nth_nat @ ( concat_nat @ Ys ) @ I4 )
                = ( nth_nat @ ( nth_list_nat @ Ys @ J2 ) @ K2 ) ) ) ) ) ) ).

% nth_concat_two_lists
thf(fact_353_nth__concat__split,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I4 @ ( 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 ) @ I4 )
            = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ J2 ) @ K2 ) ) ) ) ).

% nth_concat_split
thf(fact_354_nth__concat__split,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ? [J2: nat,K2: nat] :
          ( ( ord_less_nat @ J2 @ ( size_s5321119603959729319term_a @ Xs ) )
          & ( ord_less_nat @ K2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) ) )
          & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ I4 )
            = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ J2 ) @ K2 ) ) ) ) ).

% nth_concat_split
thf(fact_355_nth__concat__split,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ? [J2: nat,K2: nat] :
          ( ( ord_less_nat @ J2 @ ( size_s3474408278181496621term_a @ Xs ) )
          & ( ord_less_nat @ K2 @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ J2 ) ) )
          & ( ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Xs ) @ I4 )
            = ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Xs @ J2 ) @ K2 ) ) ) ) ).

% nth_concat_split
thf(fact_356_nth__concat__split,axiom,
    ! [I4: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( 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 ) @ I4 )
            = ( nth_nat @ ( nth_list_nat @ Xs @ J2 ) @ K2 ) ) ) ) ).

% nth_concat_split
thf(fact_357_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_358_nth__concat__diff,axiom,
    ! [I1: nat,Xs: list_l4678906206682822203term_a,I22: nat] :
      ( ( ord_less_nat @ I1 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ord_less_nat @ I22 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_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_s5321119603959729319term_a @ Xs ) )
              & ( ord_less_nat @ J22 @ ( size_s5321119603959729319term_a @ Xs ) )
              & ( ord_less_nat @ K1 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ J1 ) ) )
              & ( ord_less_nat @ K22 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ J22 ) ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ I1 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ J1 ) @ K1 ) )
              & ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ I22 )
                = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ J22 ) @ K22 ) ) ) ) ) ) ).

% nth_concat_diff
thf(fact_359_nth__concat__diff,axiom,
    ! [I1: nat,Xs: list_l5172476077732501185term_a,I22: nat] :
      ( ( ord_less_nat @ I1 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ( ord_less_nat @ I22 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_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_s3474408278181496621term_a @ Xs ) )
              & ( ord_less_nat @ J22 @ ( size_s3474408278181496621term_a @ Xs ) )
              & ( ord_less_nat @ K1 @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ J1 ) ) )
              & ( ord_less_nat @ K22 @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ J22 ) ) )
              & ( ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Xs ) @ I1 )
                = ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Xs @ J1 ) @ K1 ) )
              & ( ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Xs ) @ I22 )
                = ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Xs @ J22 ) @ K22 ) ) ) ) ) ) ).

% nth_concat_diff
thf(fact_360_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_361_concat__all__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat,P: nat > nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) ) )
               => ( P @ ( nth_nat @ ( nth_list_nat @ Xs @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ys @ I3 ) @ 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_362_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 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ys @ I3 ) @ 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_363_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 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) ) )
               => ( P @ ( nth_nat @ ( nth_list_nat @ Xs @ I3 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) @ 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_364_concat__all__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_l4678906206682822203term_a,P: nat > ground_gterm_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) ) )
               => ( P @ ( nth_nat @ ( nth_list_nat @ Xs @ I3 ) @ J2 ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Xs ) @ K3 ) @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_365_concat__all__nth,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_list_nat,P: ground_gterm_a > nat > $o] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) ) )
               => ( P @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ys @ I3 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
             => ( P @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ K3 ) @ ( nth_nat @ ( concat_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_366_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 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) @ 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_367_concat__all__nth,axiom,
    ! [Xs: list_l5172476077732501185term_a,Ys: list_list_nat,P: list_Ground_gterm_a > nat > $o] :
      ( ( ( size_s3474408278181496621term_a @ Xs )
        = ( size_s3023201423986296836st_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3474408278181496621term_a @ Xs ) )
           => ( ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3474408278181496621term_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ I3 ) ) )
               => ( P @ ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Xs @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ys @ I3 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
             => ( P @ ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Xs ) @ K3 ) @ ( nth_nat @ ( concat_nat @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_368_concat__all__nth,axiom,
    ! [Xs: list_list_nat,Ys: list_l5172476077732501185term_a,P: nat > list_Ground_gterm_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Xs )
        = ( size_s3474408278181496621term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
              = ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) ) )
               => ( P @ ( nth_nat @ ( nth_list_nat @ Xs @ I3 ) @ J2 ) @ ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Ys @ I3 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Xs ) @ K3 ) @ ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_369_concat__all__nth,axiom,
    ! [Xs: list_l1578326660578982846ctxt_a,Ys: list_l4678906206682822203term_a,P: ground_gmctxt_a > ground_gterm_a > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) @ J2 ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ K3 ) @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_370_concat__all__nth,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l1578326660578982846ctxt_a,P: ground_gterm_a > ground_gmctxt_a > $o] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s6994882312647770194ctxt_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
       => ( ! [I3: nat,J2: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( ord_less_nat @ J2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) ) )
               => ( P @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) @ J2 ) ) ) )
         => ! [K3: nat] :
              ( ( ord_less_nat @ K3 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
             => ( P @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ K3 ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ys ) @ K3 ) ) ) ) ) ) ).

% concat_all_nth
thf(fact_371_concat__nth__nthI,axiom,
    ! [Ss2: list_list_nat,Ts2: list_list_nat,P: nat > nat > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Ss2 )
        = ( size_s3023201423986296836st_nat @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Ss2 @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_nat @ ( nth_list_nat @ Ss2 @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Ts2 ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Ss2 ) @ I ) @ ( nth_nat @ ( concat_nat @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_372_concat__nth__nthI,axiom,
    ! [Ss2: list_l1578326660578982846ctxt_a,Ts2: list_list_nat,P: ground_gmctxt_a > nat > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Ss2 )
        = ( size_s3023201423986296836st_nat @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss2 @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss2 @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Ts2 ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ss2 ) @ I ) @ ( nth_nat @ ( concat_nat @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_373_concat__nth__nthI,axiom,
    ! [Ss2: list_list_nat,Ts2: list_l1578326660578982846ctxt_a,P: nat > ground_gmctxt_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Ss2 )
        = ( size_s6994882312647770194ctxt_a @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Ts2 ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Ss2 @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_nat @ ( nth_list_nat @ Ss2 @ I3 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ts2 ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Ss2 ) @ I ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_374_concat__nth__nthI,axiom,
    ! [Ss2: list_list_nat,Ts2: list_l4678906206682822203term_a,P: nat > ground_gterm_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Ss2 )
        = ( size_s5321119603959729319term_a @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ts2 ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Ss2 @ I3 ) )
              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_nat @ ( nth_list_nat @ Ss2 @ I3 ) @ J2 ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Ts2 ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Ss2 ) @ I ) @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_375_concat__nth__nthI,axiom,
    ! [Ss2: list_l4678906206682822203term_a,Ts2: list_list_nat,P: ground_gterm_a > nat > $o] :
      ( ( ( size_s5321119603959729319term_a @ Ss2 )
        = ( size_s3023201423986296836st_nat @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ss2 @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ss2 @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Ts2 ) ) )
             => ( P @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ss2 ) @ I ) @ ( nth_nat @ ( concat_nat @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_376_concat__nth__nthI,axiom,
    ! [Ss2: list_l1578326660578982846ctxt_a,Ts2: list_l1578326660578982846ctxt_a,P: ground_gmctxt_a > ground_gmctxt_a > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Ss2 )
        = ( size_s6994882312647770194ctxt_a @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Ts2 ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss2 @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss2 @ I3 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ts2 ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ss2 ) @ I ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_377_concat__nth__nthI,axiom,
    ! [Ss2: list_l5172476077732501185term_a,Ts2: list_list_nat,P: list_Ground_gterm_a > nat > $o] :
      ( ( ( size_s3474408278181496621term_a @ Ss2 )
        = ( size_s3023201423986296836st_nat @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
           => ( ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Ss2 @ I3 ) )
              = ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ ( nth_list_nat @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Ss2 @ I3 ) @ J2 ) @ ( nth_nat @ ( nth_list_nat @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( concat_nat @ Ts2 ) ) )
             => ( P @ ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Ss2 ) @ I ) @ ( nth_nat @ ( concat_nat @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_378_concat__nth__nthI,axiom,
    ! [Ss2: list_list_nat,Ts2: list_l5172476077732501185term_a,P: nat > list_Ground_gterm_a > $o] :
      ( ( ( size_s3023201423986296836st_nat @ Ss2 )
        = ( size_s3474408278181496621term_a @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3474408278181496621term_a @ Ts2 ) )
           => ( ( size_size_list_nat @ ( nth_list_nat @ Ss2 @ I3 ) )
              = ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3474408278181496621term_a @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_nat @ ( nth_list_nat @ Ss2 @ I3 ) @ J2 ) @ ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Ts2 ) ) )
             => ( P @ ( nth_nat @ ( concat_nat @ Ss2 ) @ I ) @ ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_379_concat__nth__nthI,axiom,
    ! [Ss2: list_l1578326660578982846ctxt_a,Ts2: list_l4678906206682822203term_a,P: ground_gmctxt_a > ground_gterm_a > $o] :
      ( ( ( size_s6994882312647770194ctxt_a @ Ss2 )
        = ( size_s5321119603959729319term_a @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ts2 ) )
           => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss2 @ I3 ) )
              = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ss2 @ I3 ) @ J2 ) @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Ts2 ) ) )
             => ( P @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ss2 ) @ I ) @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_380_concat__nth__nthI,axiom,
    ! [Ss2: list_l4678906206682822203term_a,Ts2: list_l1578326660578982846ctxt_a,P: ground_gterm_a > ground_gmctxt_a > $o] :
      ( ( ( size_s5321119603959729319term_a @ Ss2 )
        = ( size_s6994882312647770194ctxt_a @ Ts2 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Ts2 ) )
           => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ss2 @ I3 ) )
              = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) ) ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Ts2 ) )
             => ! [J2: nat] :
                  ( ( ord_less_nat @ J2 @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) ) )
                 => ( P @ ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Ss2 @ I3 ) @ J2 ) @ ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ts2 @ I3 ) @ J2 ) ) ) )
         => ! [I: nat] :
              ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Ts2 ) ) )
             => ( P @ ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Ss2 ) @ I ) @ ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Ts2 ) @ I ) ) ) ) ) ) ).

% concat_nth_nthI
thf(fact_381_subsetI,axiom,
    ! [A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a] :
      ( ! [X2: produc1525979690750518759term_a] :
          ( ( member4351891425000572176term_a @ X2 @ A3 )
         => ( member4351891425000572176term_a @ X2 @ B3 ) )
     => ( ord_le7556488698670074471term_a @ A3 @ B3 ) ) ).

% subsetI
thf(fact_382_subrelI,axiom,
    ! [R2: set_Pr8282532413760598727term_a,S: set_Pr8282532413760598727term_a] :
      ( ! [X2: ground_gterm_a,Y5: ground_gterm_a] :
          ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X2 @ Y5 ) @ R2 )
         => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X2 @ Y5 ) @ S ) )
     => ( ord_le7556488698670074471term_a @ R2 @ S ) ) ).

% subrelI
thf(fact_383_subrelI,axiom,
    ! [R2: set_Pr6749809045309873730term_a,S: set_Pr6749809045309873730term_a] :
      ( ! [X2: ground_gmctxt_a,Y5: list_Ground_gterm_a] :
          ( ( member8767046467196472611term_a @ ( produc4720362732934906942term_a @ X2 @ Y5 ) @ R2 )
         => ( member8767046467196472611term_a @ ( produc4720362732934906942term_a @ X2 @ Y5 ) @ S ) )
     => ( ord_le8148545718494969506term_a @ R2 @ S ) ) ).

% subrelI
thf(fact_384_subrelI,axiom,
    ! [R2: set_Pr1261947904930325089at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ! [X2: nat,Y5: nat] :
          ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X2 @ Y5 ) @ R2 )
         => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X2 @ Y5 ) @ S ) )
     => ( ord_le3146513528884898305at_nat @ R2 @ S ) ) ).

% subrelI
thf(fact_385_subrelI,axiom,
    ! [R2: set_Pr9093778441882193744at_nat,S: set_Pr9093778441882193744at_nat] :
      ( ! [X2: nat > nat,Y5: nat] :
          ( ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X2 @ Y5 ) @ R2 )
         => ( member7226740684066999833at_nat @ ( produc72220940542539688at_nat @ X2 @ Y5 ) @ S ) )
     => ( ord_le3678578370064672496at_nat @ R2 @ S ) ) ).

% subrelI
thf(fact_386_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_list_nat,Ys: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Xs )
          = ( size_s3023201423986296836st_nat @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
         => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_387_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Xs )
          = ( size_s3023201423986296836st_nat @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
         => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_388_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Ys: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( size_s5321119603959729319term_a @ Xs )
          = ( size_s3023201423986296836st_nat @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
         => ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_389_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_list_nat,Ys: list_l1578326660578982846ctxt_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Xs )
          = ( size_s6994882312647770194ctxt_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
         => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_390_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_list_nat,Ys: list_l4678906206682822203term_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( size_s3023201423986296836st_nat @ Xs )
          = ( size_s5321119603959729319term_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
             => ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
                = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) ) )
         => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_391_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_l1578326660578982846ctxt_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Xs )
          = ( size_s6994882312647770194ctxt_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
         => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_392_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,Ys: list_l4678906206682822203term_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( size_s6994882312647770194ctxt_a @ Xs )
          = ( size_s5321119603959729319term_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s6994882312647770194ctxt_a @ Xs ) )
             => ( ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ I3 ) )
                = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) ) )
         => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_393_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Ys: list_l1578326660578982846ctxt_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( size_s5321119603959729319term_a @ Xs )
          = ( size_s6994882312647770194ctxt_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) )
                = ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Ys @ I3 ) ) ) )
         => ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_394_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( size_s5321119603959729319term_a @ Xs )
          = ( size_s5321119603959729319term_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Xs ) )
             => ( ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) )
                = ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) ) )
         => ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_395_concat__index__split__unique,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,Ys: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ( ( size_s3474408278181496621term_a @ Xs )
          = ( size_s3023201423986296836st_nat @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3474408278181496621term_a @ Xs ) )
             => ( ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ I3 ) )
                = ( size_size_list_nat @ ( nth_list_nat @ Ys @ I3 ) ) ) )
         => ( ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs )
            = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Ys ) ) ) ) ) ).

% concat_index_split_unique
thf(fact_396_Utils_Otrancl__list_Olist__trancl,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,R: set_Pr8705490787052945405ctxt_a,I4: nat,Z2: ground_gmctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs @ Ys ) @ ( trancl6028151697025156246ctxt_a @ R ) )
     => ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Ys ) )
       => ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Ys @ I4 ) @ Z2 ) @ R )
         => ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs @ ( list_u7950812632479372336ctxt_a @ Ys @ I4 @ Z2 ) ) @ ( trancl6028151697025156246ctxt_a @ R ) ) ) ) ) ).

% Utils.trancl_list.list_trancl
thf(fact_397_Utils_Otrancl__list_Olist__trancl,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a,I4: nat,Z2: ground_gterm_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( trancl1902929335784340279term_a @ R ) )
     => ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Ys ) )
       => ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ys @ I4 ) @ Z2 ) @ R )
         => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ ( list_u6582344683876525341term_a @ Ys @ I4 @ Z2 ) ) @ ( trancl1902929335784340279term_a @ R ) ) ) ) ) ).

% Utils.trancl_list.list_trancl
thf(fact_398_Utils_Otrancl__list_Olist__trancl,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,R: set_Pr2711430308268100935term_a,I4: nat,Z2: list_Ground_gterm_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs @ Ys ) @ ( trancl5818250397338112189term_a @ R ) )
     => ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Ys ) )
       => ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ Ys @ I4 ) @ Z2 ) @ R )
         => ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs @ ( list_u412135983231242147term_a @ Ys @ I4 @ Z2 ) ) @ ( trancl5818250397338112189term_a @ R ) ) ) ) ) ).

% Utils.trancl_list.list_trancl
thf(fact_399_Utils_Otrancl__list_Olist__trancl,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat,I4: nat,Z2: nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( trancl_list_nat @ R ) )
     => ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Ys ) )
       => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Ys @ I4 ) @ Z2 ) @ R )
         => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ ( list_update_nat @ Ys @ I4 @ Z2 ) ) @ ( trancl_list_nat @ R ) ) ) ) ) ).

% Utils.trancl_list.list_trancl
thf(fact_400_Utils_Otrancl__list_Osimps,axiom,
    ! [A1: list_Ground_gmctxt_a,A22: list_Ground_gmctxt_a,R: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ A1 @ A22 ) @ ( trancl6028151697025156246ctxt_a @ R ) )
      = ( ? [Xs2: list_Ground_gmctxt_a,Ys2: list_Ground_gmctxt_a] :
            ( ( A1 = Xs2 )
            & ( A22 = Ys2 )
            & ( ( size_s962548663205356226ctxt_a @ Xs2 )
              = ( size_s962548663205356226ctxt_a @ Ys2 ) )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ys2 ) )
               => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Xs2 @ I2 ) @ ( nth_Ground_gmctxt_a @ Ys2 @ I2 ) ) @ R ) ) )
        | ? [Xs2: list_Ground_gmctxt_a,Ys2: list_Ground_gmctxt_a,I2: nat,Z5: ground_gmctxt_a] :
            ( ( A1 = Xs2 )
            & ( A22
              = ( list_u7950812632479372336ctxt_a @ Ys2 @ I2 @ Z5 ) )
            & ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs2 @ Ys2 ) @ ( trancl6028151697025156246ctxt_a @ R ) )
            & ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ys2 ) )
            & ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Ys2 @ I2 ) @ Z5 ) @ R ) ) ) ) ).

% Utils.trancl_list.simps
thf(fact_401_Utils_Otrancl__list_Osimps,axiom,
    ! [A1: list_Ground_gterm_a,A22: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ A1 @ A22 ) @ ( trancl1902929335784340279term_a @ R ) )
      = ( ? [Xs2: list_Ground_gterm_a,Ys2: list_Ground_gterm_a] :
            ( ( A1 = Xs2 )
            & ( A22 = Ys2 )
            & ( ( size_s1893836384466666913term_a @ Xs2 )
              = ( size_s1893836384466666913term_a @ Ys2 ) )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ys2 ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Xs2 @ I2 ) @ ( nth_Ground_gterm_a @ Ys2 @ I2 ) ) @ R ) ) )
        | ? [Xs2: list_Ground_gterm_a,Ys2: list_Ground_gterm_a,I2: nat,Z5: ground_gterm_a] :
            ( ( A1 = Xs2 )
            & ( A22
              = ( list_u6582344683876525341term_a @ Ys2 @ I2 @ Z5 ) )
            & ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs2 @ Ys2 ) @ ( trancl1902929335784340279term_a @ R ) )
            & ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ys2 ) )
            & ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ys2 @ I2 ) @ Z5 ) @ R ) ) ) ) ).

% Utils.trancl_list.simps
thf(fact_402_Utils_Otrancl__list_Osimps,axiom,
    ! [A1: list_l4678906206682822203term_a,A22: list_l4678906206682822203term_a,R: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ A1 @ A22 ) @ ( trancl5818250397338112189term_a @ R ) )
      = ( ? [Xs2: list_l4678906206682822203term_a,Ys2: list_l4678906206682822203term_a] :
            ( ( A1 = Xs2 )
            & ( A22 = Ys2 )
            & ( ( size_s5321119603959729319term_a @ Xs2 )
              = ( size_s5321119603959729319term_a @ Ys2 ) )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Ys2 ) )
               => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ Xs2 @ I2 ) @ ( nth_li6172171122907299772term_a @ Ys2 @ I2 ) ) @ R ) ) )
        | ? [Xs2: list_l4678906206682822203term_a,Ys2: list_l4678906206682822203term_a,I2: nat,Z5: list_Ground_gterm_a] :
            ( ( A1 = Xs2 )
            & ( A22
              = ( list_u412135983231242147term_a @ Ys2 @ I2 @ Z5 ) )
            & ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs2 @ Ys2 ) @ ( trancl5818250397338112189term_a @ R ) )
            & ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Ys2 ) )
            & ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ Ys2 @ I2 ) @ Z5 ) @ R ) ) ) ) ).

% Utils.trancl_list.simps
thf(fact_403_Utils_Otrancl__list_Osimps,axiom,
    ! [A1: list_nat,A22: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ A1 @ A22 ) @ ( trancl_list_nat @ R ) )
      = ( ? [Xs2: list_nat,Ys2: list_nat] :
            ( ( A1 = Xs2 )
            & ( A22 = Ys2 )
            & ( ( size_size_list_nat @ Xs2 )
              = ( size_size_list_nat @ Ys2 ) )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys2 ) )
               => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Xs2 @ I2 ) @ ( nth_nat @ Ys2 @ I2 ) ) @ R ) ) )
        | ? [Xs2: list_nat,Ys2: list_nat,I2: nat,Z5: nat] :
            ( ( A1 = Xs2 )
            & ( A22
              = ( list_update_nat @ Ys2 @ I2 @ Z5 ) )
            & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys2 ) @ ( trancl_list_nat @ R ) )
            & ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys2 ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Ys2 @ I2 ) @ Z5 ) @ R ) ) ) ) ).

% Utils.trancl_list.simps
thf(fact_404_list__update__beyond,axiom,
    ! [Xs: list_Ground_gmctxt_a,I4: nat,X3: ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ I4 )
     => ( ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 )
        = Xs ) ) ).

% list_update_beyond
thf(fact_405_list__update__beyond,axiom,
    ! [Xs: list_Ground_gterm_a,I4: nat,X3: ground_gterm_a] :
      ( ( ord_less_eq_nat @ ( size_s1893836384466666913term_a @ Xs ) @ I4 )
     => ( ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 )
        = Xs ) ) ).

% list_update_beyond
thf(fact_406_list__update__beyond,axiom,
    ! [Xs: list_l4678906206682822203term_a,I4: nat,X3: list_Ground_gterm_a] :
      ( ( ord_less_eq_nat @ ( size_s5321119603959729319term_a @ Xs ) @ I4 )
     => ( ( list_u412135983231242147term_a @ Xs @ I4 @ X3 )
        = Xs ) ) ).

% list_update_beyond
thf(fact_407_list__update__beyond,axiom,
    ! [Xs: list_nat,I4: nat,X3: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ I4 )
     => ( ( list_update_nat @ Xs @ I4 @ X3 )
        = Xs ) ) ).

% list_update_beyond
thf(fact_408_length__list__update,axiom,
    ! [Xs: list_Ground_gmctxt_a,I4: nat,X3: ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 ) )
      = ( size_s962548663205356226ctxt_a @ Xs ) ) ).

% length_list_update
thf(fact_409_length__list__update,axiom,
    ! [Xs: list_Ground_gterm_a,I4: nat,X3: ground_gterm_a] :
      ( ( size_s1893836384466666913term_a @ ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 ) )
      = ( size_s1893836384466666913term_a @ Xs ) ) ).

% length_list_update
thf(fact_410_length__list__update,axiom,
    ! [Xs: list_l4678906206682822203term_a,I4: nat,X3: list_Ground_gterm_a] :
      ( ( size_s5321119603959729319term_a @ ( list_u412135983231242147term_a @ Xs @ I4 @ X3 ) )
      = ( size_s5321119603959729319term_a @ Xs ) ) ).

% length_list_update
thf(fact_411_length__list__update,axiom,
    ! [Xs: list_nat,I4: nat,X3: nat] :
      ( ( size_size_list_nat @ ( list_update_nat @ Xs @ I4 @ X3 ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_list_update
thf(fact_412_list__update__id,axiom,
    ! [Xs: list_l4678906206682822203term_a,I4: nat] :
      ( ( list_u412135983231242147term_a @ Xs @ I4 @ ( nth_li6172171122907299772term_a @ Xs @ I4 ) )
      = Xs ) ).

% list_update_id
thf(fact_413_list__update__id,axiom,
    ! [Xs: list_Ground_gterm_a,I4: nat] :
      ( ( list_u6582344683876525341term_a @ Xs @ I4 @ ( nth_Ground_gterm_a @ Xs @ I4 ) )
      = Xs ) ).

% list_update_id
thf(fact_414_list__update__id,axiom,
    ! [Xs: list_Ground_gmctxt_a,I4: nat] :
      ( ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ ( nth_Ground_gmctxt_a @ Xs @ I4 ) )
      = Xs ) ).

% list_update_id
thf(fact_415_list__update__id,axiom,
    ! [Xs: list_nat,I4: nat] :
      ( ( list_update_nat @ Xs @ I4 @ ( nth_nat @ Xs @ I4 ) )
      = Xs ) ).

% list_update_id
thf(fact_416_nth__list__update__neq,axiom,
    ! [I4: nat,J3: nat,Xs: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( I4 != J3 )
     => ( ( nth_li6172171122907299772term_a @ ( list_u412135983231242147term_a @ Xs @ I4 @ X3 ) @ J3 )
        = ( nth_li6172171122907299772term_a @ Xs @ J3 ) ) ) ).

% nth_list_update_neq
thf(fact_417_nth__list__update__neq,axiom,
    ! [I4: nat,J3: nat,Xs: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( I4 != J3 )
     => ( ( nth_Ground_gterm_a @ ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 ) @ J3 )
        = ( nth_Ground_gterm_a @ Xs @ J3 ) ) ) ).

% nth_list_update_neq
thf(fact_418_nth__list__update__neq,axiom,
    ! [I4: nat,J3: nat,Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( I4 != J3 )
     => ( ( nth_Ground_gmctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 ) @ J3 )
        = ( nth_Ground_gmctxt_a @ Xs @ J3 ) ) ) ).

% nth_list_update_neq
thf(fact_419_nth__list__update__neq,axiom,
    ! [I4: nat,J3: nat,Xs: list_nat,X3: nat] :
      ( ( I4 != J3 )
     => ( ( nth_nat @ ( list_update_nat @ Xs @ I4 @ X3 ) @ J3 )
        = ( nth_nat @ Xs @ J3 ) ) ) ).

% nth_list_update_neq
thf(fact_420_nth__list__update__eq,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 ) @ I4 )
        = X3 ) ) ).

% nth_list_update_eq
thf(fact_421_nth__list__update__eq,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 ) @ I4 )
        = X3 ) ) ).

% nth_list_update_eq
thf(fact_422_nth__list__update__eq,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( nth_li6172171122907299772term_a @ ( list_u412135983231242147term_a @ Xs @ I4 @ X3 ) @ I4 )
        = X3 ) ) ).

% nth_list_update_eq
thf(fact_423_nth__list__update__eq,axiom,
    ! [I4: nat,Xs: list_nat,X3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( list_update_nat @ Xs @ I4 @ X3 ) @ I4 )
        = X3 ) ) ).

% nth_list_update_eq
thf(fact_424_set__swap,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( set_Ground_gmctxt_a2 @ ( list_u7950812632479372336ctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ ( nth_Ground_gmctxt_a @ Xs @ J3 ) ) @ J3 @ ( nth_Ground_gmctxt_a @ Xs @ I4 ) ) )
          = ( set_Ground_gmctxt_a2 @ Xs ) ) ) ) ).

% set_swap
thf(fact_425_set__swap,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( set_Ground_gterm_a2 @ ( list_u6582344683876525341term_a @ ( list_u6582344683876525341term_a @ Xs @ I4 @ ( nth_Ground_gterm_a @ Xs @ J3 ) ) @ J3 @ ( nth_Ground_gterm_a @ Xs @ I4 ) ) )
          = ( set_Ground_gterm_a2 @ Xs ) ) ) ) ).

% set_swap
thf(fact_426_set__swap,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( set_li7546925467519454922term_a @ ( list_u412135983231242147term_a @ ( list_u412135983231242147term_a @ Xs @ I4 @ ( nth_li6172171122907299772term_a @ Xs @ J3 ) ) @ J3 @ ( nth_li6172171122907299772term_a @ Xs @ I4 ) ) )
          = ( set_li7546925467519454922term_a @ Xs ) ) ) ) ).

% set_swap
thf(fact_427_set__swap,axiom,
    ! [I4: nat,Xs: list_nat,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_size_list_nat @ Xs ) )
       => ( ( set_nat2 @ ( list_update_nat @ ( list_update_nat @ Xs @ I4 @ ( nth_nat @ Xs @ J3 ) ) @ J3 @ ( nth_nat @ Xs @ I4 ) ) )
          = ( set_nat2 @ Xs ) ) ) ) ).

% set_swap
thf(fact_428_psubsetD,axiom,
    ! [A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a,C4: produc1525979690750518759term_a] :
      ( ( ord_le2815447592711331187term_a @ A3 @ B3 )
     => ( ( member4351891425000572176term_a @ C4 @ A3 )
       => ( member4351891425000572176term_a @ C4 @ B3 ) ) ) ).

% psubsetD
thf(fact_429_set__update__subsetI,axiom,
    ! [Xs: list_P2433084232546440685term_a,A3: set_Pr8282532413760598727term_a,X3: produc1525979690750518759term_a,I4: nat] :
      ( ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ Xs ) @ A3 )
     => ( ( member4351891425000572176term_a @ X3 @ A3 )
       => ( ord_le7556488698670074471term_a @ ( set_Pr5405221470436175740term_a @ ( list_u8102571067576484949term_a @ Xs @ I4 @ X3 ) ) @ A3 ) ) ) ).

% set_update_subsetI
thf(fact_430_set__update__subsetI,axiom,
    ! [Xs: list_Ground_gmctxt_a,A3: set_Ground_gmctxt_a,X3: ground_gmctxt_a,I4: nat] :
      ( ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ A3 )
     => ( ( member3306386364193653941ctxt_a @ X3 @ A3 )
       => ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 ) ) @ A3 ) ) ) ).

% set_update_subsetI
thf(fact_431_set__update__memI,axiom,
    ! [N: nat,Xs: list_P2433084232546440685term_a,X3: produc1525979690750518759term_a] :
      ( ( ord_less_nat @ N @ ( size_s281034491502894169term_a @ Xs ) )
     => ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ ( list_u8102571067576484949term_a @ Xs @ N @ X3 ) ) ) ) ).

% set_update_memI
thf(fact_432_set__update__memI,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ ( list_u7950812632479372336ctxt_a @ Xs @ N @ X3 ) ) ) ) ).

% set_update_memI
thf(fact_433_set__update__memI,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( member5261315023172567896term_a @ X3 @ ( set_Ground_gterm_a2 @ ( list_u6582344683876525341term_a @ Xs @ N @ X3 ) ) ) ) ).

% set_update_memI
thf(fact_434_set__update__memI,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( member5011579089780872286term_a @ X3 @ ( set_li7546925467519454922term_a @ ( list_u412135983231242147term_a @ Xs @ N @ X3 ) ) ) ) ).

% set_update_memI
thf(fact_435_set__update__memI,axiom,
    ! [N: nat,Xs: list_nat,X3: nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( member_nat @ X3 @ ( set_nat2 @ ( list_update_nat @ Xs @ N @ X3 ) ) ) ) ).

% set_update_memI
thf(fact_436_nth__list__update,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,J3: nat,X3: ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( ( I4 = J3 )
         => ( ( nth_Ground_gmctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 ) @ J3 )
            = X3 ) )
        & ( ( I4 != J3 )
         => ( ( nth_Ground_gmctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 ) @ J3 )
            = ( nth_Ground_gmctxt_a @ Xs @ J3 ) ) ) ) ) ).

% nth_list_update
thf(fact_437_nth__list__update,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,J3: nat,X3: ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( ( I4 = J3 )
         => ( ( nth_Ground_gterm_a @ ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 ) @ J3 )
            = X3 ) )
        & ( ( I4 != J3 )
         => ( ( nth_Ground_gterm_a @ ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 ) @ J3 )
            = ( nth_Ground_gterm_a @ Xs @ J3 ) ) ) ) ) ).

% nth_list_update
thf(fact_438_nth__list__update,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,J3: nat,X3: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( ( I4 = J3 )
         => ( ( nth_li6172171122907299772term_a @ ( list_u412135983231242147term_a @ Xs @ I4 @ X3 ) @ J3 )
            = X3 ) )
        & ( ( I4 != J3 )
         => ( ( nth_li6172171122907299772term_a @ ( list_u412135983231242147term_a @ Xs @ I4 @ X3 ) @ J3 )
            = ( nth_li6172171122907299772term_a @ Xs @ J3 ) ) ) ) ) ).

% nth_list_update
thf(fact_439_nth__list__update,axiom,
    ! [I4: nat,Xs: list_nat,J3: nat,X3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( ( I4 = J3 )
         => ( ( nth_nat @ ( list_update_nat @ Xs @ I4 @ X3 ) @ J3 )
            = X3 ) )
        & ( ( I4 != J3 )
         => ( ( nth_nat @ ( list_update_nat @ Xs @ I4 @ X3 ) @ J3 )
            = ( nth_nat @ Xs @ J3 ) ) ) ) ) ).

% nth_list_update
thf(fact_440_list__update__same__conv,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 )
          = Xs )
        = ( ( nth_Ground_gmctxt_a @ Xs @ I4 )
          = X3 ) ) ) ).

% list_update_same_conv
thf(fact_441_list__update__same__conv,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 )
          = Xs )
        = ( ( nth_Ground_gterm_a @ Xs @ I4 )
          = X3 ) ) ) ).

% list_update_same_conv
thf(fact_442_list__update__same__conv,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( ( list_u412135983231242147term_a @ Xs @ I4 @ X3 )
          = Xs )
        = ( ( nth_li6172171122907299772term_a @ Xs @ I4 )
          = X3 ) ) ) ).

% list_update_same_conv
thf(fact_443_list__update__same__conv,axiom,
    ! [I4: nat,Xs: list_nat,X3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( ( list_update_nat @ Xs @ I4 @ X3 )
          = Xs )
        = ( ( nth_nat @ Xs @ I4 )
          = X3 ) ) ) ).

% list_update_same_conv
thf(fact_444_parallel__list__update,axiom,
    ! [N: nat,R2: ground_gmctxt_a > ground_gmctxt_a > $o,P2: list_Ground_gmctxt_a > $o,Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ! [Xs3: list_Ground_gmctxt_a,I3: nat,Y5: ground_gmctxt_a] :
          ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
            = N )
         => ( ( ord_less_nat @ I3 @ N )
           => ( ( R2 @ ( nth_Ground_gmctxt_a @ Xs3 @ I3 ) @ Y5 )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( list_u7950812632479372336ctxt_a @ Xs3 @ I3 @ Y5 ) ) ) ) ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Xs )
          = N )
       => ( ( P2 @ Xs )
         => ( ( ( size_s962548663205356226ctxt_a @ Ys )
              = N )
           => ( ! [I3: nat] :
                  ( ( ord_less_nat @ I3 @ N )
                 => ( R2 @ ( nth_Ground_gmctxt_a @ Xs @ I3 ) @ ( nth_Ground_gmctxt_a @ Ys @ I3 ) ) )
             => ( P2 @ Ys ) ) ) ) ) ) ).

% parallel_list_update
thf(fact_445_parallel__list__update,axiom,
    ! [N: nat,R2: ground_gterm_a > ground_gterm_a > $o,P2: list_Ground_gterm_a > $o,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ! [Xs3: list_Ground_gterm_a,I3: nat,Y5: ground_gterm_a] :
          ( ( ( size_s1893836384466666913term_a @ Xs3 )
            = N )
         => ( ( ord_less_nat @ I3 @ N )
           => ( ( R2 @ ( nth_Ground_gterm_a @ Xs3 @ I3 ) @ Y5 )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( list_u6582344683876525341term_a @ Xs3 @ I3 @ Y5 ) ) ) ) ) )
     => ( ( ( size_s1893836384466666913term_a @ Xs )
          = N )
       => ( ( P2 @ Xs )
         => ( ( ( size_s1893836384466666913term_a @ Ys )
              = N )
           => ( ! [I3: nat] :
                  ( ( ord_less_nat @ I3 @ N )
                 => ( R2 @ ( nth_Ground_gterm_a @ Xs @ I3 ) @ ( nth_Ground_gterm_a @ Ys @ I3 ) ) )
             => ( P2 @ Ys ) ) ) ) ) ) ).

% parallel_list_update
thf(fact_446_parallel__list__update,axiom,
    ! [N: nat,R2: list_Ground_gterm_a > list_Ground_gterm_a > $o,P2: list_l4678906206682822203term_a > $o,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ! [Xs3: list_l4678906206682822203term_a,I3: nat,Y5: list_Ground_gterm_a] :
          ( ( ( size_s5321119603959729319term_a @ Xs3 )
            = N )
         => ( ( ord_less_nat @ I3 @ N )
           => ( ( R2 @ ( nth_li6172171122907299772term_a @ Xs3 @ I3 ) @ Y5 )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( list_u412135983231242147term_a @ Xs3 @ I3 @ Y5 ) ) ) ) ) )
     => ( ( ( size_s5321119603959729319term_a @ Xs )
          = N )
       => ( ( P2 @ Xs )
         => ( ( ( size_s5321119603959729319term_a @ Ys )
              = N )
           => ( ! [I3: nat] :
                  ( ( ord_less_nat @ I3 @ N )
                 => ( R2 @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) )
             => ( P2 @ Ys ) ) ) ) ) ) ).

% parallel_list_update
thf(fact_447_parallel__list__update,axiom,
    ! [N: nat,R2: nat > nat > $o,P2: list_nat > $o,Xs: list_nat,Ys: list_nat] :
      ( ! [Xs3: list_nat,I3: nat,Y5: nat] :
          ( ( ( size_size_list_nat @ Xs3 )
            = N )
         => ( ( ord_less_nat @ I3 @ N )
           => ( ( R2 @ ( nth_nat @ Xs3 @ I3 ) @ Y5 )
             => ( ( P2 @ Xs3 )
               => ( P2 @ ( list_update_nat @ Xs3 @ I3 @ Y5 ) ) ) ) ) )
     => ( ( ( size_size_list_nat @ Xs )
          = N )
       => ( ( P2 @ Xs )
         => ( ( ( size_size_list_nat @ Ys )
              = N )
           => ( ! [I3: nat] :
                  ( ( ord_less_nat @ I3 @ N )
                 => ( R2 @ ( nth_nat @ Xs @ I3 ) @ ( nth_nat @ Ys @ I3 ) ) )
             => ( P2 @ Ys ) ) ) ) ) ) ).

% parallel_list_update
thf(fact_448_in__mono,axiom,
    ! [A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a,X3: produc1525979690750518759term_a] :
      ( ( ord_le7556488698670074471term_a @ A3 @ B3 )
     => ( ( member4351891425000572176term_a @ X3 @ A3 )
       => ( member4351891425000572176term_a @ X3 @ B3 ) ) ) ).

% in_mono
thf(fact_449_subsetD,axiom,
    ! [A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a,C4: produc1525979690750518759term_a] :
      ( ( ord_le7556488698670074471term_a @ A3 @ B3 )
     => ( ( member4351891425000572176term_a @ C4 @ A3 )
       => ( member4351891425000572176term_a @ C4 @ B3 ) ) ) ).

% subsetD
thf(fact_450_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_451_subset__iff,axiom,
    ( ord_le7556488698670074471term_a
    = ( ^ [A6: set_Pr8282532413760598727term_a,B6: set_Pr8282532413760598727term_a] :
        ! [T2: produc1525979690750518759term_a] :
          ( ( member4351891425000572176term_a @ T2 @ A6 )
         => ( member4351891425000572176term_a @ T2 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_452_Utils_Otrancl__list_Ocases,axiom,
    ! [A1: list_Ground_gmctxt_a,A22: list_Ground_gmctxt_a,R: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ A1 @ A22 ) @ ( trancl6028151697025156246ctxt_a @ R ) )
     => ( ( ( ( size_s962548663205356226ctxt_a @ A1 )
            = ( size_s962548663205356226ctxt_a @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ A22 ) )
               => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ A1 @ I ) @ ( nth_Ground_gmctxt_a @ A22 @ I ) ) @ R ) ) )
       => ~ ! [Ys4: list_Ground_gmctxt_a,I3: nat,Z3: ground_gmctxt_a] :
              ( ( A22
                = ( list_u7950812632479372336ctxt_a @ Ys4 @ I3 @ Z3 ) )
             => ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ A1 @ Ys4 ) @ ( trancl6028151697025156246ctxt_a @ R ) )
               => ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ys4 ) )
                 => ~ ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Ys4 @ I3 ) @ Z3 ) @ R ) ) ) ) ) ) ).

% Utils.trancl_list.cases
thf(fact_453_Utils_Otrancl__list_Ocases,axiom,
    ! [A1: list_Ground_gterm_a,A22: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ A1 @ A22 ) @ ( trancl1902929335784340279term_a @ R ) )
     => ( ( ( ( size_s1893836384466666913term_a @ A1 )
            = ( size_s1893836384466666913term_a @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ A22 ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ A1 @ I ) @ ( nth_Ground_gterm_a @ A22 @ I ) ) @ R ) ) )
       => ~ ! [Ys4: list_Ground_gterm_a,I3: nat,Z3: ground_gterm_a] :
              ( ( A22
                = ( list_u6582344683876525341term_a @ Ys4 @ I3 @ Z3 ) )
             => ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ A1 @ Ys4 ) @ ( trancl1902929335784340279term_a @ R ) )
               => ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ys4 ) )
                 => ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Ys4 @ I3 ) @ Z3 ) @ R ) ) ) ) ) ) ).

% Utils.trancl_list.cases
thf(fact_454_Utils_Otrancl__list_Ocases,axiom,
    ! [A1: list_l4678906206682822203term_a,A22: list_l4678906206682822203term_a,R: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ A1 @ A22 ) @ ( trancl5818250397338112189term_a @ R ) )
     => ( ( ( ( size_s5321119603959729319term_a @ A1 )
            = ( size_s5321119603959729319term_a @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ A22 ) )
               => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ A1 @ I ) @ ( nth_li6172171122907299772term_a @ A22 @ I ) ) @ R ) ) )
       => ~ ! [Ys4: list_l4678906206682822203term_a,I3: nat,Z3: list_Ground_gterm_a] :
              ( ( A22
                = ( list_u412135983231242147term_a @ Ys4 @ I3 @ Z3 ) )
             => ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ A1 @ Ys4 ) @ ( trancl5818250397338112189term_a @ R ) )
               => ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ys4 ) )
                 => ~ ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ Ys4 @ I3 ) @ Z3 ) @ R ) ) ) ) ) ) ).

% Utils.trancl_list.cases
thf(fact_455_Utils_Otrancl__list_Ocases,axiom,
    ! [A1: list_nat,A22: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ A1 @ A22 ) @ ( trancl_list_nat @ R ) )
     => ( ( ( ( size_size_list_nat @ A1 )
            = ( size_size_list_nat @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_size_list_nat @ A22 ) )
               => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ A1 @ I ) @ ( nth_nat @ A22 @ I ) ) @ R ) ) )
       => ~ ! [Ys4: list_nat,I3: nat,Z3: nat] :
              ( ( A22
                = ( list_update_nat @ Ys4 @ I3 @ Z3 ) )
             => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ A1 @ Ys4 ) @ ( trancl_list_nat @ R ) )
               => ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ys4 ) )
                 => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Ys4 @ I3 ) @ Z3 ) @ R ) ) ) ) ) ) ).

% Utils.trancl_list.cases
thf(fact_456_concat__index__split__less__length__concat_I4_J,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ( nth_Ground_gmctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) @ I4 )
          = ( nth_Ground_gmctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ M2 ) @ N ) ) ) ) ).

% concat_index_split_less_length_concat(4)
thf(fact_457_concat__index__split__less__length__concat_I4_J,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ( nth_Ground_gterm_a @ ( concat1399541994378716528term_a @ Xs ) @ I4 )
          = ( nth_Ground_gterm_a @ ( nth_li6172171122907299772term_a @ Xs @ M2 ) @ N ) ) ) ) ).

% concat_index_split_less_length_concat(4)
thf(fact_458_concat__index__split__less__length__concat_I4_J,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ( ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ( nth_li6172171122907299772term_a @ ( concat5214662034885773942term_a @ Xs ) @ I4 )
          = ( nth_li6172171122907299772term_a @ ( nth_li9096660926740921666term_a @ Xs @ M2 ) @ N ) ) ) ) ).

% concat_index_split_less_length_concat(4)
thf(fact_459_concat__index__split__less__length__concat_I4_J,axiom,
    ! [I4: nat,Xs: list_list_nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ( nth_nat @ ( concat_nat @ Xs ) @ I4 )
          = ( nth_nat @ ( nth_list_nat @ Xs @ M2 ) @ N ) ) ) ) ).

% concat_index_split_less_length_concat(4)
thf(fact_460_concat__index__split__less__length__concat_I2_J,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ M2 @ ( size_s6994882312647770194ctxt_a @ Xs ) ) ) ) ).

% concat_index_split_less_length_concat(2)
thf(fact_461_concat__index__split__less__length__concat_I2_J,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ M2 @ ( size_s5321119603959729319term_a @ Xs ) ) ) ) ).

% concat_index_split_less_length_concat(2)
thf(fact_462_concat__index__split__less__length__concat_I2_J,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ( ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ M2 @ ( size_s3474408278181496621term_a @ Xs ) ) ) ) ).

% concat_index_split_less_length_concat(2)
thf(fact_463_concat__index__split__less__length__concat_I2_J,axiom,
    ! [I4: nat,Xs: list_list_nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ M2 @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ) ).

% concat_index_split_less_length_concat(2)
thf(fact_464_concat__index__split__less__length__concat_I3_J,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ 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_465_concat__index__split__less__length__concat_I3_J,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ M2 ) ) ) ) ) ).

% concat_index_split_less_length_concat(3)
thf(fact_466_concat__index__split__less__length__concat_I3_J,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ( ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs )
          = ( product_Pair_nat_nat @ M2 @ N ) )
       => ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ M2 ) ) ) ) ) ).

% concat_index_split_less_length_concat(3)
thf(fact_467_concat__index__split__less__length__concat_I3_J,axiom,
    ! [I4: nat,Xs: list_list_nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ 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_468_Utils_Otrancl__listp_Ocases,axiom,
    ! [R: ground_gmctxt_a > ground_gmctxt_a > $o,A1: list_Ground_gmctxt_a,A22: list_Ground_gmctxt_a] :
      ( ( trancl3815965565430463256ctxt_a @ R @ A1 @ A22 )
     => ( ( ( ( size_s962548663205356226ctxt_a @ A1 )
            = ( size_s962548663205356226ctxt_a @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ A22 ) )
               => ( R @ ( nth_Ground_gmctxt_a @ A1 @ I ) @ ( nth_Ground_gmctxt_a @ A22 @ I ) ) ) )
       => ~ ! [Ys4: list_Ground_gmctxt_a,I3: nat,Z3: ground_gmctxt_a] :
              ( ( A22
                = ( list_u7950812632479372336ctxt_a @ Ys4 @ I3 @ Z3 ) )
             => ( ( trancl3815965565430463256ctxt_a @ R @ A1 @ Ys4 )
               => ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ys4 ) )
                 => ~ ( R @ ( nth_Ground_gmctxt_a @ Ys4 @ I3 ) @ Z3 ) ) ) ) ) ) ).

% Utils.trancl_listp.cases
thf(fact_469_Utils_Otrancl__listp_Ocases,axiom,
    ! [R: ground_gterm_a > ground_gterm_a > $o,A1: list_Ground_gterm_a,A22: list_Ground_gterm_a] :
      ( ( trancl3536835252858651701term_a @ R @ A1 @ A22 )
     => ( ( ( ( size_s1893836384466666913term_a @ A1 )
            = ( size_s1893836384466666913term_a @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ A22 ) )
               => ( R @ ( nth_Ground_gterm_a @ A1 @ I ) @ ( nth_Ground_gterm_a @ A22 @ I ) ) ) )
       => ~ ! [Ys4: list_Ground_gterm_a,I3: nat,Z3: ground_gterm_a] :
              ( ( A22
                = ( list_u6582344683876525341term_a @ Ys4 @ I3 @ Z3 ) )
             => ( ( trancl3536835252858651701term_a @ R @ A1 @ Ys4 )
               => ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ys4 ) )
                 => ~ ( R @ ( nth_Ground_gterm_a @ Ys4 @ I3 ) @ Z3 ) ) ) ) ) ) ).

% Utils.trancl_listp.cases
thf(fact_470_Utils_Otrancl__listp_Ocases,axiom,
    ! [R: list_Ground_gterm_a > list_Ground_gterm_a > $o,A1: list_l4678906206682822203term_a,A22: list_l4678906206682822203term_a] :
      ( ( trancl1148691031646339771term_a @ R @ A1 @ A22 )
     => ( ( ( ( size_s5321119603959729319term_a @ A1 )
            = ( size_s5321119603959729319term_a @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ A22 ) )
               => ( R @ ( nth_li6172171122907299772term_a @ A1 @ I ) @ ( nth_li6172171122907299772term_a @ A22 @ I ) ) ) )
       => ~ ! [Ys4: list_l4678906206682822203term_a,I3: nat,Z3: list_Ground_gterm_a] :
              ( ( A22
                = ( list_u412135983231242147term_a @ Ys4 @ I3 @ Z3 ) )
             => ( ( trancl1148691031646339771term_a @ R @ A1 @ Ys4 )
               => ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ys4 ) )
                 => ~ ( R @ ( nth_li6172171122907299772term_a @ Ys4 @ I3 ) @ Z3 ) ) ) ) ) ) ).

% Utils.trancl_listp.cases
thf(fact_471_Utils_Otrancl__listp_Ocases,axiom,
    ! [R: nat > nat > $o,A1: list_nat,A22: list_nat] :
      ( ( trancl_listp_nat @ R @ A1 @ A22 )
     => ( ( ( ( size_size_list_nat @ A1 )
            = ( size_size_list_nat @ A22 ) )
         => ~ ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_size_list_nat @ A22 ) )
               => ( R @ ( nth_nat @ A1 @ I ) @ ( nth_nat @ A22 @ I ) ) ) )
       => ~ ! [Ys4: list_nat,I3: nat,Z3: nat] :
              ( ( A22
                = ( list_update_nat @ Ys4 @ I3 @ Z3 ) )
             => ( ( trancl_listp_nat @ R @ A1 @ Ys4 )
               => ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ys4 ) )
                 => ~ ( R @ ( nth_nat @ Ys4 @ I3 ) @ Z3 ) ) ) ) ) ) ).

% Utils.trancl_listp.cases
thf(fact_472_Utils_Otrancl__listp_Osimps,axiom,
    ( trancl3815965565430463256ctxt_a
    = ( ^ [R3: ground_gmctxt_a > ground_gmctxt_a > $o,A12: list_Ground_gmctxt_a,A23: list_Ground_gmctxt_a] :
          ( ? [Xs2: list_Ground_gmctxt_a,Ys2: list_Ground_gmctxt_a] :
              ( ( A12 = Xs2 )
              & ( A23 = Ys2 )
              & ( ( size_s962548663205356226ctxt_a @ Xs2 )
                = ( size_s962548663205356226ctxt_a @ Ys2 ) )
              & ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ys2 ) )
                 => ( R3 @ ( nth_Ground_gmctxt_a @ Xs2 @ I2 ) @ ( nth_Ground_gmctxt_a @ Ys2 @ I2 ) ) ) )
          | ? [Xs2: list_Ground_gmctxt_a,Ys2: list_Ground_gmctxt_a,I2: nat,Z5: ground_gmctxt_a] :
              ( ( A12 = Xs2 )
              & ( A23
                = ( list_u7950812632479372336ctxt_a @ Ys2 @ I2 @ Z5 ) )
              & ( trancl3815965565430463256ctxt_a @ R3 @ Xs2 @ Ys2 )
              & ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ys2 ) )
              & ( R3 @ ( nth_Ground_gmctxt_a @ Ys2 @ I2 ) @ Z5 ) ) ) ) ) ).

% Utils.trancl_listp.simps
thf(fact_473_Utils_Otrancl__listp_Osimps,axiom,
    ( trancl3536835252858651701term_a
    = ( ^ [R3: ground_gterm_a > ground_gterm_a > $o,A12: list_Ground_gterm_a,A23: list_Ground_gterm_a] :
          ( ? [Xs2: list_Ground_gterm_a,Ys2: list_Ground_gterm_a] :
              ( ( A12 = Xs2 )
              & ( A23 = Ys2 )
              & ( ( size_s1893836384466666913term_a @ Xs2 )
                = ( size_s1893836384466666913term_a @ Ys2 ) )
              & ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ys2 ) )
                 => ( R3 @ ( nth_Ground_gterm_a @ Xs2 @ I2 ) @ ( nth_Ground_gterm_a @ Ys2 @ I2 ) ) ) )
          | ? [Xs2: list_Ground_gterm_a,Ys2: list_Ground_gterm_a,I2: nat,Z5: ground_gterm_a] :
              ( ( A12 = Xs2 )
              & ( A23
                = ( list_u6582344683876525341term_a @ Ys2 @ I2 @ Z5 ) )
              & ( trancl3536835252858651701term_a @ R3 @ Xs2 @ Ys2 )
              & ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ys2 ) )
              & ( R3 @ ( nth_Ground_gterm_a @ Ys2 @ I2 ) @ Z5 ) ) ) ) ) ).

% Utils.trancl_listp.simps
thf(fact_474_Utils_Otrancl__listp_Osimps,axiom,
    ( trancl1148691031646339771term_a
    = ( ^ [R3: list_Ground_gterm_a > list_Ground_gterm_a > $o,A12: list_l4678906206682822203term_a,A23: list_l4678906206682822203term_a] :
          ( ? [Xs2: list_l4678906206682822203term_a,Ys2: list_l4678906206682822203term_a] :
              ( ( A12 = Xs2 )
              & ( A23 = Ys2 )
              & ( ( size_s5321119603959729319term_a @ Xs2 )
                = ( size_s5321119603959729319term_a @ Ys2 ) )
              & ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Ys2 ) )
                 => ( R3 @ ( nth_li6172171122907299772term_a @ Xs2 @ I2 ) @ ( nth_li6172171122907299772term_a @ Ys2 @ I2 ) ) ) )
          | ? [Xs2: list_l4678906206682822203term_a,Ys2: list_l4678906206682822203term_a,I2: nat,Z5: list_Ground_gterm_a] :
              ( ( A12 = Xs2 )
              & ( A23
                = ( list_u412135983231242147term_a @ Ys2 @ I2 @ Z5 ) )
              & ( trancl1148691031646339771term_a @ R3 @ Xs2 @ Ys2 )
              & ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Ys2 ) )
              & ( R3 @ ( nth_li6172171122907299772term_a @ Ys2 @ I2 ) @ Z5 ) ) ) ) ) ).

% Utils.trancl_listp.simps
thf(fact_475_Utils_Otrancl__listp_Osimps,axiom,
    ( trancl_listp_nat
    = ( ^ [R3: nat > nat > $o,A12: list_nat,A23: list_nat] :
          ( ? [Xs2: list_nat,Ys2: list_nat] :
              ( ( A12 = Xs2 )
              & ( A23 = Ys2 )
              & ( ( size_size_list_nat @ Xs2 )
                = ( size_size_list_nat @ Ys2 ) )
              & ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys2 ) )
                 => ( R3 @ ( nth_nat @ Xs2 @ I2 ) @ ( nth_nat @ Ys2 @ I2 ) ) ) )
          | ? [Xs2: list_nat,Ys2: list_nat,I2: nat,Z5: nat] :
              ( ( A12 = Xs2 )
              & ( A23
                = ( list_update_nat @ Ys2 @ I2 @ Z5 ) )
              & ( trancl_listp_nat @ R3 @ Xs2 @ Ys2 )
              & ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys2 ) )
              & ( R3 @ ( nth_nat @ Ys2 @ I2 ) @ Z5 ) ) ) ) ) ).

% Utils.trancl_listp.simps
thf(fact_476_Utils_Otrancl__listp_Olist__trancl,axiom,
    ! [R: ground_gmctxt_a > ground_gmctxt_a > $o,Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,I4: nat,Z2: ground_gmctxt_a] :
      ( ( trancl3815965565430463256ctxt_a @ R @ Xs @ Ys )
     => ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Ys ) )
       => ( ( R @ ( nth_Ground_gmctxt_a @ Ys @ I4 ) @ Z2 )
         => ( trancl3815965565430463256ctxt_a @ R @ Xs @ ( list_u7950812632479372336ctxt_a @ Ys @ I4 @ Z2 ) ) ) ) ) ).

% Utils.trancl_listp.list_trancl
thf(fact_477_Utils_Otrancl__listp_Olist__trancl,axiom,
    ! [R: ground_gterm_a > ground_gterm_a > $o,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,I4: nat,Z2: ground_gterm_a] :
      ( ( trancl3536835252858651701term_a @ R @ Xs @ Ys )
     => ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Ys ) )
       => ( ( R @ ( nth_Ground_gterm_a @ Ys @ I4 ) @ Z2 )
         => ( trancl3536835252858651701term_a @ R @ Xs @ ( list_u6582344683876525341term_a @ Ys @ I4 @ Z2 ) ) ) ) ) ).

% Utils.trancl_listp.list_trancl
thf(fact_478_Utils_Otrancl__listp_Olist__trancl,axiom,
    ! [R: list_Ground_gterm_a > list_Ground_gterm_a > $o,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,I4: nat,Z2: list_Ground_gterm_a] :
      ( ( trancl1148691031646339771term_a @ R @ Xs @ Ys )
     => ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Ys ) )
       => ( ( R @ ( nth_li6172171122907299772term_a @ Ys @ I4 ) @ Z2 )
         => ( trancl1148691031646339771term_a @ R @ Xs @ ( list_u412135983231242147term_a @ Ys @ I4 @ Z2 ) ) ) ) ) ).

% Utils.trancl_listp.list_trancl
thf(fact_479_Utils_Otrancl__listp_Olist__trancl,axiom,
    ! [R: nat > nat > $o,Xs: list_nat,Ys: list_nat,I4: nat,Z2: nat] :
      ( ( trancl_listp_nat @ R @ Xs @ Ys )
     => ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Ys ) )
       => ( ( R @ ( nth_nat @ Ys @ I4 ) @ Z2 )
         => ( trancl_listp_nat @ R @ Xs @ ( list_update_nat @ Ys @ I4 @ Z2 ) ) ) ) ) ).

% Utils.trancl_listp.list_trancl
thf(fact_480_length__pos__if__in__set,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s281034491502894169term_a @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_481_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_482_length__pos__if__in__set,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a] :
      ( ( member5261315023172567896term_a @ X3 @ ( set_Ground_gterm_a2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s1893836384466666913term_a @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_483_length__pos__if__in__set,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a] :
      ( ( member5011579089780872286term_a @ X3 @ ( set_li7546925467519454922term_a @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s5321119603959729319term_a @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_484_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_485_Utils_Otrancl__listp_Obase,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,R: ground_gmctxt_a > ground_gmctxt_a > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ys ) )
           => ( R @ ( nth_Ground_gmctxt_a @ Xs @ I3 ) @ ( nth_Ground_gmctxt_a @ Ys @ I3 ) ) )
       => ( trancl3815965565430463256ctxt_a @ R @ Xs @ Ys ) ) ) ).

% Utils.trancl_listp.base
thf(fact_486_Utils_Otrancl__listp_Obase,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R: ground_gterm_a > ground_gterm_a > $o] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ys ) )
           => ( R @ ( nth_Ground_gterm_a @ Xs @ I3 ) @ ( nth_Ground_gterm_a @ Ys @ I3 ) ) )
       => ( trancl3536835252858651701term_a @ R @ Xs @ Ys ) ) ) ).

% Utils.trancl_listp.base
thf(fact_487_Utils_Otrancl__listp_Obase,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,R: list_Ground_gterm_a > list_Ground_gterm_a > $o] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ Ys ) )
           => ( R @ ( nth_li6172171122907299772term_a @ Xs @ I3 ) @ ( nth_li6172171122907299772term_a @ Ys @ I3 ) ) )
       => ( trancl1148691031646339771term_a @ R @ Xs @ Ys ) ) ) ).

% Utils.trancl_listp.base
thf(fact_488_Utils_Otrancl__listp_Obase,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: nat > nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ys ) )
           => ( R @ ( nth_nat @ Xs @ I3 ) @ ( nth_nat @ Ys @ I3 ) ) )
       => ( trancl_listp_nat @ R @ Xs @ Ys ) ) ) ).

% Utils.trancl_listp.base
thf(fact_489_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

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

% bot_nat_0.extremum
thf(fact_491_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_492_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

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

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

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

% le_zero_eq
thf(fact_496_size__neq__size__imp__neq,axiom,
    ! [X3: list_Ground_gmctxt_a,Y3: list_Ground_gmctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ X3 )
       != ( size_s962548663205356226ctxt_a @ Y3 ) )
     => ( X3 != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_497_size__neq__size__imp__neq,axiom,
    ! [X3: list_Ground_gterm_a,Y3: list_Ground_gterm_a] :
      ( ( ( size_s1893836384466666913term_a @ X3 )
       != ( size_s1893836384466666913term_a @ Y3 ) )
     => ( X3 != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_498_size__neq__size__imp__neq,axiom,
    ! [X3: list_l4678906206682822203term_a,Y3: list_l4678906206682822203term_a] :
      ( ( ( size_s5321119603959729319term_a @ X3 )
       != ( size_s5321119603959729319term_a @ Y3 ) )
     => ( X3 != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_499_size__neq__size__imp__neq,axiom,
    ! [X3: char,Y3: char] :
      ( ( ( size_size_char @ X3 )
       != ( size_size_char @ Y3 ) )
     => ( X3 != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_500_size__neq__size__imp__neq,axiom,
    ! [X3: list_nat,Y3: list_nat] :
      ( ( ( size_size_list_nat @ X3 )
       != ( size_size_list_nat @ Y3 ) )
     => ( X3 != Y3 ) ) ).

% size_neq_size_imp_neq
thf(fact_501_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_502_less__not__refl,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

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

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

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

% less_irrefl_nat
thf(fact_506_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_nat @ M3 @ N3 )
             => ( P @ M3 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

% nat_less_induct
thf(fact_507_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ~ ( P @ N3 )
         => ? [M3: nat] :
              ( ( ord_less_nat @ M3 @ N3 )
              & ~ ( P @ M3 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_508_linorder__neqE__nat,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( X3 != Y3 )
     => ( ~ ( ord_less_nat @ X3 @ Y3 )
       => ( ord_less_nat @ Y3 @ X3 ) ) ) ).

% linorder_neqE_nat
thf(fact_509_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_510_le__trans,axiom,
    ! [I4: nat,J3: nat,K: nat] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ( ord_less_eq_nat @ J3 @ K )
       => ( ord_less_eq_nat @ I4 @ K ) ) ) ).

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

% eq_imp_le
thf(fact_512_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_513_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_514_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y5: nat] :
            ( ( P @ Y5 )
           => ( ord_less_eq_nat @ Y5 @ B ) )
       => ? [X2: nat] :
            ( ( P @ X2 )
            & ! [Y6: nat] :
                ( ( P @ Y6 )
               => ( ord_less_eq_nat @ Y6 @ X2 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_515_zero__le,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X3 ) ).

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

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

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

% gr_implies_not_zero
thf(fact_519_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_520_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

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

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

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

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

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

% gr_implies_not0
thf(fact_526_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N3: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N3 )
           => ( ~ ( P @ N3 )
             => ? [M3: nat] :
                  ( ( ord_less_nat @ M3 @ N3 )
                  & ~ ( P @ M3 ) ) ) )
       => ( P @ N ) ) ) ).

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

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

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

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

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

% nat_less_le
thf(fact_532_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_533_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M: nat,N2: nat] :
          ( ( ord_less_nat @ M @ N2 )
          | ( M = N2 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_534_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_535_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_536_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I4: nat,J3: nat] :
      ( ! [I3: nat,J2: nat] :
          ( ( ord_less_nat @ I3 @ J2 )
         => ( ord_less_nat @ ( F @ I3 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I4 @ J3 )
       => ( ord_less_eq_nat @ ( F @ I4 ) @ ( F @ J3 ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_537_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ! [I: nat] :
                ( ( ord_less_nat @ I @ K2 )
               => ~ ( P @ I ) )
            & ( P @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_538_gmctxt__closing__sup__args__ghole__or__gterm,axiom,
    ! [C: ground_gmctxt_a,D: ground_gmctxt_a] :
      ( ( ground6954545657870034594sing_a @ C @ D )
     => ! [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C @ D ) ) )
         => ( ( X = ground_GMHole_a )
            | ( ( ground_num_gholes_a @ X )
              = zero_zero_nat ) ) ) ) ).

% gmctxt_closing_sup_args_ghole_or_gterm
thf(fact_539_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 ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds ) )
           => ( ( ( nth_Ground_gmctxt_a @ Ds @ I3 )
                = ground_GMHole_a )
              | ( ( ground_num_gholes_a @ ( nth_Ground_gmctxt_a @ Ds @ I3 ) )
                = 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_540_inv__imples__ghole__poss__subseteq,axiom,
    ! [C: ground_gmctxt_a,D: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ D )
     => ( ! [X2: ground_gmctxt_a] :
            ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ ( ground7778985915038999110args_a @ C @ D ) ) )
           => ( ( X2 = ground_GMHole_a )
              | ( ( ground_num_gholes_a @ X2 )
                = zero_zero_nat ) ) )
       => ( ord_le6045566169113846134st_nat @ ( ground_ghole_poss_a @ D ) @ ( ground_ghole_poss_a @ C ) ) ) ) ).

% inv_imples_ghole_poss_subseteq
thf(fact_541_concat__index__split__sound__fst__arg,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_s6994882312647770194ctxt_a @ Xs ) ) ) ).

% concat_index_split_sound_fst_arg
thf(fact_542_concat__index__split__sound__fst__arg,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_s5321119603959729319term_a @ Xs ) ) ) ).

% concat_index_split_sound_fst_arg
thf(fact_543_concat__index__split__sound__fst__arg,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_s3474408278181496621term_a @ Xs ) ) ) ).

% concat_index_split_sound_fst_arg
thf(fact_544_concat__index__split__sound__fst__arg,axiom,
    ! [I4: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ).

% concat_index_split_sound_fst_arg
thf(fact_545_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 )
           => ( ! [I: nat] :
                  ( ( ord_less_nat @ K2 @ I )
                 => ( P @ I ) )
             => ( P @ K2 ) ) )
       => ( P @ M2 ) ) ) ).

% nat_descend_induct
thf(fact_546_fst__conv,axiom,
    ! [X1: ground_gterm_a,X22: ground_gterm_a] :
      ( ( produc5097907526672912195term_a @ ( produc7419039783125785943term_a @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_547_fst__conv,axiom,
    ! [X1: ground_gmctxt_a,X22: list_Ground_gterm_a] :
      ( ( produc8428836298496521042term_a @ ( produc4720362732934906942term_a @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_548_fst__conv,axiom,
    ! [X1: nat,X22: nat] :
      ( ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_549_fst__conv,axiom,
    ! [X1: nat > nat,X22: nat] :
      ( ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_550_fst__eqD,axiom,
    ! [X3: ground_gterm_a,Y3: ground_gterm_a,A: ground_gterm_a] :
      ( ( ( produc5097907526672912195term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_551_fst__eqD,axiom,
    ! [X3: ground_gmctxt_a,Y3: list_Ground_gterm_a,A: ground_gmctxt_a] :
      ( ( ( produc8428836298496521042term_a @ ( produc4720362732934906942term_a @ X3 @ Y3 ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_552_fst__eqD,axiom,
    ! [X3: nat,Y3: nat,A: nat] :
      ( ( ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_553_fst__eqD,axiom,
    ! [X3: nat > nat,Y3: nat,A: nat > nat] :
      ( ( ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ X3 @ Y3 ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_554_prefix__and__fewer__gholes__implies__equal__gmctxt,axiom,
    ! [C: ground_gmctxt_a,D: ground_gmctxt_a] :
      ( ( ord_le1940079914304802430ctxt_a @ C @ D )
     => ( ( ord_le6045566169113846134st_nat @ ( ground_ghole_poss_a @ C ) @ ( ground_ghole_poss_a @ D ) )
       => ( C = D ) ) ) ).

% prefix_and_fewer_gholes_implies_equal_gmctxt
thf(fact_555_concat__index__split__mono__first__arg,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_eq_nat @ O_idx @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ O_idx @ I4 ) @ Xs ) ) ) ) ).

% concat_index_split_mono_first_arg
thf(fact_556_concat__index__split__mono__first__arg,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ord_less_eq_nat @ O_idx @ ( product_fst_nat_nat @ ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ O_idx @ I4 ) @ Xs ) ) ) ) ).

% concat_index_split_mono_first_arg
thf(fact_557_concat__index__split__mono__first__arg,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ord_less_eq_nat @ O_idx @ ( product_fst_nat_nat @ ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ O_idx @ I4 ) @ Xs ) ) ) ) ).

% concat_index_split_mono_first_arg
thf(fact_558_concat__index__split__mono__first__arg,axiom,
    ! [I4: nat,Xs: list_list_nat,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( 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 @ I4 ) @ Xs ) ) ) ) ).

% concat_index_split_mono_first_arg
thf(fact_559_size__char__eq__0,axiom,
    ( size_size_char
    = ( ^ [C6: char] : zero_zero_nat ) ) ).

% size_char_eq_0
thf(fact_560_concat__index__split__sound__snd__arg,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) ) ) ) ) ).

% concat_index_split_sound_snd_arg
thf(fact_561_concat__index__split__sound__snd__arg,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ ( product_fst_nat_nat @ ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) ) ) ) ) ).

% concat_index_split_sound_snd_arg
thf(fact_562_concat__index__split__sound__snd__arg,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ ( product_fst_nat_nat @ ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) ) ) ) ) ).

% concat_index_split_sound_snd_arg
thf(fact_563_concat__index__split__sound__snd__arg,axiom,
    ! [I4: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ zero_zero_nat @ I4 ) @ Xs ) ) ) ) ) ) ).

% concat_index_split_sound_snd_arg
thf(fact_564_concat__index__split__sound__fst__arg__aux,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ O_idx @ I4 ) @ Xs ) ) @ ( plus_plus_nat @ ( size_s6994882312647770194ctxt_a @ Xs ) @ O_idx ) ) ) ).

% concat_index_split_sound_fst_arg_aux
thf(fact_565_concat__index__split__sound__fst__arg__aux,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ O_idx @ I4 ) @ Xs ) ) @ ( plus_plus_nat @ ( size_s5321119603959729319term_a @ Xs ) @ O_idx ) ) ) ).

% concat_index_split_sound_fst_arg_aux
thf(fact_566_concat__index__split__sound__fst__arg__aux,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ O_idx @ I4 ) @ Xs ) ) @ ( plus_plus_nat @ ( size_s3474408278181496621term_a @ Xs ) @ O_idx ) ) ) ).

% concat_index_split_sound_fst_arg_aux
thf(fact_567_concat__index__split__sound__fst__arg__aux,axiom,
    ! [I4: nat,Xs: list_list_nat,O_idx: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ O_idx @ I4 ) @ Xs ) ) @ ( plus_plus_nat @ ( size_s3023201423986296836st_nat @ Xs ) @ O_idx ) ) ) ).

% concat_index_split_sound_fst_arg_aux
thf(fact_568_inf__pigeonhole__principle,axiom,
    ! [N: nat,F: nat > nat > $o] :
      ( ! [K2: nat] :
        ? [I: nat] :
          ( ( ord_less_nat @ I @ N )
          & ( F @ K2 @ I ) )
     => ? [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
          & ! [K3: nat] :
            ? [K4: nat] :
              ( ( ord_less_eq_nat @ K3 @ K4 )
              & ( F @ K4 @ I3 ) ) ) ) ).

% inf_pigeonhole_principle
thf(fact_569_eq__fst__iff,axiom,
    ! [A: ground_gterm_a,P2: produc1525979690750518759term_a] :
      ( ( A
        = ( produc5097907526672912195term_a @ P2 ) )
      = ( ? [B5: ground_gterm_a] :
            ( P2
            = ( produc7419039783125785943term_a @ A @ B5 ) ) ) ) ).

% eq_fst_iff
thf(fact_570_eq__fst__iff,axiom,
    ! [A: ground_gmctxt_a,P2: produc2459281416120113548term_a] :
      ( ( A
        = ( produc8428836298496521042term_a @ P2 ) )
      = ( ? [B5: list_Ground_gterm_a] :
            ( P2
            = ( produc4720362732934906942term_a @ A @ B5 ) ) ) ) ).

% eq_fst_iff
thf(fact_571_eq__fst__iff,axiom,
    ! [A: nat,P2: product_prod_nat_nat] :
      ( ( A
        = ( product_fst_nat_nat @ P2 ) )
      = ( ? [B5: nat] :
            ( P2
            = ( product_Pair_nat_nat @ A @ B5 ) ) ) ) ).

% eq_fst_iff
thf(fact_572_eq__fst__iff,axiom,
    ! [A: nat > nat,P2: produc8199716216217303280at_nat] :
      ( ( A
        = ( produc6156676138143019412at_nat @ P2 ) )
      = ( ? [B5: nat] :
            ( P2
            = ( produc72220940542539688at_nat @ A @ B5 ) ) ) ) ).

% eq_fst_iff
thf(fact_573_add__le__cancel__right,axiom,
    ! [A: nat,C4: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ C4 ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_574_add__le__cancel__left,axiom,
    ! [C4: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C4 @ A ) @ ( plus_plus_nat @ C4 @ B ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_575_add__less__cancel__left,axiom,
    ! [C4: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C4 @ A ) @ ( plus_plus_nat @ C4 @ B ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_576_add__less__cancel__right,axiom,
    ! [A: nat,C4: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ C4 ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_577_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_578_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_579_add__le__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel1
thf(fact_580_add__le__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel2
thf(fact_581_le__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel1
thf(fact_582_le__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel2
thf(fact_583_add__less__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel1
thf(fact_584_add__less__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel2
thf(fact_585_less__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel1
thf(fact_586_less__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel2
thf(fact_587_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_588_prod_Ocollapse,axiom,
    ! [Prod: produc1525979690750518759term_a] :
      ( ( produc7419039783125785943term_a @ ( produc5097907526672912195term_a @ Prod ) @ ( produc5323275678763266181term_a @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_589_prod_Ocollapse,axiom,
    ! [Prod: produc2459281416120113548term_a] :
      ( ( produc4720362732934906942term_a @ ( produc8428836298496521042term_a @ Prod ) @ ( produc7861257790526860176term_a @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_590_prod_Ocollapse,axiom,
    ! [Prod: product_prod_nat_nat] :
      ( ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_591_prod_Ocollapse,axiom,
    ! [Prod: produc8199716216217303280at_nat] :
      ( ( produc72220940542539688at_nat @ ( produc6156676138143019412at_nat @ Prod ) @ ( produc1852801350702243542at_nat @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_592_eq__snd__iff,axiom,
    ! [B: ground_gterm_a,P2: produc1525979690750518759term_a] :
      ( ( B
        = ( produc5323275678763266181term_a @ P2 ) )
      = ( ? [A5: ground_gterm_a] :
            ( P2
            = ( produc7419039783125785943term_a @ A5 @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_593_eq__snd__iff,axiom,
    ! [B: list_Ground_gterm_a,P2: produc2459281416120113548term_a] :
      ( ( B
        = ( produc7861257790526860176term_a @ P2 ) )
      = ( ? [A5: ground_gmctxt_a] :
            ( P2
            = ( produc4720362732934906942term_a @ A5 @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_594_eq__snd__iff,axiom,
    ! [B: nat,P2: product_prod_nat_nat] :
      ( ( B
        = ( product_snd_nat_nat @ P2 ) )
      = ( ? [A5: nat] :
            ( P2
            = ( product_Pair_nat_nat @ A5 @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_595_eq__snd__iff,axiom,
    ! [B: nat,P2: produc8199716216217303280at_nat] :
      ( ( B
        = ( produc1852801350702243542at_nat @ P2 ) )
      = ( ? [A5: nat > nat] :
            ( P2
            = ( produc72220940542539688at_nat @ A5 @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_596_snd__eqD,axiom,
    ! [X3: ground_gterm_a,Y3: ground_gterm_a,A: ground_gterm_a] :
      ( ( ( produc5323275678763266181term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_597_snd__eqD,axiom,
    ! [X3: ground_gmctxt_a,Y3: list_Ground_gterm_a,A: list_Ground_gterm_a] :
      ( ( ( produc7861257790526860176term_a @ ( produc4720362732934906942term_a @ X3 @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_598_snd__eqD,axiom,
    ! [X3: nat,Y3: nat,A: nat] :
      ( ( ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_599_snd__eqD,axiom,
    ! [X3: nat > nat,Y3: nat,A: nat] :
      ( ( ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ X3 @ Y3 ) )
        = A )
     => ( Y3 = A ) ) ).

% snd_eqD
thf(fact_600_snd__conv,axiom,
    ! [X1: ground_gterm_a,X22: ground_gterm_a] :
      ( ( produc5323275678763266181term_a @ ( produc7419039783125785943term_a @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_601_snd__conv,axiom,
    ! [X1: ground_gmctxt_a,X22: list_Ground_gterm_a] :
      ( ( produc7861257790526860176term_a @ ( produc4720362732934906942term_a @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_602_snd__conv,axiom,
    ! [X1: nat,X22: nat] :
      ( ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_603_snd__conv,axiom,
    ! [X1: nat > nat,X22: nat] :
      ( ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_604_add__le__imp__le__right,axiom,
    ! [A: nat,C4: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ C4 ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_605_add__le__imp__le__left,axiom,
    ! [C4: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C4 @ A ) @ ( plus_plus_nat @ C4 @ B ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_606_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A5: nat,B5: nat] :
        ? [C6: nat] :
          ( B5
          = ( plus_plus_nat @ A5 @ C6 ) ) ) ) ).

% le_iff_add
thf(fact_607_add__right__mono,axiom,
    ! [A: nat,B: nat,C4: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ C4 ) ) ) ).

% add_right_mono
thf(fact_608_less__eqE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ~ ! [C5: nat] :
            ( B
           != ( plus_plus_nat @ A @ C5 ) ) ) ).

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

% add_left_mono
thf(fact_610_add__mono,axiom,
    ! [A: nat,B: nat,C4: nat,D5: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C4 @ D5 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ D5 ) ) ) ) ).

% add_mono
thf(fact_611_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( ord_less_eq_nat @ I4 @ J3 )
        & ( ord_less_eq_nat @ K @ L2 ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_612_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( I4 = J3 )
        & ( ord_less_eq_nat @ K @ L2 ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_613_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( ord_less_eq_nat @ I4 @ J3 )
        & ( K = L2 ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_614_verit__sum__simplify,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% verit_sum_simplify
thf(fact_615_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( ord_less_nat @ I4 @ J3 )
        & ( ord_less_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_616_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( I4 = J3 )
        & ( ord_less_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_617_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( ord_less_nat @ I4 @ J3 )
        & ( K = L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_618_add__strict__mono,axiom,
    ! [A: nat,B: nat,C4: nat,D5: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C4 @ D5 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ D5 ) ) ) ) ).

% add_strict_mono
thf(fact_619_add__strict__left__mono,axiom,
    ! [A: nat,B: nat,C4: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C4 @ A ) @ ( plus_plus_nat @ C4 @ B ) ) ) ).

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

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

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

% add_less_imp_less_right
thf(fact_623_add__lessD1,axiom,
    ! [I4: nat,J3: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I4 @ J3 ) @ K )
     => ( ord_less_nat @ I4 @ K ) ) ).

% add_lessD1
thf(fact_624_add__less__mono,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ( ( ord_less_nat @ K @ L2 )
       => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ) ).

% add_less_mono
thf(fact_625_not__add__less1,axiom,
    ! [I4: nat,J3: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I4 @ J3 ) @ I4 ) ).

% not_add_less1
thf(fact_626_not__add__less2,axiom,
    ! [J3: nat,I4: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J3 @ I4 ) @ I4 ) ).

% not_add_less2
thf(fact_627_add__less__mono1,axiom,
    ! [I4: nat,J3: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ K ) ) ) ).

% add_less_mono1
thf(fact_628_trans__less__add1,axiom,
    ! [I4: nat,J3: nat,M2: nat] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ( ord_less_nat @ I4 @ ( plus_plus_nat @ J3 @ M2 ) ) ) ).

% trans_less_add1
thf(fact_629_trans__less__add2,axiom,
    ! [I4: nat,J3: nat,M2: nat] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ( ord_less_nat @ I4 @ ( plus_plus_nat @ M2 @ J3 ) ) ) ).

% trans_less_add2
thf(fact_630_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_631_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M: nat,N2: nat] :
        ? [K5: nat] :
          ( N2
          = ( plus_plus_nat @ M @ K5 ) ) ) ) ).

% nat_le_iff_add
thf(fact_632_trans__le__add2,axiom,
    ! [I4: nat,J3: nat,M2: nat] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ord_less_eq_nat @ I4 @ ( plus_plus_nat @ M2 @ J3 ) ) ) ).

% trans_le_add2
thf(fact_633_trans__le__add1,axiom,
    ! [I4: nat,J3: nat,M2: nat] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ord_less_eq_nat @ I4 @ ( plus_plus_nat @ J3 @ M2 ) ) ) ).

% trans_le_add1
thf(fact_634_add__le__mono1,axiom,
    ! [I4: nat,J3: nat,K: nat] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ K ) ) ) ).

% add_le_mono1
thf(fact_635_add__le__mono,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ( ord_less_eq_nat @ K @ L2 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ) ).

% add_le_mono
thf(fact_636_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_637_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_638_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_639_le__add2,axiom,
    ! [N: nat,M2: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M2 @ N ) ) ).

% le_add2
thf(fact_640_le__add1,axiom,
    ! [N: nat,M2: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M2 ) ) ).

% le_add1
thf(fact_641_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_642_prod_Oexhaust__sel,axiom,
    ! [Prod: produc1525979690750518759term_a] :
      ( Prod
      = ( produc7419039783125785943term_a @ ( produc5097907526672912195term_a @ Prod ) @ ( produc5323275678763266181term_a @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_643_prod_Oexhaust__sel,axiom,
    ! [Prod: produc2459281416120113548term_a] :
      ( Prod
      = ( produc4720362732934906942term_a @ ( produc8428836298496521042term_a @ Prod ) @ ( produc7861257790526860176term_a @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_644_prod_Oexhaust__sel,axiom,
    ! [Prod: product_prod_nat_nat] :
      ( Prod
      = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ Prod ) @ ( product_snd_nat_nat @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_645_prod_Oexhaust__sel,axiom,
    ! [Prod: produc8199716216217303280at_nat] :
      ( Prod
      = ( produc72220940542539688at_nat @ ( produc6156676138143019412at_nat @ Prod ) @ ( produc1852801350702243542at_nat @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_646_surjective__pairing,axiom,
    ! [T: produc1525979690750518759term_a] :
      ( T
      = ( produc7419039783125785943term_a @ ( produc5097907526672912195term_a @ T ) @ ( produc5323275678763266181term_a @ T ) ) ) ).

% surjective_pairing
thf(fact_647_surjective__pairing,axiom,
    ! [T: produc2459281416120113548term_a] :
      ( T
      = ( produc4720362732934906942term_a @ ( produc8428836298496521042term_a @ T ) @ ( produc7861257790526860176term_a @ T ) ) ) ).

% surjective_pairing
thf(fact_648_surjective__pairing,axiom,
    ! [T: product_prod_nat_nat] :
      ( T
      = ( product_Pair_nat_nat @ ( product_fst_nat_nat @ T ) @ ( product_snd_nat_nat @ T ) ) ) ).

% surjective_pairing
thf(fact_649_surjective__pairing,axiom,
    ! [T: produc8199716216217303280at_nat] :
      ( T
      = ( produc72220940542539688at_nat @ ( produc6156676138143019412at_nat @ T ) @ ( produc1852801350702243542at_nat @ T ) ) ) ).

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

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

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

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

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

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

% add_nonpos_nonpos
thf(fact_656_add__nonneg__eq__0__iff,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X3 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y3 )
       => ( ( ( plus_plus_nat @ X3 @ Y3 )
            = zero_zero_nat )
          = ( ( X3 = zero_zero_nat )
            & ( Y3 = zero_zero_nat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_657_add__nonpos__eq__0__iff,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y3 @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X3 @ Y3 )
            = zero_zero_nat )
          = ( ( X3 = zero_zero_nat )
            & ( Y3 = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_658_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( ord_less_eq_nat @ I4 @ J3 )
        & ( ord_less_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_659_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I4: nat,J3: nat,K: nat,L2: nat] :
      ( ( ( ord_less_nat @ I4 @ J3 )
        & ( ord_less_eq_nat @ K @ L2 ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J3 @ L2 ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_660_add__le__less__mono,axiom,
    ! [A: nat,B: nat,C4: nat,D5: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C4 @ D5 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ D5 ) ) ) ) ).

% add_le_less_mono
thf(fact_661_add__less__le__mono,axiom,
    ! [A: nat,B: nat,C4: nat,D5: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C4 @ D5 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C4 ) @ ( plus_plus_nat @ B @ D5 ) ) ) ) ).

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

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

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

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

% pos_add_strict
thf(fact_666_less__imp__add__positive,axiom,
    ! [I4: nat,J3: nat] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ? [K2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K2 )
          & ( ( plus_plus_nat @ I4 @ K2 )
            = J3 ) ) ) ).

% less_imp_add_positive
thf(fact_667_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M2: nat,K: nat] :
      ( ! [M4: nat,N3: nat] :
          ( ( ord_less_nat @ M4 @ N3 )
         => ( ord_less_nat @ ( F @ M4 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M2 ) @ K ) @ ( F @ ( plus_plus_nat @ M2 @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_668_less__eq__gmctxt__prime,axiom,
    ord_le1940079914304802430ctxt_a = ground6477899500129135038ctxt_a ).

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

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

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

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

% add_pos_nonneg
thf(fact_673_add__strict__increasing,axiom,
    ! [A: nat,B: nat,C4: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C4 ) ) ) ) ).

% add_strict_increasing
thf(fact_674_add__strict__increasing2,axiom,
    ! [A: nat,B: nat,C4: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C4 )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C4 ) ) ) ) ).

% add_strict_increasing2
thf(fact_675_exI__realizer,axiom,
    ! [P: ground_gterm_a > ground_gterm_a > $o,Y3: ground_gterm_a,X3: ground_gterm_a] :
      ( ( P @ Y3 @ X3 )
     => ( P @ ( produc5323275678763266181term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) ) @ ( produc5097907526672912195term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_676_exI__realizer,axiom,
    ! [P: list_Ground_gterm_a > ground_gmctxt_a > $o,Y3: list_Ground_gterm_a,X3: ground_gmctxt_a] :
      ( ( P @ Y3 @ X3 )
     => ( P @ ( produc7861257790526860176term_a @ ( produc4720362732934906942term_a @ X3 @ Y3 ) ) @ ( produc8428836298496521042term_a @ ( produc4720362732934906942term_a @ X3 @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_677_exI__realizer,axiom,
    ! [P: nat > nat > $o,Y3: nat,X3: nat] :
      ( ( P @ Y3 @ X3 )
     => ( P @ ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) ) @ ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_678_exI__realizer,axiom,
    ! [P: nat > ( nat > nat ) > $o,Y3: nat,X3: nat > nat] :
      ( ( P @ Y3 @ X3 )
     => ( P @ ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ X3 @ Y3 ) ) @ ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ X3 @ Y3 ) ) ) ) ).

% exI_realizer
thf(fact_679_conjI__realizer,axiom,
    ! [P: ground_gterm_a > $o,P2: ground_gterm_a,Q: ground_gterm_a > $o,Q3: ground_gterm_a] :
      ( ( P @ P2 )
     => ( ( Q @ Q3 )
       => ( ( P @ ( produc5097907526672912195term_a @ ( produc7419039783125785943term_a @ P2 @ Q3 ) ) )
          & ( Q @ ( produc5323275678763266181term_a @ ( produc7419039783125785943term_a @ P2 @ Q3 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_680_conjI__realizer,axiom,
    ! [P: ground_gmctxt_a > $o,P2: ground_gmctxt_a,Q: list_Ground_gterm_a > $o,Q3: list_Ground_gterm_a] :
      ( ( P @ P2 )
     => ( ( Q @ Q3 )
       => ( ( P @ ( produc8428836298496521042term_a @ ( produc4720362732934906942term_a @ P2 @ Q3 ) ) )
          & ( Q @ ( produc7861257790526860176term_a @ ( produc4720362732934906942term_a @ P2 @ Q3 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_681_conjI__realizer,axiom,
    ! [P: nat > $o,P2: nat,Q: nat > $o,Q3: nat] :
      ( ( P @ P2 )
     => ( ( Q @ Q3 )
       => ( ( P @ ( product_fst_nat_nat @ ( product_Pair_nat_nat @ P2 @ Q3 ) ) )
          & ( Q @ ( product_snd_nat_nat @ ( product_Pair_nat_nat @ P2 @ Q3 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_682_conjI__realizer,axiom,
    ! [P: ( nat > nat ) > $o,P2: nat > nat,Q: nat > $o,Q3: nat] :
      ( ( P @ P2 )
     => ( ( Q @ Q3 )
       => ( ( P @ ( produc6156676138143019412at_nat @ ( produc72220940542539688at_nat @ P2 @ Q3 ) ) )
          & ( Q @ ( produc1852801350702243542at_nat @ ( produc72220940542539688at_nat @ P2 @ Q3 ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_683_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ground_gterm_a > ground_gterm_a > $o,X3: ground_gterm_a,Y3: ground_gterm_a,A: produc1525979690750518759term_a] :
      ( ( P @ X3 @ Y3 )
     => ( ( A
          = ( produc7419039783125785943term_a @ X3 @ Y3 ) )
       => ( P @ ( produc5097907526672912195term_a @ A ) @ ( produc5323275678763266181term_a @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_684_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ground_gmctxt_a > list_Ground_gterm_a > $o,X3: ground_gmctxt_a,Y3: list_Ground_gterm_a,A: produc2459281416120113548term_a] :
      ( ( P @ X3 @ Y3 )
     => ( ( A
          = ( produc4720362732934906942term_a @ X3 @ Y3 ) )
       => ( P @ ( produc8428836298496521042term_a @ A ) @ ( produc7861257790526860176term_a @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_685_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: nat > nat > $o,X3: nat,Y3: nat,A: product_prod_nat_nat] :
      ( ( P @ X3 @ Y3 )
     => ( ( A
          = ( product_Pair_nat_nat @ X3 @ Y3 ) )
       => ( P @ ( product_fst_nat_nat @ A ) @ ( product_snd_nat_nat @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_686_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: ( nat > nat ) > nat > $o,X3: nat > nat,Y3: nat,A: produc8199716216217303280at_nat] :
      ( ( P @ X3 @ Y3 )
     => ( ( A
          = ( produc72220940542539688at_nat @ X3 @ Y3 ) )
       => ( P @ ( produc6156676138143019412at_nat @ A ) @ ( produc1852801350702243542at_nat @ A ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_687_concat__index__split__sound__snd__arg__aux,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ ( size_s962548663205356226ctxt_a @ ( nth_li6678718213161987943ctxt_a @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ N ) ) ) ) ) ).

% concat_index_split_sound_snd_arg_aux
thf(fact_688_concat__index__split__sound__snd__arg__aux,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ ( size_s1893836384466666913term_a @ ( nth_li6172171122907299772term_a @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ N ) ) ) ) ) ).

% concat_index_split_sound_snd_arg_aux
thf(fact_689_concat__index__split__sound__snd__arg__aux,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ ( size_s5321119603959729319term_a @ ( nth_li9096660926740921666term_a @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ N ) ) ) ) ) ).

% concat_index_split_sound_snd_arg_aux
thf(fact_690_concat__index__split__sound__snd__arg__aux,axiom,
    ! [I4: nat,Xs: list_list_nat,N: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ord_less_nat @ ( product_snd_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ ( size_size_list_nat @ ( nth_list_nat @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) @ N ) ) ) ) ) ).

% concat_index_split_sound_snd_arg_aux
thf(fact_691_diff__diff__cancel,axiom,
    ! [I4: nat,N: nat] :
      ( ( ord_less_eq_nat @ I4 @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I4 ) )
        = I4 ) ) ).

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

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

% le_add_diff_inverse
thf(fact_694_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_695_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_696_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_697_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( plus_plus_nat @ I4 @ ( minus_minus_nat @ J3 @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I4 @ J3 ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_698_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J3 @ K ) @ I4 )
        = ( minus_minus_nat @ ( plus_plus_nat @ J3 @ I4 ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_699_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( minus_minus_nat @ I4 @ ( minus_minus_nat @ J3 @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I4 @ K ) @ J3 ) ) ) ).

% Nat.diff_diff_right
thf(fact_700_less__imp__diff__less,axiom,
    ! [J3: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J3 @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J3 @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_701_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_702_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_703_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_704_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_705_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_706_diff__le__self,axiom,
    ! [M2: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M2 @ N ) @ M2 ) ).

% diff_le_self
thf(fact_707_le__diff__iff_H,axiom,
    ! [A: nat,C4: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C4 )
     => ( ( ord_less_eq_nat @ B @ C4 )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C4 @ A ) @ ( minus_minus_nat @ C4 @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_708_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_709_add__le__add__imp__diff__le,axiom,
    ! [I4: nat,K: nat,N: nat,J3: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J3 @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J3 @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J3 ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_710_add__le__imp__le__diff,axiom,
    ! [I4: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ N )
     => ( ord_less_eq_nat @ I4 @ ( minus_minus_nat @ N @ K ) ) ) ).

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

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

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

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

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

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

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

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

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

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

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

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_722_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_723_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_724_diff__less__mono,axiom,
    ! [A: nat,B: nat,C4: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C4 @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C4 ) @ ( minus_minus_nat @ B @ C4 ) ) ) ) ).

% diff_less_mono
thf(fact_725_less__diff__conv,axiom,
    ! [I4: nat,J3: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ ( minus_minus_nat @ J3 @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ J3 ) ) ).

% less_diff_conv
thf(fact_726_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_727_le__diff__conv,axiom,
    ! [J3: nat,K: nat,I4: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J3 @ K ) @ I4 )
      = ( ord_less_eq_nat @ J3 @ ( plus_plus_nat @ I4 @ K ) ) ) ).

% le_diff_conv
thf(fact_728_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( ord_less_eq_nat @ I4 @ ( minus_minus_nat @ J3 @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ J3 ) ) ) ).

% Nat.le_diff_conv2
thf(fact_729_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I4 @ J3 ) @ K )
        = ( plus_plus_nat @ I4 @ ( minus_minus_nat @ J3 @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_730_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J3 @ I4 ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J3 @ K ) @ I4 ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_731_Nat_Ole__imp__diff__is__add,axiom,
    ! [I4: nat,J3: nat,K: nat] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ( ( minus_minus_nat @ J3 @ I4 )
          = K )
        = ( J3
          = ( plus_plus_nat @ K @ I4 ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_732_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D6: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D6 ) )
                & ~ ( P @ D6 ) ) ) ) ) ).

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

% nat_diff_split
thf(fact_734_less__diff__conv2,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J3 @ K ) @ I4 )
        = ( ord_less_nat @ J3 @ ( plus_plus_nat @ I4 @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_735_in__set__enumerate__eq,axiom,
    ! [P2: produc932717863267311695ctxt_a,N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( member2885886537299685624ctxt_a @ P2 @ ( set_Pr3995427970001988964ctxt_a @ ( enumer3922341085786344185ctxt_a @ N @ Xs ) ) )
      = ( ( ord_less_eq_nat @ N @ ( produc8631767124948943475ctxt_a @ P2 ) )
        & ( ord_less_nat @ ( produc8631767124948943475ctxt_a @ P2 ) @ ( plus_plus_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ N ) )
        & ( ( nth_Ground_gmctxt_a @ Xs @ ( minus_minus_nat @ ( produc8631767124948943475ctxt_a @ P2 ) @ N ) )
          = ( produc3552744573514591925ctxt_a @ P2 ) ) ) ) ).

% in_set_enumerate_eq
thf(fact_736_in__set__enumerate__eq,axiom,
    ! [P2: produc7109479242990851284term_a,N: nat,Xs: list_Ground_gterm_a] :
      ( ( member6622040750283622891term_a @ P2 @ ( set_Pr3203312087732499071term_a @ ( enumer8595146184022354964term_a @ N @ Xs ) ) )
      = ( ( ord_less_eq_nat @ N @ ( produc6672059348947727898term_a @ P2 ) )
        & ( ord_less_nat @ ( produc6672059348947727898term_a @ P2 ) @ ( plus_plus_nat @ ( size_s1893836384466666913term_a @ Xs ) @ N ) )
        & ( ( nth_Ground_gterm_a @ Xs @ ( minus_minus_nat @ ( produc6672059348947727898term_a @ P2 ) @ N ) )
          = ( produc4207926146178914648term_a @ P2 ) ) ) ) ).

% in_set_enumerate_eq
thf(fact_737_in__set__enumerate__eq,axiom,
    ! [P2: produc7252121546586809946term_a,N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( member825974164662248433term_a @ P2 @ ( set_Pr4194642937221624453term_a @ ( enumer2156928005790035738term_a @ N @ Xs ) ) )
      = ( ( ord_less_eq_nat @ N @ ( produc5587245019348778528term_a @ P2 ) )
        & ( ord_less_nat @ ( produc5587245019348778528term_a @ P2 ) @ ( plus_plus_nat @ ( size_s5321119603959729319term_a @ Xs ) @ N ) )
        & ( ( nth_li6172171122907299772term_a @ Xs @ ( minus_minus_nat @ ( produc5587245019348778528term_a @ P2 ) @ N ) )
          = ( produc8862243304664279646term_a @ P2 ) ) ) ) ).

% in_set_enumerate_eq
thf(fact_738_in__set__enumerate__eq,axiom,
    ! [P2: product_prod_nat_nat,N: nat,Xs: list_nat] :
      ( ( member8440522571783428010at_nat @ P2 @ ( set_Pr5648618587558075414at_nat @ ( enumerate_nat @ N @ Xs ) ) )
      = ( ( ord_less_eq_nat @ N @ ( product_fst_nat_nat @ P2 ) )
        & ( ord_less_nat @ ( product_fst_nat_nat @ P2 ) @ ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ N ) )
        & ( ( nth_nat @ Xs @ ( minus_minus_nat @ ( product_fst_nat_nat @ P2 ) @ N ) )
          = ( product_snd_nat_nat @ P2 ) ) ) ) ).

% in_set_enumerate_eq
thf(fact_739_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_740_nth__enumerate__eq,axiom,
    ! [M2: nat,Xs: list_Ground_gterm_a,N: nat] :
      ( ( ord_less_nat @ M2 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Pr5718682320234703373term_a @ ( enumer8595146184022354964term_a @ N @ Xs ) @ M2 )
        = ( produc4697074808646628614term_a @ ( plus_plus_nat @ N @ M2 ) @ ( nth_Ground_gterm_a @ Xs @ M2 ) ) ) ) ).

% nth_enumerate_eq
thf(fact_741_nth__enumerate__eq,axiom,
    ! [M2: nat,Xs: list_l4678906206682822203term_a,N: nat] :
      ( ( ord_less_nat @ M2 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( nth_Pr7045840962053786387term_a @ ( enumer2156928005790035738term_a @ N @ Xs ) @ M2 )
        = ( produc1055361199944718092term_a @ ( plus_plus_nat @ N @ M2 ) @ ( nth_li6172171122907299772term_a @ Xs @ M2 ) ) ) ) ).

% nth_enumerate_eq
thf(fact_742_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_743_sndI,axiom,
    ! [X3: produc1525979690750518759term_a,Y3: ground_gterm_a,Z2: ground_gterm_a] :
      ( ( X3
        = ( produc7419039783125785943term_a @ Y3 @ Z2 ) )
     => ( ( produc5323275678763266181term_a @ X3 )
        = Z2 ) ) ).

% sndI
thf(fact_744_sndI,axiom,
    ! [X3: produc2459281416120113548term_a,Y3: ground_gmctxt_a,Z2: list_Ground_gterm_a] :
      ( ( X3
        = ( produc4720362732934906942term_a @ Y3 @ Z2 ) )
     => ( ( produc7861257790526860176term_a @ X3 )
        = Z2 ) ) ).

% sndI
thf(fact_745_sndI,axiom,
    ! [X3: product_prod_nat_nat,Y3: nat,Z2: nat] :
      ( ( X3
        = ( product_Pair_nat_nat @ Y3 @ Z2 ) )
     => ( ( product_snd_nat_nat @ X3 )
        = Z2 ) ) ).

% sndI
thf(fact_746_sndI,axiom,
    ! [X3: produc8199716216217303280at_nat,Y3: nat > nat,Z2: nat] :
      ( ( X3
        = ( produc72220940542539688at_nat @ Y3 @ Z2 ) )
     => ( ( produc1852801350702243542at_nat @ X3 )
        = Z2 ) ) ).

% sndI
thf(fact_747_fstI,axiom,
    ! [X3: produc1525979690750518759term_a,Y3: ground_gterm_a,Z2: ground_gterm_a] :
      ( ( X3
        = ( produc7419039783125785943term_a @ Y3 @ Z2 ) )
     => ( ( produc5097907526672912195term_a @ X3 )
        = Y3 ) ) ).

% fstI
thf(fact_748_fstI,axiom,
    ! [X3: produc2459281416120113548term_a,Y3: ground_gmctxt_a,Z2: list_Ground_gterm_a] :
      ( ( X3
        = ( produc4720362732934906942term_a @ Y3 @ Z2 ) )
     => ( ( produc8428836298496521042term_a @ X3 )
        = Y3 ) ) ).

% fstI
thf(fact_749_fstI,axiom,
    ! [X3: product_prod_nat_nat,Y3: nat,Z2: nat] :
      ( ( X3
        = ( product_Pair_nat_nat @ Y3 @ Z2 ) )
     => ( ( product_fst_nat_nat @ X3 )
        = Y3 ) ) ).

% fstI
thf(fact_750_fstI,axiom,
    ! [X3: produc8199716216217303280at_nat,Y3: nat > nat,Z2: nat] :
      ( ( X3
        = ( produc72220940542539688at_nat @ Y3 @ Z2 ) )
     => ( ( produc6156676138143019412at_nat @ X3 )
        = Y3 ) ) ).

% fstI
thf(fact_751_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_752_length__enumerate,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a] :
      ( ( size_s2378411291002718200term_a @ ( enumer8595146184022354964term_a @ N @ Xs ) )
      = ( size_s1893836384466666913term_a @ Xs ) ) ).

% length_enumerate
thf(fact_753_length__enumerate,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( size_s2253831711320483326term_a @ ( enumer2156928005790035738term_a @ N @ Xs ) )
      = ( size_s5321119603959729319term_a @ Xs ) ) ).

% length_enumerate
thf(fact_754_length__enumerate,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( size_s5460976970255530739at_nat @ ( enumerate_nat @ N @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_enumerate
thf(fact_755_psubset__imp__ex__mem,axiom,
    ! [A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a] :
      ( ( ord_le2815447592711331187term_a @ A3 @ B3 )
     => ? [B4: produc1525979690750518759term_a] : ( member4351891425000572176term_a @ B4 @ ( minus_551215046067487790term_a @ B3 @ A3 ) ) ) ).

% psubset_imp_ex_mem
thf(fact_756_listrel1__iff__update,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,R2: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs @ Ys ) @ ( listre839271074516595327ctxt_a @ R2 ) )
      = ( ? [Y4: ground_gmctxt_a,N2: nat] :
            ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ Xs @ N2 ) @ Y4 ) @ R2 )
            & ( ord_less_nat @ N2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
            & ( Ys
              = ( list_u7950812632479372336ctxt_a @ Xs @ N2 @ Y4 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_757_listrel1__iff__update,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) )
      = ( ? [Y4: ground_gterm_a,N2: nat] :
            ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ Xs @ N2 ) @ Y4 ) @ R2 )
            & ( ord_less_nat @ N2 @ ( size_s1893836384466666913term_a @ Xs ) )
            & ( Ys
              = ( list_u6582344683876525341term_a @ Xs @ N2 @ Y4 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_758_listrel1__iff__update,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,R2: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs @ Ys ) @ ( listre1188387051607982356term_a @ R2 ) )
      = ( ? [Y4: list_Ground_gterm_a,N2: nat] :
            ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ Xs @ N2 ) @ Y4 ) @ R2 )
            & ( ord_less_nat @ N2 @ ( size_s5321119603959729319term_a @ Xs ) )
            & ( Ys
              = ( list_u412135983231242147term_a @ Xs @ N2 @ Y4 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_759_listrel1__iff__update,axiom,
    ! [Xs: list_nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R2 ) )
      = ( ? [Y4: nat,N2: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Xs @ N2 ) @ Y4 ) @ R2 )
            & ( ord_less_nat @ N2 @ ( size_size_list_nat @ Xs ) )
            & ( Ys
              = ( list_update_nat @ Xs @ N2 @ Y4 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_760_fill__gholes__GMHole,axiom,
    ! [Ss2: list_Ground_gterm_a] :
      ( ( ( size_s1893836384466666913term_a @ Ss2 )
        = ( suc @ zero_zero_nat ) )
     => ( ( ground_fill_gholes_a @ ground_GMHole_a @ Ss2 )
        = ( nth_Ground_gterm_a @ Ss2 @ zero_zero_nat ) ) ) ).

% fill_gholes_GMHole
thf(fact_761_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_762_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_763_DiffI,axiom,
    ! [C4: produc1525979690750518759term_a,A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C4 @ A3 )
     => ( ~ ( member4351891425000572176term_a @ C4 @ B3 )
       => ( member4351891425000572176term_a @ C4 @ ( minus_551215046067487790term_a @ A3 @ B3 ) ) ) ) ).

% DiffI
thf(fact_764_Diff__iff,axiom,
    ! [C4: produc1525979690750518759term_a,A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C4 @ ( minus_551215046067487790term_a @ A3 @ B3 ) )
      = ( ( member4351891425000572176term_a @ C4 @ A3 )
        & ~ ( member4351891425000572176term_a @ C4 @ B3 ) ) ) ).

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

% lessI
thf(fact_766_Suc__mono,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_767_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_768_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_769_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

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

% less_Suc0
thf(fact_771_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_772_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( minus_minus_nat @ I4 @ ( suc @ ( minus_minus_nat @ J3 @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I4 @ K ) @ ( suc @ J3 ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_773_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J3: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J3 )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J3 @ K ) ) @ I4 )
        = ( minus_minus_nat @ ( suc @ J3 ) @ ( plus_plus_nat @ K @ I4 ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_774_DiffE,axiom,
    ! [C4: produc1525979690750518759term_a,A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C4 @ ( minus_551215046067487790term_a @ A3 @ B3 ) )
     => ~ ( ( member4351891425000572176term_a @ C4 @ A3 )
         => ( member4351891425000572176term_a @ C4 @ B3 ) ) ) ).

% DiffE
thf(fact_775_DiffD1,axiom,
    ! [C4: produc1525979690750518759term_a,A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C4 @ ( minus_551215046067487790term_a @ A3 @ B3 ) )
     => ( member4351891425000572176term_a @ C4 @ A3 ) ) ).

% DiffD1
thf(fact_776_DiffD2,axiom,
    ! [C4: produc1525979690750518759term_a,A3: set_Pr8282532413760598727term_a,B3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ C4 @ ( minus_551215046067487790term_a @ A3 @ B3 ) )
     => ~ ( member4351891425000572176term_a @ C4 @ B3 ) ) ).

% DiffD2
thf(fact_777_transitive__stepwise__le,axiom,
    ! [M2: nat,N: nat,R4: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ! [X2: nat] : ( R4 @ X2 @ X2 )
       => ( ! [X2: nat,Y5: nat,Z3: nat] :
              ( ( R4 @ X2 @ Y5 )
             => ( ( R4 @ Y5 @ Z3 )
               => ( R4 @ X2 @ Z3 ) ) )
         => ( ! [N3: nat] : ( R4 @ N3 @ ( suc @ N3 ) )
           => ( R4 @ M2 @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_778_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_779_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M3 ) @ N3 )
             => ( P @ M3 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_780_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_781_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_782_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_783_Suc__le__D,axiom,
    ! [N: nat,M5: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M5 )
     => ? [M4: nat] :
          ( M5
          = ( suc @ M4 ) ) ) ).

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

% le_SucI
thf(fact_785_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_786_Suc__leD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M2 ) @ N )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

% Suc_leD
thf(fact_787_Nat_OlessE,axiom,
    ! [I4: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ K )
     => ( ( K
         != ( suc @ I4 ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I4 @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_788_Suc__lessD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ N )
     => ( ord_less_nat @ M2 @ N ) ) ).

% Suc_lessD
thf(fact_789_Suc__lessE,axiom,
    ! [I4: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I4 ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I4 @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_790_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_791_less__SucE,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M2 @ N )
       => ( M2 = N ) ) ) ).

% less_SucE
thf(fact_792_less__SucI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_nat @ M2 @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_793_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
            & ( P @ I2 ) ) )
      = ( ( P @ N )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
            & ( P @ I2 ) ) ) ) ).

% Ex_less_Suc
thf(fact_794_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_795_not__less__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M2 @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M2 ) ) ) ).

% not_less_eq
thf(fact_796_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
           => ( P @ I2 ) ) )
      = ( ( P @ N )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
           => ( P @ I2 ) ) ) ) ).

% All_less_Suc
thf(fact_797_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_798_less__antisym,axiom,
    ! [N: nat,M2: nat] :
      ( ~ ( ord_less_nat @ N @ M2 )
     => ( ( ord_less_nat @ N @ ( suc @ M2 ) )
       => ( M2 = N ) ) ) ).

% less_antisym
thf(fact_799_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_800_less__trans__Suc,axiom,
    ! [I4: nat,J3: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ( ( ord_less_nat @ J3 @ K )
       => ( ord_less_nat @ ( suc @ I4 ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_801_less__Suc__induct,axiom,
    ! [I4: nat,J3: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
       => ( ! [I3: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I3 @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P @ I3 @ J2 )
                 => ( ( P @ J2 @ K2 )
                   => ( P @ I3 @ K2 ) ) ) ) )
         => ( P @ I4 @ J3 ) ) ) ) ).

% less_Suc_induct
thf(fact_802_strict__inc__induct,axiom,
    ! [I4: nat,J3: nat,P: nat > $o] :
      ( ( ord_less_nat @ I4 @ J3 )
     => ( ! [I3: nat] :
            ( ( J3
              = ( suc @ I3 ) )
           => ( P @ I3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ J3 )
             => ( ( P @ ( suc @ I3 ) )
               => ( P @ I3 ) ) )
         => ( P @ I4 ) ) ) ) ).

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

% lift_Suc_mono_less
thf(fact_806_lift__Suc__antimono__le,axiom,
    ! [F: nat > ground_gmctxt_a,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_le1940079914304802430ctxt_a @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_le1940079914304802430ctxt_a @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

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

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

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

% lift_Suc_mono_le
thf(fact_810_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_811_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M4: nat] :
          ( N
          = ( suc @ M4 ) ) ) ).

% gr0_implies_Suc
thf(fact_812_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M: nat] :
            ( N
            = ( suc @ M ) ) ) ) ).

% gr0_conv_Suc
thf(fact_813_all__less__two,axiom,
    ! [P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ ( suc @ zero_zero_nat ) ) )
           => ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        & ( P @ ( suc @ zero_zero_nat ) ) ) ) ).

% all_less_two
thf(fact_814_all__Suc__conv,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
           => ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
           => ( P @ ( suc @ I2 ) ) ) ) ) ).

% all_Suc_conv
thf(fact_815_ex__Suc__conv,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
            & ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
            & ( P @ ( suc @ I2 ) ) ) ) ) ).

% ex_Suc_conv
thf(fact_816_Suc__leI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_eq_nat @ ( suc @ M2 ) @ N ) ) ).

% Suc_leI
thf(fact_817_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_818_dec__induct,axiom,
    ! [I4: nat,J3: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ( P @ I4 )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I4 @ N3 )
             => ( ( ord_less_nat @ N3 @ J3 )
               => ( ( P @ N3 )
                 => ( P @ ( suc @ N3 ) ) ) ) )
         => ( P @ J3 ) ) ) ) ).

% dec_induct
thf(fact_819_inc__induct,axiom,
    ! [I4: nat,J3: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I4 @ J3 )
     => ( ( P @ J3 )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I4 @ N3 )
             => ( ( ord_less_nat @ N3 @ J3 )
               => ( ( P @ ( suc @ N3 ) )
                 => ( P @ N3 ) ) ) )
         => ( P @ I4 ) ) ) ) ).

% inc_induct
thf(fact_820_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_821_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_822_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_823_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N2: nat] : ( ord_less_eq_nat @ ( suc @ N2 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_824_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_825_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_826_less__add__Suc1,axiom,
    ! [I4: nat,M2: nat] : ( ord_less_nat @ I4 @ ( suc @ ( plus_plus_nat @ I4 @ M2 ) ) ) ).

% less_add_Suc1
thf(fact_827_less__add__Suc2,axiom,
    ! [I4: nat,M2: nat] : ( ord_less_nat @ I4 @ ( suc @ ( plus_plus_nat @ M2 @ I4 ) ) ) ).

% less_add_Suc2
thf(fact_828_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M: nat,N2: nat] :
        ? [K5: nat] :
          ( N2
          = ( suc @ ( plus_plus_nat @ M @ K5 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_829_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_830_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_831_diff__less__Suc,axiom,
    ! [M2: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M2 @ N ) @ ( suc @ M2 ) ) ).

% diff_less_Suc
thf(fact_832_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_833_listrel1__eq__len,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,R2: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs @ Ys ) @ ( listre839271074516595327ctxt_a @ R2 ) )
     => ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_834_listrel1__eq__len,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) )
     => ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_835_listrel1__eq__len,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,R2: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs @ Ys ) @ ( listre1188387051607982356term_a @ R2 ) )
     => ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_s5321119603959729319term_a @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_836_listrel1__eq__len,axiom,
    ! [Xs: list_nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R2 ) )
     => ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_837_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I: nat] :
                ( ( ord_less_eq_nat @ I @ K2 )
               => ~ ( P @ I ) )
            & ( P @ ( suc @ K2 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_838_diff__Suc__less,axiom,
    ! [N: nat,I4: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I4 ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_839_num__gholes_Osimps_I1_J,axiom,
    ( ( ground_num_gholes_a @ ground_GMHole_a )
    = ( suc @ zero_zero_nat ) ) ).

% num_gholes.simps(1)
thf(fact_840_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_841_Abstract__Rewriting_Ochain__mono,axiom,
    ! [R5: set_Pr8282532413760598727term_a,R4: set_Pr8282532413760598727term_a,Seq: nat > ground_gterm_a] :
      ( ( ord_le7556488698670074471term_a @ R5 @ R4 )
     => ( ! [I3: nat] : ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( Seq @ I3 ) @ ( Seq @ ( suc @ I3 ) ) ) @ R5 )
       => ! [I: nat] : ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( Seq @ I ) @ ( Seq @ ( suc @ I ) ) ) @ R4 ) ) ) ).

% Abstract_Rewriting.chain_mono
thf(fact_842_Abstract__Rewriting_Ochain__mono,axiom,
    ! [R5: set_Pr1261947904930325089at_nat,R4: set_Pr1261947904930325089at_nat,Seq: nat > nat] :
      ( ( ord_le3146513528884898305at_nat @ R5 @ R4 )
     => ( ! [I3: nat] : ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( Seq @ I3 ) @ ( Seq @ ( suc @ I3 ) ) ) @ R5 )
       => ! [I: nat] : ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( Seq @ I ) @ ( Seq @ ( suc @ I ) ) ) @ R4 ) ) ) ).

% Abstract_Rewriting.chain_mono
thf(fact_843_prod__decode__aux_Ocases,axiom,
    ! [X3: product_prod_nat_nat] :
      ~ ! [K2: nat,M4: nat] :
          ( X3
         != ( product_Pair_nat_nat @ K2 @ M4 ) ) ).

% prod_decode_aux.cases
thf(fact_844_inf__concat__simple_Ocases,axiom,
    ! [X3: produc8199716216217303280at_nat] :
      ( ! [F2: nat > nat] :
          ( X3
         != ( produc72220940542539688at_nat @ F2 @ zero_zero_nat ) )
     => ~ ! [F2: nat > nat,N3: nat] :
            ( X3
           != ( produc72220940542539688at_nat @ F2 @ ( suc @ N3 ) ) ) ) ).

% inf_concat_simple.cases
thf(fact_845_adjust__idx__rev__def,axiom,
    ( missin3815256168798769645dx_rev
    = ( ^ [I2: nat,J4: nat] : ( if_nat @ ( ord_less_nat @ J4 @ I2 ) @ J4 @ ( minus_minus_nat @ J4 @ ( suc @ zero_zero_nat ) ) ) ) ) ).

% adjust_idx_rev_def
thf(fact_846_prod__decode__aux_Osimps,axiom,
    ( nat_prod_decode_aux
    = ( ^ [K5: nat,M: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ M @ K5 ) @ ( product_Pair_nat_nat @ M @ ( minus_minus_nat @ K5 @ M ) ) @ ( nat_prod_decode_aux @ ( suc @ K5 ) @ ( minus_minus_nat @ M @ ( suc @ K5 ) ) ) ) ) ) ).

% prod_decode_aux.simps
thf(fact_847_prod__decode__aux_Oelims,axiom,
    ! [X3: nat,Xa: nat,Y3: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X3 @ Xa )
        = Y3 )
     => ( ( ( ord_less_eq_nat @ Xa @ X3 )
         => ( Y3
            = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X3 @ Xa ) ) ) )
        & ( ~ ( ord_less_eq_nat @ Xa @ X3 )
         => ( Y3
            = ( nat_prod_decode_aux @ ( suc @ X3 ) @ ( minus_minus_nat @ Xa @ ( suc @ X3 ) ) ) ) ) ) ) ).

% prod_decode_aux.elims
thf(fact_848_shift_Ocases,axiom,
    ! [X3: produc8199716216217303280at_nat] :
      ~ ! [F2: nat > nat,J2: nat] :
          ( X3
         != ( produc72220940542539688at_nat @ F2 @ J2 ) ) ).

% shift.cases
thf(fact_849_remove__nth__sound__r,axiom,
    ! [N: nat,P2: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ N @ P2 )
     => ( ( ord_less_nat @ P2 @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ N @ Xs ) @ P2 )
          = ( nth_Ground_gmctxt_a @ Xs @ ( suc @ P2 ) ) ) ) ) ).

% remove_nth_sound_r
thf(fact_850_remove__nth__sound__r,axiom,
    ! [N: nat,P2: nat,Xs: list_Ground_gterm_a] :
      ( ( ord_less_eq_nat @ N @ P2 )
     => ( ( ord_less_nat @ P2 @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ N @ Xs ) @ P2 )
          = ( nth_Ground_gterm_a @ Xs @ ( suc @ P2 ) ) ) ) ) ).

% remove_nth_sound_r
thf(fact_851_remove__nth__sound__r,axiom,
    ! [N: nat,P2: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_eq_nat @ N @ P2 )
     => ( ( ord_less_nat @ P2 @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( nth_li6172171122907299772term_a @ ( missin8797143349754660910term_a @ N @ Xs ) @ P2 )
          = ( nth_li6172171122907299772term_a @ Xs @ ( suc @ P2 ) ) ) ) ) ).

% remove_nth_sound_r
thf(fact_852_remove__nth__sound__r,axiom,
    ! [N: nat,P2: nat,Xs: list_nat] :
      ( ( ord_less_eq_nat @ N @ P2 )
     => ( ( ord_less_nat @ P2 @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) @ P2 )
          = ( nth_nat @ Xs @ ( suc @ P2 ) ) ) ) ) ).

% remove_nth_sound_r
thf(fact_853_gmctxt__of__gctxt__num__gholes,axiom,
    ! [C: ground_gctxt_a] :
      ( ( ground_num_gholes_a @ ( ground5442125528501538874ctxt_a @ C ) )
      = ( suc @ zero_zero_nat ) ) ).

% gmctxt_of_gctxt_num_gholes
thf(fact_854_adjust__idx__rev__nth,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( J3 != I4 )
       => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ I4 @ Xs ) @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) )
          = ( nth_Ground_gmctxt_a @ Xs @ J3 ) ) ) ) ).

% adjust_idx_rev_nth
thf(fact_855_adjust__idx__rev__nth,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( J3 != I4 )
       => ( ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ I4 @ Xs ) @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) )
          = ( nth_Ground_gterm_a @ Xs @ J3 ) ) ) ) ).

% adjust_idx_rev_nth
thf(fact_856_adjust__idx__rev__nth,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( J3 != I4 )
       => ( ( nth_li6172171122907299772term_a @ ( missin8797143349754660910term_a @ I4 @ Xs ) @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) )
          = ( nth_li6172171122907299772term_a @ Xs @ J3 ) ) ) ) ).

% adjust_idx_rev_nth
thf(fact_857_adjust__idx__rev__nth,axiom,
    ! [I4: nat,Xs: list_nat,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( J3 != I4 )
       => ( ( nth_nat @ ( missin7175274867594579095th_nat @ I4 @ Xs ) @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) )
          = ( nth_nat @ Xs @ J3 ) ) ) ) ).

% adjust_idx_rev_nth
thf(fact_858_remove__nth__sound__l,axiom,
    ! [P2: nat,N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ P2 @ N )
     => ( ( nth_li6172171122907299772term_a @ ( missin8797143349754660910term_a @ N @ Xs ) @ P2 )
        = ( nth_li6172171122907299772term_a @ Xs @ P2 ) ) ) ).

% remove_nth_sound_l
thf(fact_859_remove__nth__sound__l,axiom,
    ! [P2: nat,N: nat,Xs: list_Ground_gterm_a] :
      ( ( ord_less_nat @ P2 @ N )
     => ( ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ N @ Xs ) @ P2 )
        = ( nth_Ground_gterm_a @ Xs @ P2 ) ) ) ).

% remove_nth_sound_l
thf(fact_860_remove__nth__sound__l,axiom,
    ! [P2: nat,N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ P2 @ N )
     => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ N @ Xs ) @ P2 )
        = ( nth_Ground_gmctxt_a @ Xs @ P2 ) ) ) ).

% remove_nth_sound_l
thf(fact_861_remove__nth__sound__l,axiom,
    ! [P2: nat,N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ P2 @ N )
     => ( ( nth_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) @ P2 )
        = ( nth_nat @ Xs @ P2 ) ) ) ).

% remove_nth_sound_l
thf(fact_862_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_863_remove__nth__id,axiom,
    ! [Xs: list_Ground_gterm_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s1893836384466666913term_a @ Xs ) @ N )
     => ( ( missin1630609993678954280term_a @ N @ Xs )
        = Xs ) ) ).

% remove_nth_id
thf(fact_864_remove__nth__id,axiom,
    ! [Xs: list_l4678906206682822203term_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s5321119603959729319term_a @ Xs ) @ N )
     => ( ( missin8797143349754660910term_a @ N @ Xs )
        = Xs ) ) ).

% remove_nth_id
thf(fact_865_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_866_remove__nth__len,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( suc @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ I4 @ Xs ) ) ) ) ) ).

% remove_nth_len
thf(fact_867_remove__nth__len,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( size_s1893836384466666913term_a @ Xs )
        = ( suc @ ( size_s1893836384466666913term_a @ ( missin1630609993678954280term_a @ I4 @ Xs ) ) ) ) ) ).

% remove_nth_len
thf(fact_868_remove__nth__len,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( size_s5321119603959729319term_a @ Xs )
        = ( suc @ ( size_s5321119603959729319term_a @ ( missin8797143349754660910term_a @ I4 @ Xs ) ) ) ) ) ).

% remove_nth_len
thf(fact_869_remove__nth__len,axiom,
    ! [I4: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( size_size_list_nat @ Xs )
        = ( suc @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ I4 @ Xs ) ) ) ) ) ).

% remove_nth_len
thf(fact_870_remove__nth__P__compat,axiom,
    ! [As: list_nat,Bs: list_nat,P: nat > nat > $o,P2: nat] :
      ( ( ( size_size_list_nat @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ As ) )
           => ( P @ ( nth_nat @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ P2 @ As ) ) )
           => ( P @ ( nth_nat @ ( missin7175274867594579095th_nat @ P2 @ As ) @ I ) @ ( nth_nat @ ( missin7175274867594579095th_nat @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_871_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_nat,P: ground_gmctxt_a > nat > $o,P2: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ As ) )
           => ( P @ ( nth_Ground_gmctxt_a @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ As ) ) )
           => ( P @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ As ) @ I ) @ ( nth_nat @ ( missin7175274867594579095th_nat @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_872_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gterm_a,Bs: list_nat,P: ground_gterm_a > nat > $o,P2: nat] :
      ( ( ( size_s1893836384466666913term_a @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ As ) )
           => ( P @ ( nth_Ground_gterm_a @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( missin1630609993678954280term_a @ P2 @ As ) ) )
           => ( P @ ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ P2 @ As ) @ I ) @ ( nth_nat @ ( missin7175274867594579095th_nat @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_873_remove__nth__P__compat,axiom,
    ! [As: list_nat,Bs: list_Ground_gmctxt_a,P: nat > ground_gmctxt_a > $o,P2: nat] :
      ( ( ( size_size_list_nat @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ As ) )
           => ( P @ ( nth_nat @ As @ I3 ) @ ( nth_Ground_gmctxt_a @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ P2 @ As ) ) )
           => ( P @ ( nth_nat @ ( missin7175274867594579095th_nat @ P2 @ As ) @ I ) @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_874_remove__nth__P__compat,axiom,
    ! [As: list_nat,Bs: list_Ground_gterm_a,P: nat > ground_gterm_a > $o,P2: nat] :
      ( ( ( size_size_list_nat @ As )
        = ( size_s1893836384466666913term_a @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ As ) )
           => ( P @ ( nth_nat @ As @ I3 ) @ ( nth_Ground_gterm_a @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ P2 @ As ) ) )
           => ( P @ ( nth_nat @ ( missin7175274867594579095th_nat @ P2 @ As ) @ I ) @ ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_875_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_Ground_gmctxt_a,P: ground_gmctxt_a > ground_gmctxt_a > $o,P2: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ As ) )
           => ( P @ ( nth_Ground_gmctxt_a @ As @ I3 ) @ ( nth_Ground_gmctxt_a @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ As ) ) )
           => ( P @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ As ) @ I ) @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_876_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_Ground_gterm_a,P: ground_gmctxt_a > ground_gterm_a > $o,P2: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_s1893836384466666913term_a @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ As ) )
           => ( P @ ( nth_Ground_gmctxt_a @ As @ I3 ) @ ( nth_Ground_gterm_a @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ As ) ) )
           => ( P @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ As ) @ I ) @ ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_877_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gterm_a,Bs: list_Ground_gmctxt_a,P: ground_gterm_a > ground_gmctxt_a > $o,P2: nat] :
      ( ( ( size_s1893836384466666913term_a @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ As ) )
           => ( P @ ( nth_Ground_gterm_a @ As @ I3 ) @ ( nth_Ground_gmctxt_a @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( missin1630609993678954280term_a @ P2 @ As ) ) )
           => ( P @ ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ P2 @ As ) @ I ) @ ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_878_remove__nth__P__compat,axiom,
    ! [As: list_Ground_gterm_a,Bs: list_Ground_gterm_a,P: ground_gterm_a > ground_gterm_a > $o,P2: nat] :
      ( ( ( size_s1893836384466666913term_a @ As )
        = ( size_s1893836384466666913term_a @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ As ) )
           => ( P @ ( nth_Ground_gterm_a @ As @ I3 ) @ ( nth_Ground_gterm_a @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( missin1630609993678954280term_a @ P2 @ As ) ) )
           => ( P @ ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ P2 @ As ) @ I ) @ ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_879_remove__nth__P__compat,axiom,
    ! [As: list_l4678906206682822203term_a,Bs: list_nat,P: list_Ground_gterm_a > nat > $o,P2: nat] :
      ( ( ( size_s5321119603959729319term_a @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5321119603959729319term_a @ As ) )
           => ( P @ ( nth_li6172171122907299772term_a @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
       => ! [I: nat] :
            ( ( ord_less_nat @ I @ ( size_s5321119603959729319term_a @ ( missin8797143349754660910term_a @ P2 @ As ) ) )
           => ( P @ ( nth_li6172171122907299772term_a @ ( missin8797143349754660910term_a @ P2 @ As ) @ I ) @ ( nth_nat @ ( missin7175274867594579095th_nat @ P2 @ Bs ) @ I ) ) ) ) ) ).

% remove_nth_P_compat
thf(fact_880_adjust__idx__rev__length,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( J3 != I4 )
         => ( ord_less_nat @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ I4 @ Xs ) ) ) ) ) ) ).

% adjust_idx_rev_length
thf(fact_881_adjust__idx__rev__length,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( J3 != I4 )
         => ( ord_less_nat @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) @ ( size_s1893836384466666913term_a @ ( missin1630609993678954280term_a @ I4 @ Xs ) ) ) ) ) ) ).

% adjust_idx_rev_length
thf(fact_882_adjust__idx__rev__length,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( J3 != I4 )
         => ( ord_less_nat @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) @ ( size_s5321119603959729319term_a @ ( missin8797143349754660910term_a @ I4 @ Xs ) ) ) ) ) ) ).

% adjust_idx_rev_length
thf(fact_883_adjust__idx__rev__length,axiom,
    ! [I4: nat,Xs: list_nat,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_size_list_nat @ Xs ) )
       => ( ( J3 != I4 )
         => ( ord_less_nat @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ I4 @ Xs ) ) ) ) ) ) ).

% adjust_idx_rev_length
thf(fact_884_nth__remove__nth__conv,axiom,
    ! [I4: nat,N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ N @ Xs ) ) )
     => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ N @ Xs ) @ I4 )
        = ( nth_Ground_gmctxt_a @ Xs @ ( if_nat @ ( ord_less_nat @ I4 @ N ) @ I4 @ ( suc @ I4 ) ) ) ) ) ).

% nth_remove_nth_conv
thf(fact_885_nth__remove__nth__conv,axiom,
    ! [I4: nat,N: nat,Xs: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( missin1630609993678954280term_a @ N @ Xs ) ) )
     => ( ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ N @ Xs ) @ I4 )
        = ( nth_Ground_gterm_a @ Xs @ ( if_nat @ ( ord_less_nat @ I4 @ N ) @ I4 @ ( suc @ I4 ) ) ) ) ) ).

% nth_remove_nth_conv
thf(fact_886_nth__remove__nth__conv,axiom,
    ! [I4: nat,N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( missin8797143349754660910term_a @ N @ Xs ) ) )
     => ( ( nth_li6172171122907299772term_a @ ( missin8797143349754660910term_a @ N @ Xs ) @ I4 )
        = ( nth_li6172171122907299772term_a @ Xs @ ( if_nat @ ( ord_less_nat @ I4 @ N ) @ I4 @ ( suc @ I4 ) ) ) ) ) ).

% nth_remove_nth_conv
thf(fact_887_nth__remove__nth__conv,axiom,
    ! [I4: nat,N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) ) )
     => ( ( nth_nat @ ( missin7175274867594579095th_nat @ N @ Xs ) @ I4 )
        = ( nth_nat @ Xs @ ( if_nat @ ( ord_less_nat @ I4 @ N ) @ I4 @ ( suc @ I4 ) ) ) ) ) ).

% nth_remove_nth_conv
thf(fact_888_adjust__idx__nth,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( missin7823264313509747941ctxt_a @ I4 @ Xs ) @ J3 )
        = ( nth_Ground_gmctxt_a @ Xs @ ( missing_adjust_idx @ I4 @ J3 ) ) ) ) ).

% adjust_idx_nth
thf(fact_889_adjust__idx__nth,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( missin1630609993678954280term_a @ I4 @ Xs ) @ J3 )
        = ( nth_Ground_gterm_a @ Xs @ ( missing_adjust_idx @ I4 @ J3 ) ) ) ) ).

% adjust_idx_nth
thf(fact_890_adjust__idx__nth,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( nth_li6172171122907299772term_a @ ( missin8797143349754660910term_a @ I4 @ Xs ) @ J3 )
        = ( nth_li6172171122907299772term_a @ Xs @ ( missing_adjust_idx @ I4 @ J3 ) ) ) ) ).

% adjust_idx_nth
thf(fact_891_adjust__idx__nth,axiom,
    ! [I4: nat,Xs: list_nat,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( missin7175274867594579095th_nat @ I4 @ Xs ) @ J3 )
        = ( nth_nat @ Xs @ ( missing_adjust_idx @ I4 @ J3 ) ) ) ) ).

% adjust_idx_nth
thf(fact_892_adjust__idx__length,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s962548663205356226ctxt_a @ ( missin7823264313509747941ctxt_a @ I4 @ Xs ) ) )
       => ( ord_less_nat @ ( missing_adjust_idx @ I4 @ J3 ) @ ( size_s962548663205356226ctxt_a @ Xs ) ) ) ) ).

% adjust_idx_length
thf(fact_893_adjust__idx__length,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s1893836384466666913term_a @ ( missin1630609993678954280term_a @ I4 @ Xs ) ) )
       => ( ord_less_nat @ ( missing_adjust_idx @ I4 @ J3 ) @ ( size_s1893836384466666913term_a @ Xs ) ) ) ) ).

% adjust_idx_length
thf(fact_894_adjust__idx__length,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_s5321119603959729319term_a @ ( missin8797143349754660910term_a @ I4 @ Xs ) ) )
       => ( ord_less_nat @ ( missing_adjust_idx @ I4 @ J3 ) @ ( size_s5321119603959729319term_a @ Xs ) ) ) ) ).

% adjust_idx_length
thf(fact_895_adjust__idx__length,axiom,
    ! [I4: nat,Xs: list_nat,J3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_nat @ J3 @ ( size_size_list_nat @ ( missin7175274867594579095th_nat @ I4 @ Xs ) ) )
       => ( ord_less_nat @ ( missing_adjust_idx @ I4 @ J3 ) @ ( size_size_list_nat @ Xs ) ) ) ) ).

% adjust_idx_length
thf(fact_896_gmctxt__of__gctxt__gctxt__of__gmctxt,axiom,
    ! [C: ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( suc @ zero_zero_nat ) )
     => ( ( ground5442125528501538874ctxt_a @ ( ground5333112502500237606ctxt_a @ C ) )
        = C ) ) ).

% gmctxt_of_gctxt_gctxt_of_gmctxt
thf(fact_897_adjust__idx__i,axiom,
    ! [I4: nat,J3: nat] :
      ( ( missing_adjust_idx @ I4 @ J3 )
     != I4 ) ).

% adjust_idx_i
thf(fact_898_adjust__idx__rev1,axiom,
    ! [I4: nat,J3: nat] :
      ( ( missin3815256168798769645dx_rev @ I4 @ ( missing_adjust_idx @ I4 @ J3 ) )
      = J3 ) ).

% adjust_idx_rev1
thf(fact_899_adjust__idx__rev2,axiom,
    ! [J3: nat,I4: nat] :
      ( ( J3 != I4 )
     => ( ( missing_adjust_idx @ I4 @ ( missin3815256168798769645dx_rev @ I4 @ J3 ) )
        = J3 ) ) ).

% adjust_idx_rev2
thf(fact_900_adjust__idx__def,axiom,
    ( missing_adjust_idx
    = ( ^ [I2: nat,J4: nat] : ( if_nat @ ( ord_less_nat @ J4 @ I2 ) @ J4 @ ( suc @ J4 ) ) ) ) ).

% adjust_idx_def
thf(fact_901_last__nthI,axiom,
    ! [I4: nat,Ts2: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Ts2 ) )
     => ( ~ ( ord_less_nat @ I4 @ ( minus_minus_nat @ ( size_s962548663205356226ctxt_a @ Ts2 ) @ ( suc @ zero_zero_nat ) ) )
       => ( ( nth_Ground_gmctxt_a @ Ts2 @ I4 )
          = ( last_Ground_gmctxt_a @ Ts2 ) ) ) ) ).

% last_nthI
thf(fact_902_last__nthI,axiom,
    ! [I4: nat,Ts2: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Ts2 ) )
     => ( ~ ( ord_less_nat @ I4 @ ( minus_minus_nat @ ( size_s1893836384466666913term_a @ Ts2 ) @ ( suc @ zero_zero_nat ) ) )
       => ( ( nth_Ground_gterm_a @ Ts2 @ I4 )
          = ( last_Ground_gterm_a @ Ts2 ) ) ) ) ).

% last_nthI
thf(fact_903_last__nthI,axiom,
    ! [I4: nat,Ts2: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Ts2 ) )
     => ( ~ ( ord_less_nat @ I4 @ ( minus_minus_nat @ ( size_s5321119603959729319term_a @ Ts2 ) @ ( suc @ zero_zero_nat ) ) )
       => ( ( nth_li6172171122907299772term_a @ Ts2 @ I4 )
          = ( last_l3433759110902854356term_a @ Ts2 ) ) ) ) ).

% last_nthI
thf(fact_904_last__nthI,axiom,
    ! [I4: nat,Ts2: list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Ts2 ) )
     => ( ~ ( ord_less_nat @ I4 @ ( minus_minus_nat @ ( size_size_list_nat @ Ts2 ) @ ( suc @ zero_zero_nat ) ) )
       => ( ( nth_nat @ Ts2 @ I4 )
          = ( last_nat @ Ts2 ) ) ) ) ).

% last_nthI
thf(fact_905_concat__index__split_Osimps,axiom,
    ! [I_idx: nat,X3: list_Ground_gmctxt_a,O_idx: nat,Xs: list_l1578326660578982846ctxt_a] :
      ( ( ( ord_less_nat @ I_idx @ ( size_s962548663205356226ctxt_a @ X3 ) )
       => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_l2925462854866423288ctxt_a @ X3 @ Xs ) )
          = ( product_Pair_nat_nat @ O_idx @ I_idx ) ) )
      & ( ~ ( ord_less_nat @ I_idx @ ( size_s962548663205356226ctxt_a @ X3 ) )
       => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_l2925462854866423288ctxt_a @ X3 @ Xs ) )
          = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ ( suc @ O_idx ) @ ( minus_minus_nat @ I_idx @ ( size_s962548663205356226ctxt_a @ X3 ) ) ) @ Xs ) ) ) ) ).

% concat_index_split.simps
thf(fact_906_concat__index__split_Osimps,axiom,
    ! [I_idx: nat,X3: list_Ground_gterm_a,O_idx: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ( ord_less_nat @ I_idx @ ( size_s1893836384466666913term_a @ X3 ) )
       => ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_l7239566772969696491term_a @ X3 @ Xs ) )
          = ( product_Pair_nat_nat @ O_idx @ I_idx ) ) )
      & ( ~ ( ord_less_nat @ I_idx @ ( size_s1893836384466666913term_a @ X3 ) )
       => ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_l7239566772969696491term_a @ X3 @ Xs ) )
          = ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ ( suc @ O_idx ) @ ( minus_minus_nat @ I_idx @ ( size_s1893836384466666913term_a @ X3 ) ) ) @ Xs ) ) ) ) ).

% concat_index_split.simps
thf(fact_907_concat__index__split_Osimps,axiom,
    ! [I_idx: nat,X3: list_l4678906206682822203term_a,O_idx: nat,Xs: list_l5172476077732501185term_a] :
      ( ( ( ord_less_nat @ I_idx @ ( size_s5321119603959729319term_a @ X3 ) )
       => ( ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_l1075082019044443889term_a @ X3 @ Xs ) )
          = ( product_Pair_nat_nat @ O_idx @ I_idx ) ) )
      & ( ~ ( ord_less_nat @ I_idx @ ( size_s5321119603959729319term_a @ X3 ) )
       => ( ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_l1075082019044443889term_a @ X3 @ Xs ) )
          = ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ ( suc @ O_idx ) @ ( minus_minus_nat @ I_idx @ ( size_s5321119603959729319term_a @ X3 ) ) ) @ Xs ) ) ) ) ).

% concat_index_split.simps
thf(fact_908_concat__index__split_Osimps,axiom,
    ! [I_idx: nat,X3: list_nat,O_idx: nat,Xs: list_list_nat] :
      ( ( ( ord_less_nat @ I_idx @ ( size_size_list_nat @ X3 ) )
       => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_list_nat @ X3 @ Xs ) )
          = ( product_Pair_nat_nat @ O_idx @ I_idx ) ) )
      & ( ~ ( ord_less_nat @ I_idx @ ( size_size_list_nat @ X3 ) )
       => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ O_idx @ I_idx ) @ ( cons_list_nat @ X3 @ Xs ) )
          = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ ( suc @ O_idx ) @ ( minus_minus_nat @ I_idx @ ( size_size_list_nat @ X3 ) ) ) @ Xs ) ) ) ) ).

% concat_index_split.simps
thf(fact_909_concat__index__split__larger__lists,axiom,
    ! [I4: nat,Xs: list_l1578326660578982846ctxt_a,N: nat,Ys: list_l1578326660578982846ctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ ( concat3993834769610107037ctxt_a @ Xs ) ) )
     => ( ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ ( append272212692390751315ctxt_a @ Xs @ Ys ) )
        = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) ) ).

% concat_index_split_larger_lists
thf(fact_910_concat__index__split__larger__lists,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,N: nat,Ys: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ ( concat1399541994378716528term_a @ Xs ) ) )
     => ( ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ ( append488786809011849168term_a @ Xs @ Ys ) )
        = ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) ) ).

% concat_index_split_larger_lists
thf(fact_911_concat__index__split__larger__lists,axiom,
    ! [I4: nat,Xs: list_l5172476077732501185term_a,N: nat,Ys: list_l5172476077732501185term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ ( concat5214662034885773942term_a @ Xs ) ) )
     => ( ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ ( append7609275726793042774term_a @ Xs @ Ys ) )
        = ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) ) ).

% concat_index_split_larger_lists
thf(fact_912_concat__index__split__larger__lists,axiom,
    ! [I4: nat,Xs: list_list_nat,N: nat,Ys: list_list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ ( concat_nat @ Xs ) ) )
     => ( ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ ( append_list_nat @ Xs @ Ys ) )
        = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ N @ I4 ) @ Xs ) ) ) ).

% concat_index_split_larger_lists
thf(fact_913_append__eq__append__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Us2: list_Ground_gmctxt_a,Vs2: list_Ground_gmctxt_a] :
      ( ( ( ( size_s962548663205356226ctxt_a @ Xs )
          = ( size_s962548663205356226ctxt_a @ Ys ) )
        | ( ( size_s962548663205356226ctxt_a @ Us2 )
          = ( size_s962548663205356226ctxt_a @ Vs2 ) ) )
     => ( ( ( append5238750768297430211ctxt_a @ Xs @ Us2 )
          = ( append5238750768297430211ctxt_a @ Ys @ Vs2 ) )
        = ( ( Xs = Ys )
          & ( Us2 = Vs2 ) ) ) ) ).

% append_eq_append_conv
thf(fact_914_append__eq__append__conv,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,Us2: list_Ground_gterm_a,Vs2: list_Ground_gterm_a] :
      ( ( ( ( size_s1893836384466666913term_a @ Xs )
          = ( size_s1893836384466666913term_a @ Ys ) )
        | ( ( size_s1893836384466666913term_a @ Us2 )
          = ( size_s1893836384466666913term_a @ Vs2 ) ) )
     => ( ( ( append7798372865478268874term_a @ Xs @ Us2 )
          = ( append7798372865478268874term_a @ Ys @ Vs2 ) )
        = ( ( Xs = Ys )
          & ( Us2 = Vs2 ) ) ) ) ).

% append_eq_append_conv
thf(fact_915_append__eq__append__conv,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,Us2: list_l4678906206682822203term_a,Vs2: list_l4678906206682822203term_a] :
      ( ( ( ( size_s5321119603959729319term_a @ Xs )
          = ( size_s5321119603959729319term_a @ Ys ) )
        | ( ( size_s5321119603959729319term_a @ Us2 )
          = ( size_s5321119603959729319term_a @ Vs2 ) ) )
     => ( ( ( append488786809011849168term_a @ Xs @ Us2 )
          = ( append488786809011849168term_a @ Ys @ Vs2 ) )
        = ( ( Xs = Ys )
          & ( Us2 = Vs2 ) ) ) ) ).

% append_eq_append_conv
thf(fact_916_append__eq__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat,Us2: list_nat,Vs2: list_nat] :
      ( ( ( ( size_size_list_nat @ Xs )
          = ( size_size_list_nat @ Ys ) )
        | ( ( size_size_list_nat @ Us2 )
          = ( size_size_list_nat @ Vs2 ) ) )
     => ( ( ( append_nat @ Xs @ Us2 )
          = ( append_nat @ Ys @ Vs2 ) )
        = ( ( Xs = Ys )
          & ( Us2 = Vs2 ) ) ) ) ).

% append_eq_append_conv
thf(fact_917_nth__Cons__0,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a] :
      ( ( nth_li6172171122907299772term_a @ ( cons_l7239566772969696491term_a @ X3 @ Xs ) @ zero_zero_nat )
      = X3 ) ).

% nth_Cons_0
thf(fact_918_nth__Cons__0,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a] :
      ( ( nth_Ground_gterm_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ zero_zero_nat )
      = X3 ) ).

% nth_Cons_0
thf(fact_919_nth__Cons__0,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( nth_Ground_gmctxt_a @ ( cons_Ground_gmctxt_a @ X3 @ Xs ) @ zero_zero_nat )
      = X3 ) ).

% nth_Cons_0
thf(fact_920_nth__Cons__0,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( nth_nat @ ( cons_nat @ X3 @ Xs ) @ zero_zero_nat )
      = X3 ) ).

% nth_Cons_0
thf(fact_921_nth__Cons__Suc,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a,N: nat] :
      ( ( nth_li6172171122907299772term_a @ ( cons_l7239566772969696491term_a @ X3 @ Xs ) @ ( suc @ N ) )
      = ( nth_li6172171122907299772term_a @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_922_nth__Cons__Suc,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a,N: nat] :
      ( ( nth_Ground_gterm_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ ( suc @ N ) )
      = ( nth_Ground_gterm_a @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_923_nth__Cons__Suc,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a,N: nat] :
      ( ( nth_Ground_gmctxt_a @ ( cons_Ground_gmctxt_a @ X3 @ Xs ) @ ( suc @ N ) )
      = ( nth_Ground_gmctxt_a @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_924_nth__Cons__Suc,axiom,
    ! [X3: nat,Xs: list_nat,N: nat] :
      ( ( nth_nat @ ( cons_nat @ X3 @ Xs ) @ ( suc @ N ) )
      = ( nth_nat @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_925_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_926_length__append,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( size_s1893836384466666913term_a @ ( append7798372865478268874term_a @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_s1893836384466666913term_a @ Xs ) @ ( size_s1893836384466666913term_a @ Ys ) ) ) ).

% length_append
thf(fact_927_length__append,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( size_s5321119603959729319term_a @ ( append488786809011849168term_a @ Xs @ Ys ) )
      = ( plus_plus_nat @ ( size_s5321119603959729319term_a @ Xs ) @ ( size_s5321119603959729319term_a @ Ys ) ) ) ).

% length_append
thf(fact_928_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_929_nth__append__length,axiom,
    ! [Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ X3 @ Ys ) ) @ ( size_s962548663205356226ctxt_a @ Xs ) )
      = X3 ) ).

% nth_append_length
thf(fact_930_nth__append__length,axiom,
    ! [Xs: list_Ground_gterm_a,X3: ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ X3 @ Ys ) ) @ ( size_s1893836384466666913term_a @ Xs ) )
      = X3 ) ).

% nth_append_length
thf(fact_931_nth__append__length,axiom,
    ! [Xs: list_l4678906206682822203term_a,X3: list_Ground_gterm_a,Ys: list_l4678906206682822203term_a] :
      ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ X3 @ Ys ) ) @ ( size_s5321119603959729319term_a @ Xs ) )
      = X3 ) ).

% nth_append_length
thf(fact_932_nth__append__length,axiom,
    ! [Xs: list_nat,X3: nat,Ys: list_nat] :
      ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ X3 @ Ys ) ) @ ( size_size_list_nat @ Xs ) )
      = X3 ) ).

% nth_append_length
thf(fact_933_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_934_nth__append__length__plus,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,N: nat] :
      ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_s1893836384466666913term_a @ Xs ) @ N ) )
      = ( nth_Ground_gterm_a @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_935_nth__append__length__plus,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,N: nat] :
      ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_s5321119603959729319term_a @ Xs ) @ N ) )
      = ( nth_li6172171122907299772term_a @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_936_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_937_list__update__length,axiom,
    ! [Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Y3: ground_gmctxt_a] :
      ( ( list_u7950812632479372336ctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ X3 @ Ys ) ) @ ( size_s962548663205356226ctxt_a @ Xs ) @ Y3 )
      = ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ Y3 @ Ys ) ) ) ).

% list_update_length
thf(fact_938_list__update__length,axiom,
    ! [Xs: list_Ground_gterm_a,X3: ground_gterm_a,Ys: list_Ground_gterm_a,Y3: ground_gterm_a] :
      ( ( list_u6582344683876525341term_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ X3 @ Ys ) ) @ ( size_s1893836384466666913term_a @ Xs ) @ Y3 )
      = ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ Y3 @ Ys ) ) ) ).

% list_update_length
thf(fact_939_list__update__length,axiom,
    ! [Xs: list_l4678906206682822203term_a,X3: list_Ground_gterm_a,Ys: list_l4678906206682822203term_a,Y3: list_Ground_gterm_a] :
      ( ( list_u412135983231242147term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ X3 @ Ys ) ) @ ( size_s5321119603959729319term_a @ Xs ) @ Y3 )
      = ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ Y3 @ Ys ) ) ) ).

% list_update_length
thf(fact_940_list__update__length,axiom,
    ! [Xs: list_nat,X3: nat,Ys: list_nat,Y3: nat] :
      ( ( list_update_nat @ ( append_nat @ Xs @ ( cons_nat @ X3 @ Ys ) ) @ ( size_size_list_nat @ Xs ) @ Y3 )
      = ( append_nat @ Xs @ ( cons_nat @ Y3 @ Ys ) ) ) ).

% list_update_length
thf(fact_941_Cons__listrel1__Cons,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a,Y3: ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ ( cons_Ground_gterm_a @ Y3 @ Ys ) ) @ ( listre9104501415344685838term_a @ R2 ) )
      = ( ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ R2 )
          & ( Xs = Ys ) )
        | ( ( X3 = Y3 )
          & ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) ) ) ) ) ).

% Cons_listrel1_Cons
thf(fact_942_Cons__listrel1__Cons,axiom,
    ! [X3: nat,Xs: list_nat,Y3: nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y3 @ Ys ) ) @ ( listrel1_nat @ R2 ) )
      = ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R2 )
          & ( Xs = Ys ) )
        | ( ( X3 = Y3 )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R2 ) ) ) ) ) ).

% Cons_listrel1_Cons
thf(fact_943_Utils_Otrancl__list__appendI,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R: set_Pr8282532413760598727term_a,X3: ground_gterm_a,Y3: ground_gterm_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( trancl1902929335784340279term_a @ R ) )
     => ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ R )
       => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ ( cons_Ground_gterm_a @ Y3 @ Ys ) ) @ ( trancl1902929335784340279term_a @ R ) ) ) ) ).

% Utils.trancl_list_appendI
thf(fact_944_Utils_Otrancl__list__appendI,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat,X3: nat,Y3: nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( trancl_list_nat @ R ) )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y3 @ Ys ) ) @ ( trancl_list_nat @ R ) ) ) ) ).

% Utils.trancl_list_appendI
thf(fact_945_enumerate__simps_I2_J,axiom,
    ! [N: nat,X3: nat,Xs: list_nat] :
      ( ( enumerate_nat @ N @ ( cons_nat @ X3 @ Xs ) )
      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ N @ X3 ) @ ( enumerate_nat @ ( suc @ N ) @ Xs ) ) ) ).

% enumerate_simps(2)
thf(fact_946_append__Cons__nth__not__middle,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,U: ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Z2: ground_gmctxt_a] :
      ( ( I4
       != ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ U @ Ys ) ) @ I4 )
        = ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_not_middle
thf(fact_947_append__Cons__nth__not__middle,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,U: ground_gterm_a,Ys: list_Ground_gterm_a,Z2: ground_gterm_a] :
      ( ( I4
       != ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ U @ Ys ) ) @ I4 )
        = ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_not_middle
thf(fact_948_append__Cons__nth__not__middle,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,U: list_Ground_gterm_a,Ys: list_l4678906206682822203term_a,Z2: list_Ground_gterm_a] :
      ( ( I4
       != ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ U @ Ys ) ) @ I4 )
        = ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_not_middle
thf(fact_949_append__Cons__nth__not__middle,axiom,
    ! [I4: nat,Xs: list_nat,U: nat,Ys: list_nat,Z2: nat] :
      ( ( I4
       != ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ U @ Ys ) ) @ I4 )
        = ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_not_middle
thf(fact_950_append__Cons__nth__middle,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,Y3: ground_gmctxt_a,Zs: list_Ground_gmctxt_a] :
      ( ( I4
        = ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ Y3 @ Zs ) ) @ I4 )
        = Y3 ) ) ).

% append_Cons_nth_middle
thf(fact_951_append__Cons__nth__middle,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,Y3: ground_gterm_a,Zs: list_Ground_gterm_a] :
      ( ( I4
        = ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ Y3 @ Zs ) ) @ I4 )
        = Y3 ) ) ).

% append_Cons_nth_middle
thf(fact_952_append__Cons__nth__middle,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Y3: list_Ground_gterm_a,Zs: list_l4678906206682822203term_a] :
      ( ( I4
        = ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ Y3 @ Zs ) ) @ I4 )
        = Y3 ) ) ).

% append_Cons_nth_middle
thf(fact_953_append__Cons__nth__middle,axiom,
    ! [I4: nat,Xs: list_nat,Y3: nat,Zs: list_nat] :
      ( ( I4
        = ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y3 @ Zs ) ) @ I4 )
        = Y3 ) ) ).

% append_Cons_nth_middle
thf(fact_954_append__Cons__nth__left,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,U: ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ U @ Ys ) ) @ I4 )
        = ( nth_Ground_gmctxt_a @ Xs @ I4 ) ) ) ).

% append_Cons_nth_left
thf(fact_955_append__Cons__nth__left,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,U: ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ U @ Ys ) ) @ I4 )
        = ( nth_Ground_gterm_a @ Xs @ I4 ) ) ) ).

% append_Cons_nth_left
thf(fact_956_append__Cons__nth__left,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,U: list_Ground_gterm_a,Ys: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ U @ Ys ) ) @ I4 )
        = ( nth_li6172171122907299772term_a @ Xs @ I4 ) ) ) ).

% append_Cons_nth_left
thf(fact_957_append__Cons__nth__left,axiom,
    ! [I4: nat,Xs: list_nat,U: nat,Ys: list_nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ U @ Ys ) ) @ I4 )
        = ( nth_nat @ Xs @ I4 ) ) ) ).

% append_Cons_nth_left
thf(fact_958_append__Cons__nth__right,axiom,
    ! [Xs: list_Ground_gmctxt_a,I4: nat,U: ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Z2: ground_gmctxt_a] :
      ( ( ord_less_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ I4 )
     => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ U @ Ys ) ) @ I4 )
        = ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_right
thf(fact_959_append__Cons__nth__right,axiom,
    ! [Xs: list_Ground_gterm_a,I4: nat,U: ground_gterm_a,Ys: list_Ground_gterm_a,Z2: ground_gterm_a] :
      ( ( ord_less_nat @ ( size_s1893836384466666913term_a @ Xs ) @ I4 )
     => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ U @ Ys ) ) @ I4 )
        = ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_right
thf(fact_960_append__Cons__nth__right,axiom,
    ! [Xs: list_l4678906206682822203term_a,I4: nat,U: list_Ground_gterm_a,Ys: list_l4678906206682822203term_a,Z2: list_Ground_gterm_a] :
      ( ( ord_less_nat @ ( size_s5321119603959729319term_a @ Xs ) @ I4 )
     => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ U @ Ys ) ) @ I4 )
        = ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_right
thf(fact_961_append__Cons__nth__right,axiom,
    ! [Xs: list_nat,I4: nat,U: nat,Ys: list_nat,Z2: nat] :
      ( ( ord_less_nat @ ( size_size_list_nat @ Xs ) @ I4 )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ U @ Ys ) ) @ I4 )
        = ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Z2 @ Ys ) ) @ I4 ) ) ) ).

% append_Cons_nth_right
thf(fact_962_split__list__first__prop__iff,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 ) ) )
      = ( ? [Ys2: list_Ground_gmctxt_a,X4: ground_gmctxt_a] :
            ( ? [Zs2: list_Ground_gmctxt_a] :
                ( Xs
                = ( append5238750768297430211ctxt_a @ Ys2 @ ( cons_Ground_gmctxt_a @ X4 @ Zs2 ) ) )
            & ( P @ X4 )
            & ! [Y4: ground_gmctxt_a] :
                ( ( member3306386364193653941ctxt_a @ Y4 @ ( set_Ground_gmctxt_a2 @ Ys2 ) )
               => ~ ( P @ Y4 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_963_split__list__last__prop__iff,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 ) ) )
      = ( ? [Ys2: list_Ground_gmctxt_a,X4: ground_gmctxt_a,Zs2: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( append5238750768297430211ctxt_a @ Ys2 @ ( cons_Ground_gmctxt_a @ X4 @ Zs2 ) ) )
            & ( P @ X4 )
            & ! [Y4: ground_gmctxt_a] :
                ( ( member3306386364193653941ctxt_a @ Y4 @ ( set_Ground_gmctxt_a2 @ Zs2 ) )
               => ~ ( P @ Y4 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_964_in__set__conv__decomp__first,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
      = ( ? [Ys2: list_P2433084232546440685term_a,Zs2: list_P2433084232546440685term_a] :
            ( ( Xs
              = ( append7909858224561987714term_a @ Ys2 @ ( cons_P5554873272834883997term_a @ X3 @ Zs2 ) ) )
            & ~ ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Ys2 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_965_in__set__conv__decomp__first,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
      = ( ? [Ys2: list_Ground_gmctxt_a,Zs2: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( append5238750768297430211ctxt_a @ Ys2 @ ( cons_Ground_gmctxt_a @ X3 @ Zs2 ) ) )
            & ~ ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Ys2 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_966_in__set__conv__decomp__last,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
      = ( ? [Ys2: list_P2433084232546440685term_a,Zs2: list_P2433084232546440685term_a] :
            ( ( Xs
              = ( append7909858224561987714term_a @ Ys2 @ ( cons_P5554873272834883997term_a @ X3 @ Zs2 ) ) )
            & ~ ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_967_in__set__conv__decomp__last,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
      = ( ? [Ys2: list_Ground_gmctxt_a,Zs2: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( append5238750768297430211ctxt_a @ Ys2 @ ( cons_Ground_gmctxt_a @ X3 @ Zs2 ) ) )
            & ~ ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_968_split__list__first__propE,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ? [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
          & ( P @ X ) )
     => ~ ! [Ys4: list_Ground_gmctxt_a,X2: ground_gmctxt_a] :
            ( ? [Zs3: list_Ground_gmctxt_a] :
                ( Xs
                = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X2 @ Zs3 ) ) )
           => ( ( P @ X2 )
             => ~ ! [Xa2: ground_gmctxt_a] :
                    ( ( member3306386364193653941ctxt_a @ Xa2 @ ( set_Ground_gmctxt_a2 @ Ys4 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_first_propE
thf(fact_969_split__list__last__propE,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ? [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
          & ( P @ X ) )
     => ~ ! [Ys4: list_Ground_gmctxt_a,X2: ground_gmctxt_a,Zs3: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X2 @ Zs3 ) ) )
           => ( ( P @ X2 )
             => ~ ! [Xa2: ground_gmctxt_a] :
                    ( ( member3306386364193653941ctxt_a @ Xa2 @ ( set_Ground_gmctxt_a2 @ Zs3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_last_propE
thf(fact_970_split__list__first__prop,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ? [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
          & ( P @ X ) )
     => ? [Ys4: list_Ground_gmctxt_a,X2: ground_gmctxt_a] :
          ( ? [Zs3: list_Ground_gmctxt_a] :
              ( Xs
              = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X2 @ Zs3 ) ) )
          & ( P @ X2 )
          & ! [Xa2: ground_gmctxt_a] :
              ( ( member3306386364193653941ctxt_a @ Xa2 @ ( set_Ground_gmctxt_a2 @ Ys4 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_first_prop
thf(fact_971_split__list__last__prop,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ? [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
          & ( P @ X ) )
     => ? [Ys4: list_Ground_gmctxt_a,X2: ground_gmctxt_a,Zs3: list_Ground_gmctxt_a] :
          ( ( Xs
            = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X2 @ Zs3 ) ) )
          & ( P @ X2 )
          & ! [Xa2: ground_gmctxt_a] :
              ( ( member3306386364193653941ctxt_a @ Xa2 @ ( set_Ground_gmctxt_a2 @ Zs3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_last_prop
thf(fact_972_in__set__conv__decomp,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
      = ( ? [Ys2: list_P2433084232546440685term_a,Zs2: list_P2433084232546440685term_a] :
            ( Xs
            = ( append7909858224561987714term_a @ Ys2 @ ( cons_P5554873272834883997term_a @ X3 @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_973_in__set__conv__decomp,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
      = ( ? [Ys2: list_Ground_gmctxt_a,Zs2: list_Ground_gmctxt_a] :
            ( Xs
            = ( append5238750768297430211ctxt_a @ Ys2 @ ( cons_Ground_gmctxt_a @ X3 @ Zs2 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_974_append__Cons__eq__iff,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a,Ys: list_P2433084232546440685term_a,Xs4: list_P2433084232546440685term_a,Ys5: list_P2433084232546440685term_a] :
      ( ~ ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
     => ( ~ ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Ys ) )
       => ( ( ( append7909858224561987714term_a @ Xs @ ( cons_P5554873272834883997term_a @ X3 @ Ys ) )
            = ( append7909858224561987714term_a @ Xs4 @ ( cons_P5554873272834883997term_a @ X3 @ Ys5 ) ) )
          = ( ( Xs = Xs4 )
            & ( Ys = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_975_append__Cons__eq__iff,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Xs4: list_Ground_gmctxt_a,Ys5: list_Ground_gmctxt_a] :
      ( ~ ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ( ~ ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Ys ) )
       => ( ( ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ X3 @ Ys ) )
            = ( append5238750768297430211ctxt_a @ Xs4 @ ( cons_Ground_gmctxt_a @ X3 @ Ys5 ) ) )
          = ( ( Xs = Xs4 )
            & ( Ys = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_976_split__list__propE,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ? [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
          & ( P @ X ) )
     => ~ ! [Ys4: list_Ground_gmctxt_a,X2: ground_gmctxt_a] :
            ( ? [Zs3: list_Ground_gmctxt_a] :
                ( Xs
                = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X2 @ Zs3 ) ) )
           => ~ ( P @ X2 ) ) ) ).

% split_list_propE
thf(fact_977_split__list__first,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
     => ? [Ys4: list_P2433084232546440685term_a,Zs3: list_P2433084232546440685term_a] :
          ( ( Xs
            = ( append7909858224561987714term_a @ Ys4 @ ( cons_P5554873272834883997term_a @ X3 @ Zs3 ) ) )
          & ~ ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Ys4 ) ) ) ) ).

% split_list_first
thf(fact_978_split__list__first,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ? [Ys4: list_Ground_gmctxt_a,Zs3: list_Ground_gmctxt_a] :
          ( ( Xs
            = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X3 @ Zs3 ) ) )
          & ~ ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Ys4 ) ) ) ) ).

% split_list_first
thf(fact_979_split__list__prop,axiom,
    ! [Xs: list_Ground_gmctxt_a,P: ground_gmctxt_a > $o] :
      ( ? [X: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X @ ( set_Ground_gmctxt_a2 @ Xs ) )
          & ( P @ X ) )
     => ? [Ys4: list_Ground_gmctxt_a,X2: ground_gmctxt_a] :
          ( ? [Zs3: list_Ground_gmctxt_a] :
              ( Xs
              = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X2 @ Zs3 ) ) )
          & ( P @ X2 ) ) ) ).

% split_list_prop
thf(fact_980_split__list__last,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
     => ? [Ys4: list_P2433084232546440685term_a,Zs3: list_P2433084232546440685term_a] :
          ( ( Xs
            = ( append7909858224561987714term_a @ Ys4 @ ( cons_P5554873272834883997term_a @ X3 @ Zs3 ) ) )
          & ~ ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_981_split__list__last,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ? [Ys4: list_Ground_gmctxt_a,Zs3: list_Ground_gmctxt_a] :
          ( ( Xs
            = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X3 @ Zs3 ) ) )
          & ~ ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_982_split__list,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
     => ? [Ys4: list_P2433084232546440685term_a,Zs3: list_P2433084232546440685term_a] :
          ( Xs
          = ( append7909858224561987714term_a @ Ys4 @ ( cons_P5554873272834883997term_a @ X3 @ Zs3 ) ) ) ) ).

% split_list
thf(fact_983_split__list,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ? [Ys4: list_Ground_gmctxt_a,Zs3: list_Ground_gmctxt_a] :
          ( Xs
          = ( append5238750768297430211ctxt_a @ Ys4 @ ( cons_Ground_gmctxt_a @ X3 @ Zs3 ) ) ) ) ).

% split_list
thf(fact_984_list_Oset__intros_I2_J,axiom,
    ! [Y3: produc1525979690750518759term_a,X222: list_P2433084232546440685term_a,X21: produc1525979690750518759term_a] :
      ( ( member4351891425000572176term_a @ Y3 @ ( set_Pr5405221470436175740term_a @ X222 ) )
     => ( member4351891425000572176term_a @ Y3 @ ( set_Pr5405221470436175740term_a @ ( cons_P5554873272834883997term_a @ X21 @ X222 ) ) ) ) ).

% list.set_intros(2)
thf(fact_985_list_Oset__intros_I2_J,axiom,
    ! [Y3: ground_gmctxt_a,X222: list_Ground_gmctxt_a,X21: ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ Y3 @ ( set_Ground_gmctxt_a2 @ X222 ) )
     => ( member3306386364193653941ctxt_a @ Y3 @ ( set_Ground_gmctxt_a2 @ ( cons_Ground_gmctxt_a @ X21 @ X222 ) ) ) ) ).

% list.set_intros(2)
thf(fact_986_list_Oset__intros_I1_J,axiom,
    ! [X21: produc1525979690750518759term_a,X222: list_P2433084232546440685term_a] : ( member4351891425000572176term_a @ X21 @ ( set_Pr5405221470436175740term_a @ ( cons_P5554873272834883997term_a @ X21 @ X222 ) ) ) ).

% list.set_intros(1)
thf(fact_987_list_Oset__intros_I1_J,axiom,
    ! [X21: ground_gmctxt_a,X222: list_Ground_gmctxt_a] : ( member3306386364193653941ctxt_a @ X21 @ ( set_Ground_gmctxt_a2 @ ( cons_Ground_gmctxt_a @ X21 @ X222 ) ) ) ).

% list.set_intros(1)
thf(fact_988_list_Oset__cases,axiom,
    ! [E: produc1525979690750518759term_a,A: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ E @ ( set_Pr5405221470436175740term_a @ A ) )
     => ( ! [Z22: list_P2433084232546440685term_a] :
            ( A
           != ( cons_P5554873272834883997term_a @ E @ Z22 ) )
       => ~ ! [Z1: produc1525979690750518759term_a,Z22: list_P2433084232546440685term_a] :
              ( ( A
                = ( cons_P5554873272834883997term_a @ Z1 @ Z22 ) )
             => ~ ( member4351891425000572176term_a @ E @ ( set_Pr5405221470436175740term_a @ Z22 ) ) ) ) ) ).

% list.set_cases
thf(fact_989_list_Oset__cases,axiom,
    ! [E: ground_gmctxt_a,A: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ E @ ( set_Ground_gmctxt_a2 @ A ) )
     => ( ! [Z22: list_Ground_gmctxt_a] :
            ( A
           != ( cons_Ground_gmctxt_a @ E @ Z22 ) )
       => ~ ! [Z1: ground_gmctxt_a,Z22: list_Ground_gmctxt_a] :
              ( ( A
                = ( cons_Ground_gmctxt_a @ Z1 @ Z22 ) )
             => ~ ( member3306386364193653941ctxt_a @ E @ ( set_Ground_gmctxt_a2 @ Z22 ) ) ) ) ) ).

% list.set_cases
thf(fact_990_set__ConsD,axiom,
    ! [Y3: produc1525979690750518759term_a,X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a] :
      ( ( member4351891425000572176term_a @ Y3 @ ( set_Pr5405221470436175740term_a @ ( cons_P5554873272834883997term_a @ X3 @ Xs ) ) )
     => ( ( Y3 = X3 )
        | ( member4351891425000572176term_a @ Y3 @ ( set_Pr5405221470436175740term_a @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_991_set__ConsD,axiom,
    ! [Y3: ground_gmctxt_a,X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member3306386364193653941ctxt_a @ Y3 @ ( set_Ground_gmctxt_a2 @ ( cons_Ground_gmctxt_a @ X3 @ Xs ) ) )
     => ( ( Y3 = X3 )
        | ( member3306386364193653941ctxt_a @ Y3 @ ( set_Ground_gmctxt_a2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_992_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_993_enumerate__append__eq,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( enumer8595146184022354964term_a @ N @ ( append7798372865478268874term_a @ Xs @ Ys ) )
      = ( append7642382048406593273term_a @ ( enumer8595146184022354964term_a @ N @ Xs ) @ ( enumer8595146184022354964term_a @ ( plus_plus_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_994_enumerate__append__eq,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( enumer2156928005790035738term_a @ N @ ( append488786809011849168term_a @ Xs @ Ys ) )
      = ( append6435179048203901439term_a @ ( enumer2156928005790035738term_a @ N @ Xs ) @ ( enumer2156928005790035738term_a @ ( plus_plus_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_995_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_996_listrel1I,axiom,
    ! [X3: ground_gterm_a,Y3: ground_gterm_a,R2: set_Pr8282532413760598727term_a,Xs: list_Ground_gterm_a,Us2: list_Ground_gterm_a,Vs2: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ R2 )
     => ( ( Xs
          = ( append7798372865478268874term_a @ Us2 @ ( cons_Ground_gterm_a @ X3 @ Vs2 ) ) )
       => ( ( Ys
            = ( append7798372865478268874term_a @ Us2 @ ( cons_Ground_gterm_a @ Y3 @ Vs2 ) ) )
         => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) ) ) ) ) ).

% listrel1I
thf(fact_997_listrel1I,axiom,
    ! [X3: nat,Y3: nat,R2: set_Pr1261947904930325089at_nat,Xs: list_nat,Us2: list_nat,Vs2: list_nat,Ys: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R2 )
     => ( ( Xs
          = ( append_nat @ Us2 @ ( cons_nat @ X3 @ Vs2 ) ) )
       => ( ( Ys
            = ( append_nat @ Us2 @ ( cons_nat @ Y3 @ Vs2 ) ) )
         => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R2 ) ) ) ) ) ).

% listrel1I
thf(fact_998_listrel1E,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) )
     => ~ ! [X2: ground_gterm_a,Y5: ground_gterm_a] :
            ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X2 @ Y5 ) @ R2 )
           => ! [Us: list_Ground_gterm_a,Vs: list_Ground_gterm_a] :
                ( ( Xs
                  = ( append7798372865478268874term_a @ Us @ ( cons_Ground_gterm_a @ X2 @ Vs ) ) )
               => ( Ys
                 != ( append7798372865478268874term_a @ Us @ ( cons_Ground_gterm_a @ Y5 @ Vs ) ) ) ) ) ) ).

% listrel1E
thf(fact_999_listrel1E,axiom,
    ! [Xs: list_nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R2 ) )
     => ~ ! [X2: nat,Y5: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X2 @ Y5 ) @ R2 )
           => ! [Us: list_nat,Vs: list_nat] :
                ( ( Xs
                  = ( append_nat @ Us @ ( cons_nat @ X2 @ Vs ) ) )
               => ( Ys
                 != ( append_nat @ Us @ ( cons_nat @ Y5 @ Vs ) ) ) ) ) ) ).

% listrel1E
thf(fact_1000_length__Cons,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ ( cons_Ground_gmctxt_a @ X3 @ Xs ) )
      = ( suc @ ( size_s962548663205356226ctxt_a @ Xs ) ) ) ).

% length_Cons
thf(fact_1001_length__Cons,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a] :
      ( ( size_s1893836384466666913term_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) )
      = ( suc @ ( size_s1893836384466666913term_a @ Xs ) ) ) ).

% length_Cons
thf(fact_1002_length__Cons,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a] :
      ( ( size_s5321119603959729319term_a @ ( cons_l7239566772969696491term_a @ X3 @ Xs ) )
      = ( suc @ ( size_s5321119603959729319term_a @ Xs ) ) ) ).

% length_Cons
thf(fact_1003_length__Cons,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( size_size_list_nat @ ( cons_nat @ X3 @ Xs ) )
      = ( suc @ ( size_size_list_nat @ Xs ) ) ) ).

% length_Cons
thf(fact_1004_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ( suc @ N )
        = ( size_s962548663205356226ctxt_a @ Xs ) )
      = ( ? [Y4: ground_gmctxt_a,Ys2: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( cons_Ground_gmctxt_a @ Y4 @ Ys2 ) )
            & ( ( size_s962548663205356226ctxt_a @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_1005_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a] :
      ( ( ( suc @ N )
        = ( size_s1893836384466666913term_a @ Xs ) )
      = ( ? [Y4: ground_gterm_a,Ys2: list_Ground_gterm_a] :
            ( ( Xs
              = ( cons_Ground_gterm_a @ Y4 @ Ys2 ) )
            & ( ( size_s1893836384466666913term_a @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_1006_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ( suc @ N )
        = ( size_s5321119603959729319term_a @ Xs ) )
      = ( ? [Y4: list_Ground_gterm_a,Ys2: list_l4678906206682822203term_a] :
            ( ( Xs
              = ( cons_l7239566772969696491term_a @ Y4 @ Ys2 ) )
            & ( ( size_s5321119603959729319term_a @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_1007_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( suc @ N )
        = ( size_size_list_nat @ Xs ) )
      = ( ? [Y4: nat,Ys2: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y4 @ Ys2 ) )
            & ( ( size_size_list_nat @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_1008_length__Suc__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,N: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: ground_gmctxt_a,Ys2: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( cons_Ground_gmctxt_a @ Y4 @ Ys2 ) )
            & ( ( size_s962548663205356226ctxt_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_1009_length__Suc__conv,axiom,
    ! [Xs: list_Ground_gterm_a,N: nat] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: ground_gterm_a,Ys2: list_Ground_gterm_a] :
            ( ( Xs
              = ( cons_Ground_gterm_a @ Y4 @ Ys2 ) )
            & ( ( size_s1893836384466666913term_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_1010_length__Suc__conv,axiom,
    ! [Xs: list_l4678906206682822203term_a,N: nat] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: list_Ground_gterm_a,Ys2: list_l4678906206682822203term_a] :
            ( ( Xs
              = ( cons_l7239566772969696491term_a @ Y4 @ Ys2 ) )
            & ( ( size_s5321119603959729319term_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_1011_length__Suc__conv,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: nat,Ys2: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y4 @ Ys2 ) )
            & ( ( size_size_list_nat @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_1012_set__subset__Cons,axiom,
    ! [Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a] : ( ord_le4032861497522155828ctxt_a @ ( set_Ground_gmctxt_a2 @ Xs ) @ ( set_Ground_gmctxt_a2 @ ( cons_Ground_gmctxt_a @ X3 @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_1013_impossible__Cons,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ ( size_s962548663205356226ctxt_a @ Xs ) @ ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( Xs
       != ( cons_Ground_gmctxt_a @ X3 @ Ys ) ) ) ).

% impossible_Cons
thf(fact_1014_impossible__Cons,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( ord_less_eq_nat @ ( size_s1893836384466666913term_a @ Xs ) @ ( size_s1893836384466666913term_a @ Ys ) )
     => ( Xs
       != ( cons_Ground_gterm_a @ X3 @ Ys ) ) ) ).

% impossible_Cons
thf(fact_1015_impossible__Cons,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( ord_less_eq_nat @ ( size_s5321119603959729319term_a @ Xs ) @ ( size_s5321119603959729319term_a @ Ys ) )
     => ( Xs
       != ( cons_l7239566772969696491term_a @ X3 @ Ys ) ) ) ).

% impossible_Cons
thf(fact_1016_impossible__Cons,axiom,
    ! [Xs: list_nat,Ys: list_nat,X3: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ ( size_size_list_nat @ Ys ) )
     => ( Xs
       != ( cons_nat @ X3 @ Ys ) ) ) ).

% impossible_Cons
thf(fact_1017_nth__append__Cons,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,Y3: ground_gmctxt_a,Zs: list_Ground_gmctxt_a] :
      ( ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ Y3 @ Zs ) ) @ I4 )
          = ( nth_Ground_gmctxt_a @ Xs @ I4 ) ) )
      & ( ~ ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( ( I4
              = ( size_s962548663205356226ctxt_a @ Xs ) )
           => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ Y3 @ Zs ) ) @ I4 )
              = Y3 ) )
          & ( ( I4
             != ( size_s962548663205356226ctxt_a @ Xs ) )
           => ( ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ Y3 @ Zs ) ) @ I4 )
              = ( nth_Ground_gmctxt_a @ Zs @ ( minus_minus_nat @ I4 @ ( suc @ ( size_s962548663205356226ctxt_a @ Xs ) ) ) ) ) ) ) ) ) ).

% nth_append_Cons
thf(fact_1018_nth__append__Cons,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,Y3: ground_gterm_a,Zs: list_Ground_gterm_a] :
      ( ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ Y3 @ Zs ) ) @ I4 )
          = ( nth_Ground_gterm_a @ Xs @ I4 ) ) )
      & ( ~ ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( ( I4
              = ( size_s1893836384466666913term_a @ Xs ) )
           => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ Y3 @ Zs ) ) @ I4 )
              = Y3 ) )
          & ( ( I4
             != ( size_s1893836384466666913term_a @ Xs ) )
           => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ Y3 @ Zs ) ) @ I4 )
              = ( nth_Ground_gterm_a @ Zs @ ( minus_minus_nat @ I4 @ ( suc @ ( size_s1893836384466666913term_a @ Xs ) ) ) ) ) ) ) ) ) ).

% nth_append_Cons
thf(fact_1019_nth__append__Cons,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Y3: list_Ground_gterm_a,Zs: list_l4678906206682822203term_a] :
      ( ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ Y3 @ Zs ) ) @ I4 )
          = ( nth_li6172171122907299772term_a @ Xs @ I4 ) ) )
      & ( ~ ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( ( I4
              = ( size_s5321119603959729319term_a @ Xs ) )
           => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ Y3 @ Zs ) ) @ I4 )
              = Y3 ) )
          & ( ( I4
             != ( size_s5321119603959729319term_a @ Xs ) )
           => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ Y3 @ Zs ) ) @ I4 )
              = ( nth_li6172171122907299772term_a @ Zs @ ( minus_minus_nat @ I4 @ ( suc @ ( size_s5321119603959729319term_a @ Xs ) ) ) ) ) ) ) ) ) ).

% nth_append_Cons
thf(fact_1020_nth__append__Cons,axiom,
    ! [I4: nat,Xs: list_nat,Y3: nat,Zs: list_nat] :
      ( ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y3 @ Zs ) ) @ I4 )
          = ( nth_nat @ Xs @ I4 ) ) )
      & ( ~ ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
       => ( ( ( I4
              = ( size_size_list_nat @ Xs ) )
           => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y3 @ Zs ) ) @ I4 )
              = Y3 ) )
          & ( ( I4
             != ( size_size_list_nat @ Xs ) )
           => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y3 @ Zs ) ) @ I4 )
              = ( nth_nat @ Zs @ ( minus_minus_nat @ I4 @ ( suc @ ( size_size_list_nat @ Xs ) ) ) ) ) ) ) ) ) ).

% nth_append_Cons
thf(fact_1021_P__as__bs__extend,axiom,
    ! [As: list_nat,Bs: list_nat,Cs: list_nat,Ds3: list_nat,P: nat > nat > $o] :
      ( ( ( size_size_list_nat @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ( ( size_size_list_nat @ Cs )
          = ( size_size_list_nat @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Bs ) )
             => ( P @ ( nth_nat @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ds3 ) )
               => ( P @ ( nth_nat @ Cs @ I3 ) @ ( nth_nat @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( append_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_nat @ ( append_nat @ As @ Cs ) @ I ) @ ( nth_nat @ ( append_nat @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1022_P__as__bs__extend,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_nat,Cs: 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 @ Cs )
          = ( size_size_list_nat @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Bs ) )
             => ( P @ ( nth_Ground_gmctxt_a @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ds3 ) )
               => ( P @ ( nth_Ground_gmctxt_a @ Cs @ I3 ) @ ( nth_nat @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( append_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ As @ Cs ) @ I ) @ ( nth_nat @ ( append_nat @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1023_P__as__bs__extend,axiom,
    ! [As: list_Ground_gterm_a,Bs: list_nat,Cs: list_Ground_gterm_a,Ds3: list_nat,P: ground_gterm_a > nat > $o] :
      ( ( ( size_s1893836384466666913term_a @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ( ( size_s1893836384466666913term_a @ Cs )
          = ( size_size_list_nat @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Bs ) )
             => ( P @ ( nth_Ground_gterm_a @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ds3 ) )
               => ( P @ ( nth_Ground_gterm_a @ Cs @ I3 ) @ ( nth_nat @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( append_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ As @ Cs ) @ I ) @ ( nth_nat @ ( append_nat @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1024_P__as__bs__extend,axiom,
    ! [As: list_nat,Bs: list_Ground_gmctxt_a,Cs: 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 @ Cs )
          = ( size_s962548663205356226ctxt_a @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Bs ) )
             => ( P @ ( nth_nat @ As @ I3 ) @ ( nth_Ground_gmctxt_a @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds3 ) )
               => ( P @ ( nth_nat @ Cs @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_nat @ ( append_nat @ As @ Cs ) @ I ) @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1025_P__as__bs__extend,axiom,
    ! [As: list_nat,Bs: list_Ground_gterm_a,Cs: list_nat,Ds3: list_Ground_gterm_a,P: nat > ground_gterm_a > $o] :
      ( ( ( size_size_list_nat @ As )
        = ( size_s1893836384466666913term_a @ Bs ) )
     => ( ( ( size_size_list_nat @ Cs )
          = ( size_s1893836384466666913term_a @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Bs ) )
             => ( P @ ( nth_nat @ As @ I3 ) @ ( nth_Ground_gterm_a @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ds3 ) )
               => ( P @ ( nth_nat @ Cs @ I3 ) @ ( nth_Ground_gterm_a @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( append7798372865478268874term_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_nat @ ( append_nat @ As @ Cs ) @ I ) @ ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1026_P__as__bs__extend,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_Ground_gmctxt_a,Cs: 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 @ Cs )
          = ( size_s962548663205356226ctxt_a @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Bs ) )
             => ( P @ ( nth_Ground_gmctxt_a @ As @ I3 ) @ ( nth_Ground_gmctxt_a @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds3 ) )
               => ( P @ ( nth_Ground_gmctxt_a @ Cs @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ As @ Cs ) @ I ) @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1027_P__as__bs__extend,axiom,
    ! [As: list_Ground_gmctxt_a,Bs: list_Ground_gterm_a,Cs: list_Ground_gmctxt_a,Ds3: list_Ground_gterm_a,P: ground_gmctxt_a > ground_gterm_a > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ As )
        = ( size_s1893836384466666913term_a @ Bs ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Cs )
          = ( size_s1893836384466666913term_a @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Bs ) )
             => ( P @ ( nth_Ground_gmctxt_a @ As @ I3 ) @ ( nth_Ground_gterm_a @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ds3 ) )
               => ( P @ ( nth_Ground_gmctxt_a @ Cs @ I3 ) @ ( nth_Ground_gterm_a @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( append7798372865478268874term_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ As @ Cs ) @ I ) @ ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1028_P__as__bs__extend,axiom,
    ! [As: list_Ground_gterm_a,Bs: list_Ground_gmctxt_a,Cs: list_Ground_gterm_a,Ds3: list_Ground_gmctxt_a,P: ground_gterm_a > ground_gmctxt_a > $o] :
      ( ( ( size_s1893836384466666913term_a @ As )
        = ( size_s962548663205356226ctxt_a @ Bs ) )
     => ( ( ( size_s1893836384466666913term_a @ Cs )
          = ( size_s962548663205356226ctxt_a @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Bs ) )
             => ( P @ ( nth_Ground_gterm_a @ As @ I3 ) @ ( nth_Ground_gmctxt_a @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s962548663205356226ctxt_a @ Ds3 ) )
               => ( P @ ( nth_Ground_gterm_a @ Cs @ I3 ) @ ( nth_Ground_gmctxt_a @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ As @ Cs ) @ I ) @ ( nth_Ground_gmctxt_a @ ( append5238750768297430211ctxt_a @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1029_P__as__bs__extend,axiom,
    ! [As: list_Ground_gterm_a,Bs: list_Ground_gterm_a,Cs: list_Ground_gterm_a,Ds3: list_Ground_gterm_a,P: ground_gterm_a > ground_gterm_a > $o] :
      ( ( ( size_s1893836384466666913term_a @ As )
        = ( size_s1893836384466666913term_a @ Bs ) )
     => ( ( ( size_s1893836384466666913term_a @ Cs )
          = ( size_s1893836384466666913term_a @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Bs ) )
             => ( P @ ( nth_Ground_gterm_a @ As @ I3 ) @ ( nth_Ground_gterm_a @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s1893836384466666913term_a @ Ds3 ) )
               => ( P @ ( nth_Ground_gterm_a @ Cs @ I3 ) @ ( nth_Ground_gterm_a @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_s1893836384466666913term_a @ ( append7798372865478268874term_a @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ As @ Cs ) @ I ) @ ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1030_P__as__bs__extend,axiom,
    ! [As: list_l4678906206682822203term_a,Bs: list_nat,Cs: list_l4678906206682822203term_a,Ds3: list_nat,P: list_Ground_gterm_a > nat > $o] :
      ( ( ( size_s5321119603959729319term_a @ As )
        = ( size_size_list_nat @ Bs ) )
     => ( ( ( size_s5321119603959729319term_a @ Cs )
          = ( size_size_list_nat @ Ds3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Bs ) )
             => ( P @ ( nth_li6172171122907299772term_a @ As @ I3 ) @ ( nth_nat @ Bs @ I3 ) ) )
         => ( ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ds3 ) )
               => ( P @ ( nth_li6172171122907299772term_a @ Cs @ I3 ) @ ( nth_nat @ Ds3 @ I3 ) ) )
           => ! [I: nat] :
                ( ( ord_less_nat @ I @ ( size_size_list_nat @ ( append_nat @ Bs @ Ds3 ) ) )
               => ( P @ ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ As @ Cs ) @ I ) @ ( nth_nat @ ( append_nat @ Bs @ Ds3 ) @ I ) ) ) ) ) ) ) ).

% P_as_bs_extend
thf(fact_1031_list__update__append1,axiom,
    ! [I4: nat,Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ord_less_nat @ I4 @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( list_u7950812632479372336ctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) @ I4 @ X3 )
        = ( append5238750768297430211ctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ I4 @ X3 ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_1032_list__update__append1,axiom,
    ! [I4: nat,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( list_u6582344683876525341term_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ I4 @ X3 )
        = ( append7798372865478268874term_a @ ( list_u6582344683876525341term_a @ Xs @ I4 @ X3 ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_1033_list__update__append1,axiom,
    ! [I4: nat,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( ord_less_nat @ I4 @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( list_u412135983231242147term_a @ ( append488786809011849168term_a @ Xs @ Ys ) @ I4 @ X3 )
        = ( append488786809011849168term_a @ ( list_u412135983231242147term_a @ Xs @ I4 @ X3 ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_1034_list__update__append1,axiom,
    ! [I4: nat,Xs: list_nat,Ys: list_nat,X3: nat] :
      ( ( ord_less_nat @ I4 @ ( size_size_list_nat @ Xs ) )
     => ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ I4 @ X3 )
        = ( append_nat @ ( list_update_nat @ Xs @ I4 @ X3 ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_1035_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_s962548663205356226ctxt_a @ Xs ) )
      = ( ? [X4: ground_gmctxt_a,Ys2: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( cons_Ground_gmctxt_a @ X4 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_s962548663205356226ctxt_a @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_1036_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_s1893836384466666913term_a @ Xs ) )
      = ( ? [X4: ground_gterm_a,Ys2: list_Ground_gterm_a] :
            ( ( Xs
              = ( cons_Ground_gterm_a @ X4 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_s1893836384466666913term_a @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_1037_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_s5321119603959729319term_a @ Xs ) )
      = ( ? [X4: list_Ground_gterm_a,Ys2: list_l4678906206682822203term_a] :
            ( ( Xs
              = ( cons_l7239566772969696491term_a @ X4 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_s5321119603959729319term_a @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_1038_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_size_list_nat @ Xs ) )
      = ( ? [X4: nat,Ys2: list_nat] :
            ( ( Xs
              = ( cons_nat @ X4 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_1039_Cons__listrel1E2,axiom,
    ! [Xs: list_Ground_gterm_a,Y3: ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ ( cons_Ground_gterm_a @ Y3 @ Ys ) ) @ ( listre9104501415344685838term_a @ R2 ) )
     => ( ! [X2: ground_gterm_a] :
            ( ( Xs
              = ( cons_Ground_gterm_a @ X2 @ Ys ) )
           => ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X2 @ Y3 ) @ R2 ) )
       => ~ ! [Zs3: list_Ground_gterm_a] :
              ( ( Xs
                = ( cons_Ground_gterm_a @ Y3 @ Zs3 ) )
             => ~ ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Zs3 @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) ) ) ) ) ).

% Cons_listrel1E2
thf(fact_1040_Cons__listrel1E2,axiom,
    ! [Xs: list_nat,Y3: nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ ( cons_nat @ Y3 @ Ys ) ) @ ( listrel1_nat @ R2 ) )
     => ( ! [X2: nat] :
            ( ( Xs
              = ( cons_nat @ X2 @ Ys ) )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X2 @ Y3 ) @ R2 ) )
       => ~ ! [Zs3: list_nat] :
              ( ( Xs
                = ( cons_nat @ Y3 @ Zs3 ) )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Zs3 @ Ys ) @ ( listrel1_nat @ R2 ) ) ) ) ) ).

% Cons_listrel1E2
thf(fact_1041_Cons__listrel1E1,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) )
     => ( ! [Y5: ground_gterm_a] :
            ( ( Ys
              = ( cons_Ground_gterm_a @ Y5 @ Xs ) )
           => ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y5 ) @ R2 ) )
       => ~ ! [Zs3: list_Ground_gterm_a] :
              ( ( Ys
                = ( cons_Ground_gterm_a @ X3 @ Zs3 ) )
             => ~ ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Zs3 ) @ ( listre9104501415344685838term_a @ R2 ) ) ) ) ) ).

% Cons_listrel1E1
thf(fact_1042_Cons__listrel1E1,axiom,
    ! [X3: nat,Xs: list_nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs ) @ Ys ) @ ( listrel1_nat @ R2 ) )
     => ( ! [Y5: nat] :
            ( ( Ys
              = ( cons_nat @ Y5 @ Xs ) )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y5 ) @ R2 ) )
       => ~ ! [Zs3: list_nat] :
              ( ( Ys
                = ( cons_nat @ X3 @ Zs3 ) )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Zs3 ) @ ( listrel1_nat @ R2 ) ) ) ) ) ).

% Cons_listrel1E1
thf(fact_1043_listrel1I1,axiom,
    ! [X3: ground_gterm_a,Y3: ground_gterm_a,R2: set_Pr8282532413760598727term_a,Xs: list_Ground_gterm_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ R2 )
     => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ ( cons_Ground_gterm_a @ Y3 @ Xs ) ) @ ( listre9104501415344685838term_a @ R2 ) ) ) ).

% listrel1I1
thf(fact_1044_listrel1I1,axiom,
    ! [X3: nat,Y3: nat,R2: set_Pr1261947904930325089at_nat,Xs: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R2 )
     => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y3 @ Xs ) ) @ ( listrel1_nat @ R2 ) ) ) ).

% listrel1I1
thf(fact_1045_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_1046_nth__append,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ N )
          = ( nth_Ground_gterm_a @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( nth_Ground_gterm_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ N )
          = ( nth_Ground_gterm_a @ Ys @ ( minus_minus_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_1047_nth__append,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ Ys ) @ N )
          = ( nth_li6172171122907299772term_a @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( nth_li6172171122907299772term_a @ ( append488786809011849168term_a @ Xs @ Ys ) @ N )
          = ( nth_li6172171122907299772term_a @ Ys @ ( minus_minus_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_1048_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_1049_list__update__append,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( list_u7950812632479372336ctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) @ N @ X3 )
          = ( append5238750768297430211ctxt_a @ ( list_u7950812632479372336ctxt_a @ Xs @ N @ X3 ) @ Ys ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( list_u7950812632479372336ctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) @ N @ X3 )
          = ( append5238750768297430211ctxt_a @ Xs @ ( list_u7950812632479372336ctxt_a @ Ys @ ( minus_minus_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) ) @ X3 ) ) ) ) ) ).

% list_update_append
thf(fact_1050_list__update__append,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( list_u6582344683876525341term_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ N @ X3 )
          = ( append7798372865478268874term_a @ ( list_u6582344683876525341term_a @ Xs @ N @ X3 ) @ Ys ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( list_u6582344683876525341term_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ N @ X3 )
          = ( append7798372865478268874term_a @ Xs @ ( list_u6582344683876525341term_a @ Ys @ ( minus_minus_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) ) @ X3 ) ) ) ) ) ).

% list_update_append
thf(fact_1051_list__update__append,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( list_u412135983231242147term_a @ ( append488786809011849168term_a @ Xs @ Ys ) @ N @ X3 )
          = ( append488786809011849168term_a @ ( list_u412135983231242147term_a @ Xs @ N @ X3 ) @ Ys ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( list_u412135983231242147term_a @ ( append488786809011849168term_a @ Xs @ Ys ) @ N @ X3 )
          = ( append488786809011849168term_a @ Xs @ ( list_u412135983231242147term_a @ Ys @ ( minus_minus_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) ) @ X3 ) ) ) ) ) ).

% list_update_append
thf(fact_1052_list__update__append,axiom,
    ! [N: nat,Xs: list_nat,Ys: list_nat,X3: nat] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ N @ X3 )
          = ( append_nat @ ( list_update_nat @ Xs @ N @ X3 ) @ Ys ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ N @ X3 )
          = ( append_nat @ Xs @ ( list_update_nat @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) @ X3 ) ) ) ) ) ).

% list_update_append
thf(fact_1053_list_Osize_I4_J,axiom,
    ! [X21: ground_gmctxt_a,X222: list_Ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ ( cons_Ground_gmctxt_a @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_s962548663205356226ctxt_a @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_1054_list_Osize_I4_J,axiom,
    ! [X21: ground_gterm_a,X222: list_Ground_gterm_a] :
      ( ( size_s1893836384466666913term_a @ ( cons_Ground_gterm_a @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_s1893836384466666913term_a @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_1055_list_Osize_I4_J,axiom,
    ! [X21: list_Ground_gterm_a,X222: list_l4678906206682822203term_a] :
      ( ( size_s5321119603959729319term_a @ ( cons_l7239566772969696491term_a @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_s5321119603959729319term_a @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_1056_list_Osize_I4_J,axiom,
    ! [X21: nat,X222: list_nat] :
      ( ( size_size_list_nat @ ( cons_nat @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_size_list_nat @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_1057_nth__equal__first__eq,axiom,
    ! [X3: produc1525979690750518759term_a,Xs: list_P2433084232546440685term_a,N: nat] :
      ( ~ ( member4351891425000572176term_a @ X3 @ ( set_Pr5405221470436175740term_a @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_s281034491502894169term_a @ Xs ) )
       => ( ( ( nth_Pr5943965302187034734term_a @ ( cons_P5554873272834883997term_a @ X3 @ Xs ) @ N )
            = X3 )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1058_nth__equal__first__eq,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a,N: nat] :
      ( ~ ( member3306386364193653941ctxt_a @ X3 @ ( set_Ground_gmctxt_a2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
       => ( ( ( nth_Ground_gmctxt_a @ ( cons_Ground_gmctxt_a @ X3 @ Xs ) @ N )
            = X3 )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1059_nth__equal__first__eq,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a,N: nat] :
      ( ~ ( member5261315023172567896term_a @ X3 @ ( set_Ground_gterm_a2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
       => ( ( ( nth_Ground_gterm_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ N )
            = X3 )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1060_nth__equal__first__eq,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a,N: nat] :
      ( ~ ( member5011579089780872286term_a @ X3 @ ( set_li7546925467519454922term_a @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
       => ( ( ( nth_li6172171122907299772term_a @ ( cons_l7239566772969696491term_a @ X3 @ Xs ) @ N )
            = X3 )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1061_nth__equal__first__eq,axiom,
    ! [X3: nat,Xs: list_nat,N: nat] :
      ( ~ ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( ( nth_nat @ ( cons_nat @ X3 @ Xs ) @ N )
            = X3 )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1062_Cons__less__Cons,axiom,
    ! [A: nat,X3: list_nat,B: nat,Y3: list_nat] :
      ( ( ord_less_list_nat @ ( cons_nat @ A @ X3 ) @ ( cons_nat @ B @ Y3 ) )
      = ( ( ord_less_nat @ A @ B )
        | ( ( A = B )
          & ( ord_less_list_nat @ X3 @ Y3 ) ) ) ) ).

% Cons_less_Cons
thf(fact_1063_Cons__le__Cons,axiom,
    ! [A: nat,X3: list_nat,B: nat,Y3: list_nat] :
      ( ( ord_less_eq_list_nat @ ( cons_nat @ A @ X3 ) @ ( cons_nat @ B @ Y3 ) )
      = ( ( ord_less_nat @ A @ B )
        | ( ( A = B )
          & ( ord_less_eq_list_nat @ X3 @ Y3 ) ) ) ) ).

% Cons_le_Cons
thf(fact_1064_Cons__lenlex__iff,axiom,
    ! [M2: ground_gmctxt_a,Ms: list_Ground_gmctxt_a,N: ground_gmctxt_a,Ns: list_Ground_gmctxt_a,R2: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ ( cons_Ground_gmctxt_a @ M2 @ Ms ) @ ( cons_Ground_gmctxt_a @ N @ Ns ) ) @ ( lenlex1266891566717636179ctxt_a @ R2 ) )
      = ( ( ord_less_nat @ ( size_s962548663205356226ctxt_a @ Ms ) @ ( size_s962548663205356226ctxt_a @ Ns ) )
        | ( ( ( size_s962548663205356226ctxt_a @ Ms )
            = ( size_s962548663205356226ctxt_a @ Ns ) )
          & ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ M2 @ N ) @ R2 ) )
        | ( ( M2 = N )
          & ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Ms @ Ns ) @ ( lenlex1266891566717636179ctxt_a @ R2 ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_1065_Cons__lenlex__iff,axiom,
    ! [M2: ground_gterm_a,Ms: list_Ground_gterm_a,N: ground_gterm_a,Ns: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( cons_Ground_gterm_a @ M2 @ Ms ) @ ( cons_Ground_gterm_a @ N @ Ns ) ) @ ( lenlex5309932337917522490term_a @ R2 ) )
      = ( ( ord_less_nat @ ( size_s1893836384466666913term_a @ Ms ) @ ( size_s1893836384466666913term_a @ Ns ) )
        | ( ( ( size_s1893836384466666913term_a @ Ms )
            = ( size_s1893836384466666913term_a @ Ns ) )
          & ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ M2 @ N ) @ R2 ) )
        | ( ( M2 = N )
          & ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Ms @ Ns ) @ ( lenlex5309932337917522490term_a @ R2 ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_1066_Cons__lenlex__iff,axiom,
    ! [M2: list_Ground_gterm_a,Ms: list_l4678906206682822203term_a,N: list_Ground_gterm_a,Ns: list_l4678906206682822203term_a,R2: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ ( cons_l7239566772969696491term_a @ M2 @ Ms ) @ ( cons_l7239566772969696491term_a @ N @ Ns ) ) @ ( lenlex7322141736387652160term_a @ R2 ) )
      = ( ( ord_less_nat @ ( size_s5321119603959729319term_a @ Ms ) @ ( size_s5321119603959729319term_a @ Ns ) )
        | ( ( ( size_s5321119603959729319term_a @ Ms )
            = ( size_s5321119603959729319term_a @ Ns ) )
          & ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ M2 @ N ) @ R2 ) )
        | ( ( M2 = N )
          & ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Ms @ Ns ) @ ( lenlex7322141736387652160term_a @ R2 ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_1067_Cons__lenlex__iff,axiom,
    ! [M2: nat,Ms: list_nat,N: nat,Ns: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ M2 @ Ms ) @ ( cons_nat @ N @ Ns ) ) @ ( lenlex_nat @ R2 ) )
      = ( ( ord_less_nat @ ( size_size_list_nat @ Ms ) @ ( size_size_list_nat @ Ns ) )
        | ( ( ( size_size_list_nat @ Ms )
            = ( size_size_list_nat @ Ns ) )
          & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ M2 @ N ) @ R2 ) )
        | ( ( M2 = N )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ms @ Ns ) @ ( lenlex_nat @ R2 ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_1068_lenlex__irreflexive,axiom,
    ! [R2: set_Pr8282532413760598727term_a,Xs: list_Ground_gterm_a] :
      ( ! [X2: ground_gterm_a] :
          ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X2 @ X2 ) @ R2 )
     => ~ ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Xs ) @ ( lenlex5309932337917522490term_a @ R2 ) ) ) ).

% lenlex_irreflexive
thf(fact_1069_lenlex__irreflexive,axiom,
    ! [R2: set_Pr1261947904930325089at_nat,Xs: list_nat] :
      ( ! [X2: nat] :
          ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X2 @ X2 ) @ R2 )
     => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Xs ) @ ( lenlex_nat @ R2 ) ) ) ).

% lenlex_irreflexive
thf(fact_1070_lenlex__length,axiom,
    ! [Ms: list_Ground_gmctxt_a,Ns: list_Ground_gmctxt_a,R2: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Ms @ Ns ) @ ( lenlex1266891566717636179ctxt_a @ R2 ) )
     => ( ord_less_eq_nat @ ( size_s962548663205356226ctxt_a @ Ms ) @ ( size_s962548663205356226ctxt_a @ Ns ) ) ) ).

% lenlex_length
thf(fact_1071_lenlex__length,axiom,
    ! [Ms: list_Ground_gterm_a,Ns: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Ms @ Ns ) @ ( lenlex5309932337917522490term_a @ R2 ) )
     => ( ord_less_eq_nat @ ( size_s1893836384466666913term_a @ Ms ) @ ( size_s1893836384466666913term_a @ Ns ) ) ) ).

% lenlex_length
thf(fact_1072_lenlex__length,axiom,
    ! [Ms: list_l4678906206682822203term_a,Ns: list_l4678906206682822203term_a,R2: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Ms @ Ns ) @ ( lenlex7322141736387652160term_a @ R2 ) )
     => ( ord_less_eq_nat @ ( size_s5321119603959729319term_a @ Ms ) @ ( size_s5321119603959729319term_a @ Ns ) ) ) ).

% lenlex_length
thf(fact_1073_lenlex__length,axiom,
    ! [Ms: list_nat,Ns: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ms @ Ns ) @ ( lenlex_nat @ R2 ) )
     => ( ord_less_eq_nat @ ( size_size_list_nat @ Ms ) @ ( size_size_list_nat @ Ns ) ) ) ).

% lenlex_length
thf(fact_1074_lenlex__append1,axiom,
    ! [Us2: list_Ground_gmctxt_a,Xs: list_Ground_gmctxt_a,R4: set_Pr8705490787052945405ctxt_a,Vs2: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Us2 @ Xs ) @ ( lenlex1266891566717636179ctxt_a @ R4 ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Vs2 )
          = ( size_s962548663205356226ctxt_a @ Ys ) )
       => ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ ( append5238750768297430211ctxt_a @ Us2 @ Vs2 ) @ ( append5238750768297430211ctxt_a @ Xs @ Ys ) ) @ ( lenlex1266891566717636179ctxt_a @ R4 ) ) ) ) ).

% lenlex_append1
thf(fact_1075_lenlex__append1,axiom,
    ! [Us2: list_Ground_gterm_a,Xs: list_Ground_gterm_a,R4: set_Pr8282532413760598727term_a,Vs2: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Us2 @ Xs ) @ ( lenlex5309932337917522490term_a @ R4 ) )
     => ( ( ( size_s1893836384466666913term_a @ Vs2 )
          = ( size_s1893836384466666913term_a @ Ys ) )
       => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( append7798372865478268874term_a @ Us2 @ Vs2 ) @ ( append7798372865478268874term_a @ Xs @ Ys ) ) @ ( lenlex5309932337917522490term_a @ R4 ) ) ) ) ).

% lenlex_append1
thf(fact_1076_lenlex__append1,axiom,
    ! [Us2: list_l4678906206682822203term_a,Xs: list_l4678906206682822203term_a,R4: set_Pr2711430308268100935term_a,Vs2: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Us2 @ Xs ) @ ( lenlex7322141736387652160term_a @ R4 ) )
     => ( ( ( size_s5321119603959729319term_a @ Vs2 )
          = ( size_s5321119603959729319term_a @ Ys ) )
       => ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ ( append488786809011849168term_a @ Us2 @ Vs2 ) @ ( append488786809011849168term_a @ Xs @ Ys ) ) @ ( lenlex7322141736387652160term_a @ R4 ) ) ) ) ).

% lenlex_append1
thf(fact_1077_lenlex__append1,axiom,
    ! [Us2: list_nat,Xs: list_nat,R4: set_Pr1261947904930325089at_nat,Vs2: list_nat,Ys: list_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Us2 @ Xs ) @ ( lenlex_nat @ R4 ) )
     => ( ( ( size_size_list_nat @ Vs2 )
          = ( size_size_list_nat @ Ys ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Us2 @ Vs2 ) @ ( append_nat @ Xs @ Ys ) ) @ ( lenlex_nat @ R4 ) ) ) ) ).

% lenlex_append1
thf(fact_1078_less__eq__list__code_I3_J,axiom,
    ! [X3: nat,Xs: list_nat,Y3: nat,Ys: list_nat] :
      ( ( ord_less_eq_list_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y3 @ Ys ) )
      = ( ( ord_less_nat @ X3 @ Y3 )
        | ( ( X3 = Y3 )
          & ( ord_less_eq_list_nat @ Xs @ Ys ) ) ) ) ).

% less_eq_list_code(3)
thf(fact_1079_less__list__code_I3_J,axiom,
    ! [X3: nat,Xs: list_nat,Y3: nat,Ys: list_nat] :
      ( ( ord_less_list_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y3 @ Ys ) )
      = ( ( ord_less_nat @ X3 @ Y3 )
        | ( ( X3 = Y3 )
          & ( ord_less_list_nat @ Xs @ Ys ) ) ) ) ).

% less_list_code(3)
thf(fact_1080_Cons__in__lex,axiom,
    ! [X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a,Y3: ground_gmctxt_a,Ys: list_Ground_gmctxt_a,R2: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ ( cons_Ground_gmctxt_a @ X3 @ Xs ) @ ( cons_Ground_gmctxt_a @ Y3 @ Ys ) ) @ ( lex_Ground_gmctxt_a @ R2 ) )
      = ( ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ X3 @ Y3 ) @ R2 )
          & ( ( size_s962548663205356226ctxt_a @ Xs )
            = ( size_s962548663205356226ctxt_a @ Ys ) ) )
        | ( ( X3 = Y3 )
          & ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs @ Ys ) @ ( lex_Ground_gmctxt_a @ R2 ) ) ) ) ) ).

% Cons_in_lex
thf(fact_1081_Cons__in__lex,axiom,
    ! [X3: ground_gterm_a,Xs: list_Ground_gterm_a,Y3: ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ ( cons_Ground_gterm_a @ Y3 @ Ys ) ) @ ( lex_Ground_gterm_a @ R2 ) )
      = ( ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ R2 )
          & ( ( size_s1893836384466666913term_a @ Xs )
            = ( size_s1893836384466666913term_a @ Ys ) ) )
        | ( ( X3 = Y3 )
          & ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( lex_Ground_gterm_a @ R2 ) ) ) ) ) ).

% Cons_in_lex
thf(fact_1082_Cons__in__lex,axiom,
    ! [X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a,Y3: list_Ground_gterm_a,Ys: list_l4678906206682822203term_a,R2: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ ( cons_l7239566772969696491term_a @ X3 @ Xs ) @ ( cons_l7239566772969696491term_a @ Y3 @ Ys ) ) @ ( lex_li1046265222154031007term_a @ R2 ) )
      = ( ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ X3 @ Y3 ) @ R2 )
          & ( ( size_s5321119603959729319term_a @ Xs )
            = ( size_s5321119603959729319term_a @ Ys ) ) )
        | ( ( X3 = Y3 )
          & ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs @ Ys ) @ ( lex_li1046265222154031007term_a @ R2 ) ) ) ) ) ).

% Cons_in_lex
thf(fact_1083_Cons__in__lex,axiom,
    ! [X3: nat,Xs: list_nat,Y3: nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y3 @ Ys ) ) @ ( lex_nat @ R2 ) )
      = ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R2 )
          & ( ( size_size_list_nat @ Xs )
            = ( size_size_list_nat @ Ys ) ) )
        | ( ( X3 = Y3 )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( lex_nat @ R2 ) ) ) ) ) ).

% Cons_in_lex
thf(fact_1084_rtrancl__list__conv,axiom,
    ! [S: ground_gmctxt_a,T: ground_gmctxt_a,R4: set_Pr8705490787052945405ctxt_a] :
      ( ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ S @ T ) @ ( transi2468631686036622171ctxt_a @ R4 ) )
      = ( ? [Ts3: list_Ground_gmctxt_a] :
            ( ( ( last_Ground_gmctxt_a @ ( cons_Ground_gmctxt_a @ S @ Ts3 ) )
              = T )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ts3 ) )
               => ( member461722496487281478ctxt_a @ ( produc6347872285926497493ctxt_a @ ( nth_Ground_gmctxt_a @ ( cons_Ground_gmctxt_a @ S @ Ts3 ) @ I2 ) @ ( nth_Ground_gmctxt_a @ ( cons_Ground_gmctxt_a @ S @ Ts3 ) @ ( suc @ I2 ) ) ) @ R4 ) ) ) ) ) ).

% rtrancl_list_conv
thf(fact_1085_rtrancl__list__conv,axiom,
    ! [S: ground_gterm_a,T: ground_gterm_a,R4: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( transi7074228654303032114term_a @ R4 ) )
      = ( ? [Ts3: list_Ground_gterm_a] :
            ( ( ( last_Ground_gterm_a @ ( cons_Ground_gterm_a @ S @ Ts3 ) )
              = T )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ts3 ) )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( nth_Ground_gterm_a @ ( cons_Ground_gterm_a @ S @ Ts3 ) @ I2 ) @ ( nth_Ground_gterm_a @ ( cons_Ground_gterm_a @ S @ Ts3 ) @ ( suc @ I2 ) ) ) @ R4 ) ) ) ) ) ).

% rtrancl_list_conv
thf(fact_1086_rtrancl__list__conv,axiom,
    ! [S: list_Ground_gterm_a,T: list_Ground_gterm_a,R4: set_Pr2711430308268100935term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ S @ T ) @ ( transi1606512847155760952term_a @ R4 ) )
      = ( ? [Ts3: list_l4678906206682822203term_a] :
            ( ( ( last_l3433759110902854356term_a @ ( cons_l7239566772969696491term_a @ S @ Ts3 ) )
              = T )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s5321119603959729319term_a @ Ts3 ) )
               => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( nth_li6172171122907299772term_a @ ( cons_l7239566772969696491term_a @ S @ Ts3 ) @ I2 ) @ ( nth_li6172171122907299772term_a @ ( cons_l7239566772969696491term_a @ S @ Ts3 ) @ ( suc @ I2 ) ) ) @ R4 ) ) ) ) ) ).

% rtrancl_list_conv
thf(fact_1087_rtrancl__list__conv,axiom,
    ! [S: nat,T: nat,R4: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ S @ T ) @ ( transi2905341329935302413cl_nat @ R4 ) )
      = ( ? [Ts3: list_nat] :
            ( ( ( last_nat @ ( cons_nat @ S @ Ts3 ) )
              = T )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ts3 ) )
               => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ ( cons_nat @ S @ Ts3 ) @ I2 ) @ ( nth_nat @ ( cons_nat @ S @ Ts3 ) @ ( suc @ I2 ) ) ) @ R4 ) ) ) ) ) ).

% rtrancl_list_conv
thf(fact_1088_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_1089_length__0__conv,axiom,
    ! [Xs: list_Ground_gterm_a] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Ground_gterm_a ) ) ).

% length_0_conv
thf(fact_1090_length__0__conv,axiom,
    ! [Xs: list_l4678906206682822203term_a] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_li1555898576520524091term_a ) ) ).

% length_0_conv
thf(fact_1091_length__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_nat ) ) ).

% length_0_conv
thf(fact_1092_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_1093_length__greater__0__conv,axiom,
    ! [Xs: list_Ground_gterm_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s1893836384466666913term_a @ Xs ) )
      = ( Xs != nil_Ground_gterm_a ) ) ).

% length_greater_0_conv
thf(fact_1094_length__greater__0__conv,axiom,
    ! [Xs: list_l4678906206682822203term_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s5321119603959729319term_a @ Xs ) )
      = ( Xs != nil_li1555898576520524091term_a ) ) ).

% length_greater_0_conv
thf(fact_1095_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_1096_rtrancl__listrel1__ConsI2,axiom,
    ! [X3: ground_gterm_a,Y3: ground_gterm_a,R2: set_Pr8282532413760598727term_a,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ ( transi7074228654303032114term_a @ R2 ) )
     => ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( transi1606512847155760952term_a @ ( listre9104501415344685838term_a @ R2 ) ) )
       => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( cons_Ground_gterm_a @ X3 @ Xs ) @ ( cons_Ground_gterm_a @ Y3 @ Ys ) ) @ ( transi1606512847155760952term_a @ ( listre9104501415344685838term_a @ R2 ) ) ) ) ) ).

% rtrancl_listrel1_ConsI2
thf(fact_1097_rtrancl__listrel1__ConsI2,axiom,
    ! [X3: nat,Y3: nat,R2: set_Pr1261947904930325089at_nat,Xs: list_nat,Ys: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ ( transi2905341329935302413cl_nat @ R2 ) )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R2 ) ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y3 @ Ys ) ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R2 ) ) ) ) ) ).

% rtrancl_listrel1_ConsI2
thf(fact_1098_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ws: list_nat,P: list_nat > list_nat > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_nat @ nil_nat )
           => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys4 ) )
                 => ( ( ( size_size_list_nat @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1099_list__induct4,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_nat,Zs: list_nat,Ws: list_nat,P: list_Ground_gmctxt_a > list_nat > list_nat > list_nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_Ground_gmctxt_a @ nil_nat @ nil_nat @ nil_nat )
           => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                    = ( size_size_list_nat @ Ys4 ) )
                 => ( ( ( size_size_list_nat @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1100_list__induct4,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_nat,Zs: list_nat,Ws: list_nat,P: list_Ground_gterm_a > list_nat > list_nat > list_nat > $o] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_Ground_gterm_a @ nil_nat @ nil_nat @ nil_nat )
           => ( ! [X2: ground_gterm_a,Xs3: list_Ground_gterm_a,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_s1893836384466666913term_a @ Xs3 )
                    = ( size_size_list_nat @ Ys4 ) )
                 => ( ( ( size_size_list_nat @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_Ground_gterm_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1101_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gmctxt_a,Zs: list_nat,Ws: list_nat,P: list_nat > list_Ground_gmctxt_a > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_Ground_gmctxt_a @ nil_nat @ nil_nat )
           => ( ! [X2: nat,Xs3: list_nat,Y5: ground_gmctxt_a,Ys4: list_Ground_gmctxt_a,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_s962548663205356226ctxt_a @ Ys4 ) )
                 => ( ( ( size_s962548663205356226ctxt_a @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_Ground_gmctxt_a @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1102_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gterm_a,Zs: list_nat,Ws: list_nat,P: list_nat > list_Ground_gterm_a > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( ( size_s1893836384466666913term_a @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_Ground_gterm_a @ nil_nat @ nil_nat )
           => ( ! [X2: nat,Xs3: list_nat,Y5: ground_gterm_a,Ys4: list_Ground_gterm_a,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_s1893836384466666913term_a @ Ys4 ) )
                 => ( ( ( size_s1893836384466666913term_a @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_Ground_gterm_a @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1103_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_Ground_gmctxt_a,Ws: list_nat,P: list_nat > list_nat > list_Ground_gmctxt_a > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s962548663205356226ctxt_a @ Zs ) )
       => ( ( ( size_s962548663205356226ctxt_a @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_Ground_gmctxt_a @ nil_nat )
           => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: ground_gmctxt_a,Zs3: list_Ground_gmctxt_a,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys4 ) )
                 => ( ( ( size_size_list_nat @ Ys4 )
                      = ( size_s962548663205356226ctxt_a @ Zs3 ) )
                   => ( ( ( size_s962548663205356226ctxt_a @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_Ground_gmctxt_a @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1104_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_Ground_gterm_a,Ws: list_nat,P: list_nat > list_nat > list_Ground_gterm_a > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s1893836384466666913term_a @ Zs ) )
       => ( ( ( size_s1893836384466666913term_a @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_Ground_gterm_a @ nil_nat )
           => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: ground_gterm_a,Zs3: list_Ground_gterm_a,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys4 ) )
                 => ( ( ( size_size_list_nat @ Ys4 )
                      = ( size_s1893836384466666913term_a @ Zs3 ) )
                   => ( ( ( size_s1893836384466666913term_a @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_Ground_gterm_a @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1105_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ws: list_Ground_gmctxt_a,P: list_nat > list_nat > list_nat > list_Ground_gmctxt_a > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_s962548663205356226ctxt_a @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_nat @ nil_Ground_gmctxt_a )
           => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat,W: ground_gmctxt_a,Ws2: list_Ground_gmctxt_a] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys4 ) )
                 => ( ( ( size_size_list_nat @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_s962548663205356226ctxt_a @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_Ground_gmctxt_a @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1106_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ws: list_Ground_gterm_a,P: list_nat > list_nat > list_nat > list_Ground_gterm_a > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_s1893836384466666913term_a @ Ws ) )
         => ( ( P @ nil_nat @ nil_nat @ nil_nat @ nil_Ground_gterm_a )
           => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat,W: ground_gterm_a,Ws2: list_Ground_gterm_a] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys4 ) )
                 => ( ( ( size_size_list_nat @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_s1893836384466666913term_a @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_Ground_gterm_a @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1107_list__induct4,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Zs: list_nat,Ws: list_nat,P: list_Ground_gmctxt_a > list_Ground_gmctxt_a > list_nat > list_nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_Ground_gmctxt_a @ nil_Ground_gmctxt_a @ nil_nat @ nil_nat )
           => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: ground_gmctxt_a,Ys4: list_Ground_gmctxt_a,Z3: nat,Zs3: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                    = ( size_s962548663205356226ctxt_a @ Ys4 ) )
                 => ( ( ( size_s962548663205356226ctxt_a @ Ys4 )
                      = ( size_size_list_nat @ Zs3 ) )
                   => ( ( ( size_size_list_nat @ Zs3 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs3 @ Ys4 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_Ground_gmctxt_a @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_1108_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_nat,P: list_nat > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_nat @ nil_nat @ nil_nat )
         => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_size_list_nat @ Ys4 ) )
               => ( ( ( size_size_list_nat @ Ys4 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1109_list__induct3,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_nat,Zs: list_nat,P: list_Ground_gmctxt_a > list_nat > list_nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_Ground_gmctxt_a @ nil_nat @ nil_nat )
         => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat] :
                ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                  = ( size_size_list_nat @ Ys4 ) )
               => ( ( ( size_size_list_nat @ Ys4 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1110_list__induct3,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_nat,Zs: list_nat,P: list_Ground_gterm_a > list_nat > list_nat > $o] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_Ground_gterm_a @ nil_nat @ nil_nat )
         => ( ! [X2: ground_gterm_a,Xs3: list_Ground_gterm_a,Y5: nat,Ys4: list_nat,Z3: nat,Zs3: list_nat] :
                ( ( ( size_s1893836384466666913term_a @ Xs3 )
                  = ( size_size_list_nat @ Ys4 ) )
               => ( ( ( size_size_list_nat @ Ys4 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_Ground_gterm_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1111_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gmctxt_a,Zs: list_nat,P: list_nat > list_Ground_gmctxt_a > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_nat @ nil_Ground_gmctxt_a @ nil_nat )
         => ( ! [X2: nat,Xs3: list_nat,Y5: ground_gmctxt_a,Ys4: list_Ground_gmctxt_a,Z3: nat,Zs3: list_nat] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_s962548663205356226ctxt_a @ Ys4 ) )
               => ( ( ( size_s962548663205356226ctxt_a @ Ys4 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_Ground_gmctxt_a @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1112_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gterm_a,Zs: list_nat,P: list_nat > list_Ground_gterm_a > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( ( size_s1893836384466666913term_a @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_nat @ nil_Ground_gterm_a @ nil_nat )
         => ( ! [X2: nat,Xs3: list_nat,Y5: ground_gterm_a,Ys4: list_Ground_gterm_a,Z3: nat,Zs3: list_nat] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_s1893836384466666913term_a @ Ys4 ) )
               => ( ( ( size_s1893836384466666913term_a @ Ys4 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_Ground_gterm_a @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1113_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_Ground_gmctxt_a,P: list_nat > list_nat > list_Ground_gmctxt_a > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s962548663205356226ctxt_a @ Zs ) )
       => ( ( P @ nil_nat @ nil_nat @ nil_Ground_gmctxt_a )
         => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: ground_gmctxt_a,Zs3: list_Ground_gmctxt_a] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_size_list_nat @ Ys4 ) )
               => ( ( ( size_size_list_nat @ Ys4 )
                    = ( size_s962548663205356226ctxt_a @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_Ground_gmctxt_a @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1114_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs: list_Ground_gterm_a,P: list_nat > list_nat > list_Ground_gterm_a > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s1893836384466666913term_a @ Zs ) )
       => ( ( P @ nil_nat @ nil_nat @ nil_Ground_gterm_a )
         => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat,Z3: ground_gterm_a,Zs3: list_Ground_gterm_a] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_size_list_nat @ Ys4 ) )
               => ( ( ( size_size_list_nat @ Ys4 )
                    = ( size_s1893836384466666913term_a @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_Ground_gterm_a @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1115_list__induct3,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,Zs: list_nat,P: list_Ground_gmctxt_a > list_Ground_gmctxt_a > list_nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_Ground_gmctxt_a @ nil_Ground_gmctxt_a @ nil_nat )
         => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: ground_gmctxt_a,Ys4: list_Ground_gmctxt_a,Z3: nat,Zs3: list_nat] :
                ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                  = ( size_s962548663205356226ctxt_a @ Ys4 ) )
               => ( ( ( size_s962548663205356226ctxt_a @ Ys4 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_Ground_gmctxt_a @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1116_list__induct3,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gterm_a,Zs: list_nat,P: list_Ground_gmctxt_a > list_Ground_gterm_a > list_nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( ( size_s1893836384466666913term_a @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( P @ nil_Ground_gmctxt_a @ nil_Ground_gterm_a @ nil_nat )
         => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: ground_gterm_a,Ys4: list_Ground_gterm_a,Z3: nat,Zs3: list_nat] :
                ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                  = ( size_s1893836384466666913term_a @ Ys4 ) )
               => ( ( ( size_s1893836384466666913term_a @ Ys4 )
                    = ( size_size_list_nat @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_Ground_gterm_a @ Y5 @ Ys4 ) @ ( cons_nat @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1117_list__induct3,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_nat,Zs: list_Ground_gmctxt_a,P: list_Ground_gmctxt_a > list_nat > list_Ground_gmctxt_a > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s962548663205356226ctxt_a @ Zs ) )
       => ( ( P @ nil_Ground_gmctxt_a @ nil_nat @ nil_Ground_gmctxt_a )
         => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: nat,Ys4: list_nat,Z3: ground_gmctxt_a,Zs3: list_Ground_gmctxt_a] :
                ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                  = ( size_size_list_nat @ Ys4 ) )
               => ( ( ( size_size_list_nat @ Ys4 )
                    = ( size_s962548663205356226ctxt_a @ Zs3 ) )
                 => ( ( P @ Xs3 @ Ys4 @ Zs3 )
                   => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) @ ( cons_Ground_gmctxt_a @ Z3 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_1118_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_nat,P: list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P @ nil_nat @ nil_nat )
       => ( ! [X2: nat,Xs3: list_nat,Y5: nat,Ys4: list_nat] :
              ( ( ( size_size_list_nat @ Xs3 )
                = ( size_size_list_nat @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1119_list__induct2,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_nat,P: list_Ground_gmctxt_a > list_nat > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P @ nil_Ground_gmctxt_a @ nil_nat )
       => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: nat,Ys4: list_nat] :
              ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                = ( size_size_list_nat @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1120_list__induct2,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_nat,P: list_Ground_gterm_a > list_nat > $o] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P @ nil_Ground_gterm_a @ nil_nat )
       => ( ! [X2: ground_gterm_a,Xs3: list_Ground_gterm_a,Y5: nat,Ys4: list_nat] :
              ( ( ( size_s1893836384466666913term_a @ Xs3 )
                = ( size_size_list_nat @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_Ground_gterm_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1121_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gmctxt_a,P: list_nat > list_Ground_gmctxt_a > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( P @ nil_nat @ nil_Ground_gmctxt_a )
       => ( ! [X2: nat,Xs3: list_nat,Y5: ground_gmctxt_a,Ys4: list_Ground_gmctxt_a] :
              ( ( ( size_size_list_nat @ Xs3 )
                = ( size_s962548663205356226ctxt_a @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_Ground_gmctxt_a @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1122_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gterm_a,P: list_nat > list_Ground_gterm_a > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( P @ nil_nat @ nil_Ground_gterm_a )
       => ( ! [X2: nat,Xs3: list_nat,Y5: ground_gterm_a,Ys4: list_Ground_gterm_a] :
              ( ( ( size_size_list_nat @ Xs3 )
                = ( size_s1893836384466666913term_a @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_nat @ X2 @ Xs3 ) @ ( cons_Ground_gterm_a @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1123_list__induct2,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,P: list_Ground_gmctxt_a > list_Ground_gmctxt_a > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( P @ nil_Ground_gmctxt_a @ nil_Ground_gmctxt_a )
       => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: ground_gmctxt_a,Ys4: list_Ground_gmctxt_a] :
              ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                = ( size_s962548663205356226ctxt_a @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_Ground_gmctxt_a @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1124_list__induct2,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gterm_a,P: list_Ground_gmctxt_a > list_Ground_gterm_a > $o] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( P @ nil_Ground_gmctxt_a @ nil_Ground_gterm_a )
       => ( ! [X2: ground_gmctxt_a,Xs3: list_Ground_gmctxt_a,Y5: ground_gterm_a,Ys4: list_Ground_gterm_a] :
              ( ( ( size_s962548663205356226ctxt_a @ Xs3 )
                = ( size_s1893836384466666913term_a @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_Ground_gmctxt_a @ X2 @ Xs3 ) @ ( cons_Ground_gterm_a @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1125_list__induct2,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gmctxt_a,P: list_Ground_gterm_a > list_Ground_gmctxt_a > $o] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( P @ nil_Ground_gterm_a @ nil_Ground_gmctxt_a )
       => ( ! [X2: ground_gterm_a,Xs3: list_Ground_gterm_a,Y5: ground_gmctxt_a,Ys4: list_Ground_gmctxt_a] :
              ( ( ( size_s1893836384466666913term_a @ Xs3 )
                = ( size_s962548663205356226ctxt_a @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_Ground_gterm_a @ X2 @ Xs3 ) @ ( cons_Ground_gmctxt_a @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1126_list__induct2,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,P: list_Ground_gterm_a > list_Ground_gterm_a > $o] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( P @ nil_Ground_gterm_a @ nil_Ground_gterm_a )
       => ( ! [X2: ground_gterm_a,Xs3: list_Ground_gterm_a,Y5: ground_gterm_a,Ys4: list_Ground_gterm_a] :
              ( ( ( size_s1893836384466666913term_a @ Xs3 )
                = ( size_s1893836384466666913term_a @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_Ground_gterm_a @ X2 @ Xs3 ) @ ( cons_Ground_gterm_a @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1127_list__induct2,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_nat,P: list_l4678906206682822203term_a > list_nat > $o] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P @ nil_li1555898576520524091term_a @ nil_nat )
       => ( ! [X2: list_Ground_gterm_a,Xs3: list_l4678906206682822203term_a,Y5: nat,Ys4: list_nat] :
              ( ( ( size_s5321119603959729319term_a @ Xs3 )
                = ( size_size_list_nat @ Ys4 ) )
             => ( ( P @ Xs3 @ Ys4 )
               => ( P @ ( cons_l7239566772969696491term_a @ X2 @ Xs3 ) @ ( cons_nat @ Y5 @ Ys4 ) ) ) )
         => ( P @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_1128_list_Osize_I3_J,axiom,
    ( ( size_s962548663205356226ctxt_a @ nil_Ground_gmctxt_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1129_list_Osize_I3_J,axiom,
    ( ( size_s1893836384466666913term_a @ nil_Ground_gterm_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1130_list_Osize_I3_J,axiom,
    ( ( size_s5321119603959729319term_a @ nil_li1555898576520524091term_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1131_list_Osize_I3_J,axiom,
    ( ( size_size_list_nat @ nil_nat )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1132_last__in__set,axiom,
    ! [As: list_P2433084232546440685term_a] :
      ( ( As != nil_Pr1701271659634034157term_a )
     => ( member4351891425000572176term_a @ ( last_P5697554543439633286term_a @ As ) @ ( set_Pr5405221470436175740term_a @ As ) ) ) ).

% last_in_set
thf(fact_1133_last__in__set,axiom,
    ! [As: list_Ground_gmctxt_a] :
      ( ( As != nil_Ground_gmctxt_a )
     => ( member3306386364193653941ctxt_a @ ( last_Ground_gmctxt_a @ As ) @ ( set_Ground_gmctxt_a2 @ As ) ) ) ).

% last_in_set
thf(fact_1134_chain__imp__rtrancl,axiom,
    ! [S2: nat > ground_gterm_a,R2: set_Pr8282532413760598727term_a,I4: nat,J3: nat] :
      ( ! [I3: nat] : ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( S2 @ I3 ) @ ( S2 @ ( suc @ I3 ) ) ) @ R2 )
     => ( ( ord_less_eq_nat @ I4 @ J3 )
       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( S2 @ I4 ) @ ( S2 @ J3 ) ) @ ( transi7074228654303032114term_a @ R2 ) ) ) ) ).

% chain_imp_rtrancl
thf(fact_1135_chain__imp__rtrancl,axiom,
    ! [S2: nat > nat,R2: set_Pr1261947904930325089at_nat,I4: nat,J3: nat] :
      ( ! [I3: nat] : ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S2 @ I3 ) @ ( S2 @ ( suc @ I3 ) ) ) @ R2 )
     => ( ( ord_less_eq_nat @ I4 @ J3 )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( S2 @ I4 ) @ ( S2 @ J3 ) ) @ ( transi2905341329935302413cl_nat @ R2 ) ) ) ) ).

% chain_imp_rtrancl
thf(fact_1136_rtrancl__listrel1__eq__len,axiom,
    ! [X3: list_Ground_gmctxt_a,Y3: list_Ground_gmctxt_a,R2: set_Pr8705490787052945405ctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ X3 @ Y3 ) @ ( transi5398267936246972139ctxt_a @ ( listre839271074516595327ctxt_a @ R2 ) ) )
     => ( ( size_s962548663205356226ctxt_a @ X3 )
        = ( size_s962548663205356226ctxt_a @ Y3 ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1137_rtrancl__listrel1__eq__len,axiom,
    ! [X3: list_Ground_gterm_a,Y3: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ X3 @ Y3 ) @ ( transi1606512847155760952term_a @ ( listre9104501415344685838term_a @ R2 ) ) )
     => ( ( size_s1893836384466666913term_a @ X3 )
        = ( size_s1893836384466666913term_a @ Y3 ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1138_rtrancl__listrel1__eq__len,axiom,
    ! [X3: list_l4678906206682822203term_a,Y3: list_l4678906206682822203term_a,R2: set_Pr2711430308268100935term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ X3 @ Y3 ) @ ( transi364289950432583358term_a @ ( listre1188387051607982356term_a @ R2 ) ) )
     => ( ( size_s5321119603959729319term_a @ X3 )
        = ( size_s5321119603959729319term_a @ Y3 ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1139_rtrancl__listrel1__eq__len,axiom,
    ! [X3: list_nat,Y3: list_nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ X3 @ Y3 ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R2 ) ) )
     => ( ( size_size_list_nat @ X3 )
        = ( size_size_list_nat @ Y3 ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1140_same__length__different,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a] :
      ( ( Xs != Ys )
     => ( ( ( size_s962548663205356226ctxt_a @ Xs )
          = ( size_s962548663205356226ctxt_a @ Ys ) )
       => ? [Pre: list_Ground_gmctxt_a,X2: ground_gmctxt_a,Xs5: list_Ground_gmctxt_a,Y5: ground_gmctxt_a,Ys6: list_Ground_gmctxt_a] :
            ( ( X2 != Y5 )
            & ( Xs
              = ( append5238750768297430211ctxt_a @ Pre @ ( append5238750768297430211ctxt_a @ ( cons_Ground_gmctxt_a @ X2 @ nil_Ground_gmctxt_a ) @ Xs5 ) ) )
            & ( Ys
              = ( append5238750768297430211ctxt_a @ Pre @ ( append5238750768297430211ctxt_a @ ( cons_Ground_gmctxt_a @ Y5 @ nil_Ground_gmctxt_a ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_1141_same__length__different,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a] :
      ( ( Xs != Ys )
     => ( ( ( size_s1893836384466666913term_a @ Xs )
          = ( size_s1893836384466666913term_a @ Ys ) )
       => ? [Pre: list_Ground_gterm_a,X2: ground_gterm_a,Xs5: list_Ground_gterm_a,Y5: ground_gterm_a,Ys6: list_Ground_gterm_a] :
            ( ( X2 != Y5 )
            & ( Xs
              = ( append7798372865478268874term_a @ Pre @ ( append7798372865478268874term_a @ ( cons_Ground_gterm_a @ X2 @ nil_Ground_gterm_a ) @ Xs5 ) ) )
            & ( Ys
              = ( append7798372865478268874term_a @ Pre @ ( append7798372865478268874term_a @ ( cons_Ground_gterm_a @ Y5 @ nil_Ground_gterm_a ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_1142_same__length__different,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a] :
      ( ( Xs != Ys )
     => ( ( ( size_s5321119603959729319term_a @ Xs )
          = ( size_s5321119603959729319term_a @ Ys ) )
       => ? [Pre: list_l4678906206682822203term_a,X2: list_Ground_gterm_a,Xs5: list_l4678906206682822203term_a,Y5: list_Ground_gterm_a,Ys6: list_l4678906206682822203term_a] :
            ( ( X2 != Y5 )
            & ( Xs
              = ( append488786809011849168term_a @ Pre @ ( append488786809011849168term_a @ ( cons_l7239566772969696491term_a @ X2 @ nil_li1555898576520524091term_a ) @ Xs5 ) ) )
            & ( Ys
              = ( append488786809011849168term_a @ Pre @ ( append488786809011849168term_a @ ( cons_l7239566772969696491term_a @ Y5 @ nil_li1555898576520524091term_a ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_1143_same__length__different,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs != Ys )
     => ( ( ( size_size_list_nat @ Xs )
          = ( size_size_list_nat @ Ys ) )
       => ? [Pre: list_nat,X2: nat,Xs5: list_nat,Y5: nat,Ys6: list_nat] :
            ( ( X2 != Y5 )
            & ( Xs
              = ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ X2 @ nil_nat ) @ Xs5 ) ) )
            & ( Ys
              = ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ Y5 @ nil_nat ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_1144_rtrancl__imp__seq,axiom,
    ! [X3: ground_gterm_a,Y3: ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ ( transi7074228654303032114term_a @ R2 ) )
     => ? [F2: nat > ground_gterm_a,N3: nat] :
          ( ( ( F2 @ zero_zero_nat )
            = X3 )
          & ( ( F2 @ N3 )
            = Y3 )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ N3 )
             => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( F2 @ I ) @ ( F2 @ ( suc @ I ) ) ) @ R2 ) ) ) ) ).

% rtrancl_imp_seq
thf(fact_1145_rtrancl__imp__seq,axiom,
    ! [X3: nat,Y3: nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ ( transi2905341329935302413cl_nat @ R2 ) )
     => ? [F2: nat > nat,N3: nat] :
          ( ( ( F2 @ zero_zero_nat )
            = X3 )
          & ( ( F2 @ N3 )
            = Y3 )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ N3 )
             => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( F2 @ I ) @ ( F2 @ ( suc @ I ) ) ) @ R2 ) ) ) ) ).

% rtrancl_imp_seq
thf(fact_1146_rtrancl__fun__conv,axiom,
    ! [S: ground_gterm_a,T: ground_gterm_a,R4: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ S @ T ) @ ( transi7074228654303032114term_a @ R4 ) )
      = ( ? [F3: nat > ground_gterm_a,N2: nat] :
            ( ( ( F3 @ zero_zero_nat )
              = S )
            & ( ( F3 @ N2 )
              = T )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ N2 )
               => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ ( F3 @ I2 ) @ ( F3 @ ( suc @ I2 ) ) ) @ R4 ) ) ) ) ) ).

% rtrancl_fun_conv
thf(fact_1147_rtrancl__fun__conv,axiom,
    ! [S: nat,T: nat,R4: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ S @ T ) @ ( transi2905341329935302413cl_nat @ R4 ) )
      = ( ? [F3: nat > nat,N2: nat] :
            ( ( ( F3 @ zero_zero_nat )
              = S )
            & ( ( F3 @ N2 )
              = T )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ N2 )
               => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( F3 @ I2 ) @ ( F3 @ ( suc @ I2 ) ) ) @ R4 ) ) ) ) ) ).

% rtrancl_fun_conv
thf(fact_1148_lex__append__leftD,axiom,
    ! [R2: set_Pr8282532413760598727term_a,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,Zs: list_Ground_gterm_a] :
      ( ! [X2: ground_gterm_a] :
          ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X2 @ X2 ) @ R2 )
     => ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ ( append7798372865478268874term_a @ Xs @ Zs ) ) @ ( lex_Ground_gterm_a @ R2 ) )
       => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Ys @ Zs ) @ ( lex_Ground_gterm_a @ R2 ) ) ) ) ).

% lex_append_leftD
thf(fact_1149_lex__append__leftD,axiom,
    ! [R2: set_Pr1261947904930325089at_nat,Xs: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ! [X2: nat] :
          ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X2 @ X2 ) @ R2 )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs @ Ys ) @ ( append_nat @ Xs @ Zs ) ) @ ( lex_nat @ R2 ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ys @ Zs ) @ ( lex_nat @ R2 ) ) ) ) ).

% lex_append_leftD
thf(fact_1150_lex__append__left__iff,axiom,
    ! [R2: set_Pr8282532413760598727term_a,Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,Zs: list_Ground_gterm_a] :
      ( ! [X2: ground_gterm_a] :
          ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X2 @ X2 ) @ R2 )
     => ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( append7798372865478268874term_a @ Xs @ Ys ) @ ( append7798372865478268874term_a @ Xs @ Zs ) ) @ ( lex_Ground_gterm_a @ R2 ) )
        = ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Ys @ Zs ) @ ( lex_Ground_gterm_a @ R2 ) ) ) ) ).

% lex_append_left_iff
thf(fact_1151_lex__append__left__iff,axiom,
    ! [R2: set_Pr1261947904930325089at_nat,Xs: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ! [X2: nat] :
          ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X2 @ X2 ) @ R2 )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs @ Ys ) @ ( append_nat @ Xs @ Zs ) ) @ ( lex_nat @ R2 ) )
        = ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ys @ Zs ) @ ( lex_nat @ R2 ) ) ) ) ).

% lex_append_left_iff
thf(fact_1152_lex__append__rightI,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,R2: set_Pr8705490787052945405ctxt_a,Vs2: list_Ground_gmctxt_a,Us2: list_Ground_gmctxt_a] :
      ( ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ Xs @ Ys ) @ ( lex_Ground_gmctxt_a @ R2 ) )
     => ( ( ( size_s962548663205356226ctxt_a @ Vs2 )
          = ( size_s962548663205356226ctxt_a @ Us2 ) )
       => ( member6597889099603620838ctxt_a @ ( produc4772472886035905909ctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ Us2 ) @ ( append5238750768297430211ctxt_a @ Ys @ Vs2 ) ) @ ( lex_Ground_gmctxt_a @ R2 ) ) ) ) ).

% lex_append_rightI
thf(fact_1153_lex__append__rightI,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,R2: set_Pr8282532413760598727term_a,Vs2: list_Ground_gterm_a,Us2: list_Ground_gterm_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( lex_Ground_gterm_a @ R2 ) )
     => ( ( ( size_s1893836384466666913term_a @ Vs2 )
          = ( size_s1893836384466666913term_a @ Us2 ) )
       => ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( append7798372865478268874term_a @ Xs @ Us2 ) @ ( append7798372865478268874term_a @ Ys @ Vs2 ) ) @ ( lex_Ground_gterm_a @ R2 ) ) ) ) ).

% lex_append_rightI
thf(fact_1154_lex__append__rightI,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_l4678906206682822203term_a,R2: set_Pr2711430308268100935term_a,Vs2: list_l4678906206682822203term_a,Us2: list_l4678906206682822203term_a] :
      ( ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ Xs @ Ys ) @ ( lex_li1046265222154031007term_a @ R2 ) )
     => ( ( ( size_s5321119603959729319term_a @ Vs2 )
          = ( size_s5321119603959729319term_a @ Us2 ) )
       => ( member3396161095182428176term_a @ ( produc6239833450114252375term_a @ ( append488786809011849168term_a @ Xs @ Us2 ) @ ( append488786809011849168term_a @ Ys @ Vs2 ) ) @ ( lex_li1046265222154031007term_a @ R2 ) ) ) ) ).

% lex_append_rightI
thf(fact_1155_lex__append__rightI,axiom,
    ! [Xs: list_nat,Ys: list_nat,R2: set_Pr1261947904930325089at_nat,Vs2: list_nat,Us2: list_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( lex_nat @ R2 ) )
     => ( ( ( size_size_list_nat @ Vs2 )
          = ( size_size_list_nat @ Us2 ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs @ Us2 ) @ ( append_nat @ Ys @ Vs2 ) ) @ ( lex_nat @ R2 ) ) ) ) ).

% lex_append_rightI
thf(fact_1156_length__append__singleton,axiom,
    ! [Xs: list_Ground_gmctxt_a,X3: ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ ( append5238750768297430211ctxt_a @ Xs @ ( cons_Ground_gmctxt_a @ X3 @ nil_Ground_gmctxt_a ) ) )
      = ( suc @ ( size_s962548663205356226ctxt_a @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1157_length__append__singleton,axiom,
    ! [Xs: list_Ground_gterm_a,X3: ground_gterm_a] :
      ( ( size_s1893836384466666913term_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ X3 @ nil_Ground_gterm_a ) ) )
      = ( suc @ ( size_s1893836384466666913term_a @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1158_length__append__singleton,axiom,
    ! [Xs: list_l4678906206682822203term_a,X3: list_Ground_gterm_a] :
      ( ( size_s5321119603959729319term_a @ ( append488786809011849168term_a @ Xs @ ( cons_l7239566772969696491term_a @ X3 @ nil_li1555898576520524091term_a ) ) )
      = ( suc @ ( size_s5321119603959729319term_a @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1159_length__append__singleton,axiom,
    ! [Xs: list_nat,X3: nat] :
      ( ( size_size_list_nat @ ( append_nat @ Xs @ ( cons_nat @ X3 @ nil_nat ) ) )
      = ( suc @ ( size_size_list_nat @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1160_length__Suc__conv__rev,axiom,
    ! [Xs: list_Ground_gmctxt_a,N: nat] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: ground_gmctxt_a,Ys2: list_Ground_gmctxt_a] :
            ( ( Xs
              = ( append5238750768297430211ctxt_a @ Ys2 @ ( cons_Ground_gmctxt_a @ Y4 @ nil_Ground_gmctxt_a ) ) )
            & ( ( size_s962548663205356226ctxt_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1161_length__Suc__conv__rev,axiom,
    ! [Xs: list_Ground_gterm_a,N: nat] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: ground_gterm_a,Ys2: list_Ground_gterm_a] :
            ( ( Xs
              = ( append7798372865478268874term_a @ Ys2 @ ( cons_Ground_gterm_a @ Y4 @ nil_Ground_gterm_a ) ) )
            & ( ( size_s1893836384466666913term_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1162_length__Suc__conv__rev,axiom,
    ! [Xs: list_l4678906206682822203term_a,N: nat] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: list_Ground_gterm_a,Ys2: list_l4678906206682822203term_a] :
            ( ( Xs
              = ( append488786809011849168term_a @ Ys2 @ ( cons_l7239566772969696491term_a @ Y4 @ nil_li1555898576520524091term_a ) ) )
            & ( ( size_s5321119603959729319term_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1163_length__Suc__conv__rev,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( suc @ N ) )
      = ( ? [Y4: nat,Ys2: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ Y4 @ nil_nat ) ) )
            & ( ( size_size_list_nat @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1164_snoc__listrel1__snoc__iff,axiom,
    ! [Xs: list_Ground_gterm_a,X3: ground_gterm_a,Ys: list_Ground_gterm_a,Y3: ground_gterm_a,R2: set_Pr8282532413760598727term_a] :
      ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ ( append7798372865478268874term_a @ Xs @ ( cons_Ground_gterm_a @ X3 @ nil_Ground_gterm_a ) ) @ ( append7798372865478268874term_a @ Ys @ ( cons_Ground_gterm_a @ Y3 @ nil_Ground_gterm_a ) ) ) @ ( listre9104501415344685838term_a @ R2 ) )
      = ( ( ( member3518026002450860944term_a @ ( produc6818685258692100823term_a @ Xs @ Ys ) @ ( listre9104501415344685838term_a @ R2 ) )
          & ( X3 = Y3 ) )
        | ( ( Xs = Ys )
          & ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ R2 ) ) ) ) ).

% snoc_listrel1_snoc_iff
thf(fact_1165_snoc__listrel1__snoc__iff,axiom,
    ! [Xs: list_nat,X3: nat,Ys: list_nat,Y3: nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs @ ( cons_nat @ X3 @ nil_nat ) ) @ ( append_nat @ Ys @ ( cons_nat @ Y3 @ nil_nat ) ) ) @ ( listrel1_nat @ R2 ) )
      = ( ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R2 ) )
          & ( X3 = Y3 ) )
        | ( ( Xs = Ys )
          & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R2 ) ) ) ) ).

% snoc_listrel1_snoc_iff
thf(fact_1166_concat__index__split_Oelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_l1578326660578982846ctxt_a,Y3: product_prod_nat_nat] :
      ( ( ( concat7860870432694265376ctxt_a @ X3 @ Xa )
        = Y3 )
     => ( ! [O_idx2: nat,I_idx2: nat] :
            ( ( X3
              = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
           => ! [X2: list_Ground_gmctxt_a,Xs3: list_l1578326660578982846ctxt_a] :
                ( ( Xa
                  = ( cons_l2925462854866423288ctxt_a @ X2 @ Xs3 ) )
               => ~ ( ( ( ord_less_nat @ I_idx2 @ ( size_s962548663205356226ctxt_a @ X2 ) )
                     => ( Y3
                        = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                    & ( ~ ( ord_less_nat @ I_idx2 @ ( size_s962548663205356226ctxt_a @ X2 ) )
                     => ( Y3
                        = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_s962548663205356226ctxt_a @ X2 ) ) ) @ Xs3 ) ) ) ) ) )
       => ~ ( ( Xa = nil_li5566661803063418280ctxt_a )
           => ( Y3 != undefi3946296454836805481at_nat ) ) ) ) ).

% concat_index_split.elims
thf(fact_1167_concat__index__split_Oelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_l4678906206682822203term_a,Y3: product_prod_nat_nat] :
      ( ( ( concat4415380251885098797term_a @ X3 @ Xa )
        = Y3 )
     => ( ! [O_idx2: nat,I_idx2: nat] :
            ( ( X3
              = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
           => ! [X2: list_Ground_gterm_a,Xs3: list_l4678906206682822203term_a] :
                ( ( Xa
                  = ( cons_l7239566772969696491term_a @ X2 @ Xs3 ) )
               => ~ ( ( ( ord_less_nat @ I_idx2 @ ( size_s1893836384466666913term_a @ X2 ) )
                     => ( Y3
                        = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                    & ( ~ ( ord_less_nat @ I_idx2 @ ( size_s1893836384466666913term_a @ X2 ) )
                     => ( Y3
                        = ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_s1893836384466666913term_a @ X2 ) ) ) @ Xs3 ) ) ) ) ) )
       => ~ ( ( Xa = nil_li1555898576520524091term_a )
           => ( Y3 != undefi3946296454836805481at_nat ) ) ) ) ).

% concat_index_split.elims
thf(fact_1168_concat__index__split_Oelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_l5172476077732501185term_a,Y3: product_prod_nat_nat] :
      ( ( ( concat5187525703047707059term_a @ X3 @ Xa )
        = Y3 )
     => ( ! [O_idx2: nat,I_idx2: nat] :
            ( ( X3
              = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
           => ! [X2: list_l4678906206682822203term_a,Xs3: list_l5172476077732501185term_a] :
                ( ( Xa
                  = ( cons_l1075082019044443889term_a @ X2 @ Xs3 ) )
               => ~ ( ( ( ord_less_nat @ I_idx2 @ ( size_s5321119603959729319term_a @ X2 ) )
                     => ( Y3
                        = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                    & ( ~ ( ord_less_nat @ I_idx2 @ ( size_s5321119603959729319term_a @ X2 ) )
                     => ( Y3
                        = ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_s5321119603959729319term_a @ X2 ) ) ) @ Xs3 ) ) ) ) ) )
       => ~ ( ( Xa = nil_li3774524310483215169term_a )
           => ( Y3 != undefi3946296454836805481at_nat ) ) ) ) ).

% concat_index_split.elims
thf(fact_1169_concat__index__split_Oelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_list_nat,Y3: product_prod_nat_nat] :
      ( ( ( concat5568775588498683858it_nat @ X3 @ Xa )
        = Y3 )
     => ( ! [O_idx2: nat,I_idx2: nat] :
            ( ( X3
              = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
           => ! [X2: list_nat,Xs3: list_list_nat] :
                ( ( Xa
                  = ( cons_list_nat @ X2 @ Xs3 ) )
               => ~ ( ( ( ord_less_nat @ I_idx2 @ ( size_size_list_nat @ X2 ) )
                     => ( Y3
                        = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                    & ( ~ ( ord_less_nat @ I_idx2 @ ( size_size_list_nat @ X2 ) )
                     => ( Y3
                        = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_size_list_nat @ X2 ) ) ) @ Xs3 ) ) ) ) ) )
       => ~ ( ( Xa = nil_list_nat )
           => ( Y3 != undefi3946296454836805481at_nat ) ) ) ) ).

% concat_index_split.elims
thf(fact_1170_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_1171_length__n__lists__elem,axiom,
    ! [Ys: list_Ground_gmctxt_a,N: nat,Xs: list_Ground_gmctxt_a] :
      ( ( member2714729351964853061ctxt_a @ Ys @ ( set_li3057194059929822169ctxt_a @ ( n_list4828808560468397712ctxt_a @ N @ Xs ) ) )
     => ( ( size_s962548663205356226ctxt_a @ Ys )
        = N ) ) ).

% length_n_lists_elem
thf(fact_1172_length__n__lists__elem,axiom,
    ! [Ys: list_Ground_gterm_a,N: nat,Xs: list_Ground_gterm_a] :
      ( ( member5011579089780872286term_a @ Ys @ ( set_li7546925467519454922term_a @ ( n_list1804630026390934205term_a @ N @ Xs ) ) )
     => ( ( size_s1893836384466666913term_a @ Ys )
        = N ) ) ).

% length_n_lists_elem
thf(fact_1173_length__n__lists__elem,axiom,
    ! [Ys: list_l4678906206682822203term_a,N: nat,Xs: list_l4678906206682822203term_a] :
      ( ( member6060894471016913124term_a @ Ys @ ( set_li8466561177209531728term_a @ ( n_list8386693656151141699term_a @ N @ Xs ) ) )
     => ( ( size_s5321119603959729319term_a @ Ys )
        = N ) ) ).

% length_n_lists_elem
thf(fact_1174_length__n__lists__elem,axiom,
    ! [Ys: list_nat,N: nat,Xs: list_nat] :
      ( ( member_list_nat @ Ys @ ( set_list_nat2 @ ( n_lists_nat @ N @ Xs ) ) )
     => ( ( size_size_list_nat @ Ys )
        = N ) ) ).

% length_n_lists_elem
thf(fact_1175_fill__gholes__gmctxt_Osimps_I2_J,axiom,
    ! [T: ground_gmctxt_a] :
      ( ( ground2530127064035342964ctxt_a @ ground_GMHole_a @ ( cons_Ground_gmctxt_a @ T @ nil_Ground_gmctxt_a ) )
      = T ) ).

% fill_gholes_gmctxt.simps(2)
thf(fact_1176_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_1177_sup__gmctxt__args_Osimps_I1_J,axiom,
    ! [D: ground_gmctxt_a] :
      ( ( ground7778985915038999110args_a @ ground_GMHole_a @ D )
      = ( cons_Ground_gmctxt_a @ D @ nil_Ground_gmctxt_a ) ) ).

% sup_gmctxt_args.simps(1)
thf(fact_1178_eqgf__GMHoleE,axiom,
    ! [T: ground_gterm_a,Ss2: list_Ground_gterm_a] :
      ( ( ground_eq_gfill_a @ T @ ( produc4720362732934906942term_a @ ground_GMHole_a @ Ss2 ) )
     => ( Ss2
        = ( cons_Ground_gterm_a @ T @ nil_Ground_gterm_a ) ) ) ).

% eqgf_GMHoleE
thf(fact_1179_gmctxt__subtgm__at__fill__args__empty__pos,axiom,
    ! [C: ground_gmctxt_a,Ts2: list_Ground_gmctxt_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s962548663205356226ctxt_a @ Ts2 ) )
     => ( ( ground6121243438039047541ctxt_a @ nil_nat @ C @ Ts2 )
        = Ts2 ) ) ).

% gmctxt_subtgm_at_fill_args_empty_pos
thf(fact_1180_gmctxt__subtgm__at__fill__args__empty__pos,axiom,
    ! [C: ground_gmctxt_a,Ts2: list_Ground_gterm_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s1893836384466666913term_a @ Ts2 ) )
     => ( ( ground8448531477516352152term_a @ nil_nat @ C @ Ts2 )
        = Ts2 ) ) ).

% gmctxt_subtgm_at_fill_args_empty_pos
thf(fact_1181_gmctxt__subtgm__at__fill__args__empty__pos,axiom,
    ! [C: ground_gmctxt_a,Ts2: list_l4678906206682822203term_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_s5321119603959729319term_a @ Ts2 ) )
     => ( ( ground8506523905942776734term_a @ nil_nat @ C @ Ts2 )
        = Ts2 ) ) ).

% gmctxt_subtgm_at_fill_args_empty_pos
thf(fact_1182_gmctxt__subtgm__at__fill__args__empty__pos,axiom,
    ! [C: ground_gmctxt_a,Ts2: list_nat] :
      ( ( ( ground_num_gholes_a @ C )
        = ( size_size_list_nat @ Ts2 ) )
     => ( ( ground6209547762876788007_a_nat @ nil_nat @ C @ Ts2 )
        = Ts2 ) ) ).

% gmctxt_subtgm_at_fill_args_empty_pos
thf(fact_1183_concat__index__split_Opelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_l1578326660578982846ctxt_a,Y3: product_prod_nat_nat] :
      ( ( ( concat7860870432694265376ctxt_a @ X3 @ Xa )
        = Y3 )
     => ( ( accp_P932351830650692389ctxt_a @ concat4449597247567141783ctxt_a @ ( produc2021719058512462696ctxt_a @ X3 @ Xa ) )
       => ( ! [O_idx2: nat,I_idx2: nat] :
              ( ( X3
                = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
             => ! [X2: list_Ground_gmctxt_a,Xs3: list_l1578326660578982846ctxt_a] :
                  ( ( Xa
                    = ( cons_l2925462854866423288ctxt_a @ X2 @ Xs3 ) )
                 => ( ( ( ( ord_less_nat @ I_idx2 @ ( size_s962548663205356226ctxt_a @ X2 ) )
                       => ( Y3
                          = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                      & ( ~ ( ord_less_nat @ I_idx2 @ ( size_s962548663205356226ctxt_a @ X2 ) )
                       => ( Y3
                          = ( concat7860870432694265376ctxt_a @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_s962548663205356226ctxt_a @ X2 ) ) ) @ Xs3 ) ) ) )
                   => ~ ( accp_P932351830650692389ctxt_a @ concat4449597247567141783ctxt_a @ ( produc2021719058512462696ctxt_a @ ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) @ ( cons_l2925462854866423288ctxt_a @ X2 @ Xs3 ) ) ) ) ) )
         => ~ ( ( Xa = nil_li5566661803063418280ctxt_a )
             => ( ( Y3 = undefi3946296454836805481at_nat )
               => ~ ( accp_P932351830650692389ctxt_a @ concat4449597247567141783ctxt_a @ ( produc2021719058512462696ctxt_a @ X3 @ nil_li5566661803063418280ctxt_a ) ) ) ) ) ) ) ).

% concat_index_split.pelims
thf(fact_1184_concat__index__split_Opelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_l4678906206682822203term_a,Y3: product_prod_nat_nat] :
      ( ( ( concat4415380251885098797term_a @ X3 @ Xa )
        = Y3 )
     => ( ( accp_P4948735776064185002term_a @ concat1048605534348661750term_a @ ( produc159813579597784081term_a @ X3 @ Xa ) )
       => ( ! [O_idx2: nat,I_idx2: nat] :
              ( ( X3
                = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
             => ! [X2: list_Ground_gterm_a,Xs3: list_l4678906206682822203term_a] :
                  ( ( Xa
                    = ( cons_l7239566772969696491term_a @ X2 @ Xs3 ) )
                 => ( ( ( ( ord_less_nat @ I_idx2 @ ( size_s1893836384466666913term_a @ X2 ) )
                       => ( Y3
                          = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                      & ( ~ ( ord_less_nat @ I_idx2 @ ( size_s1893836384466666913term_a @ X2 ) )
                       => ( Y3
                          = ( concat4415380251885098797term_a @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_s1893836384466666913term_a @ X2 ) ) ) @ Xs3 ) ) ) )
                   => ~ ( accp_P4948735776064185002term_a @ concat1048605534348661750term_a @ ( produc159813579597784081term_a @ ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) @ ( cons_l7239566772969696491term_a @ X2 @ Xs3 ) ) ) ) ) )
         => ~ ( ( Xa = nil_li1555898576520524091term_a )
             => ( ( Y3 = undefi3946296454836805481at_nat )
               => ~ ( accp_P4948735776064185002term_a @ concat1048605534348661750term_a @ ( produc159813579597784081term_a @ X3 @ nil_li1555898576520524091term_a ) ) ) ) ) ) ) ).

% concat_index_split.pelims
thf(fact_1185_concat__index__split_Opelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_l5172476077732501185term_a,Y3: product_prod_nat_nat] :
      ( ( ( concat5187525703047707059term_a @ X3 @ Xa )
        = Y3 )
     => ( ( accp_P1298813572345179696term_a @ concat4988383578334559740term_a @ ( produc689260213220024727term_a @ X3 @ Xa ) )
       => ( ! [O_idx2: nat,I_idx2: nat] :
              ( ( X3
                = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
             => ! [X2: list_l4678906206682822203term_a,Xs3: list_l5172476077732501185term_a] :
                  ( ( Xa
                    = ( cons_l1075082019044443889term_a @ X2 @ Xs3 ) )
                 => ( ( ( ( ord_less_nat @ I_idx2 @ ( size_s5321119603959729319term_a @ X2 ) )
                       => ( Y3
                          = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                      & ( ~ ( ord_less_nat @ I_idx2 @ ( size_s5321119603959729319term_a @ X2 ) )
                       => ( Y3
                          = ( concat5187525703047707059term_a @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_s5321119603959729319term_a @ X2 ) ) ) @ Xs3 ) ) ) )
                   => ~ ( accp_P1298813572345179696term_a @ concat4988383578334559740term_a @ ( produc689260213220024727term_a @ ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) @ ( cons_l1075082019044443889term_a @ X2 @ Xs3 ) ) ) ) ) )
         => ~ ( ( Xa = nil_li3774524310483215169term_a )
             => ( ( Y3 = undefi3946296454836805481at_nat )
               => ~ ( accp_P1298813572345179696term_a @ concat4988383578334559740term_a @ ( produc689260213220024727term_a @ X3 @ nil_li3774524310483215169term_a ) ) ) ) ) ) ) ).

% concat_index_split.pelims
thf(fact_1186_concat__index__split_Opelims,axiom,
    ! [X3: product_prod_nat_nat,Xa: list_list_nat,Y3: product_prod_nat_nat] :
      ( ( ( concat5568775588498683858it_nat @ X3 @ Xa )
        = Y3 )
     => ( ( accp_P6748712283191960023st_nat @ concat1575402509940520777el_nat @ ( produc8649917717998259994st_nat @ X3 @ Xa ) )
       => ( ! [O_idx2: nat,I_idx2: nat] :
              ( ( X3
                = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) )
             => ! [X2: list_nat,Xs3: list_list_nat] :
                  ( ( Xa
                    = ( cons_list_nat @ X2 @ Xs3 ) )
                 => ( ( ( ( ord_less_nat @ I_idx2 @ ( size_size_list_nat @ X2 ) )
                       => ( Y3
                          = ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) ) )
                      & ( ~ ( ord_less_nat @ I_idx2 @ ( size_size_list_nat @ X2 ) )
                       => ( Y3
                          = ( concat5568775588498683858it_nat @ ( product_Pair_nat_nat @ ( suc @ O_idx2 ) @ ( minus_minus_nat @ I_idx2 @ ( size_size_list_nat @ X2 ) ) ) @ Xs3 ) ) ) )
                   => ~ ( accp_P6748712283191960023st_nat @ concat1575402509940520777el_nat @ ( produc8649917717998259994st_nat @ ( product_Pair_nat_nat @ O_idx2 @ I_idx2 ) @ ( cons_list_nat @ X2 @ Xs3 ) ) ) ) ) )
         => ~ ( ( Xa = nil_list_nat )
             => ( ( Y3 = undefi3946296454836805481at_nat )
               => ~ ( accp_P6748712283191960023st_nat @ concat1575402509940520777el_nat @ ( produc8649917717998259994st_nat @ X3 @ nil_list_nat ) ) ) ) ) ) ) ).

% concat_index_split.pelims
thf(fact_1187_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_1188_fill__gholes__apply__gctxt,axiom,
    ! [C: ground_gmctxt_a,S: ground_gterm_a] :
      ( ( ( ground_num_gholes_a @ C )
        = ( suc @ zero_zero_nat ) )
     => ( ( ground_fill_gholes_a @ C @ ( cons_Ground_gterm_a @ S @ nil_Ground_gterm_a ) )
        = ( ground5122445521002937143term_a @ ( ground5333112502500237606ctxt_a @ C ) @ S ) ) ) ).

% fill_gholes_apply_gctxt
thf(fact_1189_length__add__elem__list__lists,axiom,
    ! [Ys: list_Ground_gmctxt_a,X3: ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( member2714729351964853061ctxt_a @ Ys @ ( set_li3057194059929822169ctxt_a @ ( basic_1848475516845296949ctxt_a @ X3 @ Xs ) ) )
     => ( ( size_s962548663205356226ctxt_a @ Ys )
        = ( suc @ ( size_s962548663205356226ctxt_a @ Xs ) ) ) ) ).

% length_add_elem_list_lists
thf(fact_1190_length__add__elem__list__lists,axiom,
    ! [Ys: list_Ground_gterm_a,X3: ground_gterm_a,Xs: list_Ground_gterm_a] :
      ( ( member5011579089780872286term_a @ Ys @ ( set_li7546925467519454922term_a @ ( basic_7490683292590119640term_a @ X3 @ Xs ) ) )
     => ( ( size_s1893836384466666913term_a @ Ys )
        = ( suc @ ( size_s1893836384466666913term_a @ Xs ) ) ) ) ).

% length_add_elem_list_lists
thf(fact_1191_length__add__elem__list__lists,axiom,
    ! [Ys: list_l4678906206682822203term_a,X3: list_Ground_gterm_a,Xs: list_l4678906206682822203term_a] :
      ( ( member6060894471016913124term_a @ Ys @ ( set_li8466561177209531728term_a @ ( basic_352925816409123806term_a @ X3 @ Xs ) ) )
     => ( ( size_s5321119603959729319term_a @ Ys )
        = ( suc @ ( size_s5321119603959729319term_a @ Xs ) ) ) ) ).

% length_add_elem_list_lists
thf(fact_1192_length__add__elem__list__lists,axiom,
    ! [Ys: list_nat,X3: nat,Xs: list_nat] :
      ( ( member_list_nat @ Ys @ ( set_list_nat2 @ ( basic_4874698711677410535ts_nat @ X3 @ Xs ) ) )
     => ( ( size_size_list_nat @ Ys )
        = ( suc @ ( size_size_list_nat @ Xs ) ) ) ) ).

% length_add_elem_list_lists
thf(fact_1193_meetI,axiom,
    ! [A: ground_gterm_a,B: ground_gterm_a,A3: set_Pr8282532413760598727term_a,C4: ground_gterm_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A @ B ) @ ( transi7074228654303032114term_a @ A3 ) )
     => ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A @ C4 ) @ ( transi7074228654303032114term_a @ A3 ) )
       => ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ B @ C4 ) @ ( abstra1295463122436168940term_a @ A3 ) ) ) ) ).

% meetI
thf(fact_1194_meetI,axiom,
    ! [A: nat,B: nat,A3: set_Pr1261947904930325089at_nat,C4: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A @ B ) @ ( transi2905341329935302413cl_nat @ A3 ) )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A @ C4 ) @ ( transi2905341329935302413cl_nat @ A3 ) )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C4 ) @ ( abstract_meet_nat @ A3 ) ) ) ) ).

% meetI
thf(fact_1195_length__map,axiom,
    ! [F: nat > nat,Xs: list_nat] :
      ( ( size_size_list_nat @ ( map_nat_nat @ F @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_map
thf(fact_1196_length__map,axiom,
    ! [F: nat > ground_gmctxt_a,Xs: list_nat] :
      ( ( size_s962548663205356226ctxt_a @ ( map_na2753241459123782580ctxt_a @ F @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_map
thf(fact_1197_length__map,axiom,
    ! [F: nat > ground_gterm_a,Xs: list_nat] :
      ( ( size_s1893836384466666913term_a @ ( map_na7668277823733732505term_a @ F @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_map
thf(fact_1198_length__map,axiom,
    ! [F: ground_gmctxt_a > nat,Xs: list_Ground_gmctxt_a] :
      ( ( size_size_list_nat @ ( map_Gr1679544123147727284_a_nat @ F @ Xs ) )
      = ( size_s962548663205356226ctxt_a @ Xs ) ) ).

% length_map
thf(fact_1199_length__map,axiom,
    ! [F: ground_gterm_a > nat,Xs: list_Ground_gterm_a] :
      ( ( size_size_list_nat @ ( map_Gr9003416157176963003_a_nat @ F @ Xs ) )
      = ( size_s1893836384466666913term_a @ Xs ) ) ).

% length_map
thf(fact_1200_length__map,axiom,
    ! [F: ground_gmctxt_a > ground_gmctxt_a,Xs: list_Ground_gmctxt_a] :
      ( ( size_s962548663205356226ctxt_a @ ( map_Gr980675717119874050ctxt_a @ F @ Xs ) )
      = ( size_s962548663205356226ctxt_a @ Xs ) ) ).

% length_map
thf(fact_1201_length__map,axiom,
    ! [F: ground_gterm_a > ground_gmctxt_a,Xs: list_Ground_gterm_a] :
      ( ( size_s962548663205356226ctxt_a @ ( map_Gr6591338906797447177ctxt_a @ F @ Xs ) )
      = ( size_s1893836384466666913term_a @ Xs ) ) ).

% length_map
thf(fact_1202_length__map,axiom,
    ! [F: ground_gmctxt_a > ground_gterm_a,Xs: list_Ground_gmctxt_a] :
      ( ( size_s1893836384466666913term_a @ ( map_Gr8458857686193410251term_a @ F @ Xs ) )
      = ( size_s962548663205356226ctxt_a @ Xs ) ) ).

% length_map
thf(fact_1203_length__map,axiom,
    ! [F: ground_gterm_a > ground_gterm_a,Xs: list_Ground_gterm_a] :
      ( ( size_s1893836384466666913term_a @ ( map_Gr5920649409875942148term_a @ F @ Xs ) )
      = ( size_s1893836384466666913term_a @ Xs ) ) ).

% length_map
thf(fact_1204_length__map,axiom,
    ! [F: nat > list_Ground_gterm_a,Xs: list_nat] :
      ( ( size_s5321119603959729319term_a @ ( map_na3194843725302796575term_a @ F @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_map
thf(fact_1205_nth__map,axiom,
    ! [N: nat,Xs: list_nat,F: nat > nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( map_nat_nat @ F @ Xs ) @ N )
        = ( F @ ( nth_nat @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1206_nth__map,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,F: ground_gmctxt_a > nat] :
      ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_nat @ ( map_Gr1679544123147727284_a_nat @ F @ Xs ) @ N )
        = ( F @ ( nth_Ground_gmctxt_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1207_nth__map,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,F: ground_gterm_a > nat] :
      ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_nat @ ( map_Gr9003416157176963003_a_nat @ F @ Xs ) @ N )
        = ( F @ ( nth_Ground_gterm_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1208_nth__map,axiom,
    ! [N: nat,Xs: list_nat,F: nat > ground_gterm_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( map_na7668277823733732505term_a @ F @ Xs ) @ N )
        = ( F @ ( nth_nat @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1209_nth__map,axiom,
    ! [N: nat,Xs: list_nat,F: nat > ground_gmctxt_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( map_na2753241459123782580ctxt_a @ F @ Xs ) @ N )
        = ( F @ ( nth_nat @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1210_nth__map,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,F: ground_gmctxt_a > ground_gterm_a] :
      ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( map_Gr8458857686193410251term_a @ F @ Xs ) @ N )
        = ( F @ ( nth_Ground_gmctxt_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1211_nth__map,axiom,
    ! [N: nat,Xs: list_Ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a] :
      ( ( ord_less_nat @ N @ ( size_s962548663205356226ctxt_a @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( map_Gr980675717119874050ctxt_a @ F @ Xs ) @ N )
        = ( F @ ( nth_Ground_gmctxt_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1212_nth__map,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,F: ground_gterm_a > ground_gterm_a] :
      ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Ground_gterm_a @ ( map_Gr5920649409875942148term_a @ F @ Xs ) @ N )
        = ( F @ ( nth_Ground_gterm_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1213_nth__map,axiom,
    ! [N: nat,Xs: list_Ground_gterm_a,F: ground_gterm_a > ground_gmctxt_a] :
      ( ( ord_less_nat @ N @ ( size_s1893836384466666913term_a @ Xs ) )
     => ( ( nth_Ground_gmctxt_a @ ( map_Gr6591338906797447177ctxt_a @ F @ Xs ) @ N )
        = ( F @ ( nth_Ground_gterm_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1214_nth__map,axiom,
    ! [N: nat,Xs: list_l4678906206682822203term_a,F: list_Ground_gterm_a > nat] :
      ( ( ord_less_nat @ N @ ( size_s5321119603959729319term_a @ Xs ) )
     => ( ( nth_nat @ ( map_li8467591744059766721_a_nat @ F @ Xs ) @ N )
        = ( F @ ( nth_li6172171122907299772term_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_1215_list_Omap__ident__strong,axiom,
    ! [T: list_P2433084232546440685term_a,F: produc1525979690750518759term_a > produc1525979690750518759term_a] :
      ( ! [Z3: produc1525979690750518759term_a] :
          ( ( member4351891425000572176term_a @ Z3 @ ( set_Pr5405221470436175740term_a @ T ) )
         => ( ( F @ Z3 )
            = Z3 ) )
     => ( ( map_Pr9200830483196091396term_a @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1216_list_Omap__ident__strong,axiom,
    ! [T: list_Ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a] :
      ( ! [Z3: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ Z3 @ ( set_Ground_gmctxt_a2 @ T ) )
         => ( ( F @ Z3 )
            = Z3 ) )
     => ( ( map_Gr980675717119874050ctxt_a @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1217_map__idI,axiom,
    ! [Xs: list_P2433084232546440685term_a,F: produc1525979690750518759term_a > produc1525979690750518759term_a] :
      ( ! [X2: produc1525979690750518759term_a] :
          ( ( member4351891425000572176term_a @ X2 @ ( set_Pr5405221470436175740term_a @ Xs ) )
         => ( ( F @ X2 )
            = X2 ) )
     => ( ( map_Pr9200830483196091396term_a @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1218_map__idI,axiom,
    ! [Xs: list_Ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a] :
      ( ! [X2: ground_gmctxt_a] :
          ( ( member3306386364193653941ctxt_a @ X2 @ ( set_Ground_gmctxt_a2 @ Xs ) )
         => ( ( F @ X2 )
            = X2 ) )
     => ( ( map_Gr980675717119874050ctxt_a @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1219_map__nth__eq__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat,F: nat > nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( map_nat_nat @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
             => ( ( F @ ( nth_nat @ Xs @ I2 ) )
                = ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1220_map__nth__eq__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_nat,F: ground_gmctxt_a > nat] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( map_Gr1679544123147727284_a_nat @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
             => ( ( F @ ( nth_Ground_gmctxt_a @ Xs @ I2 ) )
                = ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1221_map__nth__eq__conv,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_nat,F: ground_gterm_a > nat] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( map_Gr9003416157176963003_a_nat @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
             => ( ( F @ ( nth_Ground_gterm_a @ Xs @ I2 ) )
                = ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1222_map__nth__eq__conv,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gmctxt_a,F: nat > ground_gmctxt_a] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( ( map_na2753241459123782580ctxt_a @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ys ) )
             => ( ( F @ ( nth_nat @ Xs @ I2 ) )
                = ( nth_Ground_gmctxt_a @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1223_map__nth__eq__conv,axiom,
    ! [Xs: list_nat,Ys: list_Ground_gterm_a,F: nat > ground_gterm_a] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( ( map_na7668277823733732505term_a @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ys ) )
             => ( ( F @ ( nth_nat @ Xs @ I2 ) )
                = ( nth_Ground_gterm_a @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1224_map__nth__eq__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gmctxt_a,F: ground_gmctxt_a > ground_gmctxt_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( ( map_Gr980675717119874050ctxt_a @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ys ) )
             => ( ( F @ ( nth_Ground_gmctxt_a @ Xs @ I2 ) )
                = ( nth_Ground_gmctxt_a @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1225_map__nth__eq__conv,axiom,
    ! [Xs: list_Ground_gmctxt_a,Ys: list_Ground_gterm_a,F: ground_gmctxt_a > ground_gterm_a] :
      ( ( ( size_s962548663205356226ctxt_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( ( map_Gr8458857686193410251term_a @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ys ) )
             => ( ( F @ ( nth_Ground_gmctxt_a @ Xs @ I2 ) )
                = ( nth_Ground_gterm_a @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1226_map__nth__eq__conv,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gmctxt_a,F: ground_gterm_a > ground_gmctxt_a] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s962548663205356226ctxt_a @ Ys ) )
     => ( ( ( map_Gr6591338906797447177ctxt_a @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s962548663205356226ctxt_a @ Ys ) )
             => ( ( F @ ( nth_Ground_gterm_a @ Xs @ I2 ) )
                = ( nth_Ground_gmctxt_a @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1227_map__nth__eq__conv,axiom,
    ! [Xs: list_Ground_gterm_a,Ys: list_Ground_gterm_a,F: ground_gterm_a > ground_gterm_a] :
      ( ( ( size_s1893836384466666913term_a @ Xs )
        = ( size_s1893836384466666913term_a @ Ys ) )
     => ( ( ( map_Gr5920649409875942148term_a @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_s1893836384466666913term_a @ Ys ) )
             => ( ( F @ ( nth_Ground_gterm_a @ Xs @ I2 ) )
                = ( nth_Ground_gterm_a @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1228_map__nth__eq__conv,axiom,
    ! [Xs: list_l4678906206682822203term_a,Ys: list_nat,F: list_Ground_gterm_a > nat] :
      ( ( ( size_s5321119603959729319term_a @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( map_li8467591744059766721_a_nat @ F @ Xs )
          = Ys )
        = ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
             => ( ( F @ ( nth_li6172171122907299772term_a @ Xs @ I2 ) )
                = ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).

% map_nth_eq_conv
thf(fact_1229_meetE,axiom,
    ! [B: ground_gterm_a,C4: ground_gterm_a,A3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ B @ C4 ) @ ( abstra1295463122436168940term_a @ A3 ) )
     => ~ ! [A4: ground_gterm_a] :
            ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A4 @ B ) @ ( transi7074228654303032114term_a @ A3 ) )
           => ~ ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A4 @ C4 ) @ ( transi7074228654303032114term_a @ A3 ) ) ) ) ).

% meetE
thf(fact_1230_meetE,axiom,
    ! [B: nat,C4: nat,A3: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C4 ) @ ( abstract_meet_nat @ A3 ) )
     => ~ ! [A4: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A4 @ B ) @ ( transi2905341329935302413cl_nat @ A3 ) )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A4 @ C4 ) @ ( transi2905341329935302413cl_nat @ A3 ) ) ) ) ).

% meetE
thf(fact_1231_meetD,axiom,
    ! [B: ground_gterm_a,C4: ground_gterm_a,A3: set_Pr8282532413760598727term_a] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ B @ C4 ) @ ( abstra1295463122436168940term_a @ A3 ) )
     => ? [A4: ground_gterm_a] :
          ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A4 @ B ) @ ( transi7074228654303032114term_a @ A3 ) )
          & ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ A4 @ C4 ) @ ( transi7074228654303032114term_a @ A3 ) ) ) ) ).

% meetD
thf(fact_1232_meetD,axiom,
    ! [B: nat,C4: nat,A3: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C4 ) @ ( abstract_meet_nat @ A3 ) )
     => ? [A4: nat] :
          ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A4 @ B ) @ ( transi2905341329935302413cl_nat @ A3 ) )
          & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A4 @ C4 ) @ ( transi2905341329935302413cl_nat @ A3 ) ) ) ) ).

% meetD
thf(fact_1233_accp__subset,axiom,
    ! [R1: product_prod_nat_nat > product_prod_nat_nat > $o,R22: product_prod_nat_nat > product_prod_nat_nat > $o] :
      ( ( ord_le5604493270027003598_nat_o @ R1 @ R22 )
     => ( ord_le704812498762024988_nat_o @ ( accp_P4275260045618599050at_nat @ R22 ) @ ( accp_P4275260045618599050at_nat @ R1 ) ) ) ).

% accp_subset
thf(fact_1234_accp__subset__induct,axiom,
    ! [D: product_prod_nat_nat > $o,R4: product_prod_nat_nat > product_prod_nat_nat > $o,X3: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
      ( ( ord_le704812498762024988_nat_o @ D @ ( accp_P4275260045618599050at_nat @ R4 ) )
     => ( ! [X2: product_prod_nat_nat,Z3: product_prod_nat_nat] :
            ( ( D @ X2 )
           => ( ( R4 @ Z3 @ X2 )
             => ( D @ Z3 ) ) )
       => ( ( D @ X3 )
         => ( ! [X2: product_prod_nat_nat] :
                ( ( D @ X2 )
               => ( ! [Z4: product_prod_nat_nat] :
                      ( ( R4 @ Z4 @ X2 )
                     => ( P @ Z4 ) )
                 => ( P @ X2 ) ) )
           => ( P @ X3 ) ) ) ) ) ).

% accp_subset_induct
thf(fact_1235_prod__decode__aux_Opelims,axiom,
    ! [X3: nat,Xa: nat,Y3: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X3 @ Xa )
        = Y3 )
     => ( ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X3 @ Xa ) )
       => ~ ( ( ( ( ord_less_eq_nat @ Xa @ X3 )
               => ( Y3
                  = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X3 @ Xa ) ) ) )
              & ( ~ ( ord_less_eq_nat @ Xa @ X3 )
               => ( Y3
                  = ( nat_prod_decode_aux @ ( suc @ X3 ) @ ( minus_minus_nat @ Xa @ ( suc @ X3 ) ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X3 @ Xa ) ) ) ) ) ).

% prod_decode_aux.pelims
thf(fact_1236_in__measure,axiom,
    ! [X3: ground_gterm_a,Y3: ground_gterm_a,F: ground_gterm_a > nat] :
      ( ( member4351891425000572176term_a @ ( produc7419039783125785943term_a @ X3 @ Y3 ) @ ( measur8260484504157126775term_a @ F ) )
      = ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y3 ) ) ) ).

% in_measure
thf(fact_1237_in__measure,axiom,
    ! [X3: nat,Y3: nat,F: nat > nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ ( measure_nat @ F ) )
      = ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y3 ) ) ) ).

% in_measure
thf(fact_1238_rtrancl__induct2,axiom,
    ! [Ax: ground_gterm_a,Ay: ground_gterm_a,Bx: ground_gterm_a,By: ground_gterm_a,R2: set_Pr5156918327056800967term_a,P: ground_gterm_a > ground_gterm_a > $o] :
      ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ Ax @ Ay ) @ ( produc7419039783125785943term_a @ Bx @ By ) ) @ ( transi4338356288242649066term_a @ R2 ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: ground_gterm_a,B4: ground_gterm_a,Aa: ground_gterm_a,Ba: ground_gterm_a] :
              ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ Ax @ Ay ) @ ( produc7419039783125785943term_a @ A4 @ B4 ) ) @ ( transi4338356288242649066term_a @ R2 ) )
             => ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ A4 @ B4 ) @ ( produc7419039783125785943term_a @ Aa @ Ba ) ) @ R2 )
               => ( ( P @ A4 @ B4 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1239_rtrancl__induct2,axiom,
    ! [Ax: ground_gmctxt_a,Ay: list_Ground_gterm_a,Bx: ground_gmctxt_a,By: list_Ground_gterm_a,R2: set_Pr3704946587519556825term_a,P: ground_gmctxt_a > list_Ground_gterm_a > $o] :
      ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ Ax @ Ay ) @ ( produc4720362732934906942term_a @ Bx @ By ) ) @ ( transi7798120181674390985term_a @ R2 ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: ground_gmctxt_a,B4: list_Ground_gterm_a,Aa: ground_gmctxt_a,Ba: list_Ground_gterm_a] :
              ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ Ax @ Ay ) @ ( produc4720362732934906942term_a @ A4 @ B4 ) ) @ ( transi7798120181674390985term_a @ R2 ) )
             => ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ A4 @ B4 ) @ ( produc4720362732934906942term_a @ Aa @ Ba ) ) @ R2 )
               => ( ( P @ A4 @ B4 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1240_rtrancl__induct2,axiom,
    ! [Ax: nat,Ay: nat,Bx: nat,By: nat,R2: set_Pr8693737435421807431at_nat,P: nat > nat > $o] :
      ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Ax @ Ay ) @ ( product_Pair_nat_nat @ Bx @ By ) ) @ ( transi8609417484261754244at_nat @ R2 ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: nat,B4: nat,Aa: nat,Ba: nat] :
              ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Ax @ Ay ) @ ( product_Pair_nat_nat @ A4 @ B4 ) ) @ ( transi8609417484261754244at_nat @ R2 ) )
             => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B4 ) @ ( product_Pair_nat_nat @ Aa @ Ba ) ) @ R2 )
               => ( ( P @ A4 @ B4 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1241_rtrancl__induct2,axiom,
    ! [Ax: nat > nat,Ay: nat,Bx: nat > nat,By: nat,R2: set_Pr7047708467701517959at_nat,P: ( nat > nat ) > nat > $o] :
      ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ Ax @ Ay ) @ ( produc72220940542539688at_nat @ Bx @ By ) ) @ ( transi3422749762518297843at_nat @ R2 ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: nat > nat,B4: nat,Aa: nat > nat,Ba: nat] :
              ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ Ax @ Ay ) @ ( produc72220940542539688at_nat @ A4 @ B4 ) ) @ ( transi3422749762518297843at_nat @ R2 ) )
             => ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ A4 @ B4 ) @ ( produc72220940542539688at_nat @ Aa @ Ba ) ) @ R2 )
               => ( ( P @ A4 @ B4 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1242_converse__rtranclE2,axiom,
    ! [Xa: ground_gterm_a,Xb: ground_gterm_a,Za: ground_gterm_a,Zb: ground_gterm_a,R2: set_Pr5156918327056800967term_a] :
      ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ Xa @ Xb ) @ ( produc7419039783125785943term_a @ Za @ Zb ) ) @ ( transi4338356288242649066term_a @ R2 ) )
     => ( ( ( produc7419039783125785943term_a @ Xa @ Xb )
         != ( produc7419039783125785943term_a @ Za @ Zb ) )
       => ~ ! [A4: ground_gterm_a,B4: ground_gterm_a] :
              ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ Xa @ Xb ) @ ( produc7419039783125785943term_a @ A4 @ B4 ) ) @ R2 )
             => ~ ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ A4 @ B4 ) @ ( produc7419039783125785943term_a @ Za @ Zb ) ) @ ( transi4338356288242649066term_a @ R2 ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1243_converse__rtranclE2,axiom,
    ! [Xa: ground_gmctxt_a,Xb: list_Ground_gterm_a,Za: ground_gmctxt_a,Zb: list_Ground_gterm_a,R2: set_Pr3704946587519556825term_a] :
      ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ Xa @ Xb ) @ ( produc4720362732934906942term_a @ Za @ Zb ) ) @ ( transi7798120181674390985term_a @ R2 ) )
     => ( ( ( produc4720362732934906942term_a @ Xa @ Xb )
         != ( produc4720362732934906942term_a @ Za @ Zb ) )
       => ~ ! [A4: ground_gmctxt_a,B4: list_Ground_gterm_a] :
              ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ Xa @ Xb ) @ ( produc4720362732934906942term_a @ A4 @ B4 ) ) @ R2 )
             => ~ ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ A4 @ B4 ) @ ( produc4720362732934906942term_a @ Za @ Zb ) ) @ ( transi7798120181674390985term_a @ R2 ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1244_converse__rtranclE2,axiom,
    ! [Xa: nat,Xb: nat,Za: nat,Zb: nat,R2: set_Pr8693737435421807431at_nat] :
      ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Xa @ Xb ) @ ( product_Pair_nat_nat @ Za @ Zb ) ) @ ( transi8609417484261754244at_nat @ R2 ) )
     => ( ( ( product_Pair_nat_nat @ Xa @ Xb )
         != ( product_Pair_nat_nat @ Za @ Zb ) )
       => ~ ! [A4: nat,B4: nat] :
              ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Xa @ Xb ) @ ( product_Pair_nat_nat @ A4 @ B4 ) ) @ R2 )
             => ~ ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B4 ) @ ( product_Pair_nat_nat @ Za @ Zb ) ) @ ( transi8609417484261754244at_nat @ R2 ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1245_converse__rtranclE2,axiom,
    ! [Xa: nat > nat,Xb: nat,Za: nat > nat,Zb: nat,R2: set_Pr7047708467701517959at_nat] :
      ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ Xa @ Xb ) @ ( produc72220940542539688at_nat @ Za @ Zb ) ) @ ( transi3422749762518297843at_nat @ R2 ) )
     => ( ( ( produc72220940542539688at_nat @ Xa @ Xb )
         != ( produc72220940542539688at_nat @ Za @ Zb ) )
       => ~ ! [A4: nat > nat,B4: nat] :
              ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ Xa @ Xb ) @ ( produc72220940542539688at_nat @ A4 @ B4 ) ) @ R2 )
             => ~ ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ A4 @ B4 ) @ ( produc72220940542539688at_nat @ Za @ Zb ) ) @ ( transi3422749762518297843at_nat @ R2 ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1246_converse__rtrancl__induct2,axiom,
    ! [Ax: ground_gterm_a,Ay: ground_gterm_a,Bx: ground_gterm_a,By: ground_gterm_a,R2: set_Pr5156918327056800967term_a,P: ground_gterm_a > ground_gterm_a > $o] :
      ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ Ax @ Ay ) @ ( produc7419039783125785943term_a @ Bx @ By ) ) @ ( transi4338356288242649066term_a @ R2 ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: ground_gterm_a,B4: ground_gterm_a,Aa: ground_gterm_a,Ba: ground_gterm_a] :
              ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ A4 @ B4 ) @ ( produc7419039783125785943term_a @ Aa @ Ba ) ) @ R2 )
             => ( ( member4810723946494196496term_a @ ( produc4593192926746741591term_a @ ( produc7419039783125785943term_a @ Aa @ Ba ) @ ( produc7419039783125785943term_a @ Bx @ By ) ) @ ( transi4338356288242649066term_a @ R2 ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B4 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1247_converse__rtrancl__induct2,axiom,
    ! [Ax: ground_gmctxt_a,Ay: list_Ground_gterm_a,Bx: ground_gmctxt_a,By: list_Ground_gterm_a,R2: set_Pr3704946587519556825term_a,P: ground_gmctxt_a > list_Ground_gterm_a > $o] :
      ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ Ax @ Ay ) @ ( produc4720362732934906942term_a @ Bx @ By ) ) @ ( transi7798120181674390985term_a @ R2 ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: ground_gmctxt_a,B4: list_Ground_gterm_a,Aa: ground_gmctxt_a,Ba: list_Ground_gterm_a] :
              ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ A4 @ B4 ) @ ( produc4720362732934906942term_a @ Aa @ Ba ) ) @ R2 )
             => ( ( member3109151654205658658term_a @ ( produc524587728620742321term_a @ ( produc4720362732934906942term_a @ Aa @ Ba ) @ ( produc4720362732934906942term_a @ Bx @ By ) ) @ ( transi7798120181674390985term_a @ R2 ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B4 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1248_converse__rtrancl__induct2,axiom,
    ! [Ax: nat,Ay: nat,Bx: nat,By: nat,R2: set_Pr8693737435421807431at_nat,P: nat > nat > $o] :
      ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Ax @ Ay ) @ ( product_Pair_nat_nat @ Bx @ By ) ) @ ( transi8609417484261754244at_nat @ R2 ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: nat,B4: nat,Aa: nat,Ba: nat] :
              ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B4 ) @ ( product_Pair_nat_nat @ Aa @ Ba ) ) @ R2 )
             => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Aa @ Ba ) @ ( product_Pair_nat_nat @ Bx @ By ) ) @ ( transi8609417484261754244at_nat @ R2 ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B4 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1249_converse__rtrancl__induct2,axiom,
    ! [Ax: nat > nat,Ay: nat,Bx: nat > nat,By: nat,R2: set_Pr7047708467701517959at_nat,P: ( nat > nat ) > nat > $o] :
      ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ Ax @ Ay ) @ ( produc72220940542539688at_nat @ Bx @ By ) ) @ ( transi3422749762518297843at_nat @ R2 ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: nat > nat,B4: nat,Aa: nat > nat,Ba: nat] :
              ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ A4 @ B4 ) @ ( produc72220940542539688at_nat @ Aa @ Ba ) ) @ R2 )
             => ( ( member3795392313164512464at_nat @ ( produc2768974569381949847at_nat @ ( produc72220940542539688at_nat @ Aa @ Ba ) @ ( produc72220940542539688at_nat @ Bx @ By ) ) @ ( transi3422749762518297843at_nat @ R2 ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B4 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

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

% less_one
thf(fact_1251_Suc__diff__1,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
        = N ) ) ).

% Suc_diff_1
thf(fact_1252_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N3: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N3 )
             => ( ( P @ N3 )
               => ( P @ ( suc @ N3 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_1253_Suc__pred_H,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( N
        = ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_pred'
thf(fact_1254_Suc__diff__eq__diff__pred,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( minus_minus_nat @ ( suc @ M2 ) @ N )
        = ( minus_minus_nat @ M2 @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_diff_eq_diff_pred
thf(fact_1255_bounded__Max__nat,axiom,
    ! [P: nat > $o,X3: nat,M7: nat] :
      ( ( P @ X3 )
     => ( ! [X2: nat] :
            ( ( P @ X2 )
           => ( ord_less_eq_nat @ X2 @ M7 ) )
       => ~ ! [M4: nat] :
              ( ( P @ M4 )
             => ~ ! [X: nat] :
                    ( ( P @ X )
                   => ( ord_less_eq_nat @ X @ M4 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_1256_sum__list__1__E,axiom,
    ! [Xs: list_nat] :
      ( ( ( groups4561878855575611511st_nat @ Xs )
        = ( suc @ zero_zero_nat ) )
     => ~ ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
           => ( ( ( nth_nat @ Xs @ I3 )
                = ( suc @ zero_zero_nat ) )
             => ~ ! [J: nat] :
                    ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
                   => ( ( J != I3 )
                     => ( ( nth_nat @ Xs @ J )
                        = zero_zero_nat ) ) ) ) ) ) ).

% sum_list_1_E

% Helper facts (5)
thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( if_nat @ $false @ X3 @ Y3 )
      = Y3 ) ).

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

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

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X3: product_prod_nat_nat,Y3: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $false @ X3 @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X3: product_prod_nat_nat,Y3: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $true @ X3 @ Y3 )
      = X3 ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    p @ ( ground2530127064035342964ctxt_a @ c @ ds ) ).

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