TPTP Problem File: SLH0278^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    : Rewrite_Properties_Reduction/0017_Replace_Constant/prob_00159_007056__13894174_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1846 ( 607 unt; 599 typ;   0 def)
%            Number of atoms       : 3702 (2106 equ;   0 cnn)
%            Maximal formula atoms :   23 (   2 avg)
%            Number of connectives : 14565 ( 852   ~;  89   |; 360   &;11558   @)
%                                         (   0 <=>;1706  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   7 avg)
%            Number of types       :  111 ( 110 usr)
%            Number of type conns  : 1462 (1462   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  492 ( 489 usr;  43 con; 0-4 aty)
%            Number of variables   : 4197 (  72   ^;3865   !; 260   ?;4197   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 14:18:36.552
%------------------------------------------------------------------------------
% Could-be-implicit typings (110)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_J_J,type,
    set_Pr1972372305556864775st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_J,type,
    produc6013561220858417447st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J_J,type,
    set_Pr3870824916597072583rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J_J,type,
    set_Pr5017933239610314539st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    produc8018406874456678119rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    produc8674823750183776971st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    produc8215350257458196082rm_a_b: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    list_P6146127666372278893rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    set_Pr2972776593051762503rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_J,type,
    set_Pr915550674247830855st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_M_062_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_M_Eo_J_J_Mt__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J_J,type,
    produc4181971923416023106_b_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_J_J,type,
    set_Pr6382717822055741895xt_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc4523971788519308903rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    produc1342688880896445543st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    produc1601299519461031143rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_J,type,
    produc7427625295709621991xt_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    produc6817702157447538794st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    produc8734217775477389290rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_J,type,
    set_Pr4817715314677154882st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_J,type,
    produc7466736845116596589xt_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    set_Pr5233514982410851781rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc6392793444374437607at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc8210972263561988409rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J_Mt__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J_J,type,
    produc4191184485715949063_b_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    list_P4196053138373943208st_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    list_P3366363762698041518rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_M_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_J,type,
    produc4754350896526429996_nat_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    produc4787317212837456354st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    set_Pr2659102613823815246st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    set_Pr1829413238147913556rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc4700046383489396069rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_Mt__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    produc5770105429786724425rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc8847469151730319409rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc5279506192219892694rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    produc8138335000387836214rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc2732850333517536310rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc2423145444804056984st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc6373727562496775070rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_J,type,
    set_Pr418624375388990407xt_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J_J,type,
    set_Pr1811044260758604347_a_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    set_Pr8564414093027780873rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_Mt__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J_J,type,
    set_Pr1190453367779242145st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J,type,
    produc7446967628161468135xt_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    produc4708774622424448987_a_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc51424535725745577rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_Mt__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    produc4326814125627636033st_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    list_l1829479457390431893rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    set_Pr5972536988916469445st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    set_Pr2653742144321748037rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    set_li7311725489111463791rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    set_Pr7072801126362145067st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc5260046862718186894rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    produc3720191947069994550st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc8965594506121923398rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc5674375379913900953rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc895009549562661605st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc9043357390500214885rm_a_b: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    list_P8875379029341186191rm_a_b: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    list_P7940050157051400743st_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    list_l912426616931380689rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_M_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_J,type,
    produc1531442364937356539_nat_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc254973753779126261st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    set_Pr4386577575007340137rm_a_b: $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__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_J,type,
    set_Pr969339255790132299xt_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc357393685978478089rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc3697673438841856213st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc6666515723797200341rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc7711739908350443733rm_a_b: $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__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    list_P4523178631563835595_b_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    list_P2364656488115551307rm_a_b: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    list_l3264859301627795341at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    set_Pr6708357783813671845_b_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    set_Pr4549835640365387557rm_a_b: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J_J,type,
    list_l1341846263083488419_b_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J,type,
    produc5967569696164677611xt_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mtf__b_J,type,
    produc3939298039639560163_a_b_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc4226810134323546766st_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    list_l5544744485257374276rm_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    set_Pr1357592988741419896rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    produc2720409071189015237_b_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc1234881154892807749rm_a_b: $tType ).

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

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

thf(ty_n_t__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_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    list_term_a_b_nat: $tType ).

thf(ty_n_t__Set__Oset_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    set_term_a_b_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc6551080308567045442rm_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mtf__b_J,type,
    produc6510227487322075744_a_b_b: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    list_list_term_a_b: $tType ).

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

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

thf(ty_n_t__Set__Oset_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    set_list_term_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    set_list_list_nat: $tType ).

thf(ty_n_t__Option__Ooption_It__Sum____Type__Osum_Itf__a_Mtf__b_J_J,type,
    option_Sum_sum_a_b: $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__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J,type,
    subterm_and_ctxt_a_b: $tType ).

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

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

thf(ty_n_t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    list_term_a_b: $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__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    set_term_a_b: $tType ).

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

thf(ty_n_t__Term__Oterm_Itf__a_Mtf__b_J,type,
    term_a_b: $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__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_tf__b,type,
    b: $tType ).

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

% Explicit typings (489)
thf(sy_c_Abstract__Rewriting_Omeet_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    abstra1093061187967292567rm_a_b: set_Pr4386577575007340137rm_a_b > set_Pr4386577575007340137rm_a_b ).

thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__List__Olist_It__Nat__Onat_J,type,
    bNF_Gr9051742241863529473st_nat: set_list_list_nat > list_nat > set_list_list_nat ).

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

thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    bNF_Gr369565347726608424rm_a_b: set_li7311725489111463791rm_a_b > produc357393685978478089rm_a_b > set_li7311725489111463791rm_a_b ).

thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    bNF_Gr2285504805956674357rm_a_b: set_list_term_a_b > term_a_b > set_list_term_a_b ).

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

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

thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    bNF_Gr7233806482624125860rm_a_b: set_li7311725489111463791rm_a_b > list_P8875379029341186191rm_a_b > set_Pr4386577575007340137rm_a_b ).

thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    bNF_Gr5510842888252665017rm_a_b: set_list_term_a_b > list_term_a_b > set_term_a_b ).

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_Basic__Utils_Oadd__elem__list__lists_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    basic_1593220722155286443rm_a_b: term_a_b > list_term_a_b > list_list_term_a_b ).

thf(sy_c_Basic__Utils_Olist__of__permutation__element__n_001t__Nat__Onat,type,
    basic_7079635023375748421_n_nat: nat > nat > list_nat > list_list_nat ).

thf(sy_c_Basic__Utils_Olist__of__permutation__element__n_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    basic_7447718476515137801rm_a_b: term_a_b > nat > list_term_a_b > list_list_term_a_b ).

thf(sy_c_Basic__Utils_Olist__of__permutation__element__n__rel_001t__Nat__Onat,type,
    basic_5396556626788897174el_nat: produc3720191947069994550st_nat > produc3720191947069994550st_nat > $o ).

thf(sy_c_Basic__Utils_Olist__of__permutation__element__n__rel_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    basic_7323182009002229978rm_a_b: produc8138335000387836214rm_a_b > produc8138335000387836214rm_a_b > $o ).

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

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_HOL_Oundefined_001t__Nat__Onat,type,
    undefined_nat: nat ).

thf(sy_c_HOL_Oundefined_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J,type,
    undefi3573907640150307307xt_a_b: subterm_and_ctxt_a_b ).

thf(sy_c_HOL_Oundefined_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    undefined_term_a_b: term_a_b ).

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

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

thf(sy_c_If_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    if_lis6431594140241482069rm_a_b: $o > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    sup_su6776935440552674877rm_a_b: set_Pr4386577575007340137rm_a_b > set_Pr4386577575007340137rm_a_b > set_Pr4386577575007340137rm_a_b ).

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

thf(sy_c_List_Oappend_001t__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__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    append_list_term_a_b: list_list_term_a_b > list_list_term_a_b > list_list_term_a_b ).

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__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    append1152621114427393060rm_a_b: list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Oappend_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    append_term_a_b: list_term_a_b > list_term_a_b > list_term_a_b ).

thf(sy_c_List_Obind_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
    bind_l7796378977173581257st_nat: list_list_nat > ( list_nat > list_list_nat ) > list_list_nat ).

thf(sy_c_List_Obind_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
    bind_list_nat_nat: list_list_nat > ( list_nat > list_nat ) > list_nat ).

thf(sy_c_List_Obind_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
    bind_nat_list_nat: list_nat > ( nat > list_list_nat ) > list_list_nat ).

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

thf(sy_c_List_Obind_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    bind_n1878750130520726888at_nat: list_nat > ( nat > list_P6011104703257516679at_nat ) > list_P6011104703257516679at_nat ).

thf(sy_c_List_Obind_001t__Nat__Onat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    bind_nat_term_a_b: list_nat > ( nat > list_term_a_b ) > list_term_a_b ).

thf(sy_c_List_Obind_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    bind_P7742074774332787594at_nat: list_P6011104703257516679at_nat > ( product_prod_nat_nat > list_nat ) > list_nat ).

thf(sy_c_List_Obind_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__List__Olist_It__Nat__Onat_J,type,
    bind_t442032754801615613st_nat: list_term_a_b > ( term_a_b > list_list_nat ) > list_list_nat ).

thf(sy_c_List_Obind_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Nat__Onat,type,
    bind_term_a_b_nat: list_term_a_b > ( term_a_b > list_nat ) > list_nat ).

thf(sy_c_List_Obind_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    bind_t2899167355749536305rm_a_b: list_term_a_b > ( term_a_b > list_term_a_b ) > list_term_a_b ).

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

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

thf(sy_c_List_Obutlast_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    butlas6835517817679325275rm_a_b: list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Obutlast_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    butlast_term_a_b: list_term_a_b > list_term_a_b ).

thf(sy_c_List_Ocan__select_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    can_se4193021272102570163st_nat: ( list_list_nat > $o ) > set_list_list_nat > $o ).

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

thf(sy_c_List_Ocan__select_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    can_se7115681450954524940rm_a_b: ( list_P8875379029341186191rm_a_b > $o ) > set_li7311725489111463791rm_a_b > $o ).

thf(sy_c_List_Ocan__select_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    can_se852741519239192039rm_a_b: ( list_term_a_b > $o ) > set_list_term_a_b > $o ).

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

thf(sy_c_List_Ocan__select_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    can_se6413446879105937054st_nat: ( produc1828647624359046049st_nat > $o ) > set_Pr3451248702717554689st_nat > $o ).

thf(sy_c_List_Ocan__select_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    can_se4942192940725369094rm_a_b: ( produc357393685978478089rm_a_b > $o ) > set_Pr4386577575007340137rm_a_b > $o ).

thf(sy_c_List_Ocan__select_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    can_select_term_a_b: ( term_a_b > $o ) > set_term_a_b > $o ).

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

thf(sy_c_List_Oconcat_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    concat_list_term_a_b: list_l5544744485257374276rm_a_b > list_list_term_a_b ).

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

thf(sy_c_List_Oconcat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    concat_term_a_b: list_list_term_a_b > list_term_a_b ).

thf(sy_c_List_Odistinct__adj_001t__Nat__Onat,type,
    distinct_adj_nat: list_nat > $o ).

thf(sy_c_List_Odistinct__adj_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    distin3333876298242337718rm_a_b: list_term_a_b > $o ).

thf(sy_c_List_Odrop_001t__List__Olist_It__Nat__Onat_J,type,
    drop_list_nat: nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Odrop_001t__Nat__Onat,type,
    drop_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Odrop_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    drop_P2146130716461001295rm_a_b: nat > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Odrop_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    drop_term_a_b: nat > list_term_a_b > list_term_a_b ).

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

thf(sy_c_List_Oenumerate_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    enumerate_term_a_b: nat > list_term_a_b > list_P2364656488115551307rm_a_b ).

thf(sy_c_List_Ofilter_001t__List__Olist_It__Nat__Onat_J,type,
    filter_list_nat: ( list_nat > $o ) > list_list_nat > list_list_nat ).

thf(sy_c_List_Ofilter_001t__Nat__Onat,type,
    filter_nat: ( nat > $o ) > list_nat > list_nat ).

thf(sy_c_List_Ofilter_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    filter1978632790000409606rm_a_b: ( produc357393685978478089rm_a_b > $o ) > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Ofilter_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    filter_term_a_b: ( term_a_b > $o ) > list_term_a_b > list_term_a_b ).

thf(sy_c_List_Ogen__length_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    gen_le5771528551073234224_b_nat: nat > list_term_a_b_nat > nat ).

thf(sy_c_List_Ogen__length_001t__List__Olist_It__Nat__Onat_J,type,
    gen_length_list_nat: nat > list_list_nat > nat ).

thf(sy_c_List_Ogen__length_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    gen_le4942244902447077073rm_a_b: nat > list_list_term_a_b > nat ).

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

thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    gen_le2383899666085517716at_nat: nat > list_P6011104703257516679at_nat > nat ).

thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    gen_le1467257176787788120rm_a_b: nat > list_P2364656488115551307rm_a_b > nat ).

thf(sy_c_List_Ogen__length_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    gen_length_term_a_b: nat > list_term_a_b > nat ).

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

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

thf(sy_c_List_Oinsert_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    insert2131576408138493221rm_a_b: produc357393685978478089rm_a_b > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Oinsert_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    insert_term_a_b: term_a_b > list_term_a_b > list_term_a_b ).

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

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

thf(sy_c_List_Olast_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    last_P6484183829340986144at_nat: list_P6011104703257516679at_nat > product_prod_nat_nat ).

thf(sy_c_List_Olast_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    last_P1345268381036604644rm_a_b: list_P2364656488115551307rm_a_b > produc1234881154892807749rm_a_b ).

thf(sy_c_List_Olast_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    last_P2830796297332812132_b_nat: list_P4523178631563835595_b_nat > produc2720409071189015237_b_nat ).

thf(sy_c_List_Olast_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    last_P6746431593072707880rm_a_b: list_P8875379029341186191rm_a_b > produc357393685978478089rm_a_b ).

thf(sy_c_List_Olast_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    last_term_a_b: list_term_a_b > term_a_b ).

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

thf(sy_c_List_Olenlex_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    lenlex_term_a_b: set_Pr4386577575007340137rm_a_b > set_Pr8564414093027780873rm_a_b ).

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

thf(sy_c_List_Olex_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    lex_term_a_b: set_Pr4386577575007340137rm_a_b > set_Pr8564414093027780873rm_a_b ).

thf(sy_c_List_Olexord_001t__List__Olist_It__Nat__Onat_J,type,
    lexord_list_nat: set_Pr3451248702717554689st_nat > set_Pr1190453367779242145st_nat ).

thf(sy_c_List_Olexord_001t__Nat__Onat,type,
    lexord_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_List_Olexord_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    lexord1555492263668129660rm_a_b: set_Pr2972776593051762503rm_a_b > set_Pr3870824916597072583rm_a_b ).

thf(sy_c_List_Olexord_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    lexord_term_a_b: set_Pr4386577575007340137rm_a_b > set_Pr8564414093027780873rm_a_b ).

thf(sy_c_List_Olist_OCons_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    cons_term_a_b_nat: ( term_a_b > nat ) > list_term_a_b_nat > list_term_a_b_nat ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    cons_l8223761185155003741_b_nat: list_term_a_b_nat > list_l1341846263083488419_b_nat > list_l1341846263083488419_b_nat ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    cons_list_list_nat: list_list_nat > list_list_list_nat > list_list_list_nat ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    cons_l1938818789863149694rm_a_b: list_list_term_a_b > list_l5544744485257374276rm_a_b > list_l5544744485257374276rm_a_b ).

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__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    cons_l7612840610449961021at_nat: list_P6011104703257516679at_nat > list_l3264859301627795341at_nat > list_l3264859301627795341at_nat ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    cons_l5543567910243630849rm_a_b: list_P2364656488115551307rm_a_b > list_l912426616931380689rm_a_b > list_l912426616931380689rm_a_b ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    cons_list_term_a_b: list_term_a_b > list_list_term_a_b > list_list_term_a_b ).

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__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_OCons_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    cons_P2836617062085252091rm_a_b: produc1234881154892807749rm_a_b > list_P2364656488115551307rm_a_b > list_P2364656488115551307rm_a_b ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    cons_P3536305108106557631rm_a_b: produc357393685978478089rm_a_b > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Olist_OCons_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    cons_term_a_b: term_a_b > list_term_a_b > list_term_a_b ).

thf(sy_c_List_Olist_ONil_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    nil_term_a_b_nat: list_term_a_b_nat ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    nil_li3481567056940451085_b_nat: list_l1341846263083488419_b_nat ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    nil_list_list_nat: list_list_list_nat ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    nil_li84351820164960302rm_a_b: list_l5544744485257374276rm_a_b ).

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__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    nil_li8973309667444810893at_nat: list_l3264859301627795341at_nat ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    nil_li8949437558549105489rm_a_b: list_l912426616931380689rm_a_b ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    nil_list_term_a_b: list_list_term_a_b ).

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__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    nil_Pr8413428694792600231st_nat: list_P7940050157051400743st_nat ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    nil_Pr5478986624290739719at_nat: list_P6011104703257516679at_nat ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    nil_Pr4197086119080101963rm_a_b: list_P2364656488115551307rm_a_b ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    nil_Pr5682614035376309451_b_nat: list_P4523178631563835595_b_nat ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    nil_Pr6942174756412032271rm_a_b: list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Olist_ONil_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    nil_term_a_b: list_term_a_b ).

thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__Nat__Onat_J,type,
    hd_list_nat: list_list_nat > list_nat ).

thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    hd_list_term_a_b: list_list_term_a_b > list_term_a_b ).

thf(sy_c_List_Olist_Ohd_001t__Nat__Onat,type,
    hd_nat: list_nat > nat ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    hd_Pro3460610213475200108at_nat: list_P6011104703257516679at_nat > product_prod_nat_nat ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    hd_Pro4077529047277824048rm_a_b: list_P2364656488115551307rm_a_b > produc1234881154892807749rm_a_b ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    hd_Pro5563056963574031536_b_nat: list_P4523178631563835595_b_nat > produc2720409071189015237_b_nat ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    hd_Pro6001814652670619252rm_a_b: list_P8875379029341186191rm_a_b > produc357393685978478089rm_a_b ).

thf(sy_c_List_Olist_Ohd_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    hd_term_a_b: list_term_a_b > term_a_b ).

thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    map_li960784813134754710st_nat: ( list_nat > list_list_nat ) > list_list_nat > list_list_list_nat ).

thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
    map_li7225945977422193158st_nat: ( list_nat > list_nat ) > list_list_nat > list_list_nat ).

thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_001t__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    map_li5549351542446159646rm_a_b: ( list_term_a_b > list_list_term_a_b ) > list_list_term_a_b > list_l5544744485257374276rm_a_b ).

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__Nat__Onat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    map_nat_term_a_b: ( nat > term_a_b ) > list_nat > list_term_a_b ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    map_Pr3281474655358167172rm_a_b: ( produc357393685978478089rm_a_b > produc357393685978478089rm_a_b ) > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Olist_Omap_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Nat__Onat,type,
    map_term_a_b_nat: ( term_a_b > nat ) > list_term_a_b > list_nat ).

thf(sy_c_List_Olist_Omap_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    map_te7860633433546091055rm_a_b: ( term_a_b > produc357393685978478089rm_a_b ) > list_term_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Olist_Omap_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    map_te2328734355998148206rm_a_b: ( term_a_b > term_a_b ) > list_term_a_b > list_term_a_b ).

thf(sy_c_List_Olist_Oset_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    set_term_a_b_nat2: list_term_a_b_nat > set_term_a_b_nat ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    set_list_list_nat2: list_list_list_nat > set_list_list_nat ).

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__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    set_li8127237413610407972rm_a_b: list_l1829479457390431893rm_a_b > set_li7311725489111463791rm_a_b ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    set_list_term_a_b2: list_list_term_a_b > set_list_term_a_b ).

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__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    set_Pr3842133991353686454st_nat: list_P7940050157051400743st_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    set_Pr7273799732993181129rm_a_b: list_P3366363762698041518rm_a_b > set_Pr1829413238147913556rm_a_b ).

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

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    set_Pr7409510697108650714rm_a_b: list_P2364656488115551307rm_a_b > set_Pr4549835640365387557rm_a_b ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    set_Pr3323217615300463043st_nat: list_P4196053138373943208st_nat > set_Pr2659102613823815246st_nat ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    set_Pr1141850553043368956rm_a_b: list_P6146127666372278893rm_a_b > set_Pr2972776593051762503rm_a_b ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    set_Pr2370880052973118494rm_a_b: list_P8875379029341186191rm_a_b > set_Pr4386577575007340137rm_a_b ).

thf(sy_c_List_Olist_Oset_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    set_term_a_b2: list_term_a_b > set_term_a_b ).

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

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

thf(sy_c_List_Olist_Osize__list_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    size_l3466988539524548625rm_a_b: ( produc357393685978478089rm_a_b > nat ) > list_P8875379029341186191rm_a_b > nat ).

thf(sy_c_List_Olist_Osize__list_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    size_list_term_a_b: ( term_a_b > nat ) > list_term_a_b > nat ).

thf(sy_c_List_Olist_Otl_001t__List__Olist_It__Nat__Onat_J,type,
    tl_list_nat: list_list_nat > list_list_nat ).

thf(sy_c_List_Olist_Otl_001t__Nat__Onat,type,
    tl_nat: list_nat > list_nat ).

thf(sy_c_List_Olist_Otl_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    tl_Pro9011950709736066168rm_a_b: list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Olist_Otl_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    tl_term_a_b: list_term_a_b > list_term_a_b ).

thf(sy_c_List_Olist__ex1_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    list_e8867884845635725434_b_nat: ( ( term_a_b > nat ) > $o ) > list_term_a_b_nat > $o ).

thf(sy_c_List_Olist__ex1_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    list_e4462734821984335591st_nat: ( list_list_nat > $o ) > list_list_list_nat > $o ).

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

thf(sy_c_List_Olist__ex1_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    list_e6045419187443348440rm_a_b: ( list_P8875379029341186191rm_a_b > $o ) > list_l1829479457390431893rm_a_b > $o ).

thf(sy_c_List_Olist__ex1_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    list_e1122455069120957467rm_a_b: ( list_term_a_b > $o ) > list_list_term_a_b > $o ).

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

thf(sy_c_List_Olist__ex1_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    list_e4364535806343802730st_nat: ( produc1828647624359046049st_nat > $o ) > list_P7940050157051400743st_nat > $o ).

thf(sy_c_List_Olist__ex1_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    list_e8644085759156585930at_nat: ( product_prod_nat_nat > $o ) > list_P6011104703257516679at_nat > $o ).

thf(sy_c_List_Olist__ex1_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    list_e8606123503008938638rm_a_b: ( produc1234881154892807749rm_a_b > $o ) > list_P2364656488115551307rm_a_b > $o ).

thf(sy_c_List_Olist__ex1_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    list_e2893281867963234770rm_a_b: ( produc357393685978478089rm_a_b > $o ) > list_P8875379029341186191rm_a_b > $o ).

thf(sy_c_List_Olist__ex1_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    list_ex1_term_a_b: ( term_a_b > $o ) > list_term_a_b > $o ).

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

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

thf(sy_c_List_Olist__update_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    list_u4211539095652206455rm_a_b: list_P8875379029341186191rm_a_b > nat > produc357393685978478089rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Olist__update_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    list_update_term_a_b: list_term_a_b > nat > term_a_b > list_term_a_b ).

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

thf(sy_c_List_Olistrel1_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    listrel1_term_a_b: set_Pr4386577575007340137rm_a_b > set_Pr8564414093027780873rm_a_b ).

thf(sy_c_List_Olistrel_001t__Nat__Onat_001t__Nat__Onat,type,
    listrel_nat_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).

thf(sy_c_List_Olistrel_001t__Nat__Onat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    listrel_nat_term_a_b: set_Pr4549835640365387557rm_a_b > set_Pr2653742144321748037rm_a_b ).

thf(sy_c_List_Olistrel_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Nat__Onat,type,
    listrel_term_a_b_nat: set_Pr6708357783813671845_b_nat > set_Pr5972536988916469445st_nat ).

thf(sy_c_List_Olistrel_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    listre1194016999521814427rm_a_b: set_Pr4386577575007340137rm_a_b > set_Pr8564414093027780873rm_a_b ).

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

thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    maps_nat_term_a_b: ( nat > list_term_a_b ) > list_nat > list_term_a_b ).

thf(sy_c_List_Omaps_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Nat__Onat,type,
    maps_term_a_b_nat: ( term_a_b > list_nat ) > list_term_a_b > list_nat ).

thf(sy_c_List_Omaps_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    maps_t888753856850818283rm_a_b: ( term_a_b > list_term_a_b ) > list_term_a_b > list_term_a_b ).

thf(sy_c_List_Omeasures_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    measures_term_a_b: list_term_a_b_nat > set_Pr4386577575007340137rm_a_b ).

thf(sy_c_List_Omember_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    member_term_a_b_nat: list_term_a_b_nat > ( term_a_b > nat ) > $o ).

thf(sy_c_List_Omember_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    member_list_list_nat: list_list_list_nat > list_list_nat > $o ).

thf(sy_c_List_Omember_001t__List__Olist_It__Nat__Onat_J,type,
    member_list_nat: list_list_nat > list_nat > $o ).

thf(sy_c_List_Omember_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    member7820772194684704298rm_a_b: list_l1829479457390431893rm_a_b > list_P8875379029341186191rm_a_b > $o ).

thf(sy_c_List_Omember_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    member_list_term_a_b: list_list_term_a_b > list_term_a_b > $o ).

thf(sy_c_List_Omember_001t__Nat__Onat,type,
    member_nat: list_nat > nat > $o ).

thf(sy_c_List_Omember_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member2673981294409294524st_nat: list_P7940050157051400743st_nat > produc1828647624359046049st_nat > $o ).

thf(sy_c_List_Omember_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    member6104210405413575452at_nat: list_P6011104703257516679at_nat > product_prod_nat_nat > $o ).

thf(sy_c_List_Omember_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    member2625873403759427296rm_a_b: list_P2364656488115551307rm_a_b > produc1234881154892807749rm_a_b > $o ).

thf(sy_c_List_Omember_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    member1202727356028726564rm_a_b: list_P8875379029341186191rm_a_b > produc357393685978478089rm_a_b > $o ).

thf(sy_c_List_Omember_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    member_term_a_b: list_term_a_b > term_a_b > $o ).

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

thf(sy_c_List_On__lists_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    n_lists_term_a_b: nat > list_term_a_b > list_list_term_a_b ).

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__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    nth_Pr1098598711982373392rm_a_b: list_P8875379029341186191rm_a_b > nat > produc357393685978478089rm_a_b ).

thf(sy_c_List_Onth_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    nth_term_a_b: list_term_a_b > nat > term_a_b ).

thf(sy_c_List_Onull_001t__Nat__Onat,type,
    null_nat: list_nat > $o ).

thf(sy_c_List_Onull_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    null_term_a_b: list_term_a_b > $o ).

thf(sy_c_List_Oproduct_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc7187426634685890287rm_a_b: list_term_a_b > list_term_a_b > list_P8875379029341186191rm_a_b ).

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

thf(sy_c_List_Oproduct__lists_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc17669015410068453rm_a_b: list_list_term_a_b > list_list_term_a_b ).

thf(sy_c_List_Orotate1_001t__Nat__Onat,type,
    rotate1_nat: list_nat > list_nat ).

thf(sy_c_List_Orotate1_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    rotate1_term_a_b: list_term_a_b > list_term_a_b ).

thf(sy_c_List_Oshuffles__rel_001t__Nat__Onat,type,
    shuffles_rel_nat: produc1828647624359046049st_nat > produc1828647624359046049st_nat > $o ).

thf(sy_c_List_Oshuffles__rel_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    shuffl7548313169530246058rm_a_b: produc51424535725745577rm_a_b > produc51424535725745577rm_a_b > $o ).

thf(sy_c_List_Osplice_001t__Nat__Onat,type,
    splice_nat: list_nat > list_nat > list_nat ).

thf(sy_c_List_Osplice_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    splice_term_a_b: list_term_a_b > list_term_a_b > list_term_a_b ).

thf(sy_c_List_Osplice__rel_001t__Nat__Onat,type,
    splice_rel_nat: produc1828647624359046049st_nat > produc1828647624359046049st_nat > $o ).

thf(sy_c_List_Osplice__rel_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    splice_rel_term_a_b: produc51424535725745577rm_a_b > produc51424535725745577rm_a_b > $o ).

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

thf(sy_c_List_Osubseqs_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    subseqs_term_a_b: list_term_a_b > list_list_term_a_b ).

thf(sy_c_List_Otake_001t__List__Olist_It__Nat__Onat_J,type,
    take_list_nat: nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Otake_001t__Nat__Onat,type,
    take_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Otake_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    take_P7698341771522494711rm_a_b: nat > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_List_Otake_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    take_term_a_b: nat > list_term_a_b > list_term_a_b ).

thf(sy_c_List_Otranspose_001t__Nat__Onat,type,
    transpose_nat: list_list_nat > list_list_nat ).

thf(sy_c_List_Otranspose_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    transpose_term_a_b: list_list_term_a_b > list_list_term_a_b ).

thf(sy_c_List_Ozip_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
    zip_li7157463729305086713st_nat: list_list_nat > list_list_nat > list_P7940050157051400743st_nat ).

thf(sy_c_List_Ozip_001t__List__Olist_It__Nat__Onat_J_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    zip_li1978623282951132976rm_a_b: list_list_nat > list_P8875379029341186191rm_a_b > list_P3366363762698041518rm_a_b ).

thf(sy_c_List_Ozip_001t__Nat__Onat_001t__Nat__Onat,type,
    zip_nat_nat: list_nat > list_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Ozip_001t__Nat__Onat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    zip_nat_term_a_b: list_nat > list_term_a_b > list_P2364656488115551307rm_a_b ).

thf(sy_c_List_Ozip_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_001t__List__Olist_It__Nat__Onat_J,type,
    zip_Pr4019727599664654706st_nat: list_P8875379029341186191rm_a_b > list_list_nat > list_P4196053138373943208st_nat ).

thf(sy_c_List_Ozip_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    zip_Pr5674138466097917431rm_a_b: list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b > list_P6146127666372278893rm_a_b ).

thf(sy_c_List_Ozip_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Nat__Onat,type,
    zip_term_a_b_nat: list_term_a_b > list_nat > list_P4523178631563835595_b_nat ).

thf(sy_c_List_Ozip_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    zip_te2260252107881041761rm_a_b: list_term_a_b > list_term_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_Missing__List_Oconcat__lists_001t__Nat__Onat,type,
    missin4567272213201432058ts_nat: list_list_nat > list_list_nat ).

thf(sy_c_Missing__List_Oconcat__lists_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin8060632096978918206rm_a_b: list_list_term_a_b > list_list_term_a_b ).

thf(sy_c_Missing__List_Odistinct__eq_001t__Nat__Onat,type,
    missin2585702830974895025eq_nat: ( nat > nat > $o ) > list_nat > $o ).

thf(sy_c_Missing__List_Odistinct__eq_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin7069401481566841205rm_a_b: ( term_a_b > term_a_b > $o ) > list_term_a_b > $o ).

thf(sy_c_Missing__List_Ofilter2_001t__Nat__Onat_001t__Nat__Onat,type,
    missin7656342814955748836at_nat: ( nat > nat > $o ) > list_nat > list_nat > produc1828647624359046049st_nat ).

thf(sy_c_Missing__List_Ofilter2_001t__Nat__Onat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin7648764293464682024rm_a_b: ( nat > term_a_b > $o ) > list_nat > list_term_a_b > produc9043357390500214885rm_a_b ).

thf(sy_c_Missing__List_Ofilter2_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Nat__Onat,type,
    missin8610218420629654184_b_nat: ( term_a_b > nat > $o ) > list_term_a_b > list_nat > produc895009549562661605st_nat ).

thf(sy_c_Missing__List_Ofilter2_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin5478484803207743724rm_a_b: ( term_a_b > term_a_b > $o ) > list_term_a_b > list_term_a_b > produc51424535725745577rm_a_b ).

thf(sy_c_Missing__List_Olist__diff_001t__Nat__Onat,type,
    missin818507234016924876ff_nat: list_nat > list_nat > list_nat ).

thf(sy_c_Missing__List_Olist__diff_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin8626798239073972496rm_a_b: list_term_a_b > list_term_a_b > list_term_a_b ).

thf(sy_c_Missing__List_Olist__inter_001t__List__Olist_It__Nat__Onat_J,type,
    missin6532874241183986279st_nat: list_list_nat > list_list_nat > list_list_nat ).

thf(sy_c_Missing__List_Olist__inter_001t__Nat__Onat,type,
    missin6377695591745783511er_nat: list_nat > list_nat > list_nat ).

thf(sy_c_Missing__List_Olist__inter_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    missin3381965633867963714rm_a_b: list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b ).

thf(sy_c_Missing__List_Olist__inter_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin8990008842131906971rm_a_b: list_term_a_b > list_term_a_b > list_term_a_b ).

thf(sy_c_Missing__List_Olist__inter__rel_001t__List__Olist_It__Nat__Onat_J,type,
    missin517122817877786516st_nat: produc4326814125627636033st_nat > produc4326814125627636033st_nat > $o ).

thf(sy_c_Missing__List_Olist__inter__rel_001t__Nat__Onat,type,
    missin8053613324461657732el_nat: produc1828647624359046049st_nat > produc1828647624359046049st_nat > $o ).

thf(sy_c_Missing__List_Olist__inter__rel_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    missin5508247467832761941rm_a_b: produc8018406874456678119rm_a_b > produc8018406874456678119rm_a_b > $o ).

thf(sy_c_Missing__List_Olist__inter__rel_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin2974257418825707208rm_a_b: produc51424535725745577rm_a_b > produc51424535725745577rm_a_b > $o ).

thf(sy_c_Missing__List_Olist__union_001t__Nat__Onat,type,
    missin7861371969718421194on_nat: list_nat > list_nat > list_nat ).

thf(sy_c_Missing__List_Olist__union_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin4887234603271916558rm_a_b: list_term_a_b > list_term_a_b > list_term_a_b ).

thf(sy_c_Missing__List_Omin__list_001t__Nat__Onat,type,
    missing_min_list_nat: list_nat > nat ).

thf(sy_c_Missing__List_Ospan_001t__Nat__Onat,type,
    missing_span_nat: ( nat > $o ) > list_nat > produc1828647624359046049st_nat ).

thf(sy_c_Missing__List_Ospan_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    missin2225838228573957143rm_a_b: ( term_a_b > $o ) > list_term_a_b > produc51424535725745577rm_a_b ).

thf(sy_c_Missing__List_Osubtract__list__sorted_001t__Nat__Onat,type,
    missin6424796737333596952ed_nat: list_nat > list_nat > list_nat ).

thf(sy_c_Missing__List_Osubtract__list__sorted__rel_001t__Nat__Onat,type,
    missin3644257100165608323el_nat: produc1828647624359046049st_nat > produc1828647624359046049st_nat > $o ).

thf(sy_c_Missing__List_Ounion__list__sorted_001t__Nat__Onat,type,
    missin8019018944680490243ed_nat: list_nat > list_nat > list_nat ).

thf(sy_c_Missing__List_Ounion__list__sorted__rel_001t__Nat__Onat,type,
    missin7611735270441097048el_nat: produc1828647624359046049st_nat > produc1828647624359046049st_nat > $o ).

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

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

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

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    size_s8600120110137556219rm_a_b: list_P8875379029341186191rm_a_b > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    size_s8906293707977694520rm_a_b: list_term_a_b > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    size_s1656455353560805493rm_a_b: produc357393685978478089rm_a_b > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    size_size_term_a_b: term_a_b > nat ).

thf(sy_c_Option_Ooption_ONone_001t__Sum____Type__Osum_Itf__a_Mtf__b_J,type,
    none_Sum_sum_a_b: option_Sum_sum_a_b ).

thf(sy_c_Orderings_Obot__class_Obot_001_062_It__List__Olist_It__Nat__Onat_J_M_Eo_J,type,
    bot_bot_list_nat_o: list_nat > $o ).

thf(sy_c_Orderings_Obot__class_Obot_001_062_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_M_Eo_J,type,
    bot_bo23760184229683272_a_b_o: produc357393685978478089rm_a_b > $o ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    bot_bo617545005214784205_b_nat: set_term_a_b_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    bot_bot_set_list_nat: set_list_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    bot_bo8941492048910247406rm_a_b: set_list_term_a_b ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Nat__Onat_J,type,
    bot_bot_set_nat: set_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    bot_bo8485564385918328941st_nat: set_Pr3451248702717554689st_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    bot_bo2099793752762293965at_nat: set_Pr1261947904930325089at_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    bot_bo4503703197695894929rm_a_b: set_Pr4549835640365387557rm_a_b ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    bot_bo197521221353338581rm_a_b: set_Pr4386577575007340137rm_a_b ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    bot_bot_set_term_a_b: set_term_a_b ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
    ord_less_nat: nat > 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__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_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    ord_le118470702582115849rm_a_b: set_Pr4386577575007340137rm_a_b > set_Pr4386577575007340137rm_a_b > $o ).

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

thf(sy_c_Orderings_Oord__class_Omin_001t__Nat__Onat,type,
    ord_min_nat: nat > nat > nat ).

thf(sy_c_Product__Type_OPair_001_062_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_M_062_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_M_Eo_J_J_001t__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    produc5053050857753321404_b_nat: ( ( term_a_b > nat ) > ( term_a_b > nat ) > $o ) > list_term_a_b_nat > produc4181971923416023106_b_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc4727192421694094319st_nat: ( nat > nat > $o ) > list_nat > produc254973753779126261st_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc3127733452865184594st_nat: ( nat > nat > $o ) > produc1828647624359046049st_nat > produc4787317212837456354st_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc2750092164434624090rm_a_b: ( nat > term_a_b > $o ) > produc9043357390500214885rm_a_b > produc8734217775477389290rm_a_b ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_Eo_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc8587622027977423880st_nat: ( nat > $o ) > list_nat > produc4226810134323546766st_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_062_It__Nat__Onat_M_Eo_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc7813177934582050522st_nat: ( term_a_b > nat > $o ) > produc895009549562661605st_nat > produc6817702157447538794st_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_J_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc5931190720334929579rm_a_b: ( term_a_b > term_a_b > $o ) > list_term_a_b > produc8847469151730319409rm_a_b ).

thf(sy_c_Product__Type_OPair_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc1278856658843369954rm_a_b: ( term_a_b > term_a_b > $o ) > produc51424535725745577rm_a_b > produc8215350257458196082rm_a_b ).

thf(sy_c_Product__Type_OPair_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_M_Eo_J_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc2136336272451886600rm_a_b: ( term_a_b > $o ) > list_term_a_b > produc5260046862718186894rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J_001t__List__Olist_I_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J_J,type,
    produc4472720766030603199_b_nat: list_term_a_b_nat > list_term_a_b_nat > produc4191184485715949063_b_nat ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    produc7129799990162260089st_nat: list_list_nat > list_list_nat > produc4326814125627636033st_nat ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_001t__List__Olist_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc7557079580777928833rm_a_b: list_list_term_a_b > list_list_term_a_b > produc5770105429786724425rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J,type,
    produc2887701473640236333_nat_o: list_nat > ( nat > nat > $o ) > produc1531442364937356539_nat_o ).

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__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc4336470666470712605rm_a_b: list_nat > list_term_a_b > produc9043357390500214885rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc3015861401532503632rm_a_b: list_nat > produc357393685978478089rm_a_b > produc6373727562496775070rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc5151171985953862413rm_a_b: list_nat > term_a_b > produc7711739908350443733rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc5943733680697469783at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat > produc6392793444374437607at_nat ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc8811016564285052503rm_a_b: list_P2364656488115551307rm_a_b > list_P2364656488115551307rm_a_b > produc1601299519461031143rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc129289007660123479rm_a_b: list_P8875379029341186191rm_a_b > list_P8875379029341186191rm_a_b > produc8018406874456678119rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc5386604813764302749st_nat: list_term_a_b > list_nat > produc895009549562661605st_nat ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc4885699992713594593rm_a_b: list_term_a_b > list_term_a_b > produc51424535725745577rm_a_b ).

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

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc7556795533067728397rm_a_b: nat > list_term_a_b > produc6666515723797200341rm_a_b ).

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

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc4673969588984964072st_nat: nat > produc4575160907756185873st_nat > produc3720191947069994550st_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc1516572978046417917rm_a_b: nat > term_a_b > produc1234881154892807749rm_a_b ).

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

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc3744802840634486403st_nat: produc254973753779126261st_nat > produc254973753779126261st_nat > produc8674823750183776971st_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    produc728103027205548823st_nat: produc4787317212837456354st_nat > produc4787317212837456354st_nat > produc6013561220858417447st_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J,type,
    produc3563911201077956380_nat_o: produc1828647624359046049st_nat > ( nat > nat > $o ) > produc4754350896526429996_nat_o ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc988773521843941591st_nat: produc1828647624359046049st_nat > produc1828647624359046049st_nat > produc1342688880896445543st_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc5056965718246025362st_nat: produc357393685978478089rm_a_b > list_nat > produc2423145444804056984st_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc1763473618796451543rm_a_b: produc357393685978478089rm_a_b > produc357393685978478089rm_a_b > produc4523971788519308903rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    produc2026711137822539155_a_nat: product_prod_a_nat > product_prod_a_nat > produc4708774622424448987_a_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_001t__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J,type,
    produc668170914141311575xt_a_b: produc5967569696164677611xt_a_b > produc5967569696164677611xt_a_b > produc7427625295709621991xt_a_b ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_001t__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc411707225774285981rm_a_b: produc6551080308567045442rm_a_b > produc6551080308567045442rm_a_b > produc4700046383489396069rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J_001t__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J,type,
    produc8492722943253109151xt_a_b: set_Pr4934435412358123699_a_nat > produc5967569696164677611xt_a_b > produc7466736845116596589xt_a_b ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J_001t__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc8030969961714872974rm_a_b: set_Pr4934435412358123699_a_nat > produc6551080308567045442rm_a_b > produc5279506192219892694rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc1096132875450744233rm_a_b: subterm_and_ctxt_a_b > produc7711739908350443733rm_a_b > produc8210972263561988409rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J,type,
    produc4019867106713534551xt_a_b: subterm_and_ctxt_a_b > subterm_and_ctxt_a_b > produc7446967628161468135xt_a_b ).

thf(sy_c_Product__Type_OPair_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc4052837482945413184rm_a_b: subterm_and_ctxt_a_b > term_a_b > produc8965594506121923398rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_001tf__b,type,
    produc2012298300495474131_a_b_b: subterm_and_ctxt_a_b > b > produc3939298039639560163_a_b_b ).

thf(sy_c_Product__Type_OPair_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc4563063199488751885st_nat: term_a_b > list_nat > produc3697673438841856213st_nat ).

thf(sy_c_Product__Type_OPair_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc967488655884398673rm_a_b: term_a_b > list_term_a_b > produc5674375379913900953rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Nat__Onat,type,
    produc2478027105211390077_b_nat: term_a_b > nat > produc2720409071189015237_b_nat ).

thf(sy_c_Product__Type_OPair_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    produc3812856575676843240rm_a_b: term_a_b > produc7711739908350443733rm_a_b > produc2732850333517536310rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    produc2767632391123599848rm_a_b: term_a_b > produc6666515723797200341rm_a_b > produc8138335000387836214rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc7020197800436672577rm_a_b: term_a_b > term_a_b > produc357393685978478089rm_a_b ).

thf(sy_c_Product__Type_OPair_001t__Term__Oterm_Itf__a_Mtf__b_J_001tf__b,type,
    produc1666658391573147538_a_b_b: term_a_b > b > produc6510227487322075744_a_b_b ).

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

thf(sy_c_Product__Type_OPair_001tf__b_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J,type,
    produc8957000483500942811xt_a_b: b > subterm_and_ctxt_a_b > produc5967569696164677611xt_a_b ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc1437816968797971900rm_a_b: b > term_a_b > produc6551080308567045442rm_a_b ).

thf(sy_c_Product__Type_Ocurry_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__List__Olist_It__Nat__Onat_J_001_Eo,type,
    produc1492399064212916507_nat_o: ( produc254973753779126261st_nat > $o ) > ( nat > nat > $o ) > list_nat > $o ).

thf(sy_c_Product__Type_Ocurry_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_001_Eo,type,
    produc2023121225571165330_nat_o: ( produc4787317212837456354st_nat > $o ) > ( nat > nat > $o ) > produc1828647624359046049st_nat > $o ).

thf(sy_c_Product__Type_Ocurry_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J_001_Eo,type,
    produc6008550485034061667_a_b_o: ( produc357393685978478089rm_a_b > $o ) > term_a_b > term_a_b > $o ).

thf(sy_c_Product__Type_Ocurry_001tf__a_001t__Nat__Onat_001_Eo,type,
    produc5346504556365831315_nat_o: ( product_prod_a_nat > $o ) > a > nat > $o ).

thf(sy_c_Product__Type_Ocurry_001tf__b_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_001_Eo,type,
    produc6702705547864706121_a_b_o: ( produc5967569696164677611xt_a_b > $o ) > b > subterm_and_ctxt_a_b > $o ).

thf(sy_c_Product__Type_Ocurry_001tf__b_001t__Term__Oterm_Itf__a_Mtf__b_J_001_Eo,type,
    produc863636840395689358_a_b_o: ( produc6551080308567045442rm_a_b > $o ) > b > term_a_b > $o ).

thf(sy_c_Product__Type_Oprod_Oswap_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc3374130635869402703st_nat: produc254973753779126261st_nat > produc1531442364937356539_nat_o ).

thf(sy_c_Product__Type_Oprod_Oswap_001t__List__Olist_It__Nat__Onat_J_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J,type,
    produc1534639687815544717_nat_o: produc1531442364937356539_nat_o > produc254973753779126261st_nat ).

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

thf(sy_c_Product__Type_Oprod_Oswap_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J,type,
    produc1311334868336790716_nat_o: produc4754350896526429996_nat_o > produc4787317212837456354st_nat ).

thf(sy_c_Product__Type_Oprod_Oswap_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_001tf__b,type,
    produc3717951326210472819_a_b_b: produc3939298039639560163_a_b_b > produc5967569696164677611xt_a_b ).

thf(sy_c_Product__Type_Oprod_Oswap_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc2541846788875228641rm_a_b: produc357393685978478089rm_a_b > produc357393685978478089rm_a_b ).

thf(sy_c_Product__Type_Oprod_Oswap_001t__Term__Oterm_Itf__a_Mtf__b_J_001tf__b,type,
    produc1428861184864852466_a_b_b: produc6510227487322075744_a_b_b > produc6551080308567045442rm_a_b ).

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

thf(sy_c_Product__Type_Oprod_Oswap_001tf__b_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J,type,
    produc1439281472361165691xt_a_b: produc5967569696164677611xt_a_b > produc3939298039639560163_a_b_b ).

thf(sy_c_Product__Type_Oprod_Oswap_001tf__b_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    produc1200019762089676828rm_a_b: produc6551080308567045442rm_a_b > produc6510227487322075744_a_b_b ).

thf(sy_c_Replace__Constant_Oconst__replace__closed_001tf__a_001tf__b,type,
    replac8618238927709742794ed_a_b: a > set_Pr4386577575007340137rm_a_b > $o ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    collec5989764272469232197st_nat: ( list_list_nat > $o ) > set_list_list_nat ).

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

thf(sy_c_Set_OCollect_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    collec4396703598834874874rm_a_b: ( list_P8875379029341186191rm_a_b > $o ) > set_li7311725489111463791rm_a_b ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    collec2649484519605854073rm_a_b: ( list_term_a_b > $o ) > set_list_term_a_b ).

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

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    collec99177395925924084rm_a_b: ( produc357393685978478089rm_a_b > $o ) > set_Pr4386577575007340137rm_a_b ).

thf(sy_c_Set_OCollect_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    collect_term_a_b: ( term_a_b > $o ) > set_term_a_b ).

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

thf(sy_c_Set_Othe__elem_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    the_elem_term_a_b: set_term_a_b > term_a_b ).

thf(sy_c_Subterm__and__Context_Octxt_OHole_001tf__a_001tf__b,type,
    subterm_and_Hole_a_b: subterm_and_ctxt_a_b ).

thf(sy_c_Subterm__and__Context_Octxt_OMore_001tf__a_001tf__b,type,
    subterm_and_More_a_b: a > list_term_a_b > subterm_and_ctxt_a_b > list_term_a_b > subterm_and_ctxt_a_b ).

thf(sy_c_Subterm__and__Context_Octxt__apply__term_001tf__a_001tf__b,type,
    subter2376574525758040790rm_a_b: subterm_and_ctxt_a_b > term_a_b > term_a_b ).

thf(sy_c_Subterm__and__Context_Octxt__apply__term__rel_001tf__a_001tf__b,type,
    subter4805821089994021477el_a_b: produc8965594506121923398rm_a_b > produc8965594506121923398rm_a_b > $o ).

thf(sy_c_Subterm__and__Context_Osupt_001tf__a_001tf__b,type,
    subterm_and_supt_a_b: set_Pr4386577575007340137rm_a_b ).

thf(sy_c_Subterm__and__Context_Osupteq_001tf__a_001tf__b,type,
    subter523971068842742411eq_a_b: set_Pr4386577575007340137rm_a_b ).

thf(sy_c_Subterm__and__Context_Osupteqp_001tf__a_001tf__b,type,
    subter3057829548224121575qp_a_b: term_a_b > term_a_b > $o ).

thf(sy_c_Subterm__and__Context_Osuptp_001tf__a_001tf__b,type,
    subter8709468037939584051tp_a_b: term_a_b > term_a_b > $o ).

thf(sy_c_Term_Oterm_OFun_001tf__a_001tf__b,type,
    fun_a_b: a > list_term_a_b > term_a_b ).

thf(sy_c_Term_Oterm_OVar_001tf__b_001tf__a,type,
    var_b_a: b > term_a_b ).

thf(sy_c_Term_Oterm_Oargs_001tf__a_001tf__b,type,
    args_a_b: term_a_b > list_term_a_b ).

thf(sy_c_Term__Context_Octxt__at__pos_001tf__a_001tf__b,type,
    term_ctxt_at_pos_a_b: term_a_b > list_nat > subterm_and_ctxt_a_b ).

thf(sy_c_Term__Context_Octxt__at__pos__rel_001tf__a_001tf__b,type,
    term_c6096582210798399037el_a_b: produc3697673438841856213st_nat > produc3697673438841856213st_nat > $o ).

thf(sy_c_Term__Context_Odepth_001tf__a_001tf__b,type,
    term_depth_a_b: term_a_b > nat ).

thf(sy_c_Term__Context_Ofun__at_001tf__a_001tf__b,type,
    term_fun_at_a_b: term_a_b > list_nat > option_Sum_sum_a_b ).

thf(sy_c_Term__Context_Ofunas__term_001tf__a_001tf__b,type,
    term_funas_term_a_b: term_a_b > set_Pr4934435412358123699_a_nat ).

thf(sy_c_Term__Context_Ohole__pos_001tf__a_001tf__b,type,
    term_hole_pos_a_b: subterm_and_ctxt_a_b > list_nat ).

thf(sy_c_Term__Context_Opos__diff_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    term_p4502178508558846150_b_nat: list_term_a_b_nat > list_term_a_b_nat > list_term_a_b_nat ).

thf(sy_c_Term__Context_Opos__diff_001t__List__Olist_It__Nat__Onat_J,type,
    term_p7564741194569991203st_nat: list_list_nat > list_list_nat > list_list_nat ).

thf(sy_c_Term__Context_Opos__diff_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    term_p6300577740959955047rm_a_b: list_list_term_a_b > list_list_term_a_b > list_list_term_a_b ).

thf(sy_c_Term__Context_Opos__diff_001t__Nat__Onat,type,
    term_pos_diff_nat: list_nat > list_nat > list_nat ).

thf(sy_c_Term__Context_Opos__diff_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    term_p3376976900432600702at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_Term__Context_Opos__diff_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    term_p4159419441187170626rm_a_b: list_P2364656488115551307rm_a_b > list_P2364656488115551307rm_a_b > list_P2364656488115551307rm_a_b ).

thf(sy_c_Term__Context_Opos__diff_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    term_p798503758663136087rm_a_b: list_term_a_b > list_term_a_b > list_term_a_b ).

thf(sy_c_Term__Context_Oposition__less__eq_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    term_p7703854676200117161_b_nat: list_term_a_b_nat > list_term_a_b_nat > $o ).

thf(sy_c_Term__Context_Oposition__less__eq_001t__List__Olist_It__Nat__Onat_J,type,
    term_p5934426891874639750st_nat: list_list_nat > list_list_nat > $o ).

thf(sy_c_Term__Context_Oposition__less__eq_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    term_p2593460539914126922rm_a_b: list_list_term_a_b > list_list_term_a_b > $o ).

thf(sy_c_Term__Context_Oposition__less__eq_001t__Nat__Onat,type,
    term_p3503116865373065078eq_nat: list_nat > list_nat > $o ).

thf(sy_c_Term__Context_Oposition__less__eq_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    term_p5452418589371346395at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat > $o ).

thf(sy_c_Term__Context_Oposition__less__eq_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    term_p6496282196689937951rm_a_b: list_P2364656488115551307rm_a_b > list_P2364656488115551307rm_a_b > $o ).

thf(sy_c_Term__Context_Oposition__less__eq_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    term_p8391561492822560442rm_a_b: list_term_a_b > list_term_a_b > $o ).

thf(sy_c_Term__Context_Oposition__par_001_062_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    term_p700130527931300261_b_nat: list_term_a_b_nat > list_term_a_b_nat > $o ).

thf(sy_c_Term__Context_Oposition__par_001t__List__Olist_It__Nat__Onat_J,type,
    term_p4950861579910180738st_nat: list_list_nat > list_list_nat > $o ).

thf(sy_c_Term__Context_Oposition__par_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    term_p3834017231281530950rm_a_b: list_list_term_a_b > list_list_term_a_b > $o ).

thf(sy_c_Term__Context_Oposition__par_001t__Nat__Onat,type,
    term_p5017330785391824242ar_nat: list_nat > list_nat > $o ).

thf(sy_c_Term__Context_Oposition__par_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    term_p8419326880412058847at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat > $o ).

thf(sy_c_Term__Context_Oposition__par_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    term_p6424153574643673891rm_a_b: list_P2364656488115551307rm_a_b > list_P2364656488115551307rm_a_b > $o ).

thf(sy_c_Term__Context_Oposition__par_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    term_p7407996180858101430rm_a_b: list_term_a_b > list_term_a_b > $o ).

thf(sy_c_Term__Context_Oposs_001tf__a_001tf__b,type,
    term_poss_a_b: term_a_b > set_list_nat ).

thf(sy_c_Term__Context_Oreplace__term__at_001tf__a_001tf__b,type,
    term_r6860082780075436317at_a_b: term_a_b > list_nat > term_a_b > term_a_b ).

thf(sy_c_Term__Context_Oreplace__term__at__rel_001tf__a_001tf__b,type,
    term_r1280879029893354718el_a_b: produc2732850333517536310rm_a_b > produc2732850333517536310rm_a_b > $o ).

thf(sy_c_Term__Context_Osubt__at_001tf__a_001tf__b,type,
    term_subt_at_a_b: term_a_b > list_nat > term_a_b ).

thf(sy_c_Term__Context_Osubt__at__rel_001tf__a_001tf__b,type,
    term_subt_at_rel_a_b: produc3697673438841856213st_nat > produc3697673438841856213st_nat > $o ).

thf(sy_c_Terms__Positions_Oall__ctxt__closed_001tf__a_001tf__b,type,
    terms_5226143800768910156ed_a_b: set_Pr4934435412358123699_a_nat > set_Pr4386577575007340137rm_a_b > $o ).

thf(sy_c_Terms__Positions_Oinv__const__ctxt_H_001tf__a_001tf__b,type,
    terms_130083692264552600xt_a_b: set_Pr4934435412358123699_a_nat > b > subterm_and_ctxt_a_b > term_a_b ).

thf(sy_c_Terms__Positions_Oinv__const__ctxt_H__rel_001tf__a_001tf__b,type,
    terms_8678133689484017443el_a_b: produc7466736845116596589xt_a_b > produc7466736845116596589xt_a_b > $o ).

thf(sy_c_Terms__Positions_Oposs__of__term_001tf__a_001tf__b,type,
    terms_7168686267159881682rm_a_b: term_a_b > term_a_b > set_list_nat ).

thf(sy_c_Terms__Positions_Oreplace__term__context__at_001tf__a_001tf__b,type,
    terms_4774307173741787698at_a_b: subterm_and_ctxt_a_b > list_nat > term_a_b > subterm_and_ctxt_a_b ).

thf(sy_c_Terms__Positions_Oreplace__term__context__at__rel_001tf__a_001tf__b,type,
    terms_6690452295706263049el_a_b: produc8210972263561988409rm_a_b > produc8210972263561988409rm_a_b > $o ).

thf(sy_c_Terms__Positions_Oterm__to__sig_001tf__a_001tf__b,type,
    terms_8519481630511763164ig_a_b: set_Pr4934435412358123699_a_nat > b > term_a_b > term_a_b ).

thf(sy_c_Terms__Positions_Oterm__to__sig__rel_001tf__a_001tf__b,type,
    terms_8023737178250165727el_a_b: produc5279506192219892694rm_a_b > produc5279506192219892694rm_a_b > $o ).

thf(sy_c_Transitive__Closure_Oacyclic_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    transi823393136465916248rm_a_b: set_Pr2972776593051762503rm_a_b > $o ).

thf(sy_c_Transitive__Closure_Oacyclic_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    transi5314701259734769157rm_a_b: set_Pr4386577575007340137rm_a_b > $o ).

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__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    transi911495901722478305rm_a_b: set_Pr8564414093027780873rm_a_b > set_Pr8564414093027780873rm_a_b ).

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_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    transi2615809358984392588rm_a_b: set_Pr2972776593051762503rm_a_b > set_Pr2972776593051762503rm_a_b ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    transi7742714808557438673rm_a_b: set_Pr4386577575007340137rm_a_b > set_Pr4386577575007340137rm_a_b ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    transi5466210696635040020st_nat: set_Pr5017933239610314539st_nat > set_Pr5017933239610314539st_nat ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    transi6759787062683689347st_nat: set_Pr1972372305556864775st_nat > set_Pr1972372305556864775st_nat ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    transi9211502839322181930rm_a_b: set_Pr2972776593051762503rm_a_b > set_Pr2972776593051762503rm_a_b ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J,type,
    transi6805586507763294364_a_nat: set_Pr1811044260758604347_a_nat > set_Pr1811044260758604347_a_nat ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J,type,
    transi2700106457712546828xt_a_b: set_Pr6382717822055741895xt_a_b > set_Pr6382717822055741895xt_a_b ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    transi7411496497035545569rm_a_b: set_Pr5233514982410851781rm_a_b > set_Pr5233514982410851781rm_a_b ).

thf(sy_c_Transitive__Closure_Otrancl_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    transi7922773638565587891rm_a_b: set_Pr4386577575007340137rm_a_b > set_Pr4386577575007340137rm_a_b ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_Mt__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    accp_P5780766562878364362st_nat: ( produc4326814125627636033st_nat > produc4326814125627636033st_nat > $o ) > produc4326814125627636033st_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    accp_P8037286306265792042st_nat: ( produc1828647624359046049st_nat > produc1828647624359046049st_nat > $o ) > produc1828647624359046049st_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    accp_P4702822494513790448rm_a_b: ( produc8018406874456678119rm_a_b > produc8018406874456678119rm_a_b > $o ) > produc8018406874456678119rm_a_b > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    accp_P1505376972976473906rm_a_b: ( produc51424535725745577rm_a_b > produc51424535725745577rm_a_b > $o ) > produc51424535725745577rm_a_b > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    accp_P5862832406524804077st_nat: ( produc3720191947069994550st_nat > produc3720191947069994550st_nat > $o ) > produc3720191947069994550st_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_J,type,
    accp_P7840533129395112868xt_a_b: ( produc7466736845116596589xt_a_b > produc7466736845116596589xt_a_b > $o ) > produc7466736845116596589xt_a_b > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    accp_P3366084933459579103rm_a_b: ( produc5279506192219892694rm_a_b > produc5279506192219892694rm_a_b > $o ) > produc5279506192219892694rm_a_b > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    accp_P6624108184151110466rm_a_b: ( produc8210972263561988409rm_a_b > produc8210972263561988409rm_a_b > $o ) > produc8210972263561988409rm_a_b > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    accp_P3593619727431919613rm_a_b: ( produc8965594506121923398rm_a_b > produc8965594506121923398rm_a_b > $o ) > produc8965594506121923398rm_a_b > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    accp_P682940083893826398st_nat: ( produc3697673438841856213st_nat > produc3697673438841856213st_nat > $o ) > produc3697673438841856213st_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    accp_P2729577386226225901rm_a_b: ( produc2732850333517536310rm_a_b > produc2732850333517536310rm_a_b > $o ) > produc2732850333517536310rm_a_b > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    accp_P8135062053096525805rm_a_b: ( produc8138335000387836214rm_a_b > produc8138335000387836214rm_a_b > $o ) > produc8138335000387836214rm_a_b > $o ).

thf(sy_c_Wfrec_Osame__fst_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__List__Olist_It__Nat__Onat_J,type,
    same_f8474159707804626138st_nat: ( ( nat > nat > $o ) > $o ) > ( ( nat > nat > $o ) > set_Pr3451248702717554689st_nat ) > set_Pr5017933239610314539st_nat ).

thf(sy_c_Wfrec_Osame__fst_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    same_f7507793245562524199st_nat: ( ( nat > nat > $o ) > $o ) > ( ( nat > nat > $o ) > set_Pr915550674247830855st_nat ) > set_Pr1972372305556864775st_nat ).

thf(sy_c_Wfrec_Osame__fst_001t__Term__Oterm_Itf__a_Mtf__b_J_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    same_f843731131676418198rm_a_b: ( term_a_b > $o ) > ( term_a_b > set_Pr4386577575007340137rm_a_b ) > set_Pr2972776593051762503rm_a_b ).

thf(sy_c_Wfrec_Osame__fst_001tf__a_001t__Nat__Onat,type,
    same_fst_a_nat: ( a > $o ) > ( a > set_Pr1261947904930325089at_nat ) > set_Pr1811044260758604347_a_nat ).

thf(sy_c_Wfrec_Osame__fst_001tf__b_001t__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J,type,
    same_f5210226418363274032xt_a_b: ( b > $o ) > ( b > set_Pr418624375388990407xt_a_b ) > set_Pr6382717822055741895xt_a_b ).

thf(sy_c_Wfrec_Osame__fst_001tf__b_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    same_fst_b_term_a_b: ( b > $o ) > ( b > set_Pr4386577575007340137rm_a_b ) > set_Pr5233514982410851781rm_a_b ).

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

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

thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    member7646937072540562872rm_a_b: list_P8875379029341186191rm_a_b > set_li7311725489111463791rm_a_b > $o ).

thf(sy_c_member_001t__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    member_list_term_a_b2: list_term_a_b > set_list_term_a_b > $o ).

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

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member5350383351084882060st_nat: produc254973753779126261st_nat > set_Pr7072801126362145067st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    member6951660485171671051st_nat: produc4787317212837456354st_nat > set_Pr4817715314677154882st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_Mt__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
    member8680655010358287850st_nat: produc4326814125627636033st_nat > set_Pr1190453367779242145st_nat > $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__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    member7814915433699591566rm_a_b: produc9043357390500214885rm_a_b > set_Pr2653742144321748037rm_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    member4140859439665155893rm_a_b: produc6373727562496775070rm_a_b > set_Pr1829413238147913556rm_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_J,type,
    member2631635837537579280rm_a_b: produc8018406874456678119rm_a_b > set_Pr3870824916597072583rm_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member8889939629616814094st_nat: produc895009549562661605st_nat > set_Pr5972536988916469445st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    member4405265420456397394rm_a_b: produc51424535725745577rm_a_b > set_Pr8564414093027780873rm_a_b > $o ).

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

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    member7514656309480873070rm_a_b: produc1234881154892807749rm_a_b > set_Pr4549835640365387557rm_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    member6929873720474945908st_nat: produc8674823750183776971st_nat > set_Pr5017933239610314539st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J_J,type,
    member954505421117658448st_nat: produc6013561220858417447st_nat > set_Pr1972372305556864775st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    member5236317644330119056st_nat: produc1342688880896445543st_nat > set_Pr915550674247830855st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member190277321972437807st_nat: produc2423145444804056984st_nat > set_Pr2659102613823815246st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    member8417600551952982416rm_a_b: produc4523971788519308903rm_a_b > set_Pr2972776593051762503rm_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_Itf__a_Mt__Nat__Onat_J_J,type,
    member9062615507155100804_a_nat: produc4708774622424448987_a_nat > set_Pr1811044260758604347_a_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J_J,type,
    member4428120077375243280xt_a_b: produc7427625295709621991xt_a_b > set_Pr6382717822055741895xt_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J,type,
    member7542685802389602574rm_a_b: produc4700046383489396069rm_a_b > set_Pr5233514982410851781rm_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J,type,
    member6284495302721838608xt_a_b: produc7446967628161468135xt_a_b > set_Pr418624375388990407xt_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Nat__Onat_J,type,
    member9000184225777080558_b_nat: produc2720409071189015237_b_nat > set_Pr6708357783813671845_b_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    member5869715511025134514rm_a_b: produc357393685978478089rm_a_b > set_Pr4386577575007340137rm_a_b > $o ).

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

thf(sy_c_member_001t__Product____Type__Oprod_Itf__b_Mt__Subterm____and____Context__Octxt_Itf__a_Mtf__b_J_J,type,
    member6425110754370078356xt_a_b: produc5967569696164677611xt_a_b > set_Pr969339255790132299xt_a_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__b_Mt__Term__Oterm_Itf__a_Mtf__b_J_J,type,
    member7000133282412810073rm_a_b: produc6551080308567045442rm_a_b > set_Pr1357592988741419896rm_a_b > $o ).

thf(sy_c_member_001t__Term__Oterm_Itf__a_Mtf__b_J,type,
    member_term_a_b2: term_a_b > set_term_a_b > $o ).

thf(sy_v_U,type,
    u: set_Pr4386577575007340137rm_a_b ).

thf(sy_v_c,type,
    c: a ).

thf(sy_v_p____,type,
    p: list_nat ).

thf(sy_v_pa____,type,
    pa: list_nat ).

thf(sy_v_s____,type,
    s: term_a_b ).

thf(sy_v_sa____,type,
    sa: term_a_b ).

thf(sy_v_t____,type,
    t: term_a_b ).

thf(sy_v_u____,type,
    u2: term_a_b ).

% Relevant facts (1239)
thf(fact_0_local_Oconst,axiom,
    replac8618238927709742794ed_a_b @ c @ u ).

% local.const
thf(fact_1_base_Ohyps,axiom,
    member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ sa @ t ) @ u ).

% base.hyps
thf(fact_2_base_Oprems,axiom,
    member_list_nat2 @ pa @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ c @ nil_term_a_b ) @ sa ) ).

% base.prems
thf(fact_3_steps,axiom,
    member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ s @ t ) @ ( transi7922773638565587891rm_a_b @ u ) ).

% steps
thf(fact_4__092_060open_062_092_060And_062u_O_A_Is_091p_A_092_060leftarrow_062_Au_093_M_At_J_A_092_060in_062_AU_A_092_060or_062_A_I_092_060exists_062q_O_Aq_A_092_060in_062_Aposs__of__term_A_IconstT_Ac_J_At_A_092_060and_062_A_Is_091p_A_092_060leftarrow_062_Au_093_M_At_091q_A_092_060leftarrow_062_Au_093_J_A_092_060in_062_AU_J_092_060close_062,axiom,
    ! [U: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ sa @ pa @ U ) @ t ) @ u )
      | ? [Q: list_nat] :
          ( ( member_list_nat2 @ Q @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ c @ nil_term_a_b ) @ t ) )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ sa @ pa @ U ) @ ( term_r6860082780075436317at_a_b @ t @ Q @ U ) ) @ u ) ) ) ).

% \<open>\<And>u. (s[p \<leftarrow> u], t) \<in> U \<or> (\<exists>q. q \<in> poss_of_term (constT c) t \<and> (s[p \<leftarrow> u], t[q \<leftarrow> u]) \<in> U)\<close>
thf(fact_5_wit,axiom,
    member_list_nat2 @ p @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ c @ nil_term_a_b ) @ s ) ).

% wit
thf(fact_6_const__replace__closedD,axiom,
    ! [C: a,U2: set_Pr4386577575007340137rm_a_b,P: list_nat,S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( replac8618238927709742794ed_a_b @ C @ U2 )
     => ( ( member_list_nat2 @ P @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C @ nil_term_a_b ) @ S ) )
       => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ U2 )
         => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ U ) @ T ) @ U2 )
            | ? [Q: list_nat] :
                ( ( member_list_nat2 @ Q @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C @ nil_term_a_b ) @ T ) )
                & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ U ) @ ( term_r6860082780075436317at_a_b @ T @ Q @ U ) ) @ U2 ) ) ) ) ) ) ).

% const_replace_closedD
thf(fact_7_const__replace__closedI,axiom,
    ! [C: a,U2: set_Pr4386577575007340137rm_a_b] :
      ( ! [S2: term_a_b,T2: term_a_b,U3: term_a_b,P2: list_nat] :
          ( ( member_list_nat2 @ P2 @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C @ nil_term_a_b ) @ S2 ) )
         => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S2 @ T2 ) @ U2 )
           => ( ? [Q2: list_nat] :
                  ( ( member_list_nat2 @ Q2 @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C @ nil_term_a_b ) @ T2 ) )
                  & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ S2 @ P2 @ U3 ) @ ( term_r6860082780075436317at_a_b @ T2 @ Q2 @ U3 ) ) @ U2 ) )
              | ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ S2 @ P2 @ U3 ) @ T2 ) @ U2 ) ) ) )
     => ( replac8618238927709742794ed_a_b @ C @ U2 ) ) ).

% const_replace_closedI
thf(fact_8_const__replace__closed__def,axiom,
    ( replac8618238927709742794ed_a_b
    = ( ^ [C2: a,U4: set_Pr4386577575007340137rm_a_b] :
        ! [S3: term_a_b,T3: term_a_b,U5: term_a_b,P3: list_nat] :
          ( ( member_list_nat2 @ P3 @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C2 @ nil_term_a_b ) @ S3 ) )
         => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S3 @ T3 ) @ U4 )
           => ( ? [Q3: list_nat] :
                  ( ( member_list_nat2 @ Q3 @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C2 @ nil_term_a_b ) @ T3 ) )
                  & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ S3 @ P3 @ U5 ) @ ( term_r6860082780075436317at_a_b @ T3 @ Q3 @ U5 ) ) @ U4 ) )
              | ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ S3 @ P3 @ U5 ) @ T3 ) @ U4 ) ) ) ) ) ) ).

% const_replace_closed_def
thf(fact_9_replace__term__at__same__pos,axiom,
    ! [S: term_a_b,P: list_nat,U: term_a_b,T: term_a_b] :
      ( ( term_r6860082780075436317at_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ U ) @ P @ T )
      = ( term_r6860082780075436317at_a_b @ S @ P @ T ) ) ).

% replace_term_at_same_pos
thf(fact_10_term_Oinject_I2_J,axiom,
    ! [X21: a,X22: list_term_a_b,Y21: a,Y22: list_term_a_b] :
      ( ( ( fun_a_b @ X21 @ X22 )
        = ( fun_a_b @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% term.inject(2)
thf(fact_11_prod_Oinject,axiom,
    ! [X1: nat > nat > $o,X2: produc1828647624359046049st_nat,Y1: nat > nat > $o,Y2: produc1828647624359046049st_nat] :
      ( ( ( produc3127733452865184594st_nat @ X1 @ X2 )
        = ( produc3127733452865184594st_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_12_prod_Oinject,axiom,
    ! [X1: nat > nat > $o,X2: list_nat,Y1: nat > nat > $o,Y2: list_nat] :
      ( ( ( produc4727192421694094319st_nat @ X1 @ X2 )
        = ( produc4727192421694094319st_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_13_prod_Oinject,axiom,
    ! [X1: b,X2: subterm_and_ctxt_a_b,Y1: b,Y2: subterm_and_ctxt_a_b] :
      ( ( ( produc8957000483500942811xt_a_b @ X1 @ X2 )
        = ( produc8957000483500942811xt_a_b @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_14_prod_Oinject,axiom,
    ! [X1: b,X2: term_a_b,Y1: b,Y2: term_a_b] :
      ( ( ( produc1437816968797971900rm_a_b @ X1 @ X2 )
        = ( produc1437816968797971900rm_a_b @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

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

% prod.inject
thf(fact_16_prod_Oinject,axiom,
    ! [X1: term_a_b,X2: term_a_b,Y1: term_a_b,Y2: term_a_b] :
      ( ( ( produc7020197800436672577rm_a_b @ X1 @ X2 )
        = ( produc7020197800436672577rm_a_b @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_17_old_Oprod_Oinject,axiom,
    ! [A: nat > nat > $o,B: produc1828647624359046049st_nat,A2: nat > nat > $o,B2: produc1828647624359046049st_nat] :
      ( ( ( produc3127733452865184594st_nat @ A @ B )
        = ( produc3127733452865184594st_nat @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_18_old_Oprod_Oinject,axiom,
    ! [A: nat > nat > $o,B: list_nat,A2: nat > nat > $o,B2: list_nat] :
      ( ( ( produc4727192421694094319st_nat @ A @ B )
        = ( produc4727192421694094319st_nat @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_19_old_Oprod_Oinject,axiom,
    ! [A: b,B: subterm_and_ctxt_a_b,A2: b,B2: subterm_and_ctxt_a_b] :
      ( ( ( produc8957000483500942811xt_a_b @ A @ B )
        = ( produc8957000483500942811xt_a_b @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_20_old_Oprod_Oinject,axiom,
    ! [A: b,B: term_a_b,A2: b,B2: term_a_b] :
      ( ( ( produc1437816968797971900rm_a_b @ A @ B )
        = ( produc1437816968797971900rm_a_b @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

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

% old.prod.inject
thf(fact_22_old_Oprod_Oinject,axiom,
    ! [A: term_a_b,B: term_a_b,A2: term_a_b,B2: term_a_b] :
      ( ( ( produc7020197800436672577rm_a_b @ A @ B )
        = ( produc7020197800436672577rm_a_b @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_23_trancl_Ocases,axiom,
    ! [A1: produc357393685978478089rm_a_b,A22: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A1 @ A22 ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A1 @ A22 ) @ R )
       => ~ ! [B3: produc357393685978478089rm_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A1 @ B3 ) @ ( transi9211502839322181930rm_a_b @ R ) )
             => ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ B3 @ A22 ) @ R ) ) ) ) ).

% trancl.cases
thf(fact_24_trancl_Ocases,axiom,
    ! [A1: term_a_b,A22: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ R )
       => ~ ! [B3: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ B3 ) @ ( transi7922773638565587891rm_a_b @ R ) )
             => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B3 @ A22 ) @ R ) ) ) ) ).

% trancl.cases
thf(fact_25_trancl_Osimps,axiom,
    ! [A1: produc357393685978478089rm_a_b,A22: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A1 @ A22 ) @ ( transi9211502839322181930rm_a_b @ R ) )
      = ( ? [A3: produc357393685978478089rm_a_b,B4: produc357393685978478089rm_a_b] :
            ( ( A1 = A3 )
            & ( A22 = B4 )
            & ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A3 @ B4 ) @ R ) )
        | ? [A3: produc357393685978478089rm_a_b,B4: produc357393685978478089rm_a_b,C2: produc357393685978478089rm_a_b] :
            ( ( A1 = A3 )
            & ( A22 = C2 )
            & ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A3 @ B4 ) @ ( transi9211502839322181930rm_a_b @ R ) )
            & ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ B4 @ C2 ) @ R ) ) ) ) ).

% trancl.simps
thf(fact_26_trancl_Osimps,axiom,
    ! [A1: term_a_b,A22: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ ( transi7922773638565587891rm_a_b @ R ) )
      = ( ? [A3: term_a_b,B4: term_a_b] :
            ( ( A1 = A3 )
            & ( A22 = B4 )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A3 @ B4 ) @ R ) )
        | ? [A3: term_a_b,B4: term_a_b,C2: term_a_b] :
            ( ( A1 = A3 )
            & ( A22 = C2 )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A3 @ B4 ) @ ( transi7922773638565587891rm_a_b @ R ) )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B4 @ C2 ) @ R ) ) ) ) ).

% trancl.simps
thf(fact_27_trancl_Or__into__trancl,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ R )
     => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ ( transi9211502839322181930rm_a_b @ R ) ) ) ).

% trancl.r_into_trancl
thf(fact_28_trancl_Or__into__trancl,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ).

% trancl.r_into_trancl
thf(fact_29_trancl__map,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,F: term_a_b > produc357393685978478089rm_a_b,S: set_Pr2972776593051762503rm_a_b,X: term_a_b,Y: term_a_b] :
      ( ! [X3: term_a_b,Y3: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ R )
         => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( F @ X3 ) @ ( F @ Y3 ) ) @ S ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7922773638565587891rm_a_b @ R ) )
       => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( F @ X ) @ ( F @ Y ) ) @ ( transi9211502839322181930rm_a_b @ S ) ) ) ) ).

% trancl_map
thf(fact_30_trancl__map,axiom,
    ! [R: set_Pr2972776593051762503rm_a_b,F: produc357393685978478089rm_a_b > term_a_b,S: set_Pr4386577575007340137rm_a_b,X: produc357393685978478089rm_a_b,Y: produc357393685978478089rm_a_b] :
      ( ! [X3: produc357393685978478089rm_a_b,Y3: produc357393685978478089rm_a_b] :
          ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ Y3 ) @ R )
         => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ X3 ) @ ( F @ Y3 ) ) @ S ) )
     => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Y ) @ ( transi9211502839322181930rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ X ) @ ( F @ Y ) ) @ ( transi7922773638565587891rm_a_b @ S ) ) ) ) ).

% trancl_map
thf(fact_31_trancl__map,axiom,
    ! [R: set_Pr2972776593051762503rm_a_b,F: produc357393685978478089rm_a_b > produc357393685978478089rm_a_b,S: set_Pr2972776593051762503rm_a_b,X: produc357393685978478089rm_a_b,Y: produc357393685978478089rm_a_b] :
      ( ! [X3: produc357393685978478089rm_a_b,Y3: produc357393685978478089rm_a_b] :
          ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ Y3 ) @ R )
         => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( F @ X3 ) @ ( F @ Y3 ) ) @ S ) )
     => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Y ) @ ( transi9211502839322181930rm_a_b @ R ) )
       => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( F @ X ) @ ( F @ Y ) ) @ ( transi9211502839322181930rm_a_b @ S ) ) ) ) ).

% trancl_map
thf(fact_32_trancl__map,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,F: term_a_b > term_a_b,S: set_Pr4386577575007340137rm_a_b,X: term_a_b,Y: term_a_b] :
      ( ! [X3: term_a_b,Y3: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ R )
         => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ X3 ) @ ( F @ Y3 ) ) @ S ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7922773638565587891rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ X ) @ ( F @ Y ) ) @ ( transi7922773638565587891rm_a_b @ S ) ) ) ) ).

% trancl_map
thf(fact_33_trancl__induct2,axiom,
    ! [Ax: nat > nat > $o,Ay: produc1828647624359046049st_nat,Bx: nat > nat > $o,By: produc1828647624359046049st_nat,R: set_Pr1972372305556864775st_nat,P4: ( nat > nat > $o ) > produc1828647624359046049st_nat > $o] :
      ( ( member954505421117658448st_nat @ ( produc728103027205548823st_nat @ ( produc3127733452865184594st_nat @ Ax @ Ay ) @ ( produc3127733452865184594st_nat @ Bx @ By ) ) @ ( transi6759787062683689347st_nat @ R ) )
     => ( ! [A4: nat > nat > $o,B3: produc1828647624359046049st_nat] :
            ( ( member954505421117658448st_nat @ ( produc728103027205548823st_nat @ ( produc3127733452865184594st_nat @ Ax @ Ay ) @ ( produc3127733452865184594st_nat @ A4 @ B3 ) ) @ R )
           => ( P4 @ A4 @ B3 ) )
       => ( ! [A4: nat > nat > $o,B3: produc1828647624359046049st_nat,Aa: nat > nat > $o,Ba: produc1828647624359046049st_nat] :
              ( ( member954505421117658448st_nat @ ( produc728103027205548823st_nat @ ( produc3127733452865184594st_nat @ Ax @ Ay ) @ ( produc3127733452865184594st_nat @ A4 @ B3 ) ) @ ( transi6759787062683689347st_nat @ R ) )
             => ( ( member954505421117658448st_nat @ ( produc728103027205548823st_nat @ ( produc3127733452865184594st_nat @ A4 @ B3 ) @ ( produc3127733452865184594st_nat @ Aa @ Ba ) ) @ R )
               => ( ( P4 @ A4 @ B3 )
                 => ( P4 @ Aa @ Ba ) ) ) )
         => ( P4 @ Bx @ By ) ) ) ) ).

% trancl_induct2
thf(fact_34_trancl__induct2,axiom,
    ! [Ax: nat > nat > $o,Ay: list_nat,Bx: nat > nat > $o,By: list_nat,R: set_Pr5017933239610314539st_nat,P4: ( nat > nat > $o ) > list_nat > $o] :
      ( ( member6929873720474945908st_nat @ ( produc3744802840634486403st_nat @ ( produc4727192421694094319st_nat @ Ax @ Ay ) @ ( produc4727192421694094319st_nat @ Bx @ By ) ) @ ( transi5466210696635040020st_nat @ R ) )
     => ( ! [A4: nat > nat > $o,B3: list_nat] :
            ( ( member6929873720474945908st_nat @ ( produc3744802840634486403st_nat @ ( produc4727192421694094319st_nat @ Ax @ Ay ) @ ( produc4727192421694094319st_nat @ A4 @ B3 ) ) @ R )
           => ( P4 @ A4 @ B3 ) )
       => ( ! [A4: nat > nat > $o,B3: list_nat,Aa: nat > nat > $o,Ba: list_nat] :
              ( ( member6929873720474945908st_nat @ ( produc3744802840634486403st_nat @ ( produc4727192421694094319st_nat @ Ax @ Ay ) @ ( produc4727192421694094319st_nat @ A4 @ B3 ) ) @ ( transi5466210696635040020st_nat @ R ) )
             => ( ( member6929873720474945908st_nat @ ( produc3744802840634486403st_nat @ ( produc4727192421694094319st_nat @ A4 @ B3 ) @ ( produc4727192421694094319st_nat @ Aa @ Ba ) ) @ R )
               => ( ( P4 @ A4 @ B3 )
                 => ( P4 @ Aa @ Ba ) ) ) )
         => ( P4 @ Bx @ By ) ) ) ) ).

% trancl_induct2
thf(fact_35_trancl__induct2,axiom,
    ! [Ax: b,Ay: subterm_and_ctxt_a_b,Bx: b,By: subterm_and_ctxt_a_b,R: set_Pr6382717822055741895xt_a_b,P4: b > subterm_and_ctxt_a_b > $o] :
      ( ( member4428120077375243280xt_a_b @ ( produc668170914141311575xt_a_b @ ( produc8957000483500942811xt_a_b @ Ax @ Ay ) @ ( produc8957000483500942811xt_a_b @ Bx @ By ) ) @ ( transi2700106457712546828xt_a_b @ R ) )
     => ( ! [A4: b,B3: subterm_and_ctxt_a_b] :
            ( ( member4428120077375243280xt_a_b @ ( produc668170914141311575xt_a_b @ ( produc8957000483500942811xt_a_b @ Ax @ Ay ) @ ( produc8957000483500942811xt_a_b @ A4 @ B3 ) ) @ R )
           => ( P4 @ A4 @ B3 ) )
       => ( ! [A4: b,B3: subterm_and_ctxt_a_b,Aa: b,Ba: subterm_and_ctxt_a_b] :
              ( ( member4428120077375243280xt_a_b @ ( produc668170914141311575xt_a_b @ ( produc8957000483500942811xt_a_b @ Ax @ Ay ) @ ( produc8957000483500942811xt_a_b @ A4 @ B3 ) ) @ ( transi2700106457712546828xt_a_b @ R ) )
             => ( ( member4428120077375243280xt_a_b @ ( produc668170914141311575xt_a_b @ ( produc8957000483500942811xt_a_b @ A4 @ B3 ) @ ( produc8957000483500942811xt_a_b @ Aa @ Ba ) ) @ R )
               => ( ( P4 @ A4 @ B3 )
                 => ( P4 @ Aa @ Ba ) ) ) )
         => ( P4 @ Bx @ By ) ) ) ) ).

% trancl_induct2
thf(fact_36_trancl__induct2,axiom,
    ! [Ax: b,Ay: term_a_b,Bx: b,By: term_a_b,R: set_Pr5233514982410851781rm_a_b,P4: b > term_a_b > $o] :
      ( ( member7542685802389602574rm_a_b @ ( produc411707225774285981rm_a_b @ ( produc1437816968797971900rm_a_b @ Ax @ Ay ) @ ( produc1437816968797971900rm_a_b @ Bx @ By ) ) @ ( transi7411496497035545569rm_a_b @ R ) )
     => ( ! [A4: b,B3: term_a_b] :
            ( ( member7542685802389602574rm_a_b @ ( produc411707225774285981rm_a_b @ ( produc1437816968797971900rm_a_b @ Ax @ Ay ) @ ( produc1437816968797971900rm_a_b @ A4 @ B3 ) ) @ R )
           => ( P4 @ A4 @ B3 ) )
       => ( ! [A4: b,B3: term_a_b,Aa: b,Ba: term_a_b] :
              ( ( member7542685802389602574rm_a_b @ ( produc411707225774285981rm_a_b @ ( produc1437816968797971900rm_a_b @ Ax @ Ay ) @ ( produc1437816968797971900rm_a_b @ A4 @ B3 ) ) @ ( transi7411496497035545569rm_a_b @ R ) )
             => ( ( member7542685802389602574rm_a_b @ ( produc411707225774285981rm_a_b @ ( produc1437816968797971900rm_a_b @ A4 @ B3 ) @ ( produc1437816968797971900rm_a_b @ Aa @ Ba ) ) @ R )
               => ( ( P4 @ A4 @ B3 )
                 => ( P4 @ Aa @ Ba ) ) ) )
         => ( P4 @ Bx @ By ) ) ) ) ).

% trancl_induct2
thf(fact_37_trancl__induct2,axiom,
    ! [Ax: a,Ay: nat,Bx: a,By: nat,R: set_Pr1811044260758604347_a_nat,P4: a > nat > $o] :
      ( ( member9062615507155100804_a_nat @ ( produc2026711137822539155_a_nat @ ( product_Pair_a_nat @ Ax @ Ay ) @ ( product_Pair_a_nat @ Bx @ By ) ) @ ( transi6805586507763294364_a_nat @ R ) )
     => ( ! [A4: a,B3: nat] :
            ( ( member9062615507155100804_a_nat @ ( produc2026711137822539155_a_nat @ ( product_Pair_a_nat @ Ax @ Ay ) @ ( product_Pair_a_nat @ A4 @ B3 ) ) @ R )
           => ( P4 @ A4 @ B3 ) )
       => ( ! [A4: a,B3: nat,Aa: a,Ba: nat] :
              ( ( member9062615507155100804_a_nat @ ( produc2026711137822539155_a_nat @ ( product_Pair_a_nat @ Ax @ Ay ) @ ( product_Pair_a_nat @ A4 @ B3 ) ) @ ( transi6805586507763294364_a_nat @ R ) )
             => ( ( member9062615507155100804_a_nat @ ( produc2026711137822539155_a_nat @ ( product_Pair_a_nat @ A4 @ B3 ) @ ( product_Pair_a_nat @ Aa @ Ba ) ) @ R )
               => ( ( P4 @ A4 @ B3 )
                 => ( P4 @ Aa @ Ba ) ) ) )
         => ( P4 @ Bx @ By ) ) ) ) ).

% trancl_induct2
thf(fact_38_trancl__induct2,axiom,
    ! [Ax: term_a_b,Ay: term_a_b,Bx: term_a_b,By: term_a_b,R: set_Pr2972776593051762503rm_a_b,P4: term_a_b > term_a_b > $o] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Ax @ Ay ) @ ( produc7020197800436672577rm_a_b @ Bx @ By ) ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ! [A4: term_a_b,B3: term_a_b] :
            ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Ax @ Ay ) @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) ) @ R )
           => ( P4 @ A4 @ B3 ) )
       => ( ! [A4: term_a_b,B3: term_a_b,Aa: term_a_b,Ba: term_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Ax @ Ay ) @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) ) @ ( transi9211502839322181930rm_a_b @ R ) )
             => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) @ ( produc7020197800436672577rm_a_b @ Aa @ Ba ) ) @ R )
               => ( ( P4 @ A4 @ B3 )
                 => ( P4 @ Aa @ Ba ) ) ) )
         => ( P4 @ Bx @ By ) ) ) ) ).

% trancl_induct2
thf(fact_39_prod__induct3,axiom,
    ! [P4: produc4787317212837456354st_nat > $o,X: produc4787317212837456354st_nat] :
      ( ! [A4: nat > nat > $o,B3: list_nat,C3: list_nat] : ( P4 @ ( produc3127733452865184594st_nat @ A4 @ ( produc2694037385005941721st_nat @ B3 @ C3 ) ) )
     => ( P4 @ X ) ) ).

% prod_induct3
thf(fact_40_prod__cases3,axiom,
    ! [Y: produc4787317212837456354st_nat] :
      ~ ! [A4: nat > nat > $o,B3: list_nat,C3: list_nat] :
          ( Y
         != ( produc3127733452865184594st_nat @ A4 @ ( produc2694037385005941721st_nat @ B3 @ C3 ) ) ) ).

% prod_cases3
thf(fact_41_Pair__inject,axiom,
    ! [A: nat > nat > $o,B: produc1828647624359046049st_nat,A2: nat > nat > $o,B2: produc1828647624359046049st_nat] :
      ( ( ( produc3127733452865184594st_nat @ A @ B )
        = ( produc3127733452865184594st_nat @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_42_Pair__inject,axiom,
    ! [A: nat > nat > $o,B: list_nat,A2: nat > nat > $o,B2: list_nat] :
      ( ( ( produc4727192421694094319st_nat @ A @ B )
        = ( produc4727192421694094319st_nat @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_43_Pair__inject,axiom,
    ! [A: b,B: subterm_and_ctxt_a_b,A2: b,B2: subterm_and_ctxt_a_b] :
      ( ( ( produc8957000483500942811xt_a_b @ A @ B )
        = ( produc8957000483500942811xt_a_b @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_44_Pair__inject,axiom,
    ! [A: b,B: term_a_b,A2: b,B2: term_a_b] :
      ( ( ( produc1437816968797971900rm_a_b @ A @ B )
        = ( produc1437816968797971900rm_a_b @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

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

% Pair_inject
thf(fact_46_Pair__inject,axiom,
    ! [A: term_a_b,B: term_a_b,A2: term_a_b,B2: term_a_b] :
      ( ( ( produc7020197800436672577rm_a_b @ A @ B )
        = ( produc7020197800436672577rm_a_b @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_47_prod__cases,axiom,
    ! [P4: produc4787317212837456354st_nat > $o,P: produc4787317212837456354st_nat] :
      ( ! [A4: nat > nat > $o,B3: produc1828647624359046049st_nat] : ( P4 @ ( produc3127733452865184594st_nat @ A4 @ B3 ) )
     => ( P4 @ P ) ) ).

% prod_cases
thf(fact_48_prod__cases,axiom,
    ! [P4: produc254973753779126261st_nat > $o,P: produc254973753779126261st_nat] :
      ( ! [A4: nat > nat > $o,B3: list_nat] : ( P4 @ ( produc4727192421694094319st_nat @ A4 @ B3 ) )
     => ( P4 @ P ) ) ).

% prod_cases
thf(fact_49_prod__cases,axiom,
    ! [P4: produc5967569696164677611xt_a_b > $o,P: produc5967569696164677611xt_a_b] :
      ( ! [A4: b,B3: subterm_and_ctxt_a_b] : ( P4 @ ( produc8957000483500942811xt_a_b @ A4 @ B3 ) )
     => ( P4 @ P ) ) ).

% prod_cases
thf(fact_50_prod__cases,axiom,
    ! [P4: produc6551080308567045442rm_a_b > $o,P: produc6551080308567045442rm_a_b] :
      ( ! [A4: b,B3: term_a_b] : ( P4 @ ( produc1437816968797971900rm_a_b @ A4 @ B3 ) )
     => ( P4 @ P ) ) ).

% prod_cases
thf(fact_51_prod__cases,axiom,
    ! [P4: product_prod_a_nat > $o,P: product_prod_a_nat] :
      ( ! [A4: a,B3: nat] : ( P4 @ ( product_Pair_a_nat @ A4 @ B3 ) )
     => ( P4 @ P ) ) ).

% prod_cases
thf(fact_52_prod__cases,axiom,
    ! [P4: produc357393685978478089rm_a_b > $o,P: produc357393685978478089rm_a_b] :
      ( ! [A4: term_a_b,B3: term_a_b] : ( P4 @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) )
     => ( P4 @ P ) ) ).

% prod_cases
thf(fact_53_surj__pair,axiom,
    ! [P: produc4787317212837456354st_nat] :
    ? [X3: nat > nat > $o,Y3: produc1828647624359046049st_nat] :
      ( P
      = ( produc3127733452865184594st_nat @ X3 @ Y3 ) ) ).

% surj_pair
thf(fact_54_surj__pair,axiom,
    ! [P: produc254973753779126261st_nat] :
    ? [X3: nat > nat > $o,Y3: list_nat] :
      ( P
      = ( produc4727192421694094319st_nat @ X3 @ Y3 ) ) ).

% surj_pair
thf(fact_55_surj__pair,axiom,
    ! [P: produc5967569696164677611xt_a_b] :
    ? [X3: b,Y3: subterm_and_ctxt_a_b] :
      ( P
      = ( produc8957000483500942811xt_a_b @ X3 @ Y3 ) ) ).

% surj_pair
thf(fact_56_surj__pair,axiom,
    ! [P: produc6551080308567045442rm_a_b] :
    ? [X3: b,Y3: term_a_b] :
      ( P
      = ( produc1437816968797971900rm_a_b @ X3 @ Y3 ) ) ).

% surj_pair
thf(fact_57_surj__pair,axiom,
    ! [P: product_prod_a_nat] :
    ? [X3: a,Y3: nat] :
      ( P
      = ( product_Pair_a_nat @ X3 @ Y3 ) ) ).

% surj_pair
thf(fact_58_surj__pair,axiom,
    ! [P: produc357393685978478089rm_a_b] :
    ? [X3: term_a_b,Y3: term_a_b] :
      ( P
      = ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) ) ).

% surj_pair
thf(fact_59_old_Oprod_Oexhaust,axiom,
    ! [Y: produc4787317212837456354st_nat] :
      ~ ! [A4: nat > nat > $o,B3: produc1828647624359046049st_nat] :
          ( Y
         != ( produc3127733452865184594st_nat @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_60_old_Oprod_Oexhaust,axiom,
    ! [Y: produc254973753779126261st_nat] :
      ~ ! [A4: nat > nat > $o,B3: list_nat] :
          ( Y
         != ( produc4727192421694094319st_nat @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_61_old_Oprod_Oexhaust,axiom,
    ! [Y: produc5967569696164677611xt_a_b] :
      ~ ! [A4: b,B3: subterm_and_ctxt_a_b] :
          ( Y
         != ( produc8957000483500942811xt_a_b @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_62_old_Oprod_Oexhaust,axiom,
    ! [Y: produc6551080308567045442rm_a_b] :
      ~ ! [A4: b,B3: term_a_b] :
          ( Y
         != ( produc1437816968797971900rm_a_b @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_63_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_a_nat] :
      ~ ! [A4: a,B3: nat] :
          ( Y
         != ( product_Pair_a_nat @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_64_old_Oprod_Oexhaust,axiom,
    ! [Y: produc357393685978478089rm_a_b] :
      ~ ! [A4: term_a_b,B3: term_a_b] :
          ( Y
         != ( produc7020197800436672577rm_a_b @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_65_r__into__trancl_H,axiom,
    ! [P: produc4523971788519308903rm_a_b,R: set_Pr2972776593051762503rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ P @ R )
     => ( member8417600551952982416rm_a_b @ P @ ( transi9211502839322181930rm_a_b @ R ) ) ) ).

% r_into_trancl'
thf(fact_66_r__into__trancl_H,axiom,
    ! [P: produc357393685978478089rm_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ P @ R )
     => ( member5869715511025134514rm_a_b @ P @ ( transi7922773638565587891rm_a_b @ R ) ) ) ).

% r_into_trancl'
thf(fact_67_converse__trancl__induct,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b,P4: produc357393685978478089rm_a_b > $o] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ! [Y3: produc357393685978478089rm_a_b] :
            ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Y3 @ B ) @ R )
           => ( P4 @ Y3 ) )
       => ( ! [Y3: produc357393685978478089rm_a_b,Z: produc357393685978478089rm_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Y3 @ Z ) @ R )
             => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Z @ B ) @ ( transi9211502839322181930rm_a_b @ R ) )
               => ( ( P4 @ Z )
                 => ( P4 @ Y3 ) ) ) )
         => ( P4 @ A ) ) ) ) ).

% converse_trancl_induct
thf(fact_68_converse__trancl__induct,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,P4: term_a_b > $o] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ! [Y3: term_a_b] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ B ) @ R )
           => ( P4 @ Y3 ) )
       => ( ! [Y3: term_a_b,Z: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z ) @ R )
             => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z @ B ) @ ( transi7922773638565587891rm_a_b @ R ) )
               => ( ( P4 @ Z )
                 => ( P4 @ Y3 ) ) ) )
         => ( P4 @ A ) ) ) ) ).

% converse_trancl_induct
thf(fact_69_trancl__trans__induct,axiom,
    ! [X: produc357393685978478089rm_a_b,Y: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b,P4: produc357393685978478089rm_a_b > produc357393685978478089rm_a_b > $o] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Y ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ! [X3: produc357393685978478089rm_a_b,Y3: produc357393685978478089rm_a_b] :
            ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ Y3 ) @ R )
           => ( P4 @ X3 @ Y3 ) )
       => ( ! [X3: produc357393685978478089rm_a_b,Y3: produc357393685978478089rm_a_b,Z: produc357393685978478089rm_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ Y3 ) @ ( transi9211502839322181930rm_a_b @ R ) )
             => ( ( P4 @ X3 @ Y3 )
               => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Y3 @ Z ) @ ( transi9211502839322181930rm_a_b @ R ) )
                 => ( ( P4 @ Y3 @ Z )
                   => ( P4 @ X3 @ Z ) ) ) ) )
         => ( P4 @ X @ Y ) ) ) ) ).

% trancl_trans_induct
thf(fact_70_trancl__trans__induct,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,P4: term_a_b > term_a_b > $o] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ! [X3: term_a_b,Y3: term_a_b] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ R )
           => ( P4 @ X3 @ Y3 ) )
       => ( ! [X3: term_a_b,Y3: term_a_b,Z: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ ( transi7922773638565587891rm_a_b @ R ) )
             => ( ( P4 @ X3 @ Y3 )
               => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z ) @ ( transi7922773638565587891rm_a_b @ R ) )
                 => ( ( P4 @ Y3 @ Z )
                   => ( P4 @ X3 @ Z ) ) ) ) )
         => ( P4 @ X @ Y ) ) ) ) ).

% trancl_trans_induct
thf(fact_71_trancl__into__trancl2,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b,C: produc357393685978478089rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ R )
     => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ B @ C ) @ ( transi9211502839322181930rm_a_b @ R ) )
       => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ C ) @ ( transi9211502839322181930rm_a_b @ R ) ) ) ) ).

% trancl_into_trancl2
thf(fact_72_trancl__into__trancl2,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ ( transi7922773638565587891rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% trancl_into_trancl2
thf(fact_73_Transitive__Closure_Otrancl__into__trancl,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b,C: produc357393685978478089rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ B @ C ) @ R )
       => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ C ) @ ( transi9211502839322181930rm_a_b @ R ) ) ) ) ).

% Transitive_Closure.trancl_into_trancl
thf(fact_74_Transitive__Closure_Otrancl__into__trancl,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ R )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% Transitive_Closure.trancl_into_trancl
thf(fact_75_irrefl__trancl__rD,axiom,
    ! [R: set_Pr2972776593051762503rm_a_b,X: produc357393685978478089rm_a_b,Y: produc357393685978478089rm_a_b] :
      ( ! [X3: produc357393685978478089rm_a_b] :
          ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ X3 ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Y ) @ R )
       => ( X != Y ) ) ) ).

% irrefl_trancl_rD
thf(fact_76_irrefl__trancl__rD,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,X: term_a_b,Y: term_a_b] :
      ( ! [X3: term_a_b] :
          ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ X3 ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ R )
       => ( X != Y ) ) ) ).

% irrefl_trancl_rD
thf(fact_77_converse__tranclE,axiom,
    ! [X: produc357393685978478089rm_a_b,Z2: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Z2 ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Z2 ) @ R )
       => ~ ! [Y3: produc357393685978478089rm_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Y3 ) @ R )
             => ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Y3 @ Z2 ) @ ( transi9211502839322181930rm_a_b @ R ) ) ) ) ) ).

% converse_tranclE
thf(fact_78_converse__tranclE,axiom,
    ! [X: term_a_b,Z2: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z2 ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z2 ) @ R )
       => ~ ! [Y3: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y3 ) @ R )
             => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z2 ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ) ).

% converse_tranclE
thf(fact_79_r__r__into__trancl,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,R2: set_Pr2972776593051762503rm_a_b,C: produc357393685978478089rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ R2 )
     => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ B @ C ) @ R2 )
       => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ C ) @ ( transi9211502839322181930rm_a_b @ R2 ) ) ) ) ).

% r_r_into_trancl
thf(fact_80_r__r__into__trancl,axiom,
    ! [A: term_a_b,B: term_a_b,R2: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R2 )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ R2 )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7922773638565587891rm_a_b @ R2 ) ) ) ) ).

% r_r_into_trancl
thf(fact_81_trancl__induct,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b,P4: produc357393685978478089rm_a_b > $o] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ! [Y3: produc357393685978478089rm_a_b] :
            ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ Y3 ) @ R )
           => ( P4 @ Y3 ) )
       => ( ! [Y3: produc357393685978478089rm_a_b,Z: produc357393685978478089rm_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ Y3 ) @ ( transi9211502839322181930rm_a_b @ R ) )
             => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Y3 @ Z ) @ R )
               => ( ( P4 @ Y3 )
                 => ( P4 @ Z ) ) ) )
         => ( P4 @ B ) ) ) ) ).

% trancl_induct
thf(fact_82_trancl__induct,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,P4: term_a_b > $o] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ! [Y3: term_a_b] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ Y3 ) @ R )
           => ( P4 @ Y3 ) )
       => ( ! [Y3: term_a_b,Z: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ Y3 ) @ ( transi7922773638565587891rm_a_b @ R ) )
             => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z ) @ R )
               => ( ( P4 @ Y3 )
                 => ( P4 @ Z ) ) ) )
         => ( P4 @ B ) ) ) ) ).

% trancl_induct
thf(fact_83_trancl__trans,axiom,
    ! [X: produc357393685978478089rm_a_b,Y: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b,Z2: produc357393685978478089rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Y ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Y @ Z2 ) @ ( transi9211502839322181930rm_a_b @ R ) )
       => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Z2 ) @ ( transi9211502839322181930rm_a_b @ R ) ) ) ) ).

% trancl_trans
thf(fact_84_trancl__trans,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,Z2: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ Z2 ) @ ( transi7922773638565587891rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z2 ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% trancl_trans
thf(fact_85_tranclE,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,R: set_Pr2972776593051762503rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ R )
       => ~ ! [C3: produc357393685978478089rm_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ C3 ) @ ( transi9211502839322181930rm_a_b @ R ) )
             => ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ C3 @ B ) @ R ) ) ) ) ).

% tranclE
thf(fact_86_tranclE,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R )
       => ~ ! [C3: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C3 ) @ ( transi7922773638565587891rm_a_b @ R ) )
             => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C3 @ B ) @ R ) ) ) ) ).

% tranclE
thf(fact_87_mem__Collect__eq,axiom,
    ! [A: term_a_b,P4: term_a_b > $o] :
      ( ( member_term_a_b2 @ A @ ( collect_term_a_b @ P4 ) )
      = ( P4 @ A ) ) ).

% mem_Collect_eq
thf(fact_88_mem__Collect__eq,axiom,
    ! [A: list_P8875379029341186191rm_a_b,P4: list_P8875379029341186191rm_a_b > $o] :
      ( ( member7646937072540562872rm_a_b @ A @ ( collec4396703598834874874rm_a_b @ P4 ) )
      = ( P4 @ A ) ) ).

% mem_Collect_eq
thf(fact_89_mem__Collect__eq,axiom,
    ! [A: list_term_a_b,P4: list_term_a_b > $o] :
      ( ( member_list_term_a_b2 @ A @ ( collec2649484519605854073rm_a_b @ P4 ) )
      = ( P4 @ A ) ) ).

% mem_Collect_eq
thf(fact_90_mem__Collect__eq,axiom,
    ! [A: list_list_nat,P4: list_list_nat > $o] :
      ( ( member_list_list_nat2 @ A @ ( collec5989764272469232197st_nat @ P4 ) )
      = ( P4 @ A ) ) ).

% mem_Collect_eq
thf(fact_91_mem__Collect__eq,axiom,
    ! [A: nat,P4: nat > $o] :
      ( ( member_nat2 @ A @ ( collect_nat @ P4 ) )
      = ( P4 @ A ) ) ).

% mem_Collect_eq
thf(fact_92_mem__Collect__eq,axiom,
    ! [A: list_nat,P4: list_nat > $o] :
      ( ( member_list_nat2 @ A @ ( collect_list_nat @ P4 ) )
      = ( P4 @ A ) ) ).

% mem_Collect_eq
thf(fact_93_mem__Collect__eq,axiom,
    ! [A: produc357393685978478089rm_a_b,P4: produc357393685978478089rm_a_b > $o] :
      ( ( member5869715511025134514rm_a_b @ A @ ( collec99177395925924084rm_a_b @ P4 ) )
      = ( P4 @ A ) ) ).

% mem_Collect_eq
thf(fact_94_Collect__mem__eq,axiom,
    ! [A5: set_term_a_b] :
      ( ( collect_term_a_b
        @ ^ [X4: term_a_b] : ( member_term_a_b2 @ X4 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_95_Collect__mem__eq,axiom,
    ! [A5: set_li7311725489111463791rm_a_b] :
      ( ( collec4396703598834874874rm_a_b
        @ ^ [X4: list_P8875379029341186191rm_a_b] : ( member7646937072540562872rm_a_b @ X4 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_96_Collect__mem__eq,axiom,
    ! [A5: set_list_term_a_b] :
      ( ( collec2649484519605854073rm_a_b
        @ ^ [X4: list_term_a_b] : ( member_list_term_a_b2 @ X4 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_97_Collect__mem__eq,axiom,
    ! [A5: set_list_list_nat] :
      ( ( collec5989764272469232197st_nat
        @ ^ [X4: list_list_nat] : ( member_list_list_nat2 @ X4 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_98_Collect__mem__eq,axiom,
    ! [A5: set_nat] :
      ( ( collect_nat
        @ ^ [X4: nat] : ( member_nat2 @ X4 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_99_Collect__mem__eq,axiom,
    ! [A5: set_list_nat] :
      ( ( collect_list_nat
        @ ^ [X4: list_nat] : ( member_list_nat2 @ X4 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_100_Collect__mem__eq,axiom,
    ! [A5: set_Pr4386577575007340137rm_a_b] :
      ( ( collec99177395925924084rm_a_b
        @ ^ [X4: produc357393685978478089rm_a_b] : ( member5869715511025134514rm_a_b @ X4 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_101_Collect__cong,axiom,
    ! [P4: produc357393685978478089rm_a_b > $o,Q4: produc357393685978478089rm_a_b > $o] :
      ( ! [X3: produc357393685978478089rm_a_b] :
          ( ( P4 @ X3 )
          = ( Q4 @ X3 ) )
     => ( ( collec99177395925924084rm_a_b @ P4 )
        = ( collec99177395925924084rm_a_b @ Q4 ) ) ) ).

% Collect_cong
thf(fact_102_Collect__cong,axiom,
    ! [P4: list_nat > $o,Q4: list_nat > $o] :
      ( ! [X3: list_nat] :
          ( ( P4 @ X3 )
          = ( Q4 @ X3 ) )
     => ( ( collect_list_nat @ P4 )
        = ( collect_list_nat @ Q4 ) ) ) ).

% Collect_cong
thf(fact_103_pos__diff__itself,axiom,
    ! [P: list_P2364656488115551307rm_a_b] :
      ( ( term_p4159419441187170626rm_a_b @ P @ P )
      = nil_Pr4197086119080101963rm_a_b ) ).

% pos_diff_itself
thf(fact_104_pos__diff__itself,axiom,
    ! [P: list_P6011104703257516679at_nat] :
      ( ( term_p3376976900432600702at_nat @ P @ P )
      = nil_Pr5478986624290739719at_nat ) ).

% pos_diff_itself
thf(fact_105_pos__diff__itself,axiom,
    ! [P: list_list_term_a_b] :
      ( ( term_p6300577740959955047rm_a_b @ P @ P )
      = nil_list_term_a_b ) ).

% pos_diff_itself
thf(fact_106_pos__diff__itself,axiom,
    ! [P: list_list_nat] :
      ( ( term_p7564741194569991203st_nat @ P @ P )
      = nil_list_nat ) ).

% pos_diff_itself
thf(fact_107_pos__diff__itself,axiom,
    ! [P: list_term_a_b_nat] :
      ( ( term_p4502178508558846150_b_nat @ P @ P )
      = nil_term_a_b_nat ) ).

% pos_diff_itself
thf(fact_108_pos__diff__itself,axiom,
    ! [P: list_term_a_b] :
      ( ( term_p798503758663136087rm_a_b @ P @ P )
      = nil_term_a_b ) ).

% pos_diff_itself
thf(fact_109_pos__diff__itself,axiom,
    ! [P: list_nat] :
      ( ( term_pos_diff_nat @ P @ P )
      = nil_nat ) ).

% pos_diff_itself
thf(fact_110_ssubst__Pair__rhs,axiom,
    ! [R: nat > nat > $o,S: produc1828647624359046049st_nat,R2: set_Pr4817715314677154882st_nat,S4: produc1828647624359046049st_nat] :
      ( ( member6951660485171671051st_nat @ ( produc3127733452865184594st_nat @ R @ S ) @ R2 )
     => ( ( S4 = S )
       => ( member6951660485171671051st_nat @ ( produc3127733452865184594st_nat @ R @ S4 ) @ R2 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_111_ssubst__Pair__rhs,axiom,
    ! [R: nat > nat > $o,S: list_nat,R2: set_Pr7072801126362145067st_nat,S4: list_nat] :
      ( ( member5350383351084882060st_nat @ ( produc4727192421694094319st_nat @ R @ S ) @ R2 )
     => ( ( S4 = S )
       => ( member5350383351084882060st_nat @ ( produc4727192421694094319st_nat @ R @ S4 ) @ R2 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_112_ssubst__Pair__rhs,axiom,
    ! [R: b,S: subterm_and_ctxt_a_b,R2: set_Pr969339255790132299xt_a_b,S4: subterm_and_ctxt_a_b] :
      ( ( member6425110754370078356xt_a_b @ ( produc8957000483500942811xt_a_b @ R @ S ) @ R2 )
     => ( ( S4 = S )
       => ( member6425110754370078356xt_a_b @ ( produc8957000483500942811xt_a_b @ R @ S4 ) @ R2 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_113_ssubst__Pair__rhs,axiom,
    ! [R: b,S: term_a_b,R2: set_Pr1357592988741419896rm_a_b,S4: term_a_b] :
      ( ( member7000133282412810073rm_a_b @ ( produc1437816968797971900rm_a_b @ R @ S ) @ R2 )
     => ( ( S4 = S )
       => ( member7000133282412810073rm_a_b @ ( produc1437816968797971900rm_a_b @ R @ S4 ) @ R2 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_114_ssubst__Pair__rhs,axiom,
    ! [R: a,S: nat,R2: set_Pr4934435412358123699_a_nat,S4: nat] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ R @ S ) @ R2 )
     => ( ( S4 = S )
       => ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ R @ S4 ) @ R2 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_115_ssubst__Pair__rhs,axiom,
    ! [R: term_a_b,S: term_a_b,R2: set_Pr4386577575007340137rm_a_b,S4: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ R @ S ) @ R2 )
     => ( ( S4 = S )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ R @ S4 ) @ R2 ) ) ) ).

% ssubst_Pair_rhs
thf(fact_116_curry__conv,axiom,
    ( produc6008550485034061667_a_b_o
    = ( ^ [F2: produc357393685978478089rm_a_b > $o,A3: term_a_b,B4: term_a_b] : ( F2 @ ( produc7020197800436672577rm_a_b @ A3 @ B4 ) ) ) ) ).

% curry_conv
thf(fact_117_acyclic__def,axiom,
    ( transi823393136465916248rm_a_b
    = ( ^ [R3: set_Pr2972776593051762503rm_a_b] :
        ! [X4: produc357393685978478089rm_a_b] :
          ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X4 @ X4 ) @ ( transi9211502839322181930rm_a_b @ R3 ) ) ) ) ).

% acyclic_def
thf(fact_118_acyclic__def,axiom,
    ( transi5314701259734769157rm_a_b
    = ( ^ [R3: set_Pr4386577575007340137rm_a_b] :
        ! [X4: term_a_b] :
          ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X4 @ X4 ) @ ( transi7922773638565587891rm_a_b @ R3 ) ) ) ) ).

% acyclic_def
thf(fact_119_acyclicI,axiom,
    ! [R: set_Pr2972776593051762503rm_a_b] :
      ( ! [X3: produc357393685978478089rm_a_b] :
          ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ X3 ) @ ( transi9211502839322181930rm_a_b @ R ) )
     => ( transi823393136465916248rm_a_b @ R ) ) ).

% acyclicI
thf(fact_120_acyclicI,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b] :
      ( ! [X3: term_a_b] :
          ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ X3 ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( transi5314701259734769157rm_a_b @ R ) ) ).

% acyclicI
thf(fact_121_curryI,axiom,
    ! [F: produc4787317212837456354st_nat > $o,A: nat > nat > $o,B: produc1828647624359046049st_nat] :
      ( ( F @ ( produc3127733452865184594st_nat @ A @ B ) )
     => ( produc2023121225571165330_nat_o @ F @ A @ B ) ) ).

% curryI
thf(fact_122_curryI,axiom,
    ! [F: produc254973753779126261st_nat > $o,A: nat > nat > $o,B: list_nat] :
      ( ( F @ ( produc4727192421694094319st_nat @ A @ B ) )
     => ( produc1492399064212916507_nat_o @ F @ A @ B ) ) ).

% curryI
thf(fact_123_curryI,axiom,
    ! [F: produc5967569696164677611xt_a_b > $o,A: b,B: subterm_and_ctxt_a_b] :
      ( ( F @ ( produc8957000483500942811xt_a_b @ A @ B ) )
     => ( produc6702705547864706121_a_b_o @ F @ A @ B ) ) ).

% curryI
thf(fact_124_curryI,axiom,
    ! [F: produc6551080308567045442rm_a_b > $o,A: b,B: term_a_b] :
      ( ( F @ ( produc1437816968797971900rm_a_b @ A @ B ) )
     => ( produc863636840395689358_a_b_o @ F @ A @ B ) ) ).

% curryI
thf(fact_125_curryI,axiom,
    ! [F: product_prod_a_nat > $o,A: a,B: nat] :
      ( ( F @ ( product_Pair_a_nat @ A @ B ) )
     => ( produc5346504556365831315_nat_o @ F @ A @ B ) ) ).

% curryI
thf(fact_126_curryI,axiom,
    ! [F: produc357393685978478089rm_a_b > $o,A: term_a_b,B: term_a_b] :
      ( ( F @ ( produc7020197800436672577rm_a_b @ A @ B ) )
     => ( produc6008550485034061667_a_b_o @ F @ A @ B ) ) ).

% curryI
thf(fact_127_swap__simp,axiom,
    ! [X: term_a_b,Y: term_a_b] :
      ( ( produc2541846788875228641rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) )
      = ( produc7020197800436672577rm_a_b @ Y @ X ) ) ).

% swap_simp
thf(fact_128_swap__simp,axiom,
    ! [X: nat,Y: a] :
      ( ( product_swap_nat_a @ ( product_Pair_nat_a @ X @ Y ) )
      = ( product_Pair_a_nat @ Y @ X ) ) ).

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

% swap_simp
thf(fact_130_swap__simp,axiom,
    ! [X: subterm_and_ctxt_a_b,Y: b] :
      ( ( produc3717951326210472819_a_b_b @ ( produc2012298300495474131_a_b_b @ X @ Y ) )
      = ( produc8957000483500942811xt_a_b @ Y @ X ) ) ).

% swap_simp
thf(fact_131_swap__simp,axiom,
    ! [X: term_a_b,Y: b] :
      ( ( produc1428861184864852466_a_b_b @ ( produc1666658391573147538_a_b_b @ X @ Y ) )
      = ( produc1437816968797971900rm_a_b @ Y @ X ) ) ).

% swap_simp
thf(fact_132_swap__simp,axiom,
    ! [X: b,Y: subterm_and_ctxt_a_b] :
      ( ( produc1439281472361165691xt_a_b @ ( produc8957000483500942811xt_a_b @ X @ Y ) )
      = ( produc2012298300495474131_a_b_b @ Y @ X ) ) ).

% swap_simp
thf(fact_133_swap__simp,axiom,
    ! [X: b,Y: term_a_b] :
      ( ( produc1200019762089676828rm_a_b @ ( produc1437816968797971900rm_a_b @ X @ Y ) )
      = ( produc1666658391573147538_a_b_b @ Y @ X ) ) ).

% swap_simp
thf(fact_134_swap__simp,axiom,
    ! [X: list_nat,Y: nat > nat > $o] :
      ( ( produc1534639687815544717_nat_o @ ( produc2887701473640236333_nat_o @ X @ Y ) )
      = ( produc4727192421694094319st_nat @ Y @ X ) ) ).

% swap_simp
thf(fact_135_swap__simp,axiom,
    ! [X: nat > nat > $o,Y: list_nat] :
      ( ( produc3374130635869402703st_nat @ ( produc4727192421694094319st_nat @ X @ Y ) )
      = ( produc2887701473640236333_nat_o @ Y @ X ) ) ).

% swap_simp
thf(fact_136_swap__simp,axiom,
    ! [X: produc1828647624359046049st_nat,Y: nat > nat > $o] :
      ( ( produc1311334868336790716_nat_o @ ( produc3563911201077956380_nat_o @ X @ Y ) )
      = ( produc3127733452865184594st_nat @ Y @ X ) ) ).

% swap_simp
thf(fact_137_poss__of__term__replace__term__at,axiom,
    ! [P: list_nat,S: term_a_b,U: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( member_list_nat2 @ P @ ( terms_7168686267159881682rm_a_b @ U @ ( term_r6860082780075436317at_a_b @ S @ P @ U ) ) ) ) ).

% poss_of_term_replace_term_at
thf(fact_138_supt__const,axiom,
    ! [F: a,U: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F @ nil_term_a_b ) @ U ) @ subterm_and_supt_a_b ) ).

% supt_const
thf(fact_139_swap__swap,axiom,
    ! [P: produc357393685978478089rm_a_b] :
      ( ( produc2541846788875228641rm_a_b @ ( produc2541846788875228641rm_a_b @ P ) )
      = P ) ).

% swap_swap
thf(fact_140_subterm_Oless__asym,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subterm_and_supt_a_b ) ) ).

% subterm.less_asym
thf(fact_141_subterm_Oless__asym_H,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b ) ) ).

% subterm.less_asym'
thf(fact_142_subterm_Oless__trans,axiom,
    ! [Y: term_a_b,X: term_a_b,Z2: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ Y ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ X ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.less_trans
thf(fact_143_subterm_Oorder_Oasym,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b ) ) ).

% subterm.order.asym
thf(fact_144_subterm_Oless__irrefl,axiom,
    ! [X: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ X ) @ subterm_and_supt_a_b ) ).

% subterm.less_irrefl
thf(fact_145_subterm_Oless__imp__neq,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( X != Y ) ) ).

% subterm.less_imp_neq
thf(fact_146_subterm_Oless__not__sym,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subterm_and_supt_a_b ) ) ).

% subterm.less_not_sym
thf(fact_147_subterm_Oless__imp__triv,axiom,
    ! [Y: term_a_b,X: term_a_b,P4: $o] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subterm_and_supt_a_b )
       => P4 ) ) ).

% subterm.less_imp_triv
thf(fact_148_subterm_Odual__order_Oasym,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b ) ) ).

% subterm.dual_order.asym
thf(fact_149_subterm_Oless__imp__not__eq,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( X != Y ) ) ).

% subterm.less_imp_not_eq
thf(fact_150_subterm_Oless__imp__not__eq2,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( Y != X ) ) ).

% subterm.less_imp_not_eq2
thf(fact_151_subterm_Odual__order_Oirrefl,axiom,
    ! [A: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ A ) @ subterm_and_supt_a_b ) ).

% subterm.dual_order.irrefl
thf(fact_152_subterm_Oless__imp__not__less,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subterm_and_supt_a_b ) ) ).

% subterm.less_imp_not_less
thf(fact_153_subterm_Oord__eq__less__trans,axiom,
    ! [A: term_a_b,B: term_a_b,C: term_a_b] :
      ( ( A = B )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ B ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.ord_eq_less_trans
thf(fact_154_subterm_Oord__less__eq__trans,axiom,
    ! [B: term_a_b,A: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
     => ( ( B = C )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.ord_less_eq_trans
thf(fact_155_subterm_Oorder_Ostrict__trans,axiom,
    ! [B: term_a_b,A: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ B ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.order.strict_trans
thf(fact_156_subterm_Odual__order_Ostrict__trans,axiom,
    ! [A: term_a_b,B: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.dual_order.strict_trans
thf(fact_157_subterm_Oorder_Ostrict__implies__not__eq,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
     => ( A != B ) ) ).

% subterm.order.strict_implies_not_eq
thf(fact_158_subterm_Odual__order_Ostrict__implies__not__eq,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
     => ( A != B ) ) ).

% subterm.dual_order.strict_implies_not_eq
thf(fact_159_supt__neqD,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ( S != T ) ) ).

% supt_neqD
thf(fact_160_supt__trans,axiom,
    ! [S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ U ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ U ) @ subterm_and_supt_a_b ) ) ) ).

% supt_trans
thf(fact_161_supt__irrefl,axiom,
    ! [T: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ T ) @ subterm_and_supt_a_b ) ).

% supt_irrefl
thf(fact_162_supt__not__sym,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ S ) @ subterm_and_supt_a_b ) ) ).

% supt_not_sym
thf(fact_163_supt__not__refl,axiom,
    ! [T: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ T ) @ subterm_and_supt_a_b ) ).

% supt_not_refl
thf(fact_164_subterm__induct,axiom,
    ! [P4: term_a_b > $o,T: term_a_b] :
      ( ! [T2: term_a_b] :
          ( ! [S5: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T2 @ S5 ) @ subterm_and_supt_a_b )
             => ( P4 @ S5 ) )
         => ( P4 @ T2 ) )
     => ( P4 @ T ) ) ).

% subterm_induct
thf(fact_165_subterm_OacyclicI__order,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,F: term_a_b > term_a_b] :
      ( ! [A4: term_a_b,B3: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) @ R )
         => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ A4 ) @ ( F @ B3 ) ) @ subterm_and_supt_a_b ) )
     => ( transi5314701259734769157rm_a_b @ R ) ) ).

% subterm.acyclicI_order
thf(fact_166_pos__replace__at__pres,axiom,
    ! [P: list_nat,S: term_a_b,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( member_list_nat2 @ P @ ( term_poss_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ T ) ) ) ) ).

% pos_replace_at_pres
thf(fact_167_curryD,axiom,
    ! [F: produc4787317212837456354st_nat > $o,A: nat > nat > $o,B: produc1828647624359046049st_nat] :
      ( ( produc2023121225571165330_nat_o @ F @ A @ B )
     => ( F @ ( produc3127733452865184594st_nat @ A @ B ) ) ) ).

% curryD
thf(fact_168_curryD,axiom,
    ! [F: produc254973753779126261st_nat > $o,A: nat > nat > $o,B: list_nat] :
      ( ( produc1492399064212916507_nat_o @ F @ A @ B )
     => ( F @ ( produc4727192421694094319st_nat @ A @ B ) ) ) ).

% curryD
thf(fact_169_curryD,axiom,
    ! [F: produc5967569696164677611xt_a_b > $o,A: b,B: subterm_and_ctxt_a_b] :
      ( ( produc6702705547864706121_a_b_o @ F @ A @ B )
     => ( F @ ( produc8957000483500942811xt_a_b @ A @ B ) ) ) ).

% curryD
thf(fact_170_curryD,axiom,
    ! [F: produc6551080308567045442rm_a_b > $o,A: b,B: term_a_b] :
      ( ( produc863636840395689358_a_b_o @ F @ A @ B )
     => ( F @ ( produc1437816968797971900rm_a_b @ A @ B ) ) ) ).

% curryD
thf(fact_171_curryD,axiom,
    ! [F: product_prod_a_nat > $o,A: a,B: nat] :
      ( ( produc5346504556365831315_nat_o @ F @ A @ B )
     => ( F @ ( product_Pair_a_nat @ A @ B ) ) ) ).

% curryD
thf(fact_172_curryD,axiom,
    ! [F: produc357393685978478089rm_a_b > $o,A: term_a_b,B: term_a_b] :
      ( ( produc6008550485034061667_a_b_o @ F @ A @ B )
     => ( F @ ( produc7020197800436672577rm_a_b @ A @ B ) ) ) ).

% curryD
thf(fact_173_curryE,axiom,
    ! [F: produc4787317212837456354st_nat > $o,A: nat > nat > $o,B: produc1828647624359046049st_nat] :
      ( ( produc2023121225571165330_nat_o @ F @ A @ B )
     => ( F @ ( produc3127733452865184594st_nat @ A @ B ) ) ) ).

% curryE
thf(fact_174_curryE,axiom,
    ! [F: produc254973753779126261st_nat > $o,A: nat > nat > $o,B: list_nat] :
      ( ( produc1492399064212916507_nat_o @ F @ A @ B )
     => ( F @ ( produc4727192421694094319st_nat @ A @ B ) ) ) ).

% curryE
thf(fact_175_curryE,axiom,
    ! [F: produc5967569696164677611xt_a_b > $o,A: b,B: subterm_and_ctxt_a_b] :
      ( ( produc6702705547864706121_a_b_o @ F @ A @ B )
     => ( F @ ( produc8957000483500942811xt_a_b @ A @ B ) ) ) ).

% curryE
thf(fact_176_curryE,axiom,
    ! [F: produc6551080308567045442rm_a_b > $o,A: b,B: term_a_b] :
      ( ( produc863636840395689358_a_b_o @ F @ A @ B )
     => ( F @ ( produc1437816968797971900rm_a_b @ A @ B ) ) ) ).

% curryE
thf(fact_177_curryE,axiom,
    ! [F: product_prod_a_nat > $o,A: a,B: nat] :
      ( ( produc5346504556365831315_nat_o @ F @ A @ B )
     => ( F @ ( product_Pair_a_nat @ A @ B ) ) ) ).

% curryE
thf(fact_178_curryE,axiom,
    ! [F: produc357393685978478089rm_a_b > $o,A: term_a_b,B: term_a_b] :
      ( ( produc6008550485034061667_a_b_o @ F @ A @ B )
     => ( F @ ( produc7020197800436672577rm_a_b @ A @ B ) ) ) ).

% curryE
thf(fact_179_position__diff__Nil,axiom,
    ! [Q5: list_P2364656488115551307rm_a_b] :
      ( ( term_p4159419441187170626rm_a_b @ Q5 @ nil_Pr4197086119080101963rm_a_b )
      = Q5 ) ).

% position_diff_Nil
thf(fact_180_position__diff__Nil,axiom,
    ! [Q5: list_P6011104703257516679at_nat] :
      ( ( term_p3376976900432600702at_nat @ Q5 @ nil_Pr5478986624290739719at_nat )
      = Q5 ) ).

% position_diff_Nil
thf(fact_181_position__diff__Nil,axiom,
    ! [Q5: list_list_term_a_b] :
      ( ( term_p6300577740959955047rm_a_b @ Q5 @ nil_list_term_a_b )
      = Q5 ) ).

% position_diff_Nil
thf(fact_182_position__diff__Nil,axiom,
    ! [Q5: list_list_nat] :
      ( ( term_p7564741194569991203st_nat @ Q5 @ nil_list_nat )
      = Q5 ) ).

% position_diff_Nil
thf(fact_183_position__diff__Nil,axiom,
    ! [Q5: list_term_a_b_nat] :
      ( ( term_p4502178508558846150_b_nat @ Q5 @ nil_term_a_b_nat )
      = Q5 ) ).

% position_diff_Nil
thf(fact_184_position__diff__Nil,axiom,
    ! [Q5: list_term_a_b] :
      ( ( term_p798503758663136087rm_a_b @ Q5 @ nil_term_a_b )
      = Q5 ) ).

% position_diff_Nil
thf(fact_185_position__diff__Nil,axiom,
    ! [Q5: list_nat] :
      ( ( term_pos_diff_nat @ Q5 @ nil_nat )
      = Q5 ) ).

% position_diff_Nil
thf(fact_186_replace__term__at__not__poss,axiom,
    ! [P: list_nat,S: term_a_b,T: term_a_b] :
      ( ~ ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( term_r6860082780075436317at_a_b @ S @ P @ T )
        = S ) ) ).

% replace_term_at_not_poss
thf(fact_187_list__ex1__simps_I1_J,axiom,
    ! [P4: produc1234881154892807749rm_a_b > $o] :
      ~ ( list_e8606123503008938638rm_a_b @ P4 @ nil_Pr4197086119080101963rm_a_b ) ).

% list_ex1_simps(1)
thf(fact_188_list__ex1__simps_I1_J,axiom,
    ! [P4: product_prod_nat_nat > $o] :
      ~ ( list_e8644085759156585930at_nat @ P4 @ nil_Pr5478986624290739719at_nat ) ).

% list_ex1_simps(1)
thf(fact_189_list__ex1__simps_I1_J,axiom,
    ! [P4: list_term_a_b > $o] :
      ~ ( list_e1122455069120957467rm_a_b @ P4 @ nil_list_term_a_b ) ).

% list_ex1_simps(1)
thf(fact_190_list__ex1__simps_I1_J,axiom,
    ! [P4: ( term_a_b > nat ) > $o] :
      ~ ( list_e8867884845635725434_b_nat @ P4 @ nil_term_a_b_nat ) ).

% list_ex1_simps(1)
thf(fact_191_list__ex1__simps_I1_J,axiom,
    ! [P4: produc357393685978478089rm_a_b > $o] :
      ~ ( list_e2893281867963234770rm_a_b @ P4 @ nil_Pr6942174756412032271rm_a_b ) ).

% list_ex1_simps(1)
thf(fact_192_list__ex1__simps_I1_J,axiom,
    ! [P4: list_nat > $o] :
      ~ ( list_ex1_list_nat @ P4 @ nil_list_nat ) ).

% list_ex1_simps(1)
thf(fact_193_list__ex1__simps_I1_J,axiom,
    ! [P4: term_a_b > $o] :
      ~ ( list_ex1_term_a_b @ P4 @ nil_term_a_b ) ).

% list_ex1_simps(1)
thf(fact_194_list__ex1__simps_I1_J,axiom,
    ! [P4: nat > $o] :
      ~ ( list_ex1_nat @ P4 @ nil_nat ) ).

% list_ex1_simps(1)
thf(fact_195_same__fstI,axiom,
    ! [P4: ( nat > nat > $o ) > $o,X: nat > nat > $o,Y4: produc1828647624359046049st_nat,Y: produc1828647624359046049st_nat,R2: ( nat > nat > $o ) > set_Pr915550674247830855st_nat] :
      ( ( P4 @ X )
     => ( ( member5236317644330119056st_nat @ ( produc988773521843941591st_nat @ Y4 @ Y ) @ ( R2 @ X ) )
       => ( member954505421117658448st_nat @ ( produc728103027205548823st_nat @ ( produc3127733452865184594st_nat @ X @ Y4 ) @ ( produc3127733452865184594st_nat @ X @ Y ) ) @ ( same_f7507793245562524199st_nat @ P4 @ R2 ) ) ) ) ).

% same_fstI
thf(fact_196_same__fstI,axiom,
    ! [P4: ( nat > nat > $o ) > $o,X: nat > nat > $o,Y4: list_nat,Y: list_nat,R2: ( nat > nat > $o ) > set_Pr3451248702717554689st_nat] :
      ( ( P4 @ X )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Y4 @ Y ) @ ( R2 @ X ) )
       => ( member6929873720474945908st_nat @ ( produc3744802840634486403st_nat @ ( produc4727192421694094319st_nat @ X @ Y4 ) @ ( produc4727192421694094319st_nat @ X @ Y ) ) @ ( same_f8474159707804626138st_nat @ P4 @ R2 ) ) ) ) ).

% same_fstI
thf(fact_197_same__fstI,axiom,
    ! [P4: b > $o,X: b,Y4: subterm_and_ctxt_a_b,Y: subterm_and_ctxt_a_b,R2: b > set_Pr418624375388990407xt_a_b] :
      ( ( P4 @ X )
     => ( ( member6284495302721838608xt_a_b @ ( produc4019867106713534551xt_a_b @ Y4 @ Y ) @ ( R2 @ X ) )
       => ( member4428120077375243280xt_a_b @ ( produc668170914141311575xt_a_b @ ( produc8957000483500942811xt_a_b @ X @ Y4 ) @ ( produc8957000483500942811xt_a_b @ X @ Y ) ) @ ( same_f5210226418363274032xt_a_b @ P4 @ R2 ) ) ) ) ).

% same_fstI
thf(fact_198_same__fstI,axiom,
    ! [P4: a > $o,X: a,Y4: nat,Y: nat,R2: a > set_Pr1261947904930325089at_nat] :
      ( ( P4 @ X )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ Y ) @ ( R2 @ X ) )
       => ( member9062615507155100804_a_nat @ ( produc2026711137822539155_a_nat @ ( product_Pair_a_nat @ X @ Y4 ) @ ( product_Pair_a_nat @ X @ Y ) ) @ ( same_fst_a_nat @ P4 @ R2 ) ) ) ) ).

% same_fstI
thf(fact_199_same__fstI,axiom,
    ! [P4: b > $o,X: b,Y4: term_a_b,Y: term_a_b,R2: b > set_Pr4386577575007340137rm_a_b] :
      ( ( P4 @ X )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y4 @ Y ) @ ( R2 @ X ) )
       => ( member7542685802389602574rm_a_b @ ( produc411707225774285981rm_a_b @ ( produc1437816968797971900rm_a_b @ X @ Y4 ) @ ( produc1437816968797971900rm_a_b @ X @ Y ) ) @ ( same_fst_b_term_a_b @ P4 @ R2 ) ) ) ) ).

% same_fstI
thf(fact_200_same__fstI,axiom,
    ! [P4: term_a_b > $o,X: term_a_b,Y4: term_a_b,Y: term_a_b,R2: term_a_b > set_Pr4386577575007340137rm_a_b] :
      ( ( P4 @ X )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y4 @ Y ) @ ( R2 @ X ) )
       => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y4 ) @ ( produc7020197800436672577rm_a_b @ X @ Y ) ) @ ( same_f843731131676418198rm_a_b @ P4 @ R2 ) ) ) ) ).

% same_fstI
thf(fact_201_Nil__in__poss,axiom,
    ! [T: term_a_b] : ( member_list_nat2 @ nil_nat @ ( term_poss_a_b @ T ) ) ).

% Nil_in_poss
thf(fact_202_replace__term__at_Osimps_I1_J,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( term_r6860082780075436317at_a_b @ S @ nil_nat @ T )
      = T ) ).

% replace_term_at.simps(1)
thf(fact_203_par__pos__replace__pres,axiom,
    ! [P: list_nat,S: term_a_b,Q5: list_nat,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( term_p5017330785391824242ar_nat @ P @ Q5 )
       => ( member_list_nat2 @ P @ ( term_poss_a_b @ ( term_r6860082780075436317at_a_b @ S @ Q5 @ T ) ) ) ) ) ).

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

% bind_simps(1)
thf(fact_205_bind__simps_I1_J,axiom,
    ! [F: term_a_b > list_nat] :
      ( ( bind_term_a_b_nat @ nil_term_a_b @ F )
      = nil_nat ) ).

% bind_simps(1)
thf(fact_206_bind__simps_I1_J,axiom,
    ! [F: nat > list_term_a_b] :
      ( ( bind_nat_term_a_b @ nil_nat @ F )
      = nil_term_a_b ) ).

% bind_simps(1)
thf(fact_207_bind__simps_I1_J,axiom,
    ! [F: term_a_b > list_term_a_b] :
      ( ( bind_t2899167355749536305rm_a_b @ nil_term_a_b @ F )
      = nil_term_a_b ) ).

% bind_simps(1)
thf(fact_208_bind__simps_I1_J,axiom,
    ! [F: nat > list_list_nat] :
      ( ( bind_nat_list_nat @ nil_nat @ F )
      = nil_list_nat ) ).

% bind_simps(1)
thf(fact_209_bind__simps_I1_J,axiom,
    ! [F: list_nat > list_nat] :
      ( ( bind_list_nat_nat @ nil_list_nat @ F )
      = nil_nat ) ).

% bind_simps(1)
thf(fact_210_bind__simps_I1_J,axiom,
    ! [F: nat > list_P6011104703257516679at_nat] :
      ( ( bind_n1878750130520726888at_nat @ nil_nat @ F )
      = nil_Pr5478986624290739719at_nat ) ).

% bind_simps(1)
thf(fact_211_bind__simps_I1_J,axiom,
    ! [F: product_prod_nat_nat > list_nat] :
      ( ( bind_P7742074774332787594at_nat @ nil_Pr5478986624290739719at_nat @ F )
      = nil_nat ) ).

% bind_simps(1)
thf(fact_212_bind__simps_I1_J,axiom,
    ! [F: list_nat > list_list_nat] :
      ( ( bind_l7796378977173581257st_nat @ nil_list_nat @ F )
      = nil_list_nat ) ).

% bind_simps(1)
thf(fact_213_bind__simps_I1_J,axiom,
    ! [F: term_a_b > list_list_nat] :
      ( ( bind_t442032754801615613st_nat @ nil_term_a_b @ F )
      = nil_list_nat ) ).

% bind_simps(1)
thf(fact_214_member__rec_I2_J,axiom,
    ! [Y: produc357393685978478089rm_a_b] :
      ~ ( member1202727356028726564rm_a_b @ nil_Pr6942174756412032271rm_a_b @ Y ) ).

% member_rec(2)
thf(fact_215_member__rec_I2_J,axiom,
    ! [Y: produc1234881154892807749rm_a_b] :
      ~ ( member2625873403759427296rm_a_b @ nil_Pr4197086119080101963rm_a_b @ Y ) ).

% member_rec(2)
thf(fact_216_member__rec_I2_J,axiom,
    ! [Y: product_prod_nat_nat] :
      ~ ( member6104210405413575452at_nat @ nil_Pr5478986624290739719at_nat @ Y ) ).

% member_rec(2)
thf(fact_217_member__rec_I2_J,axiom,
    ! [Y: list_term_a_b] :
      ~ ( member_list_term_a_b @ nil_list_term_a_b @ Y ) ).

% member_rec(2)
thf(fact_218_member__rec_I2_J,axiom,
    ! [Y: list_nat] :
      ~ ( member_list_nat @ nil_list_nat @ Y ) ).

% member_rec(2)
thf(fact_219_member__rec_I2_J,axiom,
    ! [Y: term_a_b > nat] :
      ~ ( member_term_a_b_nat @ nil_term_a_b_nat @ Y ) ).

% member_rec(2)
thf(fact_220_member__rec_I2_J,axiom,
    ! [Y: term_a_b] :
      ~ ( member_term_a_b @ nil_term_a_b @ Y ) ).

% member_rec(2)
thf(fact_221_member__rec_I2_J,axiom,
    ! [Y: nat] :
      ~ ( member_nat @ nil_nat @ Y ) ).

% member_rec(2)
thf(fact_222_supt_Oarg,axiom,
    ! [S: term_a_b,Ss: list_term_a_b,F: a] :
      ( ( member_term_a_b2 @ S @ ( set_term_a_b2 @ Ss ) )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F @ Ss ) @ S ) @ subterm_and_supt_a_b ) ) ).

% supt.arg
thf(fact_223_supt_Osubt,axiom,
    ! [S: term_a_b,Ss: list_term_a_b,T: term_a_b,F: a] :
      ( ( member_term_a_b2 @ S @ ( set_term_a_b2 @ Ss ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F @ Ss ) @ T ) @ subterm_and_supt_a_b ) ) ) ).

% supt.subt
thf(fact_224_par__not__refl,axiom,
    ! [P: list_nat] :
      ~ ( term_p5017330785391824242ar_nat @ P @ P ) ).

% par_not_refl
thf(fact_225_par__not__refl,axiom,
    ! [P: list_term_a_b] :
      ~ ( term_p7407996180858101430rm_a_b @ P @ P ) ).

% par_not_refl
thf(fact_226_Nil__not__par_I1_J,axiom,
    ! [P: list_P2364656488115551307rm_a_b] :
      ~ ( term_p6424153574643673891rm_a_b @ nil_Pr4197086119080101963rm_a_b @ P ) ).

% Nil_not_par(1)
thf(fact_227_Nil__not__par_I1_J,axiom,
    ! [P: list_P6011104703257516679at_nat] :
      ~ ( term_p8419326880412058847at_nat @ nil_Pr5478986624290739719at_nat @ P ) ).

% Nil_not_par(1)
thf(fact_228_Nil__not__par_I1_J,axiom,
    ! [P: list_list_term_a_b] :
      ~ ( term_p3834017231281530950rm_a_b @ nil_list_term_a_b @ P ) ).

% Nil_not_par(1)
thf(fact_229_Nil__not__par_I1_J,axiom,
    ! [P: list_list_nat] :
      ~ ( term_p4950861579910180738st_nat @ nil_list_nat @ P ) ).

% Nil_not_par(1)
thf(fact_230_Nil__not__par_I1_J,axiom,
    ! [P: list_term_a_b_nat] :
      ~ ( term_p700130527931300261_b_nat @ nil_term_a_b_nat @ P ) ).

% Nil_not_par(1)
thf(fact_231_Nil__not__par_I1_J,axiom,
    ! [P: list_term_a_b] :
      ~ ( term_p7407996180858101430rm_a_b @ nil_term_a_b @ P ) ).

% Nil_not_par(1)
thf(fact_232_Nil__not__par_I1_J,axiom,
    ! [P: list_nat] :
      ~ ( term_p5017330785391824242ar_nat @ nil_nat @ P ) ).

% Nil_not_par(1)
thf(fact_233_Nil__not__par_I2_J,axiom,
    ! [P: list_P2364656488115551307rm_a_b] :
      ~ ( term_p6424153574643673891rm_a_b @ P @ nil_Pr4197086119080101963rm_a_b ) ).

% Nil_not_par(2)
thf(fact_234_Nil__not__par_I2_J,axiom,
    ! [P: list_P6011104703257516679at_nat] :
      ~ ( term_p8419326880412058847at_nat @ P @ nil_Pr5478986624290739719at_nat ) ).

% Nil_not_par(2)
thf(fact_235_Nil__not__par_I2_J,axiom,
    ! [P: list_list_term_a_b] :
      ~ ( term_p3834017231281530950rm_a_b @ P @ nil_list_term_a_b ) ).

% Nil_not_par(2)
thf(fact_236_Nil__not__par_I2_J,axiom,
    ! [P: list_list_nat] :
      ~ ( term_p4950861579910180738st_nat @ P @ nil_list_nat ) ).

% Nil_not_par(2)
thf(fact_237_Nil__not__par_I2_J,axiom,
    ! [P: list_term_a_b_nat] :
      ~ ( term_p700130527931300261_b_nat @ P @ nil_term_a_b_nat ) ).

% Nil_not_par(2)
thf(fact_238_Nil__not__par_I2_J,axiom,
    ! [P: list_term_a_b] :
      ~ ( term_p7407996180858101430rm_a_b @ P @ nil_term_a_b ) ).

% Nil_not_par(2)
thf(fact_239_Nil__not__par_I2_J,axiom,
    ! [P: list_nat] :
      ~ ( term_p5017330785391824242ar_nat @ P @ nil_nat ) ).

% Nil_not_par(2)
thf(fact_240_list__bind__cong,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,F: term_a_b > list_nat,G: term_a_b > list_nat] :
      ( ( Xs = Ys )
     => ( ! [X3: term_a_b] :
            ( ( member_term_a_b2 @ X3 @ ( set_term_a_b2 @ Xs ) )
           => ( ( F @ X3 )
              = ( G @ X3 ) ) )
       => ( ( bind_term_a_b_nat @ Xs @ F )
          = ( bind_term_a_b_nat @ Ys @ G ) ) ) ) ).

% list_bind_cong
thf(fact_241_list__bind__cong,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,F: term_a_b > list_term_a_b,G: term_a_b > list_term_a_b] :
      ( ( Xs = Ys )
     => ( ! [X3: term_a_b] :
            ( ( member_term_a_b2 @ X3 @ ( set_term_a_b2 @ Xs ) )
           => ( ( F @ X3 )
              = ( G @ X3 ) ) )
       => ( ( bind_t2899167355749536305rm_a_b @ Xs @ F )
          = ( bind_t2899167355749536305rm_a_b @ Ys @ G ) ) ) ) ).

% list_bind_cong
thf(fact_242_list__bind__cong,axiom,
    ! [Xs: list_nat,Ys: list_nat,F: nat > list_nat,G: nat > list_nat] :
      ( ( Xs = Ys )
     => ( ! [X3: nat] :
            ( ( member_nat2 @ X3 @ ( set_nat2 @ Xs ) )
           => ( ( F @ X3 )
              = ( G @ X3 ) ) )
       => ( ( bind_nat_nat @ Xs @ F )
          = ( bind_nat_nat @ Ys @ G ) ) ) ) ).

% list_bind_cong
thf(fact_243_list__bind__cong,axiom,
    ! [Xs: list_nat,Ys: list_nat,F: nat > list_term_a_b,G: nat > list_term_a_b] :
      ( ( Xs = Ys )
     => ( ! [X3: nat] :
            ( ( member_nat2 @ X3 @ ( set_nat2 @ Xs ) )
           => ( ( F @ X3 )
              = ( G @ X3 ) ) )
       => ( ( bind_nat_term_a_b @ Xs @ F )
          = ( bind_nat_term_a_b @ Ys @ G ) ) ) ) ).

% list_bind_cong
thf(fact_244_in__set__member,axiom,
    ! [X: list_P8875379029341186191rm_a_b,Xs: list_l1829479457390431893rm_a_b] :
      ( ( member7646937072540562872rm_a_b @ X @ ( set_li8127237413610407972rm_a_b @ Xs ) )
      = ( member7820772194684704298rm_a_b @ Xs @ X ) ) ).

% in_set_member
thf(fact_245_in__set__member,axiom,
    ! [X: list_list_nat,Xs: list_list_list_nat] :
      ( ( member_list_list_nat2 @ X @ ( set_list_list_nat2 @ Xs ) )
      = ( member_list_list_nat @ Xs @ X ) ) ).

% in_set_member
thf(fact_246_in__set__member,axiom,
    ! [X: produc1828647624359046049st_nat,Xs: list_P7940050157051400743st_nat] :
      ( ( member7340969449405702474st_nat @ X @ ( set_Pr3842133991353686454st_nat @ Xs ) )
      = ( member2673981294409294524st_nat @ Xs @ X ) ) ).

% in_set_member
thf(fact_247_in__set__member,axiom,
    ! [X: term_a_b,Xs: list_term_a_b] :
      ( ( member_term_a_b2 @ X @ ( set_term_a_b2 @ Xs ) )
      = ( member_term_a_b @ Xs @ X ) ) ).

% in_set_member
thf(fact_248_in__set__member,axiom,
    ! [X: list_term_a_b,Xs: list_list_term_a_b] :
      ( ( member_list_term_a_b2 @ X @ ( set_list_term_a_b2 @ Xs ) )
      = ( member_list_term_a_b @ Xs @ X ) ) ).

% in_set_member
thf(fact_249_in__set__member,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat2 @ X @ ( set_nat2 @ Xs ) )
      = ( member_nat @ Xs @ X ) ) ).

% in_set_member
thf(fact_250_in__set__member,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
      = ( member_list_nat @ Xs @ X ) ) ).

% in_set_member
thf(fact_251_in__set__member,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
      = ( member1202727356028726564rm_a_b @ Xs @ X ) ) ).

% in_set_member
thf(fact_252_list__ex1__iff,axiom,
    ( list_e6045419187443348440rm_a_b
    = ( ^ [P5: list_P8875379029341186191rm_a_b > $o,Xs2: list_l1829479457390431893rm_a_b] :
        ? [X4: list_P8875379029341186191rm_a_b] :
          ( ( member7646937072540562872rm_a_b @ X4 @ ( set_li8127237413610407972rm_a_b @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: list_P8875379029341186191rm_a_b] :
              ( ( ( member7646937072540562872rm_a_b @ Y5 @ ( set_li8127237413610407972rm_a_b @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_253_list__ex1__iff,axiom,
    ( list_e4462734821984335591st_nat
    = ( ^ [P5: list_list_nat > $o,Xs2: list_list_list_nat] :
        ? [X4: list_list_nat] :
          ( ( member_list_list_nat2 @ X4 @ ( set_list_list_nat2 @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: list_list_nat] :
              ( ( ( member_list_list_nat2 @ Y5 @ ( set_list_list_nat2 @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_254_list__ex1__iff,axiom,
    ( list_e4364535806343802730st_nat
    = ( ^ [P5: produc1828647624359046049st_nat > $o,Xs2: list_P7940050157051400743st_nat] :
        ? [X4: produc1828647624359046049st_nat] :
          ( ( member7340969449405702474st_nat @ X4 @ ( set_Pr3842133991353686454st_nat @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: produc1828647624359046049st_nat] :
              ( ( ( member7340969449405702474st_nat @ Y5 @ ( set_Pr3842133991353686454st_nat @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_255_list__ex1__iff,axiom,
    ( list_e1122455069120957467rm_a_b
    = ( ^ [P5: list_term_a_b > $o,Xs2: list_list_term_a_b] :
        ? [X4: list_term_a_b] :
          ( ( member_list_term_a_b2 @ X4 @ ( set_list_term_a_b2 @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: list_term_a_b] :
              ( ( ( member_list_term_a_b2 @ Y5 @ ( set_list_term_a_b2 @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_256_list__ex1__iff,axiom,
    ( list_ex1_nat
    = ( ^ [P5: nat > $o,Xs2: list_nat] :
        ? [X4: nat] :
          ( ( member_nat2 @ X4 @ ( set_nat2 @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: nat] :
              ( ( ( member_nat2 @ Y5 @ ( set_nat2 @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_257_list__ex1__iff,axiom,
    ( list_ex1_term_a_b
    = ( ^ [P5: term_a_b > $o,Xs2: list_term_a_b] :
        ? [X4: term_a_b] :
          ( ( member_term_a_b2 @ X4 @ ( set_term_a_b2 @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: term_a_b] :
              ( ( ( member_term_a_b2 @ Y5 @ ( set_term_a_b2 @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_258_list__ex1__iff,axiom,
    ( list_ex1_list_nat
    = ( ^ [P5: list_nat > $o,Xs2: list_list_nat] :
        ? [X4: list_nat] :
          ( ( member_list_nat2 @ X4 @ ( set_list_nat2 @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: list_nat] :
              ( ( ( member_list_nat2 @ Y5 @ ( set_list_nat2 @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_259_list__ex1__iff,axiom,
    ( list_e2893281867963234770rm_a_b
    = ( ^ [P5: produc357393685978478089rm_a_b > $o,Xs2: list_P8875379029341186191rm_a_b] :
        ? [X4: produc357393685978478089rm_a_b] :
          ( ( member5869715511025134514rm_a_b @ X4 @ ( set_Pr2370880052973118494rm_a_b @ Xs2 ) )
          & ( P5 @ X4 )
          & ! [Y5: produc357393685978478089rm_a_b] :
              ( ( ( member5869715511025134514rm_a_b @ Y5 @ ( set_Pr2370880052973118494rm_a_b @ Xs2 ) )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_260_parallel__replace__term__commute,axiom,
    ! [P: list_nat,Q5: list_nat,S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( term_p5017330785391824242ar_nat @ P @ Q5 )
     => ( ( term_r6860082780075436317at_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ T ) @ Q5 @ U )
        = ( term_r6860082780075436317at_a_b @ ( term_r6860082780075436317at_a_b @ S @ Q5 @ U ) @ P @ T ) ) ) ).

% parallel_replace_term_commute
thf(fact_261_term__not__arg,axiom,
    ! [F: a,Ss: list_term_a_b] :
      ~ ( member_term_a_b2 @ ( fun_a_b @ F @ Ss ) @ ( set_term_a_b2 @ Ss ) ) ).

% term_not_arg
thf(fact_262_supt__Fun,axiom,
    ! [S: term_a_b,F: a,Ss: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ ( fun_a_b @ F @ Ss ) ) @ subterm_and_supt_a_b )
     => ~ ( member_term_a_b2 @ S @ ( set_term_a_b2 @ Ss ) ) ) ).

% supt_Fun
thf(fact_263_supt_Osimps,axiom,
    ! [A1: term_a_b,A22: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ subterm_and_supt_a_b )
      = ( ? [S3: term_a_b,Ss2: list_term_a_b,F2: a] :
            ( ( A1
              = ( fun_a_b @ F2 @ Ss2 ) )
            & ( A22 = S3 )
            & ( member_term_a_b2 @ S3 @ ( set_term_a_b2 @ Ss2 ) ) )
        | ? [S3: term_a_b,Ss2: list_term_a_b,T3: term_a_b,F2: a] :
            ( ( A1
              = ( fun_a_b @ F2 @ Ss2 ) )
            & ( A22 = T3 )
            & ( member_term_a_b2 @ S3 @ ( set_term_a_b2 @ Ss2 ) )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S3 @ T3 ) @ subterm_and_supt_a_b ) ) ) ) ).

% supt.simps
thf(fact_264_supt_Ocases,axiom,
    ! [A1: term_a_b,A22: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ subterm_and_supt_a_b )
     => ( ! [S2: term_a_b,Ss3: list_term_a_b] :
            ( ? [F3: a] :
                ( A1
                = ( fun_a_b @ F3 @ Ss3 ) )
           => ( ( A22 = S2 )
             => ~ ( member_term_a_b2 @ S2 @ ( set_term_a_b2 @ Ss3 ) ) ) )
       => ~ ! [S2: term_a_b,Ss3: list_term_a_b] :
              ( ? [F3: a] :
                  ( A1
                  = ( fun_a_b @ F3 @ Ss3 ) )
             => ( ( member_term_a_b2 @ S2 @ ( set_term_a_b2 @ Ss3 ) )
               => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S2 @ A22 ) @ subterm_and_supt_a_b ) ) ) ) ) ).

% supt.cases
thf(fact_265_can__select__set__list__ex1,axiom,
    ! [P4: produc1828647624359046049st_nat > $o,A5: list_P7940050157051400743st_nat] :
      ( ( can_se6413446879105937054st_nat @ P4 @ ( set_Pr3842133991353686454st_nat @ A5 ) )
      = ( list_e4364535806343802730st_nat @ P4 @ A5 ) ) ).

% can_select_set_list_ex1
thf(fact_266_can__select__set__list__ex1,axiom,
    ! [P4: list_term_a_b > $o,A5: list_list_term_a_b] :
      ( ( can_se852741519239192039rm_a_b @ P4 @ ( set_list_term_a_b2 @ A5 ) )
      = ( list_e1122455069120957467rm_a_b @ P4 @ A5 ) ) ).

% can_select_set_list_ex1
thf(fact_267_can__select__set__list__ex1,axiom,
    ! [P4: nat > $o,A5: list_nat] :
      ( ( can_select_nat @ P4 @ ( set_nat2 @ A5 ) )
      = ( list_ex1_nat @ P4 @ A5 ) ) ).

% can_select_set_list_ex1
thf(fact_268_can__select__set__list__ex1,axiom,
    ! [P4: term_a_b > $o,A5: list_term_a_b] :
      ( ( can_select_term_a_b @ P4 @ ( set_term_a_b2 @ A5 ) )
      = ( list_ex1_term_a_b @ P4 @ A5 ) ) ).

% can_select_set_list_ex1
thf(fact_269_can__select__set__list__ex1,axiom,
    ! [P4: produc357393685978478089rm_a_b > $o,A5: list_P8875379029341186191rm_a_b] :
      ( ( can_se4942192940725369094rm_a_b @ P4 @ ( set_Pr2370880052973118494rm_a_b @ A5 ) )
      = ( list_e2893281867963234770rm_a_b @ P4 @ A5 ) ) ).

% can_select_set_list_ex1
thf(fact_270_can__select__set__list__ex1,axiom,
    ! [P4: list_nat > $o,A5: list_list_nat] :
      ( ( can_select_list_nat @ P4 @ ( set_list_nat2 @ A5 ) )
      = ( list_ex1_list_nat @ P4 @ A5 ) ) ).

% can_select_set_list_ex1
thf(fact_271_supteqp_Osimps,axiom,
    ( subter3057829548224121575qp_a_b
    = ( ^ [A12: term_a_b,A23: term_a_b] :
          ( ? [T3: term_a_b] :
              ( ( A12 = T3 )
              & ( A23 = T3 ) )
          | ? [U5: term_a_b,Ss2: list_term_a_b,T3: term_a_b,F2: a] :
              ( ( A12
                = ( fun_a_b @ F2 @ Ss2 ) )
              & ( A23 = T3 )
              & ( member_term_a_b2 @ U5 @ ( set_term_a_b2 @ Ss2 ) )
              & ( subter3057829548224121575qp_a_b @ U5 @ T3 ) ) ) ) ) ).

% supteqp.simps
thf(fact_272_suptp_Osimps,axiom,
    ( subter8709468037939584051tp_a_b
    = ( ^ [A12: term_a_b,A23: term_a_b] :
          ( ? [S3: term_a_b,Ss2: list_term_a_b,F2: a] :
              ( ( A12
                = ( fun_a_b @ F2 @ Ss2 ) )
              & ( A23 = S3 )
              & ( member_term_a_b2 @ S3 @ ( set_term_a_b2 @ Ss2 ) ) )
          | ? [S3: term_a_b,Ss2: list_term_a_b,T3: term_a_b,F2: a] :
              ( ( A12
                = ( fun_a_b @ F2 @ Ss2 ) )
              & ( A23 = T3 )
              & ( member_term_a_b2 @ S3 @ ( set_term_a_b2 @ Ss2 ) )
              & ( subter8709468037939584051tp_a_b @ S3 @ T3 ) ) ) ) ) ).

% suptp.simps
thf(fact_273_subt__at__subterm,axiom,
    ! [P: list_nat,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ T ) )
     => ( ( P != nil_nat )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ ( term_subt_at_a_b @ T @ P ) ) @ subterm_and_supt_a_b ) ) ) ).

% subt_at_subterm
thf(fact_274_set__supteq__into__supt,axiom,
    ! [T: term_a_b,Ts: list_term_a_b,S: term_a_b,F: a] :
      ( ( member_term_a_b2 @ T @ ( set_term_a_b2 @ Ts ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ S ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F @ Ts ) @ S ) @ subterm_and_supt_a_b ) ) ) ).

% set_supteq_into_supt
thf(fact_275_Fun__supt,axiom,
    ! [F: a,Ts: list_term_a_b,S: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F @ Ts ) @ S ) @ subterm_and_supt_a_b )
     => ~ ! [T2: term_a_b] :
            ( ( member_term_a_b2 @ T2 @ ( set_term_a_b2 @ Ts ) )
           => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T2 @ S ) @ subter523971068842742411eq_a_b ) ) ) ).

% Fun_supt
thf(fact_276_par__pos__replace__term__at,axiom,
    ! [P: list_nat,S: term_a_b,Q5: list_nat,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( term_p5017330785391824242ar_nat @ P @ Q5 )
       => ( ( term_subt_at_a_b @ ( term_r6860082780075436317at_a_b @ S @ Q5 @ T ) @ P )
          = ( term_subt_at_a_b @ S @ P ) ) ) ) ).

% par_pos_replace_term_at
thf(fact_277_replace__term__at__subt__at__id,axiom,
    ! [S: term_a_b,P: list_nat] :
      ( ( term_r6860082780075436317at_a_b @ S @ P @ ( term_subt_at_a_b @ S @ P ) )
      = S ) ).

% replace_term_at_subt_at_id
thf(fact_278_trancl__supteq,axiom,
    ( ( transi7922773638565587891rm_a_b @ subter523971068842742411eq_a_b )
    = subter523971068842742411eq_a_b ) ).

% trancl_supteq
thf(fact_279_suptI,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( A != B )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b ) ) ) ).

% suptI
thf(fact_280_poss__of__term__possI,axiom,
    ! [P: list_nat,S: term_a_b,U: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( ( term_subt_at_a_b @ S @ P )
          = U )
       => ( member_list_nat2 @ P @ ( terms_7168686267159881682rm_a_b @ U @ S ) ) ) ) ).

% poss_of_term_possI
thf(fact_281_subt__at__imp__supteq,axiom,
    ! [P: list_nat,S: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ ( term_subt_at_a_b @ S @ P ) ) @ subter523971068842742411eq_a_b ) ) ).

% subt_at_imp_supteq
thf(fact_282_subt__at__subterm__eq,axiom,
    ! [P: list_nat,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ T ) )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ ( term_subt_at_a_b @ T @ P ) ) @ subter523971068842742411eq_a_b ) ) ).

% subt_at_subterm_eq
thf(fact_283_subt__at__imp__supteq_H,axiom,
    ! [P: list_nat,S: term_a_b,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( ( term_subt_at_a_b @ S @ P )
          = T )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b ) ) ) ).

% subt_at_imp_supteq'
thf(fact_284_can__select__def,axiom,
    ( can_select_term_a_b
    = ( ^ [P5: term_a_b > $o,A6: set_term_a_b] :
        ? [X4: term_a_b] :
          ( ( member_term_a_b2 @ X4 @ A6 )
          & ( P5 @ X4 )
          & ! [Y5: term_a_b] :
              ( ( ( member_term_a_b2 @ Y5 @ A6 )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% can_select_def
thf(fact_285_can__select__def,axiom,
    ( can_se7115681450954524940rm_a_b
    = ( ^ [P5: list_P8875379029341186191rm_a_b > $o,A6: set_li7311725489111463791rm_a_b] :
        ? [X4: list_P8875379029341186191rm_a_b] :
          ( ( member7646937072540562872rm_a_b @ X4 @ A6 )
          & ( P5 @ X4 )
          & ! [Y5: list_P8875379029341186191rm_a_b] :
              ( ( ( member7646937072540562872rm_a_b @ Y5 @ A6 )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% can_select_def
thf(fact_286_can__select__def,axiom,
    ( can_se852741519239192039rm_a_b
    = ( ^ [P5: list_term_a_b > $o,A6: set_list_term_a_b] :
        ? [X4: list_term_a_b] :
          ( ( member_list_term_a_b2 @ X4 @ A6 )
          & ( P5 @ X4 )
          & ! [Y5: list_term_a_b] :
              ( ( ( member_list_term_a_b2 @ Y5 @ A6 )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% can_select_def
thf(fact_287_can__select__def,axiom,
    ( can_se4193021272102570163st_nat
    = ( ^ [P5: list_list_nat > $o,A6: set_list_list_nat] :
        ? [X4: list_list_nat] :
          ( ( member_list_list_nat2 @ X4 @ A6 )
          & ( P5 @ X4 )
          & ! [Y5: list_list_nat] :
              ( ( ( member_list_list_nat2 @ Y5 @ A6 )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% can_select_def
thf(fact_288_can__select__def,axiom,
    ( can_select_nat
    = ( ^ [P5: nat > $o,A6: set_nat] :
        ? [X4: nat] :
          ( ( member_nat2 @ X4 @ A6 )
          & ( P5 @ X4 )
          & ! [Y5: nat] :
              ( ( ( member_nat2 @ Y5 @ A6 )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% can_select_def
thf(fact_289_can__select__def,axiom,
    ( can_select_list_nat
    = ( ^ [P5: list_nat > $o,A6: set_list_nat] :
        ? [X4: list_nat] :
          ( ( member_list_nat2 @ X4 @ A6 )
          & ( P5 @ X4 )
          & ! [Y5: list_nat] :
              ( ( ( member_list_nat2 @ Y5 @ A6 )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% can_select_def
thf(fact_290_can__select__def,axiom,
    ( can_se4942192940725369094rm_a_b
    = ( ^ [P5: produc357393685978478089rm_a_b > $o,A6: set_Pr4386577575007340137rm_a_b] :
        ? [X4: produc357393685978478089rm_a_b] :
          ( ( member5869715511025134514rm_a_b @ X4 @ A6 )
          & ( P5 @ X4 )
          & ! [Y5: produc357393685978478089rm_a_b] :
              ( ( ( member5869715511025134514rm_a_b @ Y5 @ A6 )
                & ( P5 @ Y5 ) )
             => ( Y5 = X4 ) ) ) ) ) ).

% can_select_def
thf(fact_291_supteq_Orefl,axiom,
    ! [T: term_a_b] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ T ) @ subter523971068842742411eq_a_b ) ).

% supteq.refl
thf(fact_292_subterm_Oeq__refl,axiom,
    ! [X: term_a_b,Y: term_a_b] :
      ( ( X = Y )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b ) ) ).

% subterm.eq_refl
thf(fact_293_subterm_Oorder__refl,axiom,
    ! [X: term_a_b] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ X ) @ subter523971068842742411eq_a_b ) ).

% subterm.order_refl
thf(fact_294_subterm_Oorder_Otrans,axiom,
    ! [B: term_a_b,A: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ B ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.order.trans
thf(fact_295_subterm_Oorder__trans,axiom,
    ! [Y: term_a_b,X: term_a_b,Z2: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ Y ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ X ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.order_trans
thf(fact_296_subterm_Oantisym__conv,axiom,
    ! [X: term_a_b,Y: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
        = ( X = Y ) ) ) ).

% subterm.antisym_conv
thf(fact_297_subterm_Oorder_Oeq__iff,axiom,
    ( ( ^ [Y6: term_a_b,Z3: term_a_b] : ( Y6 = Z3 ) )
    = ( ^ [A3: term_a_b,B4: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B4 @ A3 ) @ subter523971068842742411eq_a_b )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A3 @ B4 ) @ subter523971068842742411eq_a_b ) ) ) ) ).

% subterm.order.eq_iff
thf(fact_298_subterm_Oorder__eq__iff,axiom,
    ( ( ^ [Y6: term_a_b,Z3: term_a_b] : ( Y6 = Z3 ) )
    = ( ^ [X4: term_a_b,Y5: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y5 @ X4 ) @ subter523971068842742411eq_a_b )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X4 @ Y5 ) @ subter523971068842742411eq_a_b ) ) ) ) ).

% subterm.order_eq_iff
thf(fact_299_subterm_Oorder_Oantisym,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
       => ( A = B ) ) ) ).

% subterm.order.antisym
thf(fact_300_subterm_Oorder__antisym,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subter523971068842742411eq_a_b )
       => ( X = Y ) ) ) ).

% subterm.order_antisym
thf(fact_301_subterm_Odual__order_Orefl,axiom,
    ! [A: term_a_b] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ A ) @ subter523971068842742411eq_a_b ) ).

% subterm.dual_order.refl
thf(fact_302_subterm_Oord__eq__le__trans,axiom,
    ! [A: term_a_b,B: term_a_b,C: term_a_b] :
      ( ( A = B )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ B ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.ord_eq_le_trans
thf(fact_303_subterm_Oord__le__eq__trans,axiom,
    ! [B: term_a_b,A: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
     => ( ( B = C )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.ord_le_eq_trans
thf(fact_304_subterm_Odual__order_Otrans,axiom,
    ! [A: term_a_b,B: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.dual_order.trans
thf(fact_305_subterm_Odual__order_Oeq__iff,axiom,
    ( ( ^ [Y6: term_a_b,Z3: term_a_b] : ( Y6 = Z3 ) )
    = ( ^ [A3: term_a_b,B4: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A3 @ B4 ) @ subter523971068842742411eq_a_b )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B4 @ A3 ) @ subter523971068842742411eq_a_b ) ) ) ) ).

% subterm.dual_order.eq_iff
thf(fact_306_subterm_Odual__order_Oantisym,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
       => ( A = B ) ) ) ).

% subterm.dual_order.antisym
thf(fact_307_eq__supteq,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( S = T )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b ) ) ).

% eq_supteq
thf(fact_308_supteq__trans,axiom,
    ! [S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ U ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ U ) @ subter523971068842742411eq_a_b ) ) ) ).

% supteq_trans
thf(fact_309_supteq__antisym,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ S ) @ subter523971068842742411eq_a_b )
       => ( S = T ) ) ) ).

% supteq_antisym
thf(fact_310_subt__at_Osimps_I1_J,axiom,
    ! [S: term_a_b] :
      ( ( term_subt_at_a_b @ S @ nil_nat )
      = S ) ).

% subt_at.simps(1)
thf(fact_311_subterm_OleD,axiom,
    ! [X: term_a_b,Y: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subter523971068842742411eq_a_b )
     => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b ) ) ).

% subterm.leD
thf(fact_312_subterm_Ole__less,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
        | ( X = Y ) ) ) ).

% subterm.le_less
thf(fact_313_subterm_Oless__le,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
        & ( X != Y ) ) ) ).

% subterm.less_le
thf(fact_314_subterm_Onless__le,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b ) )
      = ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
        | ( A = B ) ) ) ).

% subterm.nless_le
thf(fact_315_subterm_Oless__imp__le,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b ) ) ).

% subterm.less_imp_le
thf(fact_316_subterm_Ole__neq__trans,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
     => ( ( A != B )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.le_neq_trans
thf(fact_317_subterm_Oantisym__conv1,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
        = ( X = Y ) ) ) ).

% subterm.antisym_conv1
thf(fact_318_subterm_Oantisym__conv2,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
     => ( ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b ) )
        = ( X = Y ) ) ) ).

% subterm.antisym_conv2
thf(fact_319_subterm_Ole__less__trans,axiom,
    ! [Y: term_a_b,X: term_a_b,Z2: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ Y ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ X ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.le_less_trans
thf(fact_320_subterm_Oless__le__trans,axiom,
    ! [Y: term_a_b,X: term_a_b,Z2: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ Y ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z2 @ X ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.less_le_trans
thf(fact_321_subterm_Oless__le__not__le,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
        & ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.less_le_not_le
thf(fact_322_subterm_Ole__imp__less__or__eq,axiom,
    ! [Y: term_a_b,X: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ X ) @ subterm_and_supt_a_b )
        | ( X = Y ) ) ) ).

% subterm.le_imp_less_or_eq
thf(fact_323_subterm_Oorder_Ostrict__trans1,axiom,
    ! [B: term_a_b,A: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ B ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.order.strict_trans1
thf(fact_324_subterm_Oorder_Ostrict__trans2,axiom,
    ! [B: term_a_b,A: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ B ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ C @ A ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.order.strict_trans2
thf(fact_325_subterm_Oorder_Ostrict__iff__not,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
        & ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.order.strict_iff_not
thf(fact_326_subterm_Oorder_Oorder__iff__strict,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
        | ( A = B ) ) ) ).

% subterm.order.order_iff_strict
thf(fact_327_subterm_Oorder_Ostrict__iff__order,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
        & ( A != B ) ) ) ).

% subterm.order.strict_iff_order
thf(fact_328_subterm_Odual__order_Ostrict__trans1,axiom,
    ! [A: term_a_b,B: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.dual_order.strict_trans1
thf(fact_329_subterm_Odual__order_Ostrict__trans2,axiom,
    ! [A: term_a_b,B: term_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.dual_order.strict_trans2
thf(fact_330_subterm_Odual__order_Ostrict__iff__not,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
        & ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.dual_order.strict_iff_not
thf(fact_331_subterm_Oorder_Ostrict__implies__order,axiom,
    ! [B: term_a_b,A: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b ) ) ).

% subterm.order.strict_implies_order
thf(fact_332_subterm_Odual__order_Oorder__iff__strict,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
        | ( A = B ) ) ) ).

% subterm.dual_order.order_iff_strict
thf(fact_333_subterm_Odual__order_Ostrict__iff__order,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b )
        & ( A != B ) ) ) ).

% subterm.dual_order.strict_iff_order
thf(fact_334_subterm_Odual__order_Ostrict__implies__order,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subterm_and_supt_a_b )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ subter523971068842742411eq_a_b ) ) ).

% subterm.dual_order.strict_implies_order
thf(fact_335_subterm_Oorder_Onot__eq__order__implies__strict,axiom,
    ! [A: term_a_b,B: term_a_b] :
      ( ( A != B )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ A ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.order.not_eq_order_implies_strict
thf(fact_336_suptE,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
       => ( S != T ) ) ) ).

% suptE
thf(fact_337_supt__imp__supteq,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b ) ) ).

% supt_imp_supteq
thf(fact_338_supteq__not__supt,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
     => ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
       => ( S = T ) ) ) ).

% supteq_not_supt
thf(fact_339_supt__supteq__conv,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
        & ( S != T ) ) ) ).

% supt_supteq_conv
thf(fact_340_supteq__supt__conv,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
        | ( S = T ) ) ) ).

% supteq_supt_conv
thf(fact_341_supt__supteq__trans,axiom,
    ! [S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ U ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ U ) @ subterm_and_supt_a_b ) ) ) ).

% supt_supteq_trans
thf(fact_342_supteq__supt__trans,axiom,
    ! [S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ U ) @ subterm_and_supt_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ U ) @ subterm_and_supt_a_b ) ) ) ).

% supteq_supt_trans
thf(fact_343_supt__supteq__not__supteq,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
        & ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ T @ S ) @ subter523971068842742411eq_a_b ) ) ) ).

% supt_supteq_not_supteq
thf(fact_344_poss__of__termE,axiom,
    ! [P: list_nat,U: term_a_b,S: term_a_b] :
      ( ( member_list_nat2 @ P @ ( terms_7168686267159881682rm_a_b @ U @ S ) )
     => ~ ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
         => ( ( term_subt_at_a_b @ S @ P )
           != U ) ) ) ).

% poss_of_termE
thf(fact_345_supteq_Osubt,axiom,
    ! [U: term_a_b,Ss: list_term_a_b,T: term_a_b,F: a] :
      ( ( member_term_a_b2 @ U @ ( set_term_a_b2 @ Ss ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ U @ T ) @ subter523971068842742411eq_a_b )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F @ Ss ) @ T ) @ subter523971068842742411eq_a_b ) ) ) ).

% supteq.subt
thf(fact_346_supteq_Ocases,axiom,
    ! [A1: term_a_b,A22: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ subter523971068842742411eq_a_b )
     => ( ( A22 != A1 )
       => ~ ! [U3: term_a_b,Ss3: list_term_a_b] :
              ( ? [F3: a] :
                  ( A1
                  = ( fun_a_b @ F3 @ Ss3 ) )
             => ( ( member_term_a_b2 @ U3 @ ( set_term_a_b2 @ Ss3 ) )
               => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ U3 @ A22 ) @ subter523971068842742411eq_a_b ) ) ) ) ) ).

% supteq.cases
thf(fact_347_supteq_Osimps,axiom,
    ! [A1: term_a_b,A22: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ subter523971068842742411eq_a_b )
      = ( ? [T3: term_a_b] :
            ( ( A1 = T3 )
            & ( A22 = T3 ) )
        | ? [U5: term_a_b,Ss2: list_term_a_b,T3: term_a_b,F2: a] :
            ( ( A1
              = ( fun_a_b @ F2 @ Ss2 ) )
            & ( A22 = T3 )
            & ( member_term_a_b2 @ U5 @ ( set_term_a_b2 @ Ss2 ) )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ U5 @ T3 ) @ subter523971068842742411eq_a_b ) ) ) ) ).

% supteq.simps
thf(fact_348_less__eq__subt__at__replace,axiom,
    ! [P: list_nat,S: term_a_b,Q5: list_nat,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( term_p3503116865373065078eq_nat @ P @ Q5 )
       => ( ( term_subt_at_a_b @ ( term_r6860082780075436317at_a_b @ S @ Q5 @ T ) @ P )
          = ( term_r6860082780075436317at_a_b @ ( term_subt_at_a_b @ S @ P ) @ ( term_pos_diff_nat @ Q5 @ P ) @ T ) ) ) ) ).

% less_eq_subt_at_replace
thf(fact_349_greater__eq__subt__at__replace,axiom,
    ! [P: list_nat,S: term_a_b,Q5: list_nat,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( term_p3503116865373065078eq_nat @ Q5 @ P )
       => ( ( term_subt_at_a_b @ ( term_r6860082780075436317at_a_b @ S @ Q5 @ T ) @ P )
          = ( term_subt_at_a_b @ T @ ( term_pos_diff_nat @ P @ Q5 ) ) ) ) ) ).

% greater_eq_subt_at_replace
thf(fact_350_poss__of__term__poss__emptyD,axiom,
    ! [U: term_a_b,S: term_a_b,P: list_nat] :
      ( ( ( terms_7168686267159881682rm_a_b @ U @ S )
        = bot_bot_set_list_nat )
     => ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
       => ( ( term_subt_at_a_b @ S @ P )
         != U ) ) ) ).

% poss_of_term_poss_emptyD
thf(fact_351_subt__at__Cons__comp,axiom,
    ! [I: nat,P: list_nat,S: term_a_b] :
      ( ( member_list_nat2 @ ( cons_nat @ I @ P ) @ ( term_poss_a_b @ S ) )
     => ( ( term_subt_at_a_b @ ( term_subt_at_a_b @ S @ ( cons_nat @ I @ nil_nat ) ) @ P )
        = ( term_subt_at_a_b @ S @ ( cons_nat @ I @ P ) ) ) ) ).

% subt_at_Cons_comp
thf(fact_352_subst__at__ctxt__at__eq__termD,axiom,
    ! [S: term_a_b,T: term_a_b,P: list_nat] :
      ( ( S = T )
     => ( ( member_list_nat2 @ P @ ( term_poss_a_b @ T ) )
       => ( ( ( term_subt_at_a_b @ S @ P )
            = ( term_subt_at_a_b @ T @ P ) )
          & ( ( term_ctxt_at_pos_a_b @ S @ P )
            = ( term_ctxt_at_pos_a_b @ T @ P ) ) ) ) ) ).

% subst_at_ctxt_at_eq_termD
thf(fact_353_subst__at__ctxt__at__eq__termI,axiom,
    ! [P: list_nat,S: term_a_b,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( member_list_nat2 @ P @ ( term_poss_a_b @ T ) )
       => ( ( ( term_subt_at_a_b @ S @ P )
            = ( term_subt_at_a_b @ T @ P ) )
         => ( ( ( term_ctxt_at_pos_a_b @ S @ P )
              = ( term_ctxt_at_pos_a_b @ T @ P ) )
           => ( S = T ) ) ) ) ) ).

% subst_at_ctxt_at_eq_termI
thf(fact_354_in__measures_I1_J,axiom,
    ! [X: term_a_b,Y: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( measures_term_a_b @ nil_term_a_b_nat ) ) ).

% in_measures(1)
thf(fact_355_poss__pos__diffI,axiom,
    ! [P: list_nat,Q5: list_nat,S: term_a_b] :
      ( ( term_p3503116865373065078eq_nat @ P @ Q5 )
     => ( ( member_list_nat2 @ Q5 @ ( term_poss_a_b @ S ) )
       => ( member_list_nat2 @ ( term_pos_diff_nat @ Q5 @ P ) @ ( term_poss_a_b @ ( term_subt_at_a_b @ S @ P ) ) ) ) ) ).

% poss_pos_diffI
thf(fact_356_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_le1467257176787788120rm_a_b @ N @ nil_Pr4197086119080101963rm_a_b )
      = N ) ).

% gen_length_code(1)
thf(fact_357_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_le2383899666085517716at_nat @ N @ nil_Pr5478986624290739719at_nat )
      = N ) ).

% gen_length_code(1)
thf(fact_358_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_le4942244902447077073rm_a_b @ N @ nil_list_term_a_b )
      = N ) ).

% gen_length_code(1)
thf(fact_359_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_length_list_nat @ N @ nil_list_nat )
      = N ) ).

% gen_length_code(1)
thf(fact_360_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_le5771528551073234224_b_nat @ N @ nil_term_a_b_nat )
      = N ) ).

% gen_length_code(1)
thf(fact_361_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_length_term_a_b @ N @ nil_term_a_b )
      = N ) ).

% gen_length_code(1)
thf(fact_362_gen__length__code_I1_J,axiom,
    ! [N: nat] :
      ( ( gen_length_nat @ N @ nil_nat )
      = N ) ).

% gen_length_code(1)
thf(fact_363_list_Oinject,axiom,
    ! [X21: product_prod_nat_nat,X22: list_P6011104703257516679at_nat,Y21: product_prod_nat_nat,Y22: list_P6011104703257516679at_nat] :
      ( ( ( cons_P6512896166579812791at_nat @ X21 @ X22 )
        = ( cons_P6512896166579812791at_nat @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_364_list_Oinject,axiom,
    ! [X21: term_a_b,X22: list_term_a_b,Y21: term_a_b,Y22: list_term_a_b] :
      ( ( ( cons_term_a_b @ X21 @ X22 )
        = ( cons_term_a_b @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_365_list_Oinject,axiom,
    ! [X21: list_term_a_b,X22: list_list_term_a_b,Y21: list_term_a_b,Y22: list_list_term_a_b] :
      ( ( ( cons_list_term_a_b @ X21 @ X22 )
        = ( cons_list_term_a_b @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_366_list_Oinject,axiom,
    ! [X21: list_nat,X22: list_list_nat,Y21: list_nat,Y22: list_list_nat] :
      ( ( ( cons_list_nat @ X21 @ X22 )
        = ( cons_list_nat @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_367_list_Oinject,axiom,
    ! [X21: term_a_b > nat,X22: list_term_a_b_nat,Y21: term_a_b > nat,Y22: list_term_a_b_nat] :
      ( ( ( cons_term_a_b_nat @ X21 @ X22 )
        = ( cons_term_a_b_nat @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

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

% list.inject
thf(fact_369_position__less__eq__Cons,axiom,
    ! [I: product_prod_nat_nat,Ps: list_P6011104703257516679at_nat,J: product_prod_nat_nat,Qs: list_P6011104703257516679at_nat] :
      ( ( term_p5452418589371346395at_nat @ ( cons_P6512896166579812791at_nat @ I @ Ps ) @ ( cons_P6512896166579812791at_nat @ J @ Qs ) )
      = ( ( I = J )
        & ( term_p5452418589371346395at_nat @ Ps @ Qs ) ) ) ).

% position_less_eq_Cons
thf(fact_370_position__less__eq__Cons,axiom,
    ! [I: list_term_a_b,Ps: list_list_term_a_b,J: list_term_a_b,Qs: list_list_term_a_b] :
      ( ( term_p2593460539914126922rm_a_b @ ( cons_list_term_a_b @ I @ Ps ) @ ( cons_list_term_a_b @ J @ Qs ) )
      = ( ( I = J )
        & ( term_p2593460539914126922rm_a_b @ Ps @ Qs ) ) ) ).

% position_less_eq_Cons
thf(fact_371_position__less__eq__Cons,axiom,
    ! [I: list_nat,Ps: list_list_nat,J: list_nat,Qs: list_list_nat] :
      ( ( term_p5934426891874639750st_nat @ ( cons_list_nat @ I @ Ps ) @ ( cons_list_nat @ J @ Qs ) )
      = ( ( I = J )
        & ( term_p5934426891874639750st_nat @ Ps @ Qs ) ) ) ).

% position_less_eq_Cons
thf(fact_372_position__less__eq__Cons,axiom,
    ! [I: term_a_b > nat,Ps: list_term_a_b_nat,J: term_a_b > nat,Qs: list_term_a_b_nat] :
      ( ( term_p7703854676200117161_b_nat @ ( cons_term_a_b_nat @ I @ Ps ) @ ( cons_term_a_b_nat @ J @ Qs ) )
      = ( ( I = J )
        & ( term_p7703854676200117161_b_nat @ Ps @ Qs ) ) ) ).

% position_less_eq_Cons
thf(fact_373_position__less__eq__Cons,axiom,
    ! [I: term_a_b,Ps: list_term_a_b,J: term_a_b,Qs: list_term_a_b] :
      ( ( term_p8391561492822560442rm_a_b @ ( cons_term_a_b @ I @ Ps ) @ ( cons_term_a_b @ J @ Qs ) )
      = ( ( I = J )
        & ( term_p8391561492822560442rm_a_b @ Ps @ Qs ) ) ) ).

% position_less_eq_Cons
thf(fact_374_position__less__eq__Cons,axiom,
    ! [I: nat,Ps: list_nat,J: nat,Qs: list_nat] :
      ( ( term_p3503116865373065078eq_nat @ ( cons_nat @ I @ Ps ) @ ( cons_nat @ J @ Qs ) )
      = ( ( I = J )
        & ( term_p3503116865373065078eq_nat @ Ps @ Qs ) ) ) ).

% position_less_eq_Cons
thf(fact_375_position__less__Nil__is__bot2,axiom,
    ! [P: list_P2364656488115551307rm_a_b] :
      ( ( term_p6496282196689937951rm_a_b @ P @ nil_Pr4197086119080101963rm_a_b )
      = ( P = nil_Pr4197086119080101963rm_a_b ) ) ).

% position_less_Nil_is_bot2
thf(fact_376_position__less__Nil__is__bot2,axiom,
    ! [P: list_P6011104703257516679at_nat] :
      ( ( term_p5452418589371346395at_nat @ P @ nil_Pr5478986624290739719at_nat )
      = ( P = nil_Pr5478986624290739719at_nat ) ) ).

% position_less_Nil_is_bot2
thf(fact_377_position__less__Nil__is__bot2,axiom,
    ! [P: list_list_term_a_b] :
      ( ( term_p2593460539914126922rm_a_b @ P @ nil_list_term_a_b )
      = ( P = nil_list_term_a_b ) ) ).

% position_less_Nil_is_bot2
thf(fact_378_position__less__Nil__is__bot2,axiom,
    ! [P: list_list_nat] :
      ( ( term_p5934426891874639750st_nat @ P @ nil_list_nat )
      = ( P = nil_list_nat ) ) ).

% position_less_Nil_is_bot2
thf(fact_379_position__less__Nil__is__bot2,axiom,
    ! [P: list_term_a_b_nat] :
      ( ( term_p7703854676200117161_b_nat @ P @ nil_term_a_b_nat )
      = ( P = nil_term_a_b_nat ) ) ).

% position_less_Nil_is_bot2
thf(fact_380_position__less__Nil__is__bot2,axiom,
    ! [P: list_term_a_b] :
      ( ( term_p8391561492822560442rm_a_b @ P @ nil_term_a_b )
      = ( P = nil_term_a_b ) ) ).

% position_less_Nil_is_bot2
thf(fact_381_position__less__Nil__is__bot2,axiom,
    ! [P: list_nat] :
      ( ( term_p3503116865373065078eq_nat @ P @ nil_nat )
      = ( P = nil_nat ) ) ).

% position_less_Nil_is_bot2
thf(fact_382_position__diff__Cons,axiom,
    ! [I: product_prod_nat_nat,Ps: list_P6011104703257516679at_nat,Qs: list_P6011104703257516679at_nat] :
      ( ( term_p3376976900432600702at_nat @ ( cons_P6512896166579812791at_nat @ I @ Ps ) @ ( cons_P6512896166579812791at_nat @ I @ Qs ) )
      = ( term_p3376976900432600702at_nat @ Ps @ Qs ) ) ).

% position_diff_Cons
thf(fact_383_position__diff__Cons,axiom,
    ! [I: list_term_a_b,Ps: list_list_term_a_b,Qs: list_list_term_a_b] :
      ( ( term_p6300577740959955047rm_a_b @ ( cons_list_term_a_b @ I @ Ps ) @ ( cons_list_term_a_b @ I @ Qs ) )
      = ( term_p6300577740959955047rm_a_b @ Ps @ Qs ) ) ).

% position_diff_Cons
thf(fact_384_position__diff__Cons,axiom,
    ! [I: list_nat,Ps: list_list_nat,Qs: list_list_nat] :
      ( ( term_p7564741194569991203st_nat @ ( cons_list_nat @ I @ Ps ) @ ( cons_list_nat @ I @ Qs ) )
      = ( term_p7564741194569991203st_nat @ Ps @ Qs ) ) ).

% position_diff_Cons
thf(fact_385_position__diff__Cons,axiom,
    ! [I: term_a_b > nat,Ps: list_term_a_b_nat,Qs: list_term_a_b_nat] :
      ( ( term_p4502178508558846150_b_nat @ ( cons_term_a_b_nat @ I @ Ps ) @ ( cons_term_a_b_nat @ I @ Qs ) )
      = ( term_p4502178508558846150_b_nat @ Ps @ Qs ) ) ).

% position_diff_Cons
thf(fact_386_position__diff__Cons,axiom,
    ! [I: term_a_b,Ps: list_term_a_b,Qs: list_term_a_b] :
      ( ( term_p798503758663136087rm_a_b @ ( cons_term_a_b @ I @ Ps ) @ ( cons_term_a_b @ I @ Qs ) )
      = ( term_p798503758663136087rm_a_b @ Ps @ Qs ) ) ).

% position_diff_Cons
thf(fact_387_position__diff__Cons,axiom,
    ! [I: nat,Ps: list_nat,Qs: list_nat] :
      ( ( term_pos_diff_nat @ ( cons_nat @ I @ Ps ) @ ( cons_nat @ I @ Qs ) )
      = ( term_pos_diff_nat @ Ps @ Qs ) ) ).

% position_diff_Cons
thf(fact_388_replace__term__at__above,axiom,
    ! [P: list_nat,Q5: list_nat,S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( term_p3503116865373065078eq_nat @ P @ Q5 )
     => ( ( term_r6860082780075436317at_a_b @ ( term_r6860082780075436317at_a_b @ S @ Q5 @ T ) @ P @ U )
        = ( term_r6860082780075436317at_a_b @ S @ P @ U ) ) ) ).

% replace_term_at_above
thf(fact_389_set__empty2,axiom,
    ! [Xs: list_P2364656488115551307rm_a_b] :
      ( ( bot_bo4503703197695894929rm_a_b
        = ( set_Pr7409510697108650714rm_a_b @ Xs ) )
      = ( Xs = nil_Pr4197086119080101963rm_a_b ) ) ).

% set_empty2
thf(fact_390_set__empty2,axiom,
    ! [Xs: list_P6011104703257516679at_nat] :
      ( ( bot_bo2099793752762293965at_nat
        = ( set_Pr5648618587558075414at_nat @ Xs ) )
      = ( Xs = nil_Pr5478986624290739719at_nat ) ) ).

% set_empty2
thf(fact_391_set__empty2,axiom,
    ! [Xs: list_term_a_b_nat] :
      ( ( bot_bo617545005214784205_b_nat
        = ( set_term_a_b_nat2 @ Xs ) )
      = ( Xs = nil_term_a_b_nat ) ) ).

% set_empty2
thf(fact_392_set__empty2,axiom,
    ! [Xs: list_P7940050157051400743st_nat] :
      ( ( bot_bo8485564385918328941st_nat
        = ( set_Pr3842133991353686454st_nat @ Xs ) )
      = ( Xs = nil_Pr8413428694792600231st_nat ) ) ).

% set_empty2
thf(fact_393_set__empty2,axiom,
    ! [Xs: list_list_term_a_b] :
      ( ( bot_bo8941492048910247406rm_a_b
        = ( set_list_term_a_b2 @ Xs ) )
      = ( Xs = nil_list_term_a_b ) ) ).

% set_empty2
thf(fact_394_set__empty2,axiom,
    ! [Xs: list_list_nat] :
      ( ( bot_bot_set_list_nat
        = ( set_list_nat2 @ Xs ) )
      = ( Xs = nil_list_nat ) ) ).

% set_empty2
thf(fact_395_set__empty2,axiom,
    ! [Xs: list_term_a_b] :
      ( ( bot_bot_set_term_a_b
        = ( set_term_a_b2 @ Xs ) )
      = ( Xs = nil_term_a_b ) ) ).

% set_empty2
thf(fact_396_set__empty2,axiom,
    ! [Xs: list_nat] :
      ( ( bot_bot_set_nat
        = ( set_nat2 @ Xs ) )
      = ( Xs = nil_nat ) ) ).

% set_empty2
thf(fact_397_set__empty,axiom,
    ! [Xs: list_P2364656488115551307rm_a_b] :
      ( ( ( set_Pr7409510697108650714rm_a_b @ Xs )
        = bot_bo4503703197695894929rm_a_b )
      = ( Xs = nil_Pr4197086119080101963rm_a_b ) ) ).

% set_empty
thf(fact_398_set__empty,axiom,
    ! [Xs: list_P6011104703257516679at_nat] :
      ( ( ( set_Pr5648618587558075414at_nat @ Xs )
        = bot_bo2099793752762293965at_nat )
      = ( Xs = nil_Pr5478986624290739719at_nat ) ) ).

% set_empty
thf(fact_399_set__empty,axiom,
    ! [Xs: list_term_a_b_nat] :
      ( ( ( set_term_a_b_nat2 @ Xs )
        = bot_bo617545005214784205_b_nat )
      = ( Xs = nil_term_a_b_nat ) ) ).

% set_empty
thf(fact_400_set__empty,axiom,
    ! [Xs: list_P7940050157051400743st_nat] :
      ( ( ( set_Pr3842133991353686454st_nat @ Xs )
        = bot_bo8485564385918328941st_nat )
      = ( Xs = nil_Pr8413428694792600231st_nat ) ) ).

% set_empty
thf(fact_401_set__empty,axiom,
    ! [Xs: list_list_term_a_b] :
      ( ( ( set_list_term_a_b2 @ Xs )
        = bot_bo8941492048910247406rm_a_b )
      = ( Xs = nil_list_term_a_b ) ) ).

% set_empty
thf(fact_402_set__empty,axiom,
    ! [Xs: list_list_nat] :
      ( ( ( set_list_nat2 @ Xs )
        = bot_bot_set_list_nat )
      = ( Xs = nil_list_nat ) ) ).

% set_empty
thf(fact_403_set__empty,axiom,
    ! [Xs: list_term_a_b] :
      ( ( ( set_term_a_b2 @ Xs )
        = bot_bot_set_term_a_b )
      = ( Xs = nil_term_a_b ) ) ).

% set_empty
thf(fact_404_set__empty,axiom,
    ! [Xs: list_nat] :
      ( ( ( set_nat2 @ Xs )
        = bot_bot_set_nat )
      = ( Xs = nil_nat ) ) ).

% set_empty
thf(fact_405_replace__term__at__below,axiom,
    ! [P: list_nat,Q5: list_nat,S: term_a_b,T: term_a_b,U: term_a_b] :
      ( ( ( P != Q5 )
        & ( term_p3503116865373065078eq_nat @ P @ Q5 ) )
     => ( ( term_r6860082780075436317at_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ T ) @ Q5 @ U )
        = ( term_r6860082780075436317at_a_b @ S @ P @ ( term_r6860082780075436317at_a_b @ T @ ( term_pos_diff_nat @ Q5 @ P ) @ U ) ) ) ) ).

% replace_term_at_below
thf(fact_406_not__Cons__self2,axiom,
    ! [X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
      ( ( cons_P6512896166579812791at_nat @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_407_not__Cons__self2,axiom,
    ! [X: term_a_b,Xs: list_term_a_b] :
      ( ( cons_term_a_b @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_408_not__Cons__self2,axiom,
    ! [X: list_term_a_b,Xs: list_list_term_a_b] :
      ( ( cons_list_term_a_b @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_409_not__Cons__self2,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( cons_list_nat @ X @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_410_not__Cons__self2,axiom,
    ! [X: term_a_b > nat,Xs: list_term_a_b_nat] :
      ( ( cons_term_a_b_nat @ X @ Xs )
     != Xs ) ).

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

% not_Cons_self2
thf(fact_412_transpose_Ocases,axiom,
    ! [X: list_l912426616931380689rm_a_b] :
      ( ( X != nil_li8949437558549105489rm_a_b )
     => ( ! [Xss: list_l912426616931380689rm_a_b] :
            ( X
           != ( cons_l5543567910243630849rm_a_b @ nil_Pr4197086119080101963rm_a_b @ Xss ) )
       => ~ ! [X3: produc1234881154892807749rm_a_b,Xs3: list_P2364656488115551307rm_a_b,Xss: list_l912426616931380689rm_a_b] :
              ( X
             != ( cons_l5543567910243630849rm_a_b @ ( cons_P2836617062085252091rm_a_b @ X3 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_413_transpose_Ocases,axiom,
    ! [X: list_l3264859301627795341at_nat] :
      ( ( X != nil_li8973309667444810893at_nat )
     => ( ! [Xss: list_l3264859301627795341at_nat] :
            ( X
           != ( cons_l7612840610449961021at_nat @ nil_Pr5478986624290739719at_nat @ Xss ) )
       => ~ ! [X3: product_prod_nat_nat,Xs3: list_P6011104703257516679at_nat,Xss: list_l3264859301627795341at_nat] :
              ( X
             != ( cons_l7612840610449961021at_nat @ ( cons_P6512896166579812791at_nat @ X3 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_414_transpose_Ocases,axiom,
    ! [X: list_l5544744485257374276rm_a_b] :
      ( ( X != nil_li84351820164960302rm_a_b )
     => ( ! [Xss: list_l5544744485257374276rm_a_b] :
            ( X
           != ( cons_l1938818789863149694rm_a_b @ nil_list_term_a_b @ Xss ) )
       => ~ ! [X3: list_term_a_b,Xs3: list_list_term_a_b,Xss: list_l5544744485257374276rm_a_b] :
              ( X
             != ( cons_l1938818789863149694rm_a_b @ ( cons_list_term_a_b @ X3 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_415_transpose_Ocases,axiom,
    ! [X: list_list_list_nat] :
      ( ( X != nil_list_list_nat )
     => ( ! [Xss: list_list_list_nat] :
            ( X
           != ( cons_list_list_nat @ nil_list_nat @ Xss ) )
       => ~ ! [X3: list_nat,Xs3: list_list_nat,Xss: list_list_list_nat] :
              ( X
             != ( cons_list_list_nat @ ( cons_list_nat @ X3 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_416_transpose_Ocases,axiom,
    ! [X: list_l1341846263083488419_b_nat] :
      ( ( X != nil_li3481567056940451085_b_nat )
     => ( ! [Xss: list_l1341846263083488419_b_nat] :
            ( X
           != ( cons_l8223761185155003741_b_nat @ nil_term_a_b_nat @ Xss ) )
       => ~ ! [X3: term_a_b > nat,Xs3: list_term_a_b_nat,Xss: list_l1341846263083488419_b_nat] :
              ( X
             != ( cons_l8223761185155003741_b_nat @ ( cons_term_a_b_nat @ X3 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_417_transpose_Ocases,axiom,
    ! [X: list_list_term_a_b] :
      ( ( X != nil_list_term_a_b )
     => ( ! [Xss: list_list_term_a_b] :
            ( X
           != ( cons_list_term_a_b @ nil_term_a_b @ Xss ) )
       => ~ ! [X3: term_a_b,Xs3: list_term_a_b,Xss: list_list_term_a_b] :
              ( X
             != ( cons_list_term_a_b @ ( cons_term_a_b @ X3 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_418_transpose_Ocases,axiom,
    ! [X: list_list_nat] :
      ( ( X != nil_list_nat )
     => ( ! [Xss: list_list_nat] :
            ( X
           != ( cons_list_nat @ nil_nat @ Xss ) )
       => ~ ! [X3: nat,Xs3: list_nat,Xss: list_list_nat] :
              ( X
             != ( cons_list_nat @ ( cons_nat @ X3 @ Xs3 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_419_position__less__refl,axiom,
    ! [P: list_nat] : ( term_p3503116865373065078eq_nat @ P @ P ) ).

% position_less_refl
thf(fact_420_position__less__refl,axiom,
    ! [P: list_term_a_b] : ( term_p8391561492822560442rm_a_b @ P @ P ) ).

% position_less_refl
thf(fact_421_remove__prefix_Ocases,axiom,
    ! [X: produc1601299519461031143rm_a_b] :
      ( ! [X3: produc1234881154892807749rm_a_b,Xs3: list_P2364656488115551307rm_a_b,Y3: produc1234881154892807749rm_a_b,Ys2: list_P2364656488115551307rm_a_b] :
          ( X
         != ( produc8811016564285052503rm_a_b @ ( cons_P2836617062085252091rm_a_b @ X3 @ Xs3 ) @ ( cons_P2836617062085252091rm_a_b @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_P2364656488115551307rm_a_b] :
            ( X
           != ( produc8811016564285052503rm_a_b @ nil_Pr4197086119080101963rm_a_b @ Ys2 ) )
       => ~ ! [V: produc1234881154892807749rm_a_b,Va: list_P2364656488115551307rm_a_b] :
              ( X
             != ( produc8811016564285052503rm_a_b @ ( cons_P2836617062085252091rm_a_b @ V @ Va ) @ nil_Pr4197086119080101963rm_a_b ) ) ) ) ).

% remove_prefix.cases
thf(fact_422_remove__prefix_Ocases,axiom,
    ! [X: produc6392793444374437607at_nat] :
      ( ! [X3: product_prod_nat_nat,Xs3: list_P6011104703257516679at_nat,Y3: product_prod_nat_nat,Ys2: list_P6011104703257516679at_nat] :
          ( X
         != ( produc5943733680697469783at_nat @ ( cons_P6512896166579812791at_nat @ X3 @ Xs3 ) @ ( cons_P6512896166579812791at_nat @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_P6011104703257516679at_nat] :
            ( X
           != ( produc5943733680697469783at_nat @ nil_Pr5478986624290739719at_nat @ Ys2 ) )
       => ~ ! [V: product_prod_nat_nat,Va: list_P6011104703257516679at_nat] :
              ( X
             != ( produc5943733680697469783at_nat @ ( cons_P6512896166579812791at_nat @ V @ Va ) @ nil_Pr5478986624290739719at_nat ) ) ) ) ).

% remove_prefix.cases
thf(fact_423_remove__prefix_Ocases,axiom,
    ! [X: produc5770105429786724425rm_a_b] :
      ( ! [X3: list_term_a_b,Xs3: list_list_term_a_b,Y3: list_term_a_b,Ys2: list_list_term_a_b] :
          ( X
         != ( produc7557079580777928833rm_a_b @ ( cons_list_term_a_b @ X3 @ Xs3 ) @ ( cons_list_term_a_b @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_list_term_a_b] :
            ( X
           != ( produc7557079580777928833rm_a_b @ nil_list_term_a_b @ Ys2 ) )
       => ~ ! [V: list_term_a_b,Va: list_list_term_a_b] :
              ( X
             != ( produc7557079580777928833rm_a_b @ ( cons_list_term_a_b @ V @ Va ) @ nil_list_term_a_b ) ) ) ) ).

% remove_prefix.cases
thf(fact_424_remove__prefix_Ocases,axiom,
    ! [X: produc4326814125627636033st_nat] :
      ( ! [X3: list_nat,Xs3: list_list_nat,Y3: list_nat,Ys2: list_list_nat] :
          ( X
         != ( produc7129799990162260089st_nat @ ( cons_list_nat @ X3 @ Xs3 ) @ ( cons_list_nat @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_list_nat] :
            ( X
           != ( produc7129799990162260089st_nat @ nil_list_nat @ Ys2 ) )
       => ~ ! [V: list_nat,Va: list_list_nat] :
              ( X
             != ( produc7129799990162260089st_nat @ ( cons_list_nat @ V @ Va ) @ nil_list_nat ) ) ) ) ).

% remove_prefix.cases
thf(fact_425_remove__prefix_Ocases,axiom,
    ! [X: produc4191184485715949063_b_nat] :
      ( ! [X3: term_a_b > nat,Xs3: list_term_a_b_nat,Y3: term_a_b > nat,Ys2: list_term_a_b_nat] :
          ( X
         != ( produc4472720766030603199_b_nat @ ( cons_term_a_b_nat @ X3 @ Xs3 ) @ ( cons_term_a_b_nat @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_term_a_b_nat] :
            ( X
           != ( produc4472720766030603199_b_nat @ nil_term_a_b_nat @ Ys2 ) )
       => ~ ! [V: term_a_b > nat,Va: list_term_a_b_nat] :
              ( X
             != ( produc4472720766030603199_b_nat @ ( cons_term_a_b_nat @ V @ Va ) @ nil_term_a_b_nat ) ) ) ) ).

% remove_prefix.cases
thf(fact_426_remove__prefix_Ocases,axiom,
    ! [X: produc51424535725745577rm_a_b] :
      ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b] :
          ( X
         != ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_term_a_b] :
            ( X
           != ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Ys2 ) )
       => ~ ! [V: term_a_b,Va: list_term_a_b] :
              ( X
             != ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ V @ Va ) @ nil_term_a_b ) ) ) ) ).

% remove_prefix.cases
thf(fact_427_remove__prefix_Ocases,axiom,
    ! [X: produc1828647624359046049st_nat] :
      ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat] :
          ( X
         != ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_nat] :
            ( X
           != ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
       => ~ ! [V: nat,Va: list_nat] :
              ( X
             != ( produc2694037385005941721st_nat @ ( cons_nat @ V @ Va ) @ nil_nat ) ) ) ) ).

% remove_prefix.cases
thf(fact_428_shuffles_Ocases,axiom,
    ! [X: produc1601299519461031143rm_a_b] :
      ( ! [Ys2: list_P2364656488115551307rm_a_b] :
          ( X
         != ( produc8811016564285052503rm_a_b @ nil_Pr4197086119080101963rm_a_b @ Ys2 ) )
     => ( ! [Xs3: list_P2364656488115551307rm_a_b] :
            ( X
           != ( produc8811016564285052503rm_a_b @ Xs3 @ nil_Pr4197086119080101963rm_a_b ) )
       => ~ ! [X3: produc1234881154892807749rm_a_b,Xs3: list_P2364656488115551307rm_a_b,Y3: produc1234881154892807749rm_a_b,Ys2: list_P2364656488115551307rm_a_b] :
              ( X
             != ( produc8811016564285052503rm_a_b @ ( cons_P2836617062085252091rm_a_b @ X3 @ Xs3 ) @ ( cons_P2836617062085252091rm_a_b @ Y3 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_429_shuffles_Ocases,axiom,
    ! [X: produc6392793444374437607at_nat] :
      ( ! [Ys2: list_P6011104703257516679at_nat] :
          ( X
         != ( produc5943733680697469783at_nat @ nil_Pr5478986624290739719at_nat @ Ys2 ) )
     => ( ! [Xs3: list_P6011104703257516679at_nat] :
            ( X
           != ( produc5943733680697469783at_nat @ Xs3 @ nil_Pr5478986624290739719at_nat ) )
       => ~ ! [X3: product_prod_nat_nat,Xs3: list_P6011104703257516679at_nat,Y3: product_prod_nat_nat,Ys2: list_P6011104703257516679at_nat] :
              ( X
             != ( produc5943733680697469783at_nat @ ( cons_P6512896166579812791at_nat @ X3 @ Xs3 ) @ ( cons_P6512896166579812791at_nat @ Y3 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_430_shuffles_Ocases,axiom,
    ! [X: produc5770105429786724425rm_a_b] :
      ( ! [Ys2: list_list_term_a_b] :
          ( X
         != ( produc7557079580777928833rm_a_b @ nil_list_term_a_b @ Ys2 ) )
     => ( ! [Xs3: list_list_term_a_b] :
            ( X
           != ( produc7557079580777928833rm_a_b @ Xs3 @ nil_list_term_a_b ) )
       => ~ ! [X3: list_term_a_b,Xs3: list_list_term_a_b,Y3: list_term_a_b,Ys2: list_list_term_a_b] :
              ( X
             != ( produc7557079580777928833rm_a_b @ ( cons_list_term_a_b @ X3 @ Xs3 ) @ ( cons_list_term_a_b @ Y3 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_431_shuffles_Ocases,axiom,
    ! [X: produc4326814125627636033st_nat] :
      ( ! [Ys2: list_list_nat] :
          ( X
         != ( produc7129799990162260089st_nat @ nil_list_nat @ Ys2 ) )
     => ( ! [Xs3: list_list_nat] :
            ( X
           != ( produc7129799990162260089st_nat @ Xs3 @ nil_list_nat ) )
       => ~ ! [X3: list_nat,Xs3: list_list_nat,Y3: list_nat,Ys2: list_list_nat] :
              ( X
             != ( produc7129799990162260089st_nat @ ( cons_list_nat @ X3 @ Xs3 ) @ ( cons_list_nat @ Y3 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_432_shuffles_Ocases,axiom,
    ! [X: produc4191184485715949063_b_nat] :
      ( ! [Ys2: list_term_a_b_nat] :
          ( X
         != ( produc4472720766030603199_b_nat @ nil_term_a_b_nat @ Ys2 ) )
     => ( ! [Xs3: list_term_a_b_nat] :
            ( X
           != ( produc4472720766030603199_b_nat @ Xs3 @ nil_term_a_b_nat ) )
       => ~ ! [X3: term_a_b > nat,Xs3: list_term_a_b_nat,Y3: term_a_b > nat,Ys2: list_term_a_b_nat] :
              ( X
             != ( produc4472720766030603199_b_nat @ ( cons_term_a_b_nat @ X3 @ Xs3 ) @ ( cons_term_a_b_nat @ Y3 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_433_shuffles_Ocases,axiom,
    ! [X: produc51424535725745577rm_a_b] :
      ( ! [Ys2: list_term_a_b] :
          ( X
         != ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Ys2 ) )
     => ( ! [Xs3: list_term_a_b] :
            ( X
           != ( produc4885699992713594593rm_a_b @ Xs3 @ nil_term_a_b ) )
       => ~ ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b] :
              ( X
             != ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_434_shuffles_Ocases,axiom,
    ! [X: produc1828647624359046049st_nat] :
      ( ! [Ys2: list_nat] :
          ( X
         != ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
     => ( ! [Xs3: list_nat] :
            ( X
           != ( produc2694037385005941721st_nat @ Xs3 @ nil_nat ) )
       => ~ ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat] :
              ( X
             != ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_435_successively_Ocases,axiom,
    ! [X: produc4181971923416023106_b_nat] :
      ( ! [P6: ( term_a_b > nat ) > ( term_a_b > nat ) > $o] :
          ( X
         != ( produc5053050857753321404_b_nat @ P6 @ nil_term_a_b_nat ) )
     => ( ! [P6: ( term_a_b > nat ) > ( term_a_b > nat ) > $o,X3: term_a_b > nat] :
            ( X
           != ( produc5053050857753321404_b_nat @ P6 @ ( cons_term_a_b_nat @ X3 @ nil_term_a_b_nat ) ) )
       => ~ ! [P6: ( term_a_b > nat ) > ( term_a_b > nat ) > $o,X3: term_a_b > nat,Y3: term_a_b > nat,Xs3: list_term_a_b_nat] :
              ( X
             != ( produc5053050857753321404_b_nat @ P6 @ ( cons_term_a_b_nat @ X3 @ ( cons_term_a_b_nat @ Y3 @ Xs3 ) ) ) ) ) ) ).

% successively.cases
thf(fact_436_successively_Ocases,axiom,
    ! [X: produc8847469151730319409rm_a_b] :
      ( ! [P6: term_a_b > term_a_b > $o] :
          ( X
         != ( produc5931190720334929579rm_a_b @ P6 @ nil_term_a_b ) )
     => ( ! [P6: term_a_b > term_a_b > $o,X3: term_a_b] :
            ( X
           != ( produc5931190720334929579rm_a_b @ P6 @ ( cons_term_a_b @ X3 @ nil_term_a_b ) ) )
       => ~ ! [P6: term_a_b > term_a_b > $o,X3: term_a_b,Y3: term_a_b,Xs3: list_term_a_b] :
              ( X
             != ( produc5931190720334929579rm_a_b @ P6 @ ( cons_term_a_b @ X3 @ ( cons_term_a_b @ Y3 @ Xs3 ) ) ) ) ) ) ).

% successively.cases
thf(fact_437_successively_Ocases,axiom,
    ! [X: produc254973753779126261st_nat] :
      ( ! [P6: nat > nat > $o] :
          ( X
         != ( produc4727192421694094319st_nat @ P6 @ nil_nat ) )
     => ( ! [P6: nat > nat > $o,X3: nat] :
            ( X
           != ( produc4727192421694094319st_nat @ P6 @ ( cons_nat @ X3 @ nil_nat ) ) )
       => ~ ! [P6: nat > nat > $o,X3: nat,Y3: nat,Xs3: list_nat] :
              ( X
             != ( produc4727192421694094319st_nat @ P6 @ ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Xs3 ) ) ) ) ) ) ).

% successively.cases
thf(fact_438_list__nonempty__induct,axiom,
    ! [Xs: list_term_a_b,P4: list_term_a_b > $o] :
      ( ( Xs != nil_term_a_b )
     => ( ! [X3: term_a_b] : ( P4 @ ( cons_term_a_b @ X3 @ nil_term_a_b ) )
       => ( ! [X3: term_a_b,Xs3: list_term_a_b] :
              ( ( Xs3 != nil_term_a_b )
             => ( ( P4 @ Xs3 )
               => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) ) ) )
         => ( P4 @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_439_list__nonempty__induct,axiom,
    ! [Xs: list_nat,P4: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X3: nat] : ( P4 @ ( cons_nat @ X3 @ nil_nat ) )
       => ( ! [X3: nat,Xs3: list_nat] :
              ( ( Xs3 != nil_nat )
             => ( ( P4 @ Xs3 )
               => ( P4 @ ( cons_nat @ X3 @ Xs3 ) ) ) )
         => ( P4 @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_440_list__induct2_H,axiom,
    ! [P4: list_term_a_b > list_term_a_b > $o,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( P4 @ nil_term_a_b @ nil_term_a_b )
     => ( ! [X3: term_a_b,Xs3: list_term_a_b] : ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ nil_term_a_b )
       => ( ! [Y3: term_a_b,Ys2: list_term_a_b] : ( P4 @ nil_term_a_b @ ( cons_term_a_b @ Y3 @ Ys2 ) )
         => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b] :
                ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) )
           => ( P4 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_441_list__induct2_H,axiom,
    ! [P4: list_term_a_b > list_nat > $o,Xs: list_term_a_b,Ys: list_nat] :
      ( ( P4 @ nil_term_a_b @ nil_nat )
     => ( ! [X3: term_a_b,Xs3: list_term_a_b] : ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ nil_nat )
       => ( ! [Y3: nat,Ys2: list_nat] : ( P4 @ nil_term_a_b @ ( cons_nat @ Y3 @ Ys2 ) )
         => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: nat,Ys2: list_nat] :
                ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
           => ( P4 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_442_list__induct2_H,axiom,
    ! [P4: list_nat > list_term_a_b > $o,Xs: list_nat,Ys: list_term_a_b] :
      ( ( P4 @ nil_nat @ nil_term_a_b )
     => ( ! [X3: nat,Xs3: list_nat] : ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ nil_term_a_b )
       => ( ! [Y3: term_a_b,Ys2: list_term_a_b] : ( P4 @ nil_nat @ ( cons_term_a_b @ Y3 @ Ys2 ) )
         => ( ! [X3: nat,Xs3: list_nat,Y3: term_a_b,Ys2: list_term_a_b] :
                ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) )
           => ( P4 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_443_list__induct2_H,axiom,
    ! [P4: list_nat > list_nat > $o,Xs: list_nat,Ys: list_nat] :
      ( ( P4 @ nil_nat @ nil_nat )
     => ( ! [X3: nat,Xs3: list_nat] : ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ nil_nat )
       => ( ! [Y3: nat,Ys2: list_nat] : ( P4 @ nil_nat @ ( cons_nat @ Y3 @ Ys2 ) )
         => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat] :
                ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
           => ( P4 @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_444_neq__Nil__conv,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
      = ( ? [Y5: term_a_b,Ys3: list_term_a_b] :
            ( Xs
            = ( cons_term_a_b @ Y5 @ Ys3 ) ) ) ) ).

% neq_Nil_conv
thf(fact_445_neq__Nil__conv,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
      = ( ? [Y5: nat,Ys3: list_nat] :
            ( Xs
            = ( cons_nat @ Y5 @ Ys3 ) ) ) ) ).

% neq_Nil_conv
thf(fact_446_remdups__adj_Ocases,axiom,
    ! [X: list_term_a_b] :
      ( ( X != nil_term_a_b )
     => ( ! [X3: term_a_b] :
            ( X
           != ( cons_term_a_b @ X3 @ nil_term_a_b ) )
       => ~ ! [X3: term_a_b,Y3: term_a_b,Xs3: list_term_a_b] :
              ( X
             != ( cons_term_a_b @ X3 @ ( cons_term_a_b @ Y3 @ Xs3 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_447_remdups__adj_Ocases,axiom,
    ! [X: list_nat] :
      ( ( X != nil_nat )
     => ( ! [X3: nat] :
            ( X
           != ( cons_nat @ X3 @ nil_nat ) )
       => ~ ! [X3: nat,Y3: nat,Xs3: list_nat] :
              ( X
             != ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Xs3 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_448_List_Omin__list_Ocases,axiom,
    ! [X: list_nat] :
      ( ! [X3: nat,Xs3: list_nat] :
          ( X
         != ( cons_nat @ X3 @ Xs3 ) )
     => ( X = nil_nat ) ) ).

% List.min_list.cases
thf(fact_449_list_Oexhaust,axiom,
    ! [Y: list_term_a_b] :
      ( ( Y != nil_term_a_b )
     => ~ ! [X212: term_a_b,X222: list_term_a_b] :
            ( Y
           != ( cons_term_a_b @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_450_list_Oexhaust,axiom,
    ! [Y: list_nat] :
      ( ( Y != nil_nat )
     => ~ ! [X212: nat,X222: list_nat] :
            ( Y
           != ( cons_nat @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_451_list_OdiscI,axiom,
    ! [List: list_term_a_b,X21: term_a_b,X22: list_term_a_b] :
      ( ( List
        = ( cons_term_a_b @ X21 @ X22 ) )
     => ( List != nil_term_a_b ) ) ).

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

% list.discI
thf(fact_453_list_Odistinct_I1_J,axiom,
    ! [X21: term_a_b,X22: list_term_a_b] :
      ( nil_term_a_b
     != ( cons_term_a_b @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_454_list_Odistinct_I1_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( nil_nat
     != ( cons_nat @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_455_set__ConsD,axiom,
    ! [Y: list_nat,X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ Y @ ( set_list_nat2 @ ( cons_list_nat @ X @ Xs ) ) )
     => ( ( Y = X )
        | ( member_list_nat2 @ Y @ ( set_list_nat2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_456_set__ConsD,axiom,
    ! [Y: produc357393685978478089rm_a_b,X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ Y @ ( set_Pr2370880052973118494rm_a_b @ ( cons_P3536305108106557631rm_a_b @ X @ Xs ) ) )
     => ( ( Y = X )
        | ( member5869715511025134514rm_a_b @ Y @ ( set_Pr2370880052973118494rm_a_b @ Xs ) ) ) ) ).

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

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

% list.set_cases
thf(fact_459_list_Oset__cases,axiom,
    ! [E: produc357393685978478089rm_a_b,A: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ E @ ( set_Pr2370880052973118494rm_a_b @ A ) )
     => ( ! [Z22: list_P8875379029341186191rm_a_b] :
            ( A
           != ( cons_P3536305108106557631rm_a_b @ E @ Z22 ) )
       => ~ ! [Z1: produc357393685978478089rm_a_b,Z22: list_P8875379029341186191rm_a_b] :
              ( ( A
                = ( cons_P3536305108106557631rm_a_b @ Z1 @ Z22 ) )
             => ~ ( member5869715511025134514rm_a_b @ E @ ( set_Pr2370880052973118494rm_a_b @ Z22 ) ) ) ) ) ).

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

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

% list.set_intros(1)
thf(fact_462_list_Oset__intros_I1_J,axiom,
    ! [X21: produc357393685978478089rm_a_b,X22: list_P8875379029341186191rm_a_b] : ( member5869715511025134514rm_a_b @ X21 @ ( set_Pr2370880052973118494rm_a_b @ ( cons_P3536305108106557631rm_a_b @ X21 @ X22 ) ) ) ).

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

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

% list.set_intros(2)
thf(fact_465_list_Oset__intros_I2_J,axiom,
    ! [Y: produc357393685978478089rm_a_b,X22: list_P8875379029341186191rm_a_b,X21: produc357393685978478089rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ Y @ ( set_Pr2370880052973118494rm_a_b @ X22 ) )
     => ( member5869715511025134514rm_a_b @ Y @ ( set_Pr2370880052973118494rm_a_b @ ( cons_P3536305108106557631rm_a_b @ X21 @ X22 ) ) ) ) ).

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

% list.set_intros(2)
thf(fact_467_par__Cons__iff,axiom,
    ! [I: nat,Ps: list_nat,J: nat,Qs: list_nat] :
      ( ( term_p5017330785391824242ar_nat @ ( cons_nat @ I @ Ps ) @ ( cons_nat @ J @ Qs ) )
      = ( ( I != J )
        | ( term_p5017330785391824242ar_nat @ Ps @ Qs ) ) ) ).

% par_Cons_iff
thf(fact_468_par__pos__prefix,axiom,
    ! [I: nat,P: list_nat,Q5: list_nat] :
      ( ( term_p5017330785391824242ar_nat @ ( cons_nat @ I @ P ) @ ( cons_nat @ I @ Q5 ) )
     => ( term_p5017330785391824242ar_nat @ P @ Q5 ) ) ).

% par_pos_prefix
thf(fact_469_member__rec_I1_J,axiom,
    ! [X: nat,Xs: list_nat,Y: nat] :
      ( ( member_nat @ ( cons_nat @ X @ Xs ) @ Y )
      = ( ( X = Y )
        | ( member_nat @ Xs @ Y ) ) ) ).

% member_rec(1)
thf(fact_470_position__less__Nil__is__bot,axiom,
    ! [P: list_term_a_b] : ( term_p8391561492822560442rm_a_b @ nil_term_a_b @ P ) ).

% position_less_Nil_is_bot
thf(fact_471_position__less__Nil__is__bot,axiom,
    ! [P: list_nat] : ( term_p3503116865373065078eq_nat @ nil_nat @ P ) ).

% position_less_Nil_is_bot
thf(fact_472_empty__set,axiom,
    ( bot_bot_set_term_a_b
    = ( set_term_a_b2 @ nil_term_a_b ) ) ).

% empty_set
thf(fact_473_empty__set,axiom,
    ( bot_bot_set_nat
    = ( set_nat2 @ nil_nat ) ) ).

% empty_set
thf(fact_474_empty__iff,axiom,
    ! [C: list_nat] :
      ~ ( member_list_nat2 @ C @ bot_bot_set_list_nat ) ).

% empty_iff
thf(fact_475_empty__iff,axiom,
    ! [C: produc357393685978478089rm_a_b] :
      ~ ( member5869715511025134514rm_a_b @ C @ bot_bo197521221353338581rm_a_b ) ).

% empty_iff
thf(fact_476_all__not__in__conv,axiom,
    ! [A5: set_list_nat] :
      ( ( ! [X4: list_nat] :
            ~ ( member_list_nat2 @ X4 @ A5 ) )
      = ( A5 = bot_bot_set_list_nat ) ) ).

% all_not_in_conv
thf(fact_477_all__not__in__conv,axiom,
    ! [A5: set_Pr4386577575007340137rm_a_b] :
      ( ( ! [X4: produc357393685978478089rm_a_b] :
            ~ ( member5869715511025134514rm_a_b @ X4 @ A5 ) )
      = ( A5 = bot_bo197521221353338581rm_a_b ) ) ).

% all_not_in_conv
thf(fact_478_max__list_Ocases,axiom,
    ! [X: list_nat] :
      ( ( X != nil_nat )
     => ~ ! [X3: nat,Xs3: list_nat] :
            ( X
           != ( cons_nat @ X3 @ Xs3 ) ) ) ).

% max_list.cases
thf(fact_479_trancl__empty,axiom,
    ( ( transi7922773638565587891rm_a_b @ bot_bo197521221353338581rm_a_b )
    = bot_bo197521221353338581rm_a_b ) ).

% trancl_empty
thf(fact_480_ex__in__conv,axiom,
    ! [A5: set_list_nat] :
      ( ( ? [X4: list_nat] : ( member_list_nat2 @ X4 @ A5 ) )
      = ( A5 != bot_bot_set_list_nat ) ) ).

% ex_in_conv
thf(fact_481_ex__in__conv,axiom,
    ! [A5: set_Pr4386577575007340137rm_a_b] :
      ( ( ? [X4: produc357393685978478089rm_a_b] : ( member5869715511025134514rm_a_b @ X4 @ A5 ) )
      = ( A5 != bot_bo197521221353338581rm_a_b ) ) ).

% ex_in_conv
thf(fact_482_equals0I,axiom,
    ! [A5: set_list_nat] :
      ( ! [Y3: list_nat] :
          ~ ( member_list_nat2 @ Y3 @ A5 )
     => ( A5 = bot_bot_set_list_nat ) ) ).

% equals0I
thf(fact_483_equals0I,axiom,
    ! [A5: set_Pr4386577575007340137rm_a_b] :
      ( ! [Y3: produc357393685978478089rm_a_b] :
          ~ ( member5869715511025134514rm_a_b @ Y3 @ A5 )
     => ( A5 = bot_bo197521221353338581rm_a_b ) ) ).

% equals0I
thf(fact_484_equals0D,axiom,
    ! [A5: set_list_nat,A: list_nat] :
      ( ( A5 = bot_bot_set_list_nat )
     => ~ ( member_list_nat2 @ A @ A5 ) ) ).

% equals0D
thf(fact_485_equals0D,axiom,
    ! [A5: set_Pr4386577575007340137rm_a_b,A: produc357393685978478089rm_a_b] :
      ( ( A5 = bot_bo197521221353338581rm_a_b )
     => ~ ( member5869715511025134514rm_a_b @ A @ A5 ) ) ).

% equals0D
thf(fact_486_emptyE,axiom,
    ! [A: list_nat] :
      ~ ( member_list_nat2 @ A @ bot_bot_set_list_nat ) ).

% emptyE
thf(fact_487_emptyE,axiom,
    ! [A: produc357393685978478089rm_a_b] :
      ~ ( member5869715511025134514rm_a_b @ A @ bot_bo197521221353338581rm_a_b ) ).

% emptyE
thf(fact_488_Missing__List_Omin__list_Ocases,axiom,
    ! [X: list_nat] :
      ( ! [X3: nat] :
          ( X
         != ( cons_nat @ X3 @ nil_nat ) )
     => ( ! [X3: nat,V: nat,Va: list_nat] :
            ( X
           != ( cons_nat @ X3 @ ( cons_nat @ V @ Va ) ) )
       => ( X = nil_nat ) ) ) ).

% Missing_List.min_list.cases
thf(fact_489_list__3__cases,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ! [X3: term_a_b] :
            ( Xs
           != ( cons_term_a_b @ X3 @ nil_term_a_b ) )
       => ~ ! [X3: term_a_b,Y3: term_a_b,Ys2: list_term_a_b] :
              ( Xs
             != ( cons_term_a_b @ X3 @ ( cons_term_a_b @ Y3 @ Ys2 ) ) ) ) ) ).

% list_3_cases
thf(fact_490_list__3__cases,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ! [X3: nat] :
            ( Xs
           != ( cons_nat @ X3 @ nil_nat ) )
       => ~ ! [X3: nat,Y3: nat,Ys2: list_nat] :
              ( Xs
             != ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) ) ).

% list_3_cases
thf(fact_491_list__4__cases,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ! [X3: term_a_b] :
            ( Xs
           != ( cons_term_a_b @ X3 @ nil_term_a_b ) )
       => ( ! [X3: term_a_b,Y3: term_a_b] :
              ( Xs
             != ( cons_term_a_b @ X3 @ ( cons_term_a_b @ Y3 @ nil_term_a_b ) ) )
         => ~ ! [X3: term_a_b,Y3: term_a_b,Z: term_a_b,Zs: list_term_a_b] :
                ( Xs
               != ( cons_term_a_b @ X3 @ ( cons_term_a_b @ Y3 @ ( cons_term_a_b @ Z @ Zs ) ) ) ) ) ) ) ).

% list_4_cases
thf(fact_492_list__4__cases,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ! [X3: nat] :
            ( Xs
           != ( cons_nat @ X3 @ nil_nat ) )
       => ( ! [X3: nat,Y3: nat] :
              ( Xs
             != ( cons_nat @ X3 @ ( cons_nat @ Y3 @ nil_nat ) ) )
         => ~ ! [X3: nat,Y3: nat,Z: nat,Zs: list_nat] :
                ( Xs
               != ( cons_nat @ X3 @ ( cons_nat @ Y3 @ ( cons_nat @ Z @ Zs ) ) ) ) ) ) ) ).

% list_4_cases
thf(fact_493_subtract__list__sorted_Ocases,axiom,
    ! [X: produc1828647624359046049st_nat] :
      ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat] :
          ( X
         != ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_nat] :
            ( X
           != ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
       => ~ ! [V: nat,Va: list_nat] :
              ( X
             != ( produc2694037385005941721st_nat @ ( cons_nat @ V @ Va ) @ nil_nat ) ) ) ) ).

% subtract_list_sorted.cases
thf(fact_494_union__list__sorted_Ocases,axiom,
    ! [X: produc1828647624359046049st_nat] :
      ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat] :
          ( X
         != ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
     => ( ! [Ys2: list_nat] :
            ( X
           != ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
       => ~ ! [V: nat,Va: list_nat] :
              ( X
             != ( produc2694037385005941721st_nat @ ( cons_nat @ V @ Va ) @ nil_nat ) ) ) ) ).

% union_list_sorted.cases
thf(fact_495_distinct__eq_Ocases,axiom,
    ! [X: produc8847469151730319409rm_a_b] :
      ( ! [Uu: term_a_b > term_a_b > $o] :
          ( X
         != ( produc5931190720334929579rm_a_b @ Uu @ nil_term_a_b ) )
     => ~ ! [Eq: term_a_b > term_a_b > $o,X3: term_a_b,Xs3: list_term_a_b] :
            ( X
           != ( produc5931190720334929579rm_a_b @ Eq @ ( cons_term_a_b @ X3 @ Xs3 ) ) ) ) ).

% distinct_eq.cases
thf(fact_496_distinct__eq_Ocases,axiom,
    ! [X: produc254973753779126261st_nat] :
      ( ! [Uu: nat > nat > $o] :
          ( X
         != ( produc4727192421694094319st_nat @ Uu @ nil_nat ) )
     => ~ ! [Eq: nat > nat > $o,X3: nat,Xs3: list_nat] :
            ( X
           != ( produc4727192421694094319st_nat @ Eq @ ( cons_nat @ X3 @ Xs3 ) ) ) ) ).

% distinct_eq.cases
thf(fact_497_list__inter_Ocases,axiom,
    ! [X: produc51424535725745577rm_a_b] :
      ( ! [Bs: list_term_a_b] :
          ( X
         != ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Bs ) )
     => ~ ! [A4: term_a_b,As: list_term_a_b,Bs: list_term_a_b] :
            ( X
           != ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ A4 @ As ) @ Bs ) ) ) ).

% list_inter.cases
thf(fact_498_list__inter_Ocases,axiom,
    ! [X: produc1828647624359046049st_nat] :
      ( ! [Bs: list_nat] :
          ( X
         != ( produc2694037385005941721st_nat @ nil_nat @ Bs ) )
     => ~ ! [A4: nat,As: list_nat,Bs: list_nat] :
            ( X
           != ( produc2694037385005941721st_nat @ ( cons_nat @ A4 @ As ) @ Bs ) ) ) ).

% list_inter.cases
thf(fact_499_mem__idx_Ocases,axiom,
    ! [X: produc5674375379913900953rm_a_b] :
      ( ! [Uu: term_a_b] :
          ( X
         != ( produc967488655884398673rm_a_b @ Uu @ nil_term_a_b ) )
     => ~ ! [X3: term_a_b,A4: term_a_b,As: list_term_a_b] :
            ( X
           != ( produc967488655884398673rm_a_b @ X3 @ ( cons_term_a_b @ A4 @ As ) ) ) ) ).

% mem_idx.cases
thf(fact_500_mem__idx_Ocases,axiom,
    ! [X: produc4575160907756185873st_nat] :
      ( ! [Uu: nat] :
          ( X
         != ( produc8282810413953273033st_nat @ Uu @ nil_nat ) )
     => ~ ! [X3: nat,A4: nat,As: list_nat] :
            ( X
           != ( produc8282810413953273033st_nat @ X3 @ ( cons_nat @ A4 @ As ) ) ) ) ).

% mem_idx.cases
thf(fact_501_filter2_Ocases,axiom,
    ! [X: produc8215350257458196082rm_a_b] :
      ( ! [P6: term_a_b > term_a_b > $o,Uu: list_term_a_b] :
          ( X
         != ( produc1278856658843369954rm_a_b @ P6 @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Uu ) ) )
     => ( ! [P6: term_a_b > term_a_b > $o,V: term_a_b,Va: list_term_a_b] :
            ( X
           != ( produc1278856658843369954rm_a_b @ P6 @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ V @ Va ) @ nil_term_a_b ) ) )
       => ~ ! [P6: term_a_b > term_a_b > $o,A4: term_a_b,As: list_term_a_b,B3: term_a_b,Bs: list_term_a_b] :
              ( X
             != ( produc1278856658843369954rm_a_b @ P6 @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ A4 @ As ) @ ( cons_term_a_b @ B3 @ Bs ) ) ) ) ) ) ).

% filter2.cases
thf(fact_502_filter2_Ocases,axiom,
    ! [X: produc6817702157447538794st_nat] :
      ( ! [P6: term_a_b > nat > $o,Uu: list_nat] :
          ( X
         != ( produc7813177934582050522st_nat @ P6 @ ( produc5386604813764302749st_nat @ nil_term_a_b @ Uu ) ) )
     => ( ! [P6: term_a_b > nat > $o,V: term_a_b,Va: list_term_a_b] :
            ( X
           != ( produc7813177934582050522st_nat @ P6 @ ( produc5386604813764302749st_nat @ ( cons_term_a_b @ V @ Va ) @ nil_nat ) ) )
       => ~ ! [P6: term_a_b > nat > $o,A4: term_a_b,As: list_term_a_b,B3: nat,Bs: list_nat] :
              ( X
             != ( produc7813177934582050522st_nat @ P6 @ ( produc5386604813764302749st_nat @ ( cons_term_a_b @ A4 @ As ) @ ( cons_nat @ B3 @ Bs ) ) ) ) ) ) ).

% filter2.cases
thf(fact_503_filter2_Ocases,axiom,
    ! [X: produc8734217775477389290rm_a_b] :
      ( ! [P6: nat > term_a_b > $o,Uu: list_term_a_b] :
          ( X
         != ( produc2750092164434624090rm_a_b @ P6 @ ( produc4336470666470712605rm_a_b @ nil_nat @ Uu ) ) )
     => ( ! [P6: nat > term_a_b > $o,V: nat,Va: list_nat] :
            ( X
           != ( produc2750092164434624090rm_a_b @ P6 @ ( produc4336470666470712605rm_a_b @ ( cons_nat @ V @ Va ) @ nil_term_a_b ) ) )
       => ~ ! [P6: nat > term_a_b > $o,A4: nat,As: list_nat,B3: term_a_b,Bs: list_term_a_b] :
              ( X
             != ( produc2750092164434624090rm_a_b @ P6 @ ( produc4336470666470712605rm_a_b @ ( cons_nat @ A4 @ As ) @ ( cons_term_a_b @ B3 @ Bs ) ) ) ) ) ) ).

% filter2.cases
thf(fact_504_filter2_Ocases,axiom,
    ! [X: produc4787317212837456354st_nat] :
      ( ! [P6: nat > nat > $o,Uu: list_nat] :
          ( X
         != ( produc3127733452865184594st_nat @ P6 @ ( produc2694037385005941721st_nat @ nil_nat @ Uu ) ) )
     => ( ! [P6: nat > nat > $o,V: nat,Va: list_nat] :
            ( X
           != ( produc3127733452865184594st_nat @ P6 @ ( produc2694037385005941721st_nat @ ( cons_nat @ V @ Va ) @ nil_nat ) ) )
       => ~ ! [P6: nat > nat > $o,A4: nat,As: list_nat,B3: nat,Bs: list_nat] :
              ( X
             != ( produc3127733452865184594st_nat @ P6 @ ( produc2694037385005941721st_nat @ ( cons_nat @ A4 @ As ) @ ( cons_nat @ B3 @ Bs ) ) ) ) ) ) ).

% filter2.cases
thf(fact_505_span_Ocases,axiom,
    ! [X: produc5260046862718186894rm_a_b] :
      ( ! [P6: term_a_b > $o,X3: term_a_b,Xs3: list_term_a_b] :
          ( X
         != ( produc2136336272451886600rm_a_b @ P6 @ ( cons_term_a_b @ X3 @ Xs3 ) ) )
     => ~ ! [Uu: term_a_b > $o] :
            ( X
           != ( produc2136336272451886600rm_a_b @ Uu @ nil_term_a_b ) ) ) ).

% span.cases
thf(fact_506_span_Ocases,axiom,
    ! [X: produc4226810134323546766st_nat] :
      ( ! [P6: nat > $o,X3: nat,Xs3: list_nat] :
          ( X
         != ( produc8587622027977423880st_nat @ P6 @ ( cons_nat @ X3 @ Xs3 ) ) )
     => ~ ! [Uu: nat > $o] :
            ( X
           != ( produc8587622027977423880st_nat @ Uu @ nil_nat ) ) ) ).

% span.cases
thf(fact_507_add__elem__list__lists_Osimps_I1_J,axiom,
    ! [X: term_a_b] :
      ( ( basic_1593220722155286443rm_a_b @ X @ nil_term_a_b )
      = ( cons_list_term_a_b @ ( cons_term_a_b @ X @ nil_term_a_b ) @ nil_list_term_a_b ) ) ).

% add_elem_list_lists.simps(1)
thf(fact_508_add__elem__list__lists_Osimps_I1_J,axiom,
    ! [X: nat] :
      ( ( basic_4874698711677410535ts_nat @ X @ nil_nat )
      = ( cons_list_nat @ ( cons_nat @ X @ nil_nat ) @ nil_list_nat ) ) ).

% add_elem_list_lists.simps(1)
thf(fact_509_the__elem__set,axiom,
    ! [X: term_a_b] :
      ( ( the_elem_term_a_b @ ( set_term_a_b2 @ ( cons_term_a_b @ X @ nil_term_a_b ) ) )
      = X ) ).

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

% the_elem_set
thf(fact_511_product__lists_Osimps_I1_J,axiom,
    ( ( produc17669015410068453rm_a_b @ nil_list_term_a_b )
    = ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) ) ).

% product_lists.simps(1)
thf(fact_512_product__lists_Osimps_I1_J,axiom,
    ( ( product_lists_nat @ nil_list_nat )
    = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% product_lists.simps(1)
thf(fact_513_concat__lists_Osimps_I1_J,axiom,
    ( ( missin8060632096978918206rm_a_b @ nil_list_term_a_b )
    = ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) ) ).

% concat_lists.simps(1)
thf(fact_514_concat__lists_Osimps_I1_J,axiom,
    ( ( missin4567272213201432058ts_nat @ nil_list_nat )
    = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% concat_lists.simps(1)
thf(fact_515_list__inter_Oelims,axiom,
    ! [X: list_list_nat,Xa: list_list_nat,Y: list_list_nat] :
      ( ( ( missin6532874241183986279st_nat @ X @ Xa )
        = Y )
     => ( ( ( X = nil_list_nat )
         => ( Y != nil_list_nat ) )
       => ~ ! [A4: list_nat,As: list_list_nat] :
              ( ( X
                = ( cons_list_nat @ A4 @ As ) )
             => ~ ( ( ( member_list_nat2 @ A4 @ ( set_list_nat2 @ Xa ) )
                   => ( Y
                      = ( cons_list_nat @ A4 @ ( missin6532874241183986279st_nat @ As @ Xa ) ) ) )
                  & ( ~ ( member_list_nat2 @ A4 @ ( set_list_nat2 @ Xa ) )
                   => ( Y
                      = ( missin6532874241183986279st_nat @ As @ Xa ) ) ) ) ) ) ) ).

% list_inter.elims
thf(fact_516_list__inter_Oelims,axiom,
    ! [X: list_P8875379029341186191rm_a_b,Xa: list_P8875379029341186191rm_a_b,Y: list_P8875379029341186191rm_a_b] :
      ( ( ( missin3381965633867963714rm_a_b @ X @ Xa )
        = Y )
     => ( ( ( X = nil_Pr6942174756412032271rm_a_b )
         => ( Y != nil_Pr6942174756412032271rm_a_b ) )
       => ~ ! [A4: produc357393685978478089rm_a_b,As: list_P8875379029341186191rm_a_b] :
              ( ( X
                = ( cons_P3536305108106557631rm_a_b @ A4 @ As ) )
             => ~ ( ( ( member5869715511025134514rm_a_b @ A4 @ ( set_Pr2370880052973118494rm_a_b @ Xa ) )
                   => ( Y
                      = ( cons_P3536305108106557631rm_a_b @ A4 @ ( missin3381965633867963714rm_a_b @ As @ Xa ) ) ) )
                  & ( ~ ( member5869715511025134514rm_a_b @ A4 @ ( set_Pr2370880052973118494rm_a_b @ Xa ) )
                   => ( Y
                      = ( missin3381965633867963714rm_a_b @ As @ Xa ) ) ) ) ) ) ) ).

% list_inter.elims
thf(fact_517_list__inter_Oelims,axiom,
    ! [X: list_term_a_b,Xa: list_term_a_b,Y: list_term_a_b] :
      ( ( ( missin8990008842131906971rm_a_b @ X @ Xa )
        = Y )
     => ( ( ( X = nil_term_a_b )
         => ( Y != nil_term_a_b ) )
       => ~ ! [A4: term_a_b,As: list_term_a_b] :
              ( ( X
                = ( cons_term_a_b @ A4 @ As ) )
             => ~ ( ( ( member_term_a_b2 @ A4 @ ( set_term_a_b2 @ Xa ) )
                   => ( Y
                      = ( cons_term_a_b @ A4 @ ( missin8990008842131906971rm_a_b @ As @ Xa ) ) ) )
                  & ( ~ ( member_term_a_b2 @ A4 @ ( set_term_a_b2 @ Xa ) )
                   => ( Y
                      = ( missin8990008842131906971rm_a_b @ As @ Xa ) ) ) ) ) ) ) ).

% list_inter.elims
thf(fact_518_list__inter_Oelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( missin6377695591745783511er_nat @ X @ Xa )
        = Y )
     => ( ( ( X = nil_nat )
         => ( Y != nil_nat ) )
       => ~ ! [A4: nat,As: list_nat] :
              ( ( X
                = ( cons_nat @ A4 @ As ) )
             => ~ ( ( ( member_nat2 @ A4 @ ( set_nat2 @ Xa ) )
                   => ( Y
                      = ( cons_nat @ A4 @ ( missin6377695591745783511er_nat @ As @ Xa ) ) ) )
                  & ( ~ ( member_nat2 @ A4 @ ( set_nat2 @ Xa ) )
                   => ( Y
                      = ( missin6377695591745783511er_nat @ As @ Xa ) ) ) ) ) ) ) ).

% list_inter.elims
thf(fact_519_list__inter_Osimps_I1_J,axiom,
    ! [Bs2: list_term_a_b] :
      ( ( missin8990008842131906971rm_a_b @ nil_term_a_b @ Bs2 )
      = nil_term_a_b ) ).

% list_inter.simps(1)
thf(fact_520_list__inter_Osimps_I1_J,axiom,
    ! [Bs2: list_nat] :
      ( ( missin6377695591745783511er_nat @ nil_nat @ Bs2 )
      = nil_nat ) ).

% list_inter.simps(1)
thf(fact_521_list__inter_Osimps_I2_J,axiom,
    ! [A: list_nat,Bs2: list_list_nat,As2: list_list_nat] :
      ( ( ( member_list_nat2 @ A @ ( set_list_nat2 @ Bs2 ) )
       => ( ( missin6532874241183986279st_nat @ ( cons_list_nat @ A @ As2 ) @ Bs2 )
          = ( cons_list_nat @ A @ ( missin6532874241183986279st_nat @ As2 @ Bs2 ) ) ) )
      & ( ~ ( member_list_nat2 @ A @ ( set_list_nat2 @ Bs2 ) )
       => ( ( missin6532874241183986279st_nat @ ( cons_list_nat @ A @ As2 ) @ Bs2 )
          = ( missin6532874241183986279st_nat @ As2 @ Bs2 ) ) ) ) ).

% list_inter.simps(2)
thf(fact_522_list__inter_Osimps_I2_J,axiom,
    ! [A: produc357393685978478089rm_a_b,Bs2: list_P8875379029341186191rm_a_b,As2: list_P8875379029341186191rm_a_b] :
      ( ( ( member5869715511025134514rm_a_b @ A @ ( set_Pr2370880052973118494rm_a_b @ Bs2 ) )
       => ( ( missin3381965633867963714rm_a_b @ ( cons_P3536305108106557631rm_a_b @ A @ As2 ) @ Bs2 )
          = ( cons_P3536305108106557631rm_a_b @ A @ ( missin3381965633867963714rm_a_b @ As2 @ Bs2 ) ) ) )
      & ( ~ ( member5869715511025134514rm_a_b @ A @ ( set_Pr2370880052973118494rm_a_b @ Bs2 ) )
       => ( ( missin3381965633867963714rm_a_b @ ( cons_P3536305108106557631rm_a_b @ A @ As2 ) @ Bs2 )
          = ( missin3381965633867963714rm_a_b @ As2 @ Bs2 ) ) ) ) ).

% list_inter.simps(2)
thf(fact_523_list__inter_Osimps_I2_J,axiom,
    ! [A: nat,Bs2: list_nat,As2: list_nat] :
      ( ( ( member_nat2 @ A @ ( set_nat2 @ Bs2 ) )
       => ( ( missin6377695591745783511er_nat @ ( cons_nat @ A @ As2 ) @ Bs2 )
          = ( cons_nat @ A @ ( missin6377695591745783511er_nat @ As2 @ Bs2 ) ) ) )
      & ( ~ ( member_nat2 @ A @ ( set_nat2 @ Bs2 ) )
       => ( ( missin6377695591745783511er_nat @ ( cons_nat @ A @ As2 ) @ Bs2 )
          = ( missin6377695591745783511er_nat @ As2 @ Bs2 ) ) ) ) ).

% list_inter.simps(2)
thf(fact_524_bot__empty__eq,axiom,
    ( bot_bot_list_nat_o
    = ( ^ [X4: list_nat] : ( member_list_nat2 @ X4 @ bot_bot_set_list_nat ) ) ) ).

% bot_empty_eq
thf(fact_525_bot__empty__eq,axiom,
    ( bot_bo23760184229683272_a_b_o
    = ( ^ [X4: produc357393685978478089rm_a_b] : ( member5869715511025134514rm_a_b @ X4 @ bot_bo197521221353338581rm_a_b ) ) ) ).

% bot_empty_eq
thf(fact_526_subseqs_Osimps_I1_J,axiom,
    ( ( subseqs_term_a_b @ nil_term_a_b )
    = ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) ) ).

% subseqs.simps(1)
thf(fact_527_subseqs_Osimps_I1_J,axiom,
    ( ( subseqs_nat @ nil_nat )
    = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% subseqs.simps(1)
thf(fact_528_listrel_Osimps,axiom,
    ! [A1: list_term_a_b,A22: list_nat,R: set_Pr6708357783813671845_b_nat] :
      ( ( member8889939629616814094st_nat @ ( produc5386604813764302749st_nat @ A1 @ A22 ) @ ( listrel_term_a_b_nat @ R ) )
      = ( ( ( A1 = nil_term_a_b )
          & ( A22 = nil_nat ) )
        | ? [X4: term_a_b,Y5: nat,Xs2: list_term_a_b,Ys3: list_nat] :
            ( ( A1
              = ( cons_term_a_b @ X4 @ Xs2 ) )
            & ( A22
              = ( cons_nat @ Y5 @ Ys3 ) )
            & ( member9000184225777080558_b_nat @ ( produc2478027105211390077_b_nat @ X4 @ Y5 ) @ R )
            & ( member8889939629616814094st_nat @ ( produc5386604813764302749st_nat @ Xs2 @ Ys3 ) @ ( listrel_term_a_b_nat @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_529_listrel_Osimps,axiom,
    ! [A1: list_nat,A22: list_term_a_b,R: set_Pr4549835640365387557rm_a_b] :
      ( ( member7814915433699591566rm_a_b @ ( produc4336470666470712605rm_a_b @ A1 @ A22 ) @ ( listrel_nat_term_a_b @ R ) )
      = ( ( ( A1 = nil_nat )
          & ( A22 = nil_term_a_b ) )
        | ? [X4: nat,Y5: term_a_b,Xs2: list_nat,Ys3: list_term_a_b] :
            ( ( A1
              = ( cons_nat @ X4 @ Xs2 ) )
            & ( A22
              = ( cons_term_a_b @ Y5 @ Ys3 ) )
            & ( member7514656309480873070rm_a_b @ ( produc1516572978046417917rm_a_b @ X4 @ Y5 ) @ R )
            & ( member7814915433699591566rm_a_b @ ( produc4336470666470712605rm_a_b @ Xs2 @ Ys3 ) @ ( listrel_nat_term_a_b @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_530_listrel_Osimps,axiom,
    ! [A1: list_nat,A22: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ A1 @ A22 ) @ ( listrel_nat_nat @ R ) )
      = ( ( ( A1 = nil_nat )
          & ( A22 = nil_nat ) )
        | ? [X4: nat,Y5: nat,Xs2: list_nat,Ys3: list_nat] :
            ( ( A1
              = ( cons_nat @ X4 @ Xs2 ) )
            & ( A22
              = ( cons_nat @ Y5 @ Ys3 ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ Y5 ) @ R )
            & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys3 ) @ ( listrel_nat_nat @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_531_listrel_Osimps,axiom,
    ! [A1: list_term_a_b,A22: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ A1 @ A22 ) @ ( listre1194016999521814427rm_a_b @ R ) )
      = ( ( ( A1 = nil_term_a_b )
          & ( A22 = nil_term_a_b ) )
        | ? [X4: term_a_b,Y5: term_a_b,Xs2: list_term_a_b,Ys3: list_term_a_b] :
            ( ( A1
              = ( cons_term_a_b @ X4 @ Xs2 ) )
            & ( A22
              = ( cons_term_a_b @ Y5 @ Ys3 ) )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X4 @ Y5 ) @ R )
            & ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs2 @ Ys3 ) @ ( listre1194016999521814427rm_a_b @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_532_subseqs__refl,axiom,
    ! [Xs: list_nat] : ( member_list_nat2 @ Xs @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ).

% subseqs_refl
thf(fact_533_Cons__in__subseqsD,axiom,
    ! [Y: nat,Ys: list_nat,Xs: list_nat] :
      ( ( member_list_nat2 @ ( cons_nat @ Y @ Ys ) @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) )
     => ( member_list_nat2 @ Ys @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ) ).

% Cons_in_subseqsD
thf(fact_534_empty__subseqs,axiom,
    ! [Xs: list_term_a_b] : ( member_list_term_a_b2 @ nil_term_a_b @ ( set_list_term_a_b2 @ ( subseqs_term_a_b @ Xs ) ) ) ).

% empty_subseqs
thf(fact_535_empty__subseqs,axiom,
    ! [Xs: list_nat] : ( member_list_nat2 @ nil_nat @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ).

% empty_subseqs
thf(fact_536_listrel__Nil2,axiom,
    ! [Xs: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ nil_term_a_b ) @ ( listre1194016999521814427rm_a_b @ R ) )
     => ( Xs = nil_term_a_b ) ) ).

% listrel_Nil2
thf(fact_537_listrel__Nil2,axiom,
    ! [Xs: list_nat,R: set_Pr4549835640365387557rm_a_b] :
      ( ( member7814915433699591566rm_a_b @ ( produc4336470666470712605rm_a_b @ Xs @ nil_term_a_b ) @ ( listrel_nat_term_a_b @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil2
thf(fact_538_listrel__Nil2,axiom,
    ! [Xs: list_term_a_b,R: set_Pr6708357783813671845_b_nat] :
      ( ( member8889939629616814094st_nat @ ( produc5386604813764302749st_nat @ Xs @ nil_nat ) @ ( listrel_term_a_b_nat @ R ) )
     => ( Xs = nil_term_a_b ) ) ).

% listrel_Nil2
thf(fact_539_listrel__Nil2,axiom,
    ! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ nil_nat ) @ ( listrel_nat_nat @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil2
thf(fact_540_listrel__Nil1,axiom,
    ! [Xs: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Xs ) @ ( listre1194016999521814427rm_a_b @ R ) )
     => ( Xs = nil_term_a_b ) ) ).

% listrel_Nil1
thf(fact_541_listrel__Nil1,axiom,
    ! [Xs: list_nat,R: set_Pr6708357783813671845_b_nat] :
      ( ( member8889939629616814094st_nat @ ( produc5386604813764302749st_nat @ nil_term_a_b @ Xs ) @ ( listrel_term_a_b_nat @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil1
thf(fact_542_listrel__Nil1,axiom,
    ! [Xs: list_term_a_b,R: set_Pr4549835640365387557rm_a_b] :
      ( ( member7814915433699591566rm_a_b @ ( produc4336470666470712605rm_a_b @ nil_nat @ Xs ) @ ( listrel_nat_term_a_b @ R ) )
     => ( Xs = nil_term_a_b ) ) ).

% listrel_Nil1
thf(fact_543_listrel__Nil1,axiom,
    ! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Xs ) @ ( listrel_nat_nat @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil1
thf(fact_544_listrel_ONil,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b] : ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ nil_term_a_b ) @ ( listre1194016999521814427rm_a_b @ R ) ) ).

% listrel.Nil
thf(fact_545_listrel_ONil,axiom,
    ! [R: set_Pr6708357783813671845_b_nat] : ( member8889939629616814094st_nat @ ( produc5386604813764302749st_nat @ nil_term_a_b @ nil_nat ) @ ( listrel_term_a_b_nat @ R ) ) ).

% listrel.Nil
thf(fact_546_listrel_ONil,axiom,
    ! [R: set_Pr4549835640365387557rm_a_b] : ( member7814915433699591566rm_a_b @ ( produc4336470666470712605rm_a_b @ nil_nat @ nil_term_a_b ) @ ( listrel_nat_term_a_b @ R ) ) ).

% listrel.Nil
thf(fact_547_listrel_ONil,axiom,
    ! [R: set_Pr1261947904930325089at_nat] : ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ nil_nat ) @ ( listrel_nat_nat @ R ) ) ).

% listrel.Nil
thf(fact_548_listrel__Cons2,axiom,
    ! [Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) @ ( listrel_nat_nat @ R ) )
     => ~ ! [X3: nat,Xs3: list_nat] :
            ( ( Xs
              = ( cons_nat @ X3 @ Xs3 ) )
           => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y ) @ R )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs3 @ Ys ) @ ( listrel_nat_nat @ R ) ) ) ) ) ).

% listrel_Cons2
thf(fact_549_listrel__Cons2,axiom,
    ! [Xs: list_term_a_b,Y: term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ ( cons_term_a_b @ Y @ Ys ) ) @ ( listre1194016999521814427rm_a_b @ R ) )
     => ~ ! [X3: term_a_b,Xs3: list_term_a_b] :
            ( ( Xs
              = ( cons_term_a_b @ X3 @ Xs3 ) )
           => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y ) @ R )
             => ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs3 @ Ys ) @ ( listre1194016999521814427rm_a_b @ R ) ) ) ) ) ).

% listrel_Cons2
thf(fact_550_listrel__Cons1,axiom,
    ! [Y: nat,Ys: list_nat,Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ Y @ Ys ) @ Xs ) @ ( listrel_nat_nat @ R ) )
     => ~ ! [Y3: nat,Ys2: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y3 @ Ys2 ) )
           => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y @ Y3 ) @ R )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ys @ Ys2 ) @ ( listrel_nat_nat @ R ) ) ) ) ) ).

% listrel_Cons1
thf(fact_551_listrel__Cons1,axiom,
    ! [Y: term_a_b,Ys: list_term_a_b,Xs: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ Y @ Ys ) @ Xs ) @ ( listre1194016999521814427rm_a_b @ R ) )
     => ~ ! [Y3: term_a_b,Ys2: list_term_a_b] :
            ( ( Xs
              = ( cons_term_a_b @ Y3 @ Ys2 ) )
           => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ Y3 ) @ R )
             => ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Ys @ Ys2 ) @ ( listre1194016999521814427rm_a_b @ R ) ) ) ) ) ).

% listrel_Cons1
thf(fact_552_listrel_OCons,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs: list_nat,Ys: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel_nat_nat @ R ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( listrel_nat_nat @ R ) ) ) ) ).

% listrel.Cons
thf(fact_553_listrel_OCons,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ R )
     => ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( listre1194016999521814427rm_a_b @ R ) )
       => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ ( cons_term_a_b @ Y @ Ys ) ) @ ( listre1194016999521814427rm_a_b @ R ) ) ) ) ).

% listrel.Cons
thf(fact_554_listrel_Ocases,axiom,
    ! [A1: list_term_a_b,A22: list_nat,R: set_Pr6708357783813671845_b_nat] :
      ( ( member8889939629616814094st_nat @ ( produc5386604813764302749st_nat @ A1 @ A22 ) @ ( listrel_term_a_b_nat @ R ) )
     => ( ( ( A1 = nil_term_a_b )
         => ( A22 != nil_nat ) )
       => ~ ! [X3: term_a_b,Y3: nat,Xs3: list_term_a_b] :
              ( ( A1
                = ( cons_term_a_b @ X3 @ Xs3 ) )
             => ! [Ys2: list_nat] :
                  ( ( A22
                    = ( cons_nat @ Y3 @ Ys2 ) )
                 => ( ( member9000184225777080558_b_nat @ ( produc2478027105211390077_b_nat @ X3 @ Y3 ) @ R )
                   => ~ ( member8889939629616814094st_nat @ ( produc5386604813764302749st_nat @ Xs3 @ Ys2 ) @ ( listrel_term_a_b_nat @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_555_listrel_Ocases,axiom,
    ! [A1: list_nat,A22: list_term_a_b,R: set_Pr4549835640365387557rm_a_b] :
      ( ( member7814915433699591566rm_a_b @ ( produc4336470666470712605rm_a_b @ A1 @ A22 ) @ ( listrel_nat_term_a_b @ R ) )
     => ( ( ( A1 = nil_nat )
         => ( A22 != nil_term_a_b ) )
       => ~ ! [X3: nat,Y3: term_a_b,Xs3: list_nat] :
              ( ( A1
                = ( cons_nat @ X3 @ Xs3 ) )
             => ! [Ys2: list_term_a_b] :
                  ( ( A22
                    = ( cons_term_a_b @ Y3 @ Ys2 ) )
                 => ( ( member7514656309480873070rm_a_b @ ( produc1516572978046417917rm_a_b @ X3 @ Y3 ) @ R )
                   => ~ ( member7814915433699591566rm_a_b @ ( produc4336470666470712605rm_a_b @ Xs3 @ Ys2 ) @ ( listrel_nat_term_a_b @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_556_listrel_Ocases,axiom,
    ! [A1: list_nat,A22: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ A1 @ A22 ) @ ( listrel_nat_nat @ R ) )
     => ( ( ( A1 = nil_nat )
         => ( A22 != nil_nat ) )
       => ~ ! [X3: nat,Y3: nat,Xs3: list_nat] :
              ( ( A1
                = ( cons_nat @ X3 @ Xs3 ) )
             => ! [Ys2: list_nat] :
                  ( ( A22
                    = ( cons_nat @ Y3 @ Ys2 ) )
                 => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R )
                   => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs3 @ Ys2 ) @ ( listrel_nat_nat @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_557_listrel_Ocases,axiom,
    ! [A1: list_term_a_b,A22: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ A1 @ A22 ) @ ( listre1194016999521814427rm_a_b @ R ) )
     => ( ( ( A1 = nil_term_a_b )
         => ( A22 != nil_term_a_b ) )
       => ~ ! [X3: term_a_b,Y3: term_a_b,Xs3: list_term_a_b] :
              ( ( A1
                = ( cons_term_a_b @ X3 @ Xs3 ) )
             => ! [Ys2: list_term_a_b] :
                  ( ( A22
                    = ( cons_term_a_b @ Y3 @ Ys2 ) )
                 => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ R )
                   => ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs3 @ Ys2 ) @ ( listre1194016999521814427rm_a_b @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_558_not__in__set__insert,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ~ ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( insert_list_nat @ X @ Xs )
        = ( cons_list_nat @ X @ Xs ) ) ) ).

% not_in_set_insert
thf(fact_559_not__in__set__insert,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ( insert2131576408138493221rm_a_b @ X @ Xs )
        = ( cons_P3536305108106557631rm_a_b @ X @ Xs ) ) ) ).

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

% not_in_set_insert
thf(fact_561_insert__Nil,axiom,
    ! [X: term_a_b] :
      ( ( insert_term_a_b @ X @ nil_term_a_b )
      = ( cons_term_a_b @ X @ nil_term_a_b ) ) ).

% insert_Nil
thf(fact_562_insert__Nil,axiom,
    ! [X: nat] :
      ( ( insert_nat @ X @ nil_nat )
      = ( cons_nat @ X @ nil_nat ) ) ).

% insert_Nil
thf(fact_563_lexord__Nil__left,axiom,
    ! [Y: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Y ) @ ( lexord_term_a_b @ R ) )
      = ( ? [A3: term_a_b,X4: list_term_a_b] :
            ( Y
            = ( cons_term_a_b @ A3 @ X4 ) ) ) ) ).

% lexord_Nil_left
thf(fact_564_lexord__Nil__left,axiom,
    ! [Y: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Y ) @ ( lexord_nat @ R ) )
      = ( ? [A3: nat,X4: list_nat] :
            ( Y
            = ( cons_nat @ A3 @ X4 ) ) ) ) ).

% lexord_Nil_left
thf(fact_565_lexord__cons__cons,axiom,
    ! [A: nat,X: list_nat,B: nat,Y: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ A @ X ) @ ( cons_nat @ B @ Y ) ) @ ( lexord_nat @ R ) )
      = ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R )
        | ( ( A = B )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ X @ Y ) @ ( lexord_nat @ R ) ) ) ) ) ).

% lexord_cons_cons
thf(fact_566_lexord__cons__cons,axiom,
    ! [A: term_a_b,X: list_term_a_b,B: term_a_b,Y: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ A @ X ) @ ( cons_term_a_b @ B @ Y ) ) @ ( lexord_term_a_b @ R ) )
      = ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R )
        | ( ( A = B )
          & ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ X @ Y ) @ ( lexord_term_a_b @ R ) ) ) ) ) ).

% lexord_cons_cons
thf(fact_567_distinct__eq_Oelims_I1_J,axiom,
    ! [X: term_a_b > term_a_b > $o,Xa: list_term_a_b,Y: $o] :
      ( ( ( missin7069401481566841205rm_a_b @ X @ Xa )
        = Y )
     => ( ( ( Xa = nil_term_a_b )
         => ~ Y )
       => ~ ! [X3: term_a_b,Xs3: list_term_a_b] :
              ( ( Xa
                = ( cons_term_a_b @ X3 @ Xs3 ) )
             => ( Y
                = ( ~ ( ! [Y5: term_a_b] :
                          ( ( member_term_a_b2 @ Y5 @ ( set_term_a_b2 @ Xs3 ) )
                         => ~ ( X @ Y5 @ X3 ) )
                      & ( missin7069401481566841205rm_a_b @ X @ Xs3 ) ) ) ) ) ) ) ).

% distinct_eq.elims(1)
thf(fact_568_distinct__eq_Oelims_I1_J,axiom,
    ! [X: nat > nat > $o,Xa: list_nat,Y: $o] :
      ( ( ( missin2585702830974895025eq_nat @ X @ Xa )
        = Y )
     => ( ( ( Xa = nil_nat )
         => ~ Y )
       => ~ ! [X3: nat,Xs3: list_nat] :
              ( ( Xa
                = ( cons_nat @ X3 @ Xs3 ) )
             => ( Y
                = ( ~ ( ! [Y5: nat] :
                          ( ( member_nat2 @ Y5 @ ( set_nat2 @ Xs3 ) )
                         => ~ ( X @ Y5 @ X3 ) )
                      & ( missin2585702830974895025eq_nat @ X @ Xs3 ) ) ) ) ) ) ) ).

% distinct_eq.elims(1)
thf(fact_569_in__set__insert,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( insert_list_nat @ X @ Xs )
        = Xs ) ) ).

% in_set_insert
thf(fact_570_in__set__insert,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ( insert2131576408138493221rm_a_b @ X @ Xs )
        = Xs ) ) ).

% in_set_insert
thf(fact_571_distinct__eq_Osimps_I1_J,axiom,
    ! [Uu2: term_a_b > term_a_b > $o] : ( missin7069401481566841205rm_a_b @ Uu2 @ nil_term_a_b ) ).

% distinct_eq.simps(1)
thf(fact_572_distinct__eq_Osimps_I1_J,axiom,
    ! [Uu2: nat > nat > $o] : ( missin2585702830974895025eq_nat @ Uu2 @ nil_nat ) ).

% distinct_eq.simps(1)
thf(fact_573_lexord__irreflexive,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b] :
      ( ! [X3: term_a_b] :
          ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ X3 ) @ R )
     => ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Xs ) @ ( lexord_term_a_b @ R ) ) ) ).

% lexord_irreflexive
thf(fact_574_lexord__linear,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,X: list_term_a_b,Y: list_term_a_b] :
      ( ! [A4: term_a_b,B3: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) @ R )
          | ( A4 = B3 )
          | ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B3 @ A4 ) @ R ) )
     => ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ X @ Y ) @ ( lexord_term_a_b @ R ) )
        | ( X = Y )
        | ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Y @ X ) @ ( lexord_term_a_b @ R ) ) ) ) ).

% lexord_linear
thf(fact_575_lexord__Nil__right,axiom,
    ! [X: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ X @ nil_term_a_b ) @ ( lexord_term_a_b @ R ) ) ).

% lexord_Nil_right
thf(fact_576_lexord__Nil__right,axiom,
    ! [X: list_nat,R: set_Pr1261947904930325089at_nat] :
      ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ X @ nil_nat ) @ ( lexord_nat @ R ) ) ).

% lexord_Nil_right
thf(fact_577_null__rec_I1_J,axiom,
    ! [X: nat,Xs: list_nat] :
      ~ ( null_nat @ ( cons_nat @ X @ Xs ) ) ).

% null_rec(1)
thf(fact_578_eq__Nil__null,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs = nil_term_a_b )
      = ( null_term_a_b @ Xs ) ) ).

% eq_Nil_null
thf(fact_579_eq__Nil__null,axiom,
    ! [Xs: list_nat] :
      ( ( Xs = nil_nat )
      = ( null_nat @ Xs ) ) ).

% eq_Nil_null
thf(fact_580_null__rec_I2_J,axiom,
    null_term_a_b @ nil_term_a_b ).

% null_rec(2)
thf(fact_581_null__rec_I2_J,axiom,
    null_nat @ nil_nat ).

% null_rec(2)
thf(fact_582_distinct__eq_Oelims_I3_J,axiom,
    ! [X: nat > nat > $o,Xa: list_nat] :
      ( ~ ( missin2585702830974895025eq_nat @ X @ Xa )
     => ~ ! [X3: nat,Xs3: list_nat] :
            ( ( Xa
              = ( cons_nat @ X3 @ Xs3 ) )
           => ( ! [Xa2: nat] :
                  ( ( member_nat2 @ Xa2 @ ( set_nat2 @ Xs3 ) )
                 => ~ ( X @ Xa2 @ X3 ) )
              & ( missin2585702830974895025eq_nat @ X @ Xs3 ) ) ) ) ).

% distinct_eq.elims(3)
thf(fact_583_distinct__eq_Osimps_I2_J,axiom,
    ! [Eq2: nat > nat > $o,X: nat,Xs: list_nat] :
      ( ( missin2585702830974895025eq_nat @ Eq2 @ ( cons_nat @ X @ Xs ) )
      = ( ! [X4: nat] :
            ( ( member_nat2 @ X4 @ ( set_nat2 @ Xs ) )
           => ~ ( Eq2 @ X4 @ X ) )
        & ( missin2585702830974895025eq_nat @ Eq2 @ Xs ) ) ) ).

% distinct_eq.simps(2)
thf(fact_584_List_Oinsert__def,axiom,
    ( insert_list_nat
    = ( ^ [X4: list_nat,Xs2: list_list_nat] : ( if_list_list_nat @ ( member_list_nat2 @ X4 @ ( set_list_nat2 @ Xs2 ) ) @ Xs2 @ ( cons_list_nat @ X4 @ Xs2 ) ) ) ) ).

% List.insert_def
thf(fact_585_List_Oinsert__def,axiom,
    ( insert2131576408138493221rm_a_b
    = ( ^ [X4: produc357393685978478089rm_a_b,Xs2: list_P8875379029341186191rm_a_b] : ( if_lis6431594140241482069rm_a_b @ ( member5869715511025134514rm_a_b @ X4 @ ( set_Pr2370880052973118494rm_a_b @ Xs2 ) ) @ Xs2 @ ( cons_P3536305108106557631rm_a_b @ X4 @ Xs2 ) ) ) ) ).

% List.insert_def
thf(fact_586_List_Oinsert__def,axiom,
    ( insert_nat
    = ( ^ [X4: nat,Xs2: list_nat] : ( if_list_nat @ ( member_nat2 @ X4 @ ( set_nat2 @ Xs2 ) ) @ Xs2 @ ( cons_nat @ X4 @ Xs2 ) ) ) ) ).

% List.insert_def
thf(fact_587_lexord__partial__trans,axiom,
    ! [Xs: list_list_nat,R: set_Pr3451248702717554689st_nat,Ys: list_list_nat,Zs2: list_list_nat] :
      ( ! [X3: list_nat,Y3: list_nat,Z: list_nat] :
          ( ( member_list_nat2 @ X3 @ ( set_list_nat2 @ Xs ) )
         => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ X3 @ Y3 ) @ R )
           => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Y3 @ Z ) @ R )
             => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ X3 @ Z ) @ R ) ) ) )
     => ( ( member8680655010358287850st_nat @ ( produc7129799990162260089st_nat @ Xs @ Ys ) @ ( lexord_list_nat @ R ) )
       => ( ( member8680655010358287850st_nat @ ( produc7129799990162260089st_nat @ Ys @ Zs2 ) @ ( lexord_list_nat @ R ) )
         => ( member8680655010358287850st_nat @ ( produc7129799990162260089st_nat @ Xs @ Zs2 ) @ ( lexord_list_nat @ R ) ) ) ) ) ).

% lexord_partial_trans
thf(fact_588_lexord__partial__trans,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,R: set_Pr2972776593051762503rm_a_b,Ys: list_P8875379029341186191rm_a_b,Zs2: list_P8875379029341186191rm_a_b] :
      ( ! [X3: produc357393685978478089rm_a_b,Y3: produc357393685978478089rm_a_b,Z: produc357393685978478089rm_a_b] :
          ( ( member5869715511025134514rm_a_b @ X3 @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
         => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ Y3 ) @ R )
           => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ Y3 @ Z ) @ R )
             => ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X3 @ Z ) @ R ) ) ) )
     => ( ( member2631635837537579280rm_a_b @ ( produc129289007660123479rm_a_b @ Xs @ Ys ) @ ( lexord1555492263668129660rm_a_b @ R ) )
       => ( ( member2631635837537579280rm_a_b @ ( produc129289007660123479rm_a_b @ Ys @ Zs2 ) @ ( lexord1555492263668129660rm_a_b @ R ) )
         => ( member2631635837537579280rm_a_b @ ( produc129289007660123479rm_a_b @ Xs @ Zs2 ) @ ( lexord1555492263668129660rm_a_b @ R ) ) ) ) ) ).

% lexord_partial_trans
thf(fact_589_lexord__partial__trans,axiom,
    ! [Xs: list_term_a_b,R: set_Pr4386577575007340137rm_a_b,Ys: list_term_a_b,Zs2: list_term_a_b] :
      ( ! [X3: term_a_b,Y3: term_a_b,Z: term_a_b] :
          ( ( member_term_a_b2 @ X3 @ ( set_term_a_b2 @ Xs ) )
         => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ R )
           => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z ) @ R )
             => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Z ) @ R ) ) ) )
     => ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( lexord_term_a_b @ R ) )
       => ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Ys @ Zs2 ) @ ( lexord_term_a_b @ R ) )
         => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Zs2 ) @ ( lexord_term_a_b @ R ) ) ) ) ) ).

% lexord_partial_trans
thf(fact_590_distinct__eq_Oelims_I2_J,axiom,
    ! [X: term_a_b > term_a_b > $o,Xa: list_term_a_b] :
      ( ( missin7069401481566841205rm_a_b @ X @ Xa )
     => ( ( Xa != nil_term_a_b )
       => ~ ! [X3: term_a_b,Xs3: list_term_a_b] :
              ( ( Xa
                = ( cons_term_a_b @ X3 @ Xs3 ) )
             => ~ ( ! [Xa3: term_a_b] :
                      ( ( member_term_a_b2 @ Xa3 @ ( set_term_a_b2 @ Xs3 ) )
                     => ~ ( X @ Xa3 @ X3 ) )
                  & ( missin7069401481566841205rm_a_b @ X @ Xs3 ) ) ) ) ) ).

% distinct_eq.elims(2)
thf(fact_591_distinct__eq_Oelims_I2_J,axiom,
    ! [X: nat > nat > $o,Xa: list_nat] :
      ( ( missin2585702830974895025eq_nat @ X @ Xa )
     => ( ( Xa != nil_nat )
       => ~ ! [X3: nat,Xs3: list_nat] :
              ( ( Xa
                = ( cons_nat @ X3 @ Xs3 ) )
             => ~ ( ! [Xa3: nat] :
                      ( ( member_nat2 @ Xa3 @ ( set_nat2 @ Xs3 ) )
                     => ~ ( X @ Xa3 @ X3 ) )
                  & ( missin2585702830974895025eq_nat @ X @ Xs3 ) ) ) ) ) ).

% distinct_eq.elims(2)
thf(fact_592_Cons__listrel1__Cons,axiom,
    ! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
      = ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
          & ( Xs = Ys ) )
        | ( ( X = Y )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1_Cons
thf(fact_593_Cons__listrel1__Cons,axiom,
    ! [X: term_a_b,Xs: list_term_a_b,Y: term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ ( cons_term_a_b @ Y @ Ys ) ) @ ( listrel1_term_a_b @ R ) )
      = ( ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ R )
          & ( Xs = Ys ) )
        | ( ( X = Y )
          & ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( listrel1_term_a_b @ R ) ) ) ) ) ).

% Cons_listrel1_Cons
thf(fact_594_lexord__same__pref__iff,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,Zs2: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( append_term_a_b @ Xs @ Ys ) @ ( append_term_a_b @ Xs @ Zs2 ) ) @ ( lexord_term_a_b @ R ) )
      = ( ? [X4: term_a_b] :
            ( ( member_term_a_b2 @ X4 @ ( set_term_a_b2 @ Xs ) )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X4 @ X4 ) @ R ) )
        | ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Ys @ Zs2 ) @ ( lexord_term_a_b @ R ) ) ) ) ).

% lexord_same_pref_iff
thf(fact_595_lexord__append__left__rightI,axiom,
    ! [A: nat,B: nat,R: set_Pr1261947904930325089at_nat,U: list_nat,X: list_nat,Y: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R )
     => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ U @ ( cons_nat @ A @ X ) ) @ ( append_nat @ U @ ( cons_nat @ B @ Y ) ) ) @ ( lexord_nat @ R ) ) ) ).

% lexord_append_left_rightI
thf(fact_596_lexord__append__left__rightI,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,U: list_term_a_b,X: list_term_a_b,Y: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R )
     => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( append_term_a_b @ U @ ( cons_term_a_b @ A @ X ) ) @ ( append_term_a_b @ U @ ( cons_term_a_b @ B @ Y ) ) ) @ ( lexord_term_a_b @ R ) ) ) ).

% lexord_append_left_rightI
thf(fact_597_transpose__empty,axiom,
    ! [Xs: list_list_term_a_b] :
      ( ( ( transpose_term_a_b @ Xs )
        = nil_list_term_a_b )
      = ( ! [X4: list_term_a_b] :
            ( ( member_list_term_a_b2 @ X4 @ ( set_list_term_a_b2 @ Xs ) )
           => ( X4 = nil_term_a_b ) ) ) ) ).

% transpose_empty
thf(fact_598_transpose__empty,axiom,
    ! [Xs: list_list_nat] :
      ( ( ( transpose_nat @ Xs )
        = nil_list_nat )
      = ( ! [X4: list_nat] :
            ( ( member_list_nat2 @ X4 @ ( set_list_nat2 @ Xs ) )
           => ( X4 = nil_nat ) ) ) ) ).

% transpose_empty
thf(fact_599_Nil__lenlex__iff1,axiom,
    ! [Ns: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Ns ) @ ( lenlex_term_a_b @ R ) )
      = ( Ns != nil_term_a_b ) ) ).

% Nil_lenlex_iff1
thf(fact_600_Nil__lenlex__iff1,axiom,
    ! [Ns: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Ns ) @ ( lenlex_nat @ R ) )
      = ( Ns != nil_nat ) ) ).

% Nil_lenlex_iff1
thf(fact_601_span_Osimps_I2_J,axiom,
    ! [Uu2: term_a_b > $o] :
      ( ( missin2225838228573957143rm_a_b @ Uu2 @ nil_term_a_b )
      = ( produc4885699992713594593rm_a_b @ nil_term_a_b @ nil_term_a_b ) ) ).

% span.simps(2)
thf(fact_602_span_Osimps_I2_J,axiom,
    ! [Uu2: nat > $o] :
      ( ( missing_span_nat @ Uu2 @ nil_nat )
      = ( produc2694037385005941721st_nat @ nil_nat @ nil_nat ) ) ).

% span.simps(2)
thf(fact_603_append_Oright__neutral,axiom,
    ! [A: list_term_a_b] :
      ( ( append_term_a_b @ A @ nil_term_a_b )
      = A ) ).

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

% append.right_neutral
thf(fact_605_append__Nil2,axiom,
    ! [Xs: list_term_a_b] :
      ( ( append_term_a_b @ Xs @ nil_term_a_b )
      = Xs ) ).

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

% append_Nil2
thf(fact_607_append__self__conv,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ( append_term_a_b @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_term_a_b ) ) ).

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

% append_self_conv
thf(fact_609_self__append__conv,axiom,
    ! [Y: list_term_a_b,Ys: list_term_a_b] :
      ( ( Y
        = ( append_term_a_b @ Y @ Ys ) )
      = ( Ys = nil_term_a_b ) ) ).

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

% self_append_conv
thf(fact_611_append__self__conv2,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ( append_term_a_b @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_term_a_b ) ) ).

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

% append_self_conv2
thf(fact_613_self__append__conv2,axiom,
    ! [Y: list_term_a_b,Xs: list_term_a_b] :
      ( ( Y
        = ( append_term_a_b @ Xs @ Y ) )
      = ( Xs = nil_term_a_b ) ) ).

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

% self_append_conv2
thf(fact_615_Nil__is__append__conv,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( nil_term_a_b
        = ( append_term_a_b @ Xs @ Ys ) )
      = ( ( Xs = nil_term_a_b )
        & ( Ys = nil_term_a_b ) ) ) ).

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

% Nil_is_append_conv
thf(fact_617_append__is__Nil__conv,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ( append_term_a_b @ Xs @ Ys )
        = nil_term_a_b )
      = ( ( Xs = nil_term_a_b )
        & ( Ys = nil_term_a_b ) ) ) ).

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

% append_is_Nil_conv
thf(fact_619_replace__subterm__at__itself,axiom,
    ! [S: term_a_b,P: list_nat,Q5: list_nat,T: term_a_b] :
      ( ( term_r6860082780075436317at_a_b @ S @ P @ ( term_r6860082780075436317at_a_b @ ( term_subt_at_a_b @ S @ P ) @ Q5 @ T ) )
      = ( term_r6860082780075436317at_a_b @ S @ ( append_nat @ P @ Q5 ) @ T ) ) ).

% replace_subterm_at_itself
thf(fact_620_append1__eq__conv,axiom,
    ! [Xs: list_term_a_b,X: term_a_b,Ys: list_term_a_b,Y: term_a_b] :
      ( ( ( append_term_a_b @ Xs @ ( cons_term_a_b @ X @ nil_term_a_b ) )
        = ( append_term_a_b @ Ys @ ( cons_term_a_b @ Y @ nil_term_a_b ) ) )
      = ( ( Xs = Ys )
        & ( X = Y ) ) ) ).

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

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

% append_Cons
thf(fact_623_Cons__eq__appendI,axiom,
    ! [X: nat,Xs1: list_nat,Ys: list_nat,Xs: list_nat,Zs2: list_nat] :
      ( ( ( cons_nat @ X @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_nat @ Xs1 @ Zs2 ) )
       => ( ( cons_nat @ X @ Xs )
          = ( append_nat @ Ys @ Zs2 ) ) ) ) ).

% Cons_eq_appendI
thf(fact_624_append__Nil,axiom,
    ! [Ys: list_term_a_b] :
      ( ( append_term_a_b @ nil_term_a_b @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_625_append__Nil,axiom,
    ! [Ys: list_nat] :
      ( ( append_nat @ nil_nat @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_626_append_Oleft__neutral,axiom,
    ! [A: list_term_a_b] :
      ( ( append_term_a_b @ nil_term_a_b @ A )
      = A ) ).

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

% append.left_neutral
thf(fact_628_eq__Nil__appendI,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_term_a_b @ nil_term_a_b @ Ys ) ) ) ).

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

% eq_Nil_appendI
thf(fact_630_listrel1I,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs: list_nat,Us: list_nat,Vs: list_nat,Ys: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
     => ( ( Xs
          = ( append_nat @ Us @ ( cons_nat @ X @ Vs ) ) )
       => ( ( Ys
            = ( append_nat @ Us @ ( cons_nat @ Y @ Vs ) ) )
         => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% listrel1I
thf(fact_631_listrel1I,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b,Us: list_term_a_b,Vs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ R )
     => ( ( Xs
          = ( append_term_a_b @ Us @ ( cons_term_a_b @ X @ Vs ) ) )
       => ( ( Ys
            = ( append_term_a_b @ Us @ ( cons_term_a_b @ Y @ Vs ) ) )
         => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( listrel1_term_a_b @ R ) ) ) ) ) ).

% listrel1I
thf(fact_632_listrel1E,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
     => ~ ! [X3: nat,Y3: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R )
           => ! [Us2: list_nat,Vs2: list_nat] :
                ( ( Xs
                  = ( append_nat @ Us2 @ ( cons_nat @ X3 @ Vs2 ) ) )
               => ( Ys
                 != ( append_nat @ Us2 @ ( cons_nat @ Y3 @ Vs2 ) ) ) ) ) ) ).

% listrel1E
thf(fact_633_listrel1E,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( listrel1_term_a_b @ R ) )
     => ~ ! [X3: term_a_b,Y3: term_a_b] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ R )
           => ! [Us2: list_term_a_b,Vs2: list_term_a_b] :
                ( ( Xs
                  = ( append_term_a_b @ Us2 @ ( cons_term_a_b @ X3 @ Vs2 ) ) )
               => ( Ys
                 != ( append_term_a_b @ Us2 @ ( cons_term_a_b @ Y3 @ Vs2 ) ) ) ) ) ) ).

% listrel1E
thf(fact_634_snoc__listrel1__snoc__iff,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat,Y: nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) @ ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) ) @ ( listrel1_nat @ R ) )
      = ( ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
          & ( X = Y ) )
        | ( ( Xs = Ys )
          & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R ) ) ) ) ).

% snoc_listrel1_snoc_iff
thf(fact_635_snoc__listrel1__snoc__iff,axiom,
    ! [Xs: list_term_a_b,X: term_a_b,Ys: list_term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( append_term_a_b @ Xs @ ( cons_term_a_b @ X @ nil_term_a_b ) ) @ ( append_term_a_b @ Ys @ ( cons_term_a_b @ Y @ nil_term_a_b ) ) ) @ ( listrel1_term_a_b @ R ) )
      = ( ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( listrel1_term_a_b @ R ) )
          & ( X = Y ) )
        | ( ( Xs = Ys )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ R ) ) ) ) ).

% snoc_listrel1_snoc_iff
thf(fact_636_rev__nonempty__induct,axiom,
    ! [Xs: list_term_a_b,P4: list_term_a_b > $o] :
      ( ( Xs != nil_term_a_b )
     => ( ! [X3: term_a_b] : ( P4 @ ( cons_term_a_b @ X3 @ nil_term_a_b ) )
       => ( ! [X3: term_a_b,Xs3: list_term_a_b] :
              ( ( Xs3 != nil_term_a_b )
             => ( ( P4 @ Xs3 )
               => ( P4 @ ( append_term_a_b @ Xs3 @ ( cons_term_a_b @ X3 @ nil_term_a_b ) ) ) ) )
         => ( P4 @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_637_rev__nonempty__induct,axiom,
    ! [Xs: list_nat,P4: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X3: nat] : ( P4 @ ( cons_nat @ X3 @ nil_nat ) )
       => ( ! [X3: nat,Xs3: list_nat] :
              ( ( Xs3 != nil_nat )
             => ( ( P4 @ Xs3 )
               => ( P4 @ ( append_nat @ Xs3 @ ( cons_nat @ X3 @ nil_nat ) ) ) ) )
         => ( P4 @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_638_append__eq__Cons__conv,axiom,
    ! [Ys: list_term_a_b,Zs2: list_term_a_b,X: term_a_b,Xs: list_term_a_b] :
      ( ( ( append_term_a_b @ Ys @ Zs2 )
        = ( cons_term_a_b @ X @ Xs ) )
      = ( ( ( Ys = nil_term_a_b )
          & ( Zs2
            = ( cons_term_a_b @ X @ Xs ) ) )
        | ? [Ys4: list_term_a_b] :
            ( ( Ys
              = ( cons_term_a_b @ X @ Ys4 ) )
            & ( ( append_term_a_b @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

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

% append_eq_Cons_conv
thf(fact_640_Cons__eq__append__conv,axiom,
    ! [X: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b,Zs2: list_term_a_b] :
      ( ( ( cons_term_a_b @ X @ Xs )
        = ( append_term_a_b @ Ys @ Zs2 ) )
      = ( ( ( Ys = nil_term_a_b )
          & ( ( cons_term_a_b @ X @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_term_a_b] :
            ( ( ( cons_term_a_b @ X @ Ys4 )
              = Ys )
            & ( Xs
              = ( append_term_a_b @ Ys4 @ Zs2 ) ) ) ) ) ).

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

% Cons_eq_append_conv
thf(fact_642_rev__exhaust,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ~ ! [Ys2: list_term_a_b,Y3: term_a_b] :
            ( Xs
           != ( append_term_a_b @ Ys2 @ ( cons_term_a_b @ Y3 @ nil_term_a_b ) ) ) ) ).

% rev_exhaust
thf(fact_643_rev__exhaust,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ~ ! [Ys2: list_nat,Y3: nat] :
            ( Xs
           != ( append_nat @ Ys2 @ ( cons_nat @ Y3 @ nil_nat ) ) ) ) ).

% rev_exhaust
thf(fact_644_rev__induct,axiom,
    ! [P4: list_term_a_b > $o,Xs: list_term_a_b] :
      ( ( P4 @ nil_term_a_b )
     => ( ! [X3: term_a_b,Xs3: list_term_a_b] :
            ( ( P4 @ Xs3 )
           => ( P4 @ ( append_term_a_b @ Xs3 @ ( cons_term_a_b @ X3 @ nil_term_a_b ) ) ) )
       => ( P4 @ Xs ) ) ) ).

% rev_induct
thf(fact_645_rev__induct,axiom,
    ! [P4: list_nat > $o,Xs: list_nat] :
      ( ( P4 @ nil_nat )
     => ( ! [X3: nat,Xs3: list_nat] :
            ( ( P4 @ Xs3 )
           => ( P4 @ ( append_nat @ Xs3 @ ( cons_nat @ X3 @ nil_nat ) ) ) )
       => ( P4 @ Xs ) ) ) ).

% rev_induct
thf(fact_646_split__list,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ? [Ys2: list_list_nat,Zs: list_list_nat] :
          ( Xs
          = ( append_list_nat @ Ys2 @ ( cons_list_nat @ X @ Zs ) ) ) ) ).

% split_list
thf(fact_647_split__list,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ? [Ys2: list_P8875379029341186191rm_a_b,Zs: list_P8875379029341186191rm_a_b] :
          ( Xs
          = ( append1152621114427393060rm_a_b @ Ys2 @ ( cons_P3536305108106557631rm_a_b @ X @ Zs ) ) ) ) ).

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

% split_list
thf(fact_649_split__list__last,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ? [Ys2: list_list_nat,Zs: list_list_nat] :
          ( ( Xs
            = ( append_list_nat @ Ys2 @ ( cons_list_nat @ X @ Zs ) ) )
          & ~ ( member_list_nat2 @ X @ ( set_list_nat2 @ Zs ) ) ) ) ).

% split_list_last
thf(fact_650_split__list__last,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ? [Ys2: list_P8875379029341186191rm_a_b,Zs: list_P8875379029341186191rm_a_b] :
          ( ( Xs
            = ( append1152621114427393060rm_a_b @ Ys2 @ ( cons_P3536305108106557631rm_a_b @ X @ Zs ) ) )
          & ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Zs ) ) ) ) ).

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

% split_list_last
thf(fact_652_split__list__prop,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ? [X5: nat] :
          ( ( member_nat2 @ X5 @ ( set_nat2 @ Xs ) )
          & ( P4 @ X5 ) )
     => ? [Ys2: list_nat,X3: nat] :
          ( ? [Zs: list_nat] :
              ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs ) ) )
          & ( P4 @ X3 ) ) ) ).

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

% split_list_first
thf(fact_654_split__list__first,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ? [Ys2: list_P8875379029341186191rm_a_b,Zs: list_P8875379029341186191rm_a_b] :
          ( ( Xs
            = ( append1152621114427393060rm_a_b @ Ys2 @ ( cons_P3536305108106557631rm_a_b @ X @ Zs ) ) )
          & ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Ys2 ) ) ) ) ).

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

% split_list_first
thf(fact_656_split__list__propE,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ? [X5: nat] :
          ( ( member_nat2 @ X5 @ ( set_nat2 @ Xs ) )
          & ( P4 @ X5 ) )
     => ~ ! [Ys2: list_nat,X3: nat] :
            ( ? [Zs: list_nat] :
                ( Xs
                = ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs ) ) )
           => ~ ( P4 @ X3 ) ) ) ).

% split_list_propE
thf(fact_657_append__Cons__eq__iff,axiom,
    ! [X: list_nat,Xs: list_list_nat,Ys: list_list_nat,Xs4: list_list_nat,Ys5: list_list_nat] :
      ( ~ ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ~ ( member_list_nat2 @ X @ ( set_list_nat2 @ Ys ) )
       => ( ( ( append_list_nat @ Xs @ ( cons_list_nat @ X @ Ys ) )
            = ( append_list_nat @ Xs4 @ ( cons_list_nat @ X @ Ys5 ) ) )
          = ( ( Xs = Xs4 )
            & ( Ys = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_658_append__Cons__eq__iff,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b,Ys: list_P8875379029341186191rm_a_b,Xs4: list_P8875379029341186191rm_a_b,Ys5: list_P8875379029341186191rm_a_b] :
      ( ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Ys ) )
       => ( ( ( append1152621114427393060rm_a_b @ Xs @ ( cons_P3536305108106557631rm_a_b @ X @ Ys ) )
            = ( append1152621114427393060rm_a_b @ Xs4 @ ( cons_P3536305108106557631rm_a_b @ X @ Ys5 ) ) )
          = ( ( Xs = Xs4 )
            & ( Ys = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_659_append__Cons__eq__iff,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat,Xs4: list_nat,Ys5: list_nat] :
      ( ~ ( member_nat2 @ X @ ( set_nat2 @ Xs ) )
     => ( ~ ( member_nat2 @ X @ ( set_nat2 @ Ys ) )
       => ( ( ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) )
            = ( append_nat @ Xs4 @ ( cons_nat @ X @ Ys5 ) ) )
          = ( ( Xs = Xs4 )
            & ( Ys = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_660_in__set__conv__decomp,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [Ys3: list_list_nat,Zs3: list_list_nat] :
            ( Xs
            = ( append_list_nat @ Ys3 @ ( cons_list_nat @ X @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_661_in__set__conv__decomp,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
      = ( ? [Ys3: list_P8875379029341186191rm_a_b,Zs3: list_P8875379029341186191rm_a_b] :
            ( Xs
            = ( append1152621114427393060rm_a_b @ Ys3 @ ( cons_P3536305108106557631rm_a_b @ X @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_662_in__set__conv__decomp,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( member_nat2 @ X @ ( set_nat2 @ Xs ) )
      = ( ? [Ys3: list_nat,Zs3: list_nat] :
            ( Xs
            = ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_663_split__list__last__prop,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ? [X5: nat] :
          ( ( member_nat2 @ X5 @ ( set_nat2 @ Xs ) )
          & ( P4 @ X5 ) )
     => ? [Ys2: list_nat,X3: nat,Zs: list_nat] :
          ( ( Xs
            = ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs ) ) )
          & ( P4 @ X3 )
          & ! [Xa3: nat] :
              ( ( member_nat2 @ Xa3 @ ( set_nat2 @ Zs ) )
             => ~ ( P4 @ Xa3 ) ) ) ) ).

% split_list_last_prop
thf(fact_664_split__list__first__prop,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ? [X5: nat] :
          ( ( member_nat2 @ X5 @ ( set_nat2 @ Xs ) )
          & ( P4 @ X5 ) )
     => ? [Ys2: list_nat,X3: nat] :
          ( ? [Zs: list_nat] :
              ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs ) ) )
          & ( P4 @ X3 )
          & ! [Xa3: nat] :
              ( ( member_nat2 @ Xa3 @ ( set_nat2 @ Ys2 ) )
             => ~ ( P4 @ Xa3 ) ) ) ) ).

% split_list_first_prop
thf(fact_665_split__list__last__propE,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ? [X5: nat] :
          ( ( member_nat2 @ X5 @ ( set_nat2 @ Xs ) )
          & ( P4 @ X5 ) )
     => ~ ! [Ys2: list_nat,X3: nat,Zs: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs ) ) )
           => ( ( P4 @ X3 )
             => ~ ! [Xa3: nat] :
                    ( ( member_nat2 @ Xa3 @ ( set_nat2 @ Zs ) )
                   => ~ ( P4 @ Xa3 ) ) ) ) ) ).

% split_list_last_propE
thf(fact_666_split__list__first__propE,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ? [X5: nat] :
          ( ( member_nat2 @ X5 @ ( set_nat2 @ Xs ) )
          & ( P4 @ X5 ) )
     => ~ ! [Ys2: list_nat,X3: nat] :
            ( ? [Zs: list_nat] :
                ( Xs
                = ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs ) ) )
           => ( ( P4 @ X3 )
             => ~ ! [Xa3: nat] :
                    ( ( member_nat2 @ Xa3 @ ( set_nat2 @ Ys2 ) )
                   => ~ ( P4 @ Xa3 ) ) ) ) ) ).

% split_list_first_propE
thf(fact_667_in__set__conv__decomp__last,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [Ys3: list_list_nat,Zs3: list_list_nat] :
            ( ( Xs
              = ( append_list_nat @ Ys3 @ ( cons_list_nat @ X @ Zs3 ) ) )
            & ~ ( member_list_nat2 @ X @ ( set_list_nat2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_668_in__set__conv__decomp__last,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
      = ( ? [Ys3: list_P8875379029341186191rm_a_b,Zs3: list_P8875379029341186191rm_a_b] :
            ( ( Xs
              = ( append1152621114427393060rm_a_b @ Ys3 @ ( cons_P3536305108106557631rm_a_b @ X @ Zs3 ) ) )
            & ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Zs3 ) ) ) ) ) ).

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

% in_set_conv_decomp_last
thf(fact_670_in__set__conv__decomp__first,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [Ys3: list_list_nat,Zs3: list_list_nat] :
            ( ( Xs
              = ( append_list_nat @ Ys3 @ ( cons_list_nat @ X @ Zs3 ) ) )
            & ~ ( member_list_nat2 @ X @ ( set_list_nat2 @ Ys3 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_671_in__set__conv__decomp__first,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
      = ( ? [Ys3: list_P8875379029341186191rm_a_b,Zs3: list_P8875379029341186191rm_a_b] :
            ( ( Xs
              = ( append1152621114427393060rm_a_b @ Ys3 @ ( cons_P3536305108106557631rm_a_b @ X @ Zs3 ) ) )
            & ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Ys3 ) ) ) ) ) ).

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

% in_set_conv_decomp_first
thf(fact_673_split__list__last__prop__iff,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ( ? [X4: nat] :
            ( ( member_nat2 @ X4 @ ( set_nat2 @ Xs ) )
            & ( P4 @ X4 ) ) )
      = ( ? [Ys3: list_nat,X4: nat,Zs3: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
            & ( P4 @ X4 )
            & ! [Y5: nat] :
                ( ( member_nat2 @ Y5 @ ( set_nat2 @ Zs3 ) )
               => ~ ( P4 @ Y5 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_674_split__list__first__prop__iff,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ( ? [X4: nat] :
            ( ( member_nat2 @ X4 @ ( set_nat2 @ Xs ) )
            & ( P4 @ X4 ) ) )
      = ( ? [Ys3: list_nat,X4: nat] :
            ( ? [Zs3: list_nat] :
                ( Xs
                = ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs3 ) ) )
            & ( P4 @ X4 )
            & ! [Y5: nat] :
                ( ( member_nat2 @ Y5 @ ( set_nat2 @ Ys3 ) )
               => ~ ( P4 @ Y5 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_675_listrel1I2,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat,X: nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
     => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ X @ Ys ) ) @ ( listrel1_nat @ R ) ) ) ).

% listrel1I2
thf(fact_676_not__listrel1__Nil,axiom,
    ! [Xs: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ nil_term_a_b ) @ ( listrel1_term_a_b @ R ) ) ).

% not_listrel1_Nil
thf(fact_677_not__listrel1__Nil,axiom,
    ! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
      ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ nil_nat ) @ ( listrel1_nat @ R ) ) ).

% not_listrel1_Nil
thf(fact_678_not__Nil__listrel1,axiom,
    ! [Xs: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Xs ) @ ( listrel1_term_a_b @ R ) ) ).

% not_Nil_listrel1
thf(fact_679_not__Nil__listrel1,axiom,
    ! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
      ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Xs ) @ ( listrel1_nat @ R ) ) ).

% not_Nil_listrel1
thf(fact_680_transpose_Osimps_I2_J,axiom,
    ! [Xss2: list_list_term_a_b] :
      ( ( transpose_term_a_b @ ( cons_list_term_a_b @ nil_term_a_b @ Xss2 ) )
      = ( transpose_term_a_b @ Xss2 ) ) ).

% transpose.simps(2)
thf(fact_681_transpose_Osimps_I2_J,axiom,
    ! [Xss2: list_list_nat] :
      ( ( transpose_nat @ ( cons_list_nat @ nil_nat @ Xss2 ) )
      = ( transpose_nat @ Xss2 ) ) ).

% transpose.simps(2)
thf(fact_682_lenlex__irreflexive,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b] :
      ( ! [X3: term_a_b] :
          ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ X3 ) @ R )
     => ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Xs ) @ ( lenlex_term_a_b @ R ) ) ) ).

% lenlex_irreflexive
thf(fact_683_Nil__lenlex__iff2,axiom,
    ! [Ns: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Ns @ nil_term_a_b ) @ ( lenlex_term_a_b @ R ) ) ).

% Nil_lenlex_iff2
thf(fact_684_Nil__lenlex__iff2,axiom,
    ! [Ns: list_nat,R: set_Pr1261947904930325089at_nat] :
      ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ns @ nil_nat ) @ ( lenlex_nat @ R ) ) ).

% Nil_lenlex_iff2
thf(fact_685_lexord__append__leftD,axiom,
    ! [X: list_term_a_b,U: list_term_a_b,V2: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( append_term_a_b @ X @ U ) @ ( append_term_a_b @ X @ V2 ) ) @ ( lexord_term_a_b @ R ) )
     => ( ! [A4: term_a_b] :
            ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ A4 ) @ R )
       => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ U @ V2 ) @ ( lexord_term_a_b @ R ) ) ) ) ).

% lexord_append_leftD
thf(fact_686_lexord__append__rightI,axiom,
    ! [Y: list_nat,X: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ? [B5: nat,Z4: list_nat] :
          ( Y
          = ( cons_nat @ B5 @ Z4 ) )
     => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ X @ ( append_nat @ X @ Y ) ) @ ( lexord_nat @ R ) ) ) ).

% lexord_append_rightI
thf(fact_687_Cons__listrel1E2,axiom,
    ! [Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
     => ( ! [X3: nat] :
            ( ( Xs
              = ( cons_nat @ X3 @ Ys ) )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y ) @ R ) )
       => ~ ! [Zs: list_nat] :
              ( ( Xs
                = ( cons_nat @ Y @ Zs ) )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Zs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1E2
thf(fact_688_Cons__listrel1E2,axiom,
    ! [Xs: list_term_a_b,Y: term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ ( cons_term_a_b @ Y @ Ys ) ) @ ( listrel1_term_a_b @ R ) )
     => ( ! [X3: term_a_b] :
            ( ( Xs
              = ( cons_term_a_b @ X3 @ Ys ) )
           => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y ) @ R ) )
       => ~ ! [Zs: list_term_a_b] :
              ( ( Xs
                = ( cons_term_a_b @ Y @ Zs ) )
             => ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Zs @ Ys ) @ ( listrel1_term_a_b @ R ) ) ) ) ) ).

% Cons_listrel1E2
thf(fact_689_Cons__listrel1E1,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ Ys ) @ ( listrel1_nat @ R ) )
     => ( ! [Y3: nat] :
            ( ( Ys
              = ( cons_nat @ Y3 @ Xs ) )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y3 ) @ R ) )
       => ~ ! [Zs: list_nat] :
              ( ( Ys
                = ( cons_nat @ X @ Zs ) )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Zs ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1E1
thf(fact_690_Cons__listrel1E1,axiom,
    ! [X: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ Ys ) @ ( listrel1_term_a_b @ R ) )
     => ( ! [Y3: term_a_b] :
            ( ( Ys
              = ( cons_term_a_b @ Y3 @ Xs ) )
           => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y3 ) @ R ) )
       => ~ ! [Zs: list_term_a_b] :
              ( ( Ys
                = ( cons_term_a_b @ X @ Zs ) )
             => ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Zs ) @ ( listrel1_term_a_b @ R ) ) ) ) ) ).

% Cons_listrel1E1
thf(fact_691_listrel1I1,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
     => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Xs ) ) @ ( listrel1_nat @ R ) ) ) ).

% listrel1I1
thf(fact_692_listrel1I1,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ R )
     => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ ( cons_term_a_b @ Y @ Xs ) ) @ ( listrel1_term_a_b @ R ) ) ) ).

% listrel1I1
thf(fact_693_butlast__snoc,axiom,
    ! [Xs: list_term_a_b,X: term_a_b] :
      ( ( butlast_term_a_b @ ( append_term_a_b @ Xs @ ( cons_term_a_b @ X @ nil_term_a_b ) ) )
      = Xs ) ).

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

% butlast_snoc
thf(fact_695_last__snoc,axiom,
    ! [Xs: list_term_a_b,X: term_a_b] :
      ( ( last_term_a_b @ ( append_term_a_b @ Xs @ ( cons_term_a_b @ X @ nil_term_a_b ) ) )
      = X ) ).

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

% last_snoc
thf(fact_697_lex__append__left__iff,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b,Ys: list_term_a_b,Zs2: list_term_a_b] :
      ( ! [X3: term_a_b] :
          ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ X3 ) @ R )
     => ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( append_term_a_b @ Xs @ Ys ) @ ( append_term_a_b @ Xs @ Zs2 ) ) @ ( lex_term_a_b @ R ) )
        = ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Ys @ Zs2 ) @ ( lex_term_a_b @ R ) ) ) ) ).

% lex_append_left_iff
thf(fact_698_lex__append__leftD,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b,Ys: list_term_a_b,Zs2: list_term_a_b] :
      ( ! [X3: term_a_b] :
          ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ X3 ) @ R )
     => ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( append_term_a_b @ Xs @ Ys ) @ ( append_term_a_b @ Xs @ Zs2 ) ) @ ( lex_term_a_b @ R ) )
       => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Ys @ Zs2 ) @ ( lex_term_a_b @ R ) ) ) ) ).

% lex_append_leftD
thf(fact_699_rotate1_Osimps_I2_J,axiom,
    ! [X: term_a_b,Xs: list_term_a_b] :
      ( ( rotate1_term_a_b @ ( cons_term_a_b @ X @ Xs ) )
      = ( append_term_a_b @ Xs @ ( cons_term_a_b @ X @ nil_term_a_b ) ) ) ).

% rotate1.simps(2)
thf(fact_700_rotate1_Osimps_I2_J,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( rotate1_nat @ ( cons_nat @ X @ Xs ) )
      = ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) ) ).

% rotate1.simps(2)
thf(fact_701_rotate1__is__Nil__conv,axiom,
    ! [Xs: list_term_a_b] :
      ( ( ( rotate1_term_a_b @ Xs )
        = nil_term_a_b )
      = ( Xs = nil_term_a_b ) ) ).

% rotate1_is_Nil_conv
thf(fact_702_rotate1__is__Nil__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( rotate1_nat @ Xs )
        = nil_nat )
      = ( Xs = nil_nat ) ) ).

% rotate1_is_Nil_conv
thf(fact_703_last__appendL,axiom,
    ! [Ys: list_term_a_b,Xs: list_term_a_b] :
      ( ( Ys = nil_term_a_b )
     => ( ( last_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
        = ( last_term_a_b @ Xs ) ) ) ).

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

% last_appendL
thf(fact_705_last__appendR,axiom,
    ! [Ys: list_term_a_b,Xs: list_term_a_b] :
      ( ( Ys != nil_term_a_b )
     => ( ( last_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
        = ( last_term_a_b @ Ys ) ) ) ).

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

% last_appendR
thf(fact_707_append__butlast__last__id,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( append_term_a_b @ ( butlast_term_a_b @ Xs ) @ ( cons_term_a_b @ ( last_term_a_b @ Xs ) @ nil_term_a_b ) )
        = Xs ) ) ).

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

% append_butlast_last_id
thf(fact_709_butlast_Osimps_I1_J,axiom,
    ( ( butlast_term_a_b @ nil_term_a_b )
    = nil_term_a_b ) ).

% butlast.simps(1)
thf(fact_710_butlast_Osimps_I1_J,axiom,
    ( ( butlast_nat @ nil_nat )
    = nil_nat ) ).

% butlast.simps(1)
thf(fact_711_in__set__butlastD,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ ( butlast_list_nat @ Xs ) ) )
     => ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) ) ) ).

% in_set_butlastD
thf(fact_712_in__set__butlastD,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( butlas6835517817679325275rm_a_b @ Xs ) ) )
     => ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) ) ) ).

% in_set_butlastD
thf(fact_713_rotate1_Osimps_I1_J,axiom,
    ( ( rotate1_term_a_b @ nil_term_a_b )
    = nil_term_a_b ) ).

% rotate1.simps(1)
thf(fact_714_rotate1_Osimps_I1_J,axiom,
    ( ( rotate1_nat @ nil_nat )
    = nil_nat ) ).

% rotate1.simps(1)
thf(fact_715_snoc__eq__iff__butlast,axiom,
    ! [Xs: list_term_a_b,X: term_a_b,Ys: list_term_a_b] :
      ( ( ( append_term_a_b @ Xs @ ( cons_term_a_b @ X @ nil_term_a_b ) )
        = Ys )
      = ( ( Ys != nil_term_a_b )
        & ( ( butlast_term_a_b @ Ys )
          = Xs )
        & ( ( last_term_a_b @ Ys )
          = X ) ) ) ).

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

% snoc_eq_iff_butlast
thf(fact_717_last_Osimps,axiom,
    ! [Xs: list_term_a_b,X: term_a_b] :
      ( ( ( Xs = nil_term_a_b )
       => ( ( last_term_a_b @ ( cons_term_a_b @ X @ Xs ) )
          = X ) )
      & ( ( Xs != nil_term_a_b )
       => ( ( last_term_a_b @ ( cons_term_a_b @ X @ Xs ) )
          = ( last_term_a_b @ Xs ) ) ) ) ).

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

% last.simps
thf(fact_719_last__ConsL,axiom,
    ! [Xs: list_term_a_b,X: term_a_b] :
      ( ( Xs = nil_term_a_b )
     => ( ( last_term_a_b @ ( cons_term_a_b @ X @ Xs ) )
        = X ) ) ).

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

% last_ConsL
thf(fact_721_last__ConsR,axiom,
    ! [Xs: list_term_a_b,X: term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( last_term_a_b @ ( cons_term_a_b @ X @ Xs ) )
        = ( last_term_a_b @ Xs ) ) ) ).

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

% last_ConsR
thf(fact_723_last__in__set,axiom,
    ! [As2: list_list_nat] :
      ( ( As2 != nil_list_nat )
     => ( member_list_nat2 @ ( last_list_nat @ As2 ) @ ( set_list_nat2 @ As2 ) ) ) ).

% last_in_set
thf(fact_724_last__in__set,axiom,
    ! [As2: list_P8875379029341186191rm_a_b] :
      ( ( As2 != nil_Pr6942174756412032271rm_a_b )
     => ( member5869715511025134514rm_a_b @ ( last_P6746431593072707880rm_a_b @ As2 ) @ ( set_Pr2370880052973118494rm_a_b @ As2 ) ) ) ).

% last_in_set
thf(fact_725_last__in__set,axiom,
    ! [As2: list_term_a_b] :
      ( ( As2 != nil_term_a_b )
     => ( member_term_a_b2 @ ( last_term_a_b @ As2 ) @ ( set_term_a_b2 @ As2 ) ) ) ).

% last_in_set
thf(fact_726_last__in__set,axiom,
    ! [As2: list_nat] :
      ( ( As2 != nil_nat )
     => ( member_nat2 @ ( last_nat @ As2 ) @ ( set_nat2 @ As2 ) ) ) ).

% last_in_set
thf(fact_727_last__append,axiom,
    ! [Ys: list_term_a_b,Xs: list_term_a_b] :
      ( ( ( Ys = nil_term_a_b )
       => ( ( last_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( last_term_a_b @ Xs ) ) )
      & ( ( Ys != nil_term_a_b )
       => ( ( last_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( last_term_a_b @ Ys ) ) ) ) ).

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

% last_append
thf(fact_729_longest__common__suffix,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
    ? [Ss3: list_term_a_b,Xs5: list_term_a_b,Ys6: list_term_a_b] :
      ( ( Xs
        = ( append_term_a_b @ Xs5 @ Ss3 ) )
      & ( Ys
        = ( append_term_a_b @ Ys6 @ Ss3 ) )
      & ( ( Xs5 = nil_term_a_b )
        | ( Ys6 = nil_term_a_b )
        | ( ( last_term_a_b @ Xs5 )
         != ( last_term_a_b @ Ys6 ) ) ) ) ).

% longest_common_suffix
thf(fact_730_longest__common__suffix,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
    ? [Ss3: list_nat,Xs5: list_nat,Ys6: list_nat] :
      ( ( Xs
        = ( append_nat @ Xs5 @ Ss3 ) )
      & ( Ys
        = ( append_nat @ Ys6 @ Ss3 ) )
      & ( ( Xs5 = nil_nat )
        | ( Ys6 = nil_nat )
        | ( ( last_nat @ Xs5 )
         != ( last_nat @ Ys6 ) ) ) ) ).

% longest_common_suffix
thf(fact_731_butlast_Osimps_I2_J,axiom,
    ! [Xs: list_term_a_b,X: term_a_b] :
      ( ( ( Xs = nil_term_a_b )
       => ( ( butlast_term_a_b @ ( cons_term_a_b @ X @ Xs ) )
          = nil_term_a_b ) )
      & ( ( Xs != nil_term_a_b )
       => ( ( butlast_term_a_b @ ( cons_term_a_b @ X @ Xs ) )
          = ( cons_term_a_b @ X @ ( butlast_term_a_b @ Xs ) ) ) ) ) ).

% butlast.simps(2)
thf(fact_732_butlast_Osimps_I2_J,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( ( Xs = nil_nat )
       => ( ( butlast_nat @ ( cons_nat @ X @ Xs ) )
          = nil_nat ) )
      & ( ( Xs != nil_nat )
       => ( ( butlast_nat @ ( cons_nat @ X @ Xs ) )
          = ( cons_nat @ X @ ( butlast_nat @ Xs ) ) ) ) ) ).

% butlast.simps(2)
thf(fact_733_butlast__append,axiom,
    ! [Ys: list_term_a_b,Xs: list_term_a_b] :
      ( ( ( Ys = nil_term_a_b )
       => ( ( butlast_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( butlast_term_a_b @ Xs ) ) )
      & ( ( Ys != nil_term_a_b )
       => ( ( butlast_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( append_term_a_b @ Xs @ ( butlast_term_a_b @ Ys ) ) ) ) ) ).

% butlast_append
thf(fact_734_butlast__append,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( ( Ys = nil_nat )
       => ( ( butlast_nat @ ( append_nat @ Xs @ Ys ) )
          = ( butlast_nat @ Xs ) ) )
      & ( ( Ys != nil_nat )
       => ( ( butlast_nat @ ( append_nat @ Xs @ Ys ) )
          = ( append_nat @ Xs @ ( butlast_nat @ Ys ) ) ) ) ) ).

% butlast_append
thf(fact_735_in__set__butlast__appendI,axiom,
    ! [X: list_nat,Xs: list_list_nat,Ys: list_list_nat] :
      ( ( ( member_list_nat2 @ X @ ( set_list_nat2 @ ( butlast_list_nat @ Xs ) ) )
        | ( member_list_nat2 @ X @ ( set_list_nat2 @ ( butlast_list_nat @ Ys ) ) ) )
     => ( member_list_nat2 @ X @ ( set_list_nat2 @ ( butlast_list_nat @ ( append_list_nat @ Xs @ Ys ) ) ) ) ) ).

% in_set_butlast_appendI
thf(fact_736_in__set__butlast__appendI,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b,Ys: list_P8875379029341186191rm_a_b] :
      ( ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( butlas6835517817679325275rm_a_b @ Xs ) ) )
        | ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( butlas6835517817679325275rm_a_b @ Ys ) ) ) )
     => ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( butlas6835517817679325275rm_a_b @ ( append1152621114427393060rm_a_b @ Xs @ Ys ) ) ) ) ) ).

% in_set_butlast_appendI
thf(fact_737_maps__simps_I2_J,axiom,
    ! [F: term_a_b > list_term_a_b] :
      ( ( maps_t888753856850818283rm_a_b @ F @ nil_term_a_b )
      = nil_term_a_b ) ).

% maps_simps(2)
thf(fact_738_maps__simps_I2_J,axiom,
    ! [F: term_a_b > list_nat] :
      ( ( maps_term_a_b_nat @ F @ nil_term_a_b )
      = nil_nat ) ).

% maps_simps(2)
thf(fact_739_maps__simps_I2_J,axiom,
    ! [F: nat > list_term_a_b] :
      ( ( maps_nat_term_a_b @ F @ nil_nat )
      = nil_term_a_b ) ).

% maps_simps(2)
thf(fact_740_maps__simps_I2_J,axiom,
    ! [F: nat > list_nat] :
      ( ( maps_nat_nat @ F @ nil_nat )
      = nil_nat ) ).

% maps_simps(2)
thf(fact_741_Nil__notin__lex,axiom,
    ! [Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Ys ) @ ( lex_term_a_b @ R ) ) ).

% Nil_notin_lex
thf(fact_742_Nil__notin__lex,axiom,
    ! [Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Ys ) @ ( lex_nat @ R ) ) ).

% Nil_notin_lex
thf(fact_743_Nil2__notin__lex,axiom,
    ! [Xs: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ~ ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ nil_term_a_b ) @ ( lex_term_a_b @ R ) ) ).

% Nil2_notin_lex
thf(fact_744_Nil2__notin__lex,axiom,
    ! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
      ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ nil_nat ) @ ( lex_nat @ R ) ) ).

% Nil2_notin_lex
thf(fact_745_Cons__in__lex,axiom,
    ! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( lex_nat @ R ) )
      = ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
          & ( ( size_size_list_nat @ Xs )
            = ( size_size_list_nat @ Ys ) ) )
        | ( ( X = Y )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( lex_nat @ R ) ) ) ) ) ).

% Cons_in_lex
thf(fact_746_Cons__in__lex,axiom,
    ! [X: term_a_b,Xs: list_term_a_b,Y: term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ ( cons_term_a_b @ Y @ Ys ) ) @ ( lex_term_a_b @ R ) )
      = ( ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ R )
          & ( ( size_s8906293707977694520rm_a_b @ Xs )
            = ( size_s8906293707977694520rm_a_b @ Ys ) ) )
        | ( ( X = Y )
          & ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( lex_term_a_b @ R ) ) ) ) ) ).

% Cons_in_lex
thf(fact_747_concat__eq__append__conv,axiom,
    ! [Xss2: list_list_term_a_b,Ys: list_term_a_b,Zs2: list_term_a_b] :
      ( ( ( concat_term_a_b @ Xss2 )
        = ( append_term_a_b @ Ys @ Zs2 ) )
      = ( ( ( Xss2 = nil_list_term_a_b )
         => ( ( Ys = nil_term_a_b )
            & ( Zs2 = nil_term_a_b ) ) )
        & ( ( Xss2 != nil_list_term_a_b )
         => ? [Xss1: list_list_term_a_b,Xs2: list_term_a_b,Xs6: list_term_a_b,Xss22: list_list_term_a_b] :
              ( ( Xss2
                = ( append_list_term_a_b @ Xss1 @ ( cons_list_term_a_b @ ( append_term_a_b @ Xs2 @ Xs6 ) @ Xss22 ) ) )
              & ( Ys
                = ( append_term_a_b @ ( concat_term_a_b @ Xss1 ) @ Xs2 ) )
              & ( Zs2
                = ( append_term_a_b @ Xs6 @ ( concat_term_a_b @ Xss22 ) ) ) ) ) ) ) ).

% concat_eq_append_conv
thf(fact_748_concat__eq__append__conv,axiom,
    ! [Xss2: list_list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = ( append_nat @ Ys @ Zs2 ) )
      = ( ( ( Xss2 = nil_list_nat )
         => ( ( Ys = nil_nat )
            & ( Zs2 = nil_nat ) ) )
        & ( ( Xss2 != nil_list_nat )
         => ? [Xss1: list_list_nat,Xs2: list_nat,Xs6: list_nat,Xss22: list_list_nat] :
              ( ( Xss2
                = ( append_list_nat @ Xss1 @ ( cons_list_nat @ ( append_nat @ Xs2 @ Xs6 ) @ Xss22 ) ) )
              & ( Ys
                = ( append_nat @ ( concat_nat @ Xss1 ) @ Xs2 ) )
              & ( Zs2
                = ( append_nat @ Xs6 @ ( concat_nat @ Xss22 ) ) ) ) ) ) ) ).

% concat_eq_append_conv
thf(fact_749_filter2_Osimps_I2_J,axiom,
    ! [P4: term_a_b > term_a_b > $o,V2: term_a_b,Va2: list_term_a_b] :
      ( ( missin5478484803207743724rm_a_b @ P4 @ ( cons_term_a_b @ V2 @ Va2 ) @ nil_term_a_b )
      = ( produc4885699992713594593rm_a_b @ nil_term_a_b @ nil_term_a_b ) ) ).

% filter2.simps(2)
thf(fact_750_filter2_Osimps_I2_J,axiom,
    ! [P4: term_a_b > nat > $o,V2: term_a_b,Va2: list_term_a_b] :
      ( ( missin8610218420629654184_b_nat @ P4 @ ( cons_term_a_b @ V2 @ Va2 ) @ nil_nat )
      = ( produc5386604813764302749st_nat @ nil_term_a_b @ nil_nat ) ) ).

% filter2.simps(2)
thf(fact_751_filter2_Osimps_I2_J,axiom,
    ! [P4: nat > term_a_b > $o,V2: nat,Va2: list_nat] :
      ( ( missin7648764293464682024rm_a_b @ P4 @ ( cons_nat @ V2 @ Va2 ) @ nil_term_a_b )
      = ( produc4336470666470712605rm_a_b @ nil_nat @ nil_term_a_b ) ) ).

% filter2.simps(2)
thf(fact_752_filter2_Osimps_I2_J,axiom,
    ! [P4: nat > nat > $o,V2: nat,Va2: list_nat] :
      ( ( missin7656342814955748836at_nat @ P4 @ ( cons_nat @ V2 @ Va2 ) @ nil_nat )
      = ( produc2694037385005941721st_nat @ nil_nat @ nil_nat ) ) ).

% filter2.simps(2)
thf(fact_753_list__inter_Opelims,axiom,
    ! [X: list_list_nat,Xa: list_list_nat,Y: list_list_nat] :
      ( ( ( missin6532874241183986279st_nat @ X @ Xa )
        = Y )
     => ( ( accp_P5780766562878364362st_nat @ missin517122817877786516st_nat @ ( produc7129799990162260089st_nat @ X @ Xa ) )
       => ( ( ( X = nil_list_nat )
           => ( ( Y = nil_list_nat )
             => ~ ( accp_P5780766562878364362st_nat @ missin517122817877786516st_nat @ ( produc7129799990162260089st_nat @ nil_list_nat @ Xa ) ) ) )
         => ~ ! [A4: list_nat,As: list_list_nat] :
                ( ( X
                  = ( cons_list_nat @ A4 @ As ) )
               => ( ( ( ( member_list_nat2 @ A4 @ ( set_list_nat2 @ Xa ) )
                     => ( Y
                        = ( cons_list_nat @ A4 @ ( missin6532874241183986279st_nat @ As @ Xa ) ) ) )
                    & ( ~ ( member_list_nat2 @ A4 @ ( set_list_nat2 @ Xa ) )
                     => ( Y
                        = ( missin6532874241183986279st_nat @ As @ Xa ) ) ) )
                 => ~ ( accp_P5780766562878364362st_nat @ missin517122817877786516st_nat @ ( produc7129799990162260089st_nat @ ( cons_list_nat @ A4 @ As ) @ Xa ) ) ) ) ) ) ) ).

% list_inter.pelims
thf(fact_754_list__inter_Opelims,axiom,
    ! [X: list_P8875379029341186191rm_a_b,Xa: list_P8875379029341186191rm_a_b,Y: list_P8875379029341186191rm_a_b] :
      ( ( ( missin3381965633867963714rm_a_b @ X @ Xa )
        = Y )
     => ( ( accp_P4702822494513790448rm_a_b @ missin5508247467832761941rm_a_b @ ( produc129289007660123479rm_a_b @ X @ Xa ) )
       => ( ( ( X = nil_Pr6942174756412032271rm_a_b )
           => ( ( Y = nil_Pr6942174756412032271rm_a_b )
             => ~ ( accp_P4702822494513790448rm_a_b @ missin5508247467832761941rm_a_b @ ( produc129289007660123479rm_a_b @ nil_Pr6942174756412032271rm_a_b @ Xa ) ) ) )
         => ~ ! [A4: produc357393685978478089rm_a_b,As: list_P8875379029341186191rm_a_b] :
                ( ( X
                  = ( cons_P3536305108106557631rm_a_b @ A4 @ As ) )
               => ( ( ( ( member5869715511025134514rm_a_b @ A4 @ ( set_Pr2370880052973118494rm_a_b @ Xa ) )
                     => ( Y
                        = ( cons_P3536305108106557631rm_a_b @ A4 @ ( missin3381965633867963714rm_a_b @ As @ Xa ) ) ) )
                    & ( ~ ( member5869715511025134514rm_a_b @ A4 @ ( set_Pr2370880052973118494rm_a_b @ Xa ) )
                     => ( Y
                        = ( missin3381965633867963714rm_a_b @ As @ Xa ) ) ) )
                 => ~ ( accp_P4702822494513790448rm_a_b @ missin5508247467832761941rm_a_b @ ( produc129289007660123479rm_a_b @ ( cons_P3536305108106557631rm_a_b @ A4 @ As ) @ Xa ) ) ) ) ) ) ) ).

% list_inter.pelims
thf(fact_755_list__inter_Opelims,axiom,
    ! [X: list_term_a_b,Xa: list_term_a_b,Y: list_term_a_b] :
      ( ( ( missin8990008842131906971rm_a_b @ X @ Xa )
        = Y )
     => ( ( accp_P1505376972976473906rm_a_b @ missin2974257418825707208rm_a_b @ ( produc4885699992713594593rm_a_b @ X @ Xa ) )
       => ( ( ( X = nil_term_a_b )
           => ( ( Y = nil_term_a_b )
             => ~ ( accp_P1505376972976473906rm_a_b @ missin2974257418825707208rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Xa ) ) ) )
         => ~ ! [A4: term_a_b,As: list_term_a_b] :
                ( ( X
                  = ( cons_term_a_b @ A4 @ As ) )
               => ( ( ( ( member_term_a_b2 @ A4 @ ( set_term_a_b2 @ Xa ) )
                     => ( Y
                        = ( cons_term_a_b @ A4 @ ( missin8990008842131906971rm_a_b @ As @ Xa ) ) ) )
                    & ( ~ ( member_term_a_b2 @ A4 @ ( set_term_a_b2 @ Xa ) )
                     => ( Y
                        = ( missin8990008842131906971rm_a_b @ As @ Xa ) ) ) )
                 => ~ ( accp_P1505376972976473906rm_a_b @ missin2974257418825707208rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ A4 @ As ) @ Xa ) ) ) ) ) ) ) ).

% list_inter.pelims
thf(fact_756_list__inter_Opelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( missin6377695591745783511er_nat @ X @ Xa )
        = Y )
     => ( ( accp_P8037286306265792042st_nat @ missin8053613324461657732el_nat @ ( produc2694037385005941721st_nat @ X @ Xa ) )
       => ( ( ( X = nil_nat )
           => ( ( Y = nil_nat )
             => ~ ( accp_P8037286306265792042st_nat @ missin8053613324461657732el_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Xa ) ) ) )
         => ~ ! [A4: nat,As: list_nat] :
                ( ( X
                  = ( cons_nat @ A4 @ As ) )
               => ( ( ( ( member_nat2 @ A4 @ ( set_nat2 @ Xa ) )
                     => ( Y
                        = ( cons_nat @ A4 @ ( missin6377695591745783511er_nat @ As @ Xa ) ) ) )
                    & ( ~ ( member_nat2 @ A4 @ ( set_nat2 @ Xa ) )
                     => ( Y
                        = ( missin6377695591745783511er_nat @ As @ Xa ) ) ) )
                 => ~ ( accp_P8037286306265792042st_nat @ missin8053613324461657732el_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ A4 @ As ) @ Xa ) ) ) ) ) ) ) ).

% list_inter.pelims
thf(fact_757_concat__eq__Nil__conv,axiom,
    ! [Xss2: list_list_term_a_b] :
      ( ( ( concat_term_a_b @ Xss2 )
        = nil_term_a_b )
      = ( ! [X4: list_term_a_b] :
            ( ( member_list_term_a_b2 @ X4 @ ( set_list_term_a_b2 @ Xss2 ) )
           => ( X4 = nil_term_a_b ) ) ) ) ).

% concat_eq_Nil_conv
thf(fact_758_concat__eq__Nil__conv,axiom,
    ! [Xss2: list_list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = nil_nat )
      = ( ! [X4: list_nat] :
            ( ( member_list_nat2 @ X4 @ ( set_list_nat2 @ Xss2 ) )
           => ( X4 = nil_nat ) ) ) ) ).

% concat_eq_Nil_conv
thf(fact_759_Nil__eq__concat__conv,axiom,
    ! [Xss2: list_list_term_a_b] :
      ( ( nil_term_a_b
        = ( concat_term_a_b @ Xss2 ) )
      = ( ! [X4: list_term_a_b] :
            ( ( member_list_term_a_b2 @ X4 @ ( set_list_term_a_b2 @ Xss2 ) )
           => ( X4 = nil_term_a_b ) ) ) ) ).

% Nil_eq_concat_conv
thf(fact_760_Nil__eq__concat__conv,axiom,
    ! [Xss2: list_list_nat] :
      ( ( nil_nat
        = ( concat_nat @ Xss2 ) )
      = ( ! [X4: list_nat] :
            ( ( member_list_nat2 @ X4 @ ( set_list_nat2 @ Xss2 ) )
           => ( X4 = nil_nat ) ) ) ) ).

% Nil_eq_concat_conv
thf(fact_761_in__set__product__lists__length,axiom,
    ! [Xs: list_nat,Xss2: list_list_nat] :
      ( ( member_list_nat2 @ Xs @ ( set_list_nat2 @ ( product_lists_nat @ Xss2 ) ) )
     => ( ( size_size_list_nat @ Xs )
        = ( size_s3023201423986296836st_nat @ Xss2 ) ) ) ).

% in_set_product_lists_length
thf(fact_762_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_nat,Ws: list_nat,P4: 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 @ Zs2 ) )
       => ( ( ( size_size_list_nat @ Zs2 )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P4 @ nil_nat @ nil_nat @ nil_nat @ nil_nat )
           => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat,Z: nat,Zs: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys2 ) )
                 => ( ( ( size_size_list_nat @ Ys2 )
                      = ( size_size_list_nat @ Zs ) )
                   => ( ( ( size_size_list_nat @ Zs )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_763_list__induct4,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat,Zs2: list_nat,Ws: list_nat,P4: list_term_a_b > list_nat > list_nat > list_nat > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( ( size_size_list_nat @ Zs2 )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P4 @ nil_term_a_b @ nil_nat @ nil_nat @ nil_nat )
           => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: nat,Ys2: list_nat,Z: nat,Zs: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                    = ( size_size_list_nat @ Ys2 ) )
                 => ( ( ( size_size_list_nat @ Ys2 )
                      = ( size_size_list_nat @ Zs ) )
                   => ( ( ( size_size_list_nat @ Zs )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_764_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b,Zs2: list_nat,Ws: list_nat,P4: list_nat > list_term_a_b > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( ( size_size_list_nat @ Zs2 )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P4 @ nil_nat @ nil_term_a_b @ nil_nat @ nil_nat )
           => ( ! [X3: nat,Xs3: list_nat,Y3: term_a_b,Ys2: list_term_a_b,Z: nat,Zs: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
                 => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                      = ( size_size_list_nat @ Zs ) )
                   => ( ( ( size_size_list_nat @ Zs )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_765_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_term_a_b,Ws: list_nat,P4: list_nat > list_nat > list_term_a_b > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s8906293707977694520rm_a_b @ Zs2 ) )
       => ( ( ( size_s8906293707977694520rm_a_b @ Zs2 )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P4 @ nil_nat @ nil_nat @ nil_term_a_b @ nil_nat )
           => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat,Z: term_a_b,Zs: list_term_a_b,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys2 ) )
                 => ( ( ( size_size_list_nat @ Ys2 )
                      = ( size_s8906293707977694520rm_a_b @ Zs ) )
                   => ( ( ( size_s8906293707977694520rm_a_b @ Zs )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_term_a_b @ Z @ Zs ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_766_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_nat,Ws: list_term_a_b,P4: list_nat > list_nat > list_nat > list_term_a_b > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( ( size_size_list_nat @ Zs2 )
            = ( size_s8906293707977694520rm_a_b @ Ws ) )
         => ( ( P4 @ nil_nat @ nil_nat @ nil_nat @ nil_term_a_b )
           => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat,Z: nat,Zs: list_nat,W: term_a_b,Ws2: list_term_a_b] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_size_list_nat @ Ys2 ) )
                 => ( ( ( size_size_list_nat @ Ys2 )
                      = ( size_size_list_nat @ Zs ) )
                   => ( ( ( size_size_list_nat @ Zs )
                        = ( size_s8906293707977694520rm_a_b @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) @ ( cons_term_a_b @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_767_list__induct4,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,Zs2: list_nat,Ws: list_nat,P4: list_term_a_b > list_term_a_b > list_nat > list_nat > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( ( size_size_list_nat @ Zs2 )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P4 @ nil_term_a_b @ nil_term_a_b @ nil_nat @ nil_nat )
           => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b,Z: nat,Zs: list_nat,W: nat,Ws2: list_nat] :
                  ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                    = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
                 => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                      = ( size_size_list_nat @ Zs ) )
                   => ( ( ( size_size_list_nat @ Zs )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_768_list__induct4,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat,Zs2: list_term_a_b,Ws: list_nat,P4: list_term_a_b > list_nat > list_term_a_b > list_nat > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s8906293707977694520rm_a_b @ Zs2 ) )
       => ( ( ( size_s8906293707977694520rm_a_b @ Zs2 )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P4 @ nil_term_a_b @ nil_nat @ nil_term_a_b @ nil_nat )
           => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: nat,Ys2: list_nat,Z: term_a_b,Zs: list_term_a_b,W: nat,Ws2: list_nat] :
                  ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                    = ( size_size_list_nat @ Ys2 ) )
                 => ( ( ( size_size_list_nat @ Ys2 )
                      = ( size_s8906293707977694520rm_a_b @ Zs ) )
                   => ( ( ( size_s8906293707977694520rm_a_b @ Zs )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_term_a_b @ Z @ Zs ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_769_list__induct4,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat,Zs2: list_nat,Ws: list_term_a_b,P4: list_term_a_b > list_nat > list_nat > list_term_a_b > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( ( size_size_list_nat @ Zs2 )
            = ( size_s8906293707977694520rm_a_b @ Ws ) )
         => ( ( P4 @ nil_term_a_b @ nil_nat @ nil_nat @ nil_term_a_b )
           => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: nat,Ys2: list_nat,Z: nat,Zs: list_nat,W: term_a_b,Ws2: list_term_a_b] :
                  ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                    = ( size_size_list_nat @ Ys2 ) )
                 => ( ( ( size_size_list_nat @ Ys2 )
                      = ( size_size_list_nat @ Zs ) )
                   => ( ( ( size_size_list_nat @ Zs )
                        = ( size_s8906293707977694520rm_a_b @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) @ ( cons_term_a_b @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_770_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b,Zs2: list_term_a_b,Ws: list_nat,P4: list_nat > list_term_a_b > list_term_a_b > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_s8906293707977694520rm_a_b @ Zs2 ) )
       => ( ( ( size_s8906293707977694520rm_a_b @ Zs2 )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P4 @ nil_nat @ nil_term_a_b @ nil_term_a_b @ nil_nat )
           => ( ! [X3: nat,Xs3: list_nat,Y3: term_a_b,Ys2: list_term_a_b,Z: term_a_b,Zs: list_term_a_b,W: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
                 => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                      = ( size_s8906293707977694520rm_a_b @ Zs ) )
                   => ( ( ( size_s8906293707977694520rm_a_b @ Zs )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_term_a_b @ Z @ Zs ) @ ( cons_nat @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_771_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b,Zs2: list_nat,Ws: list_term_a_b,P4: list_nat > list_term_a_b > list_nat > list_term_a_b > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( ( size_size_list_nat @ Zs2 )
            = ( size_s8906293707977694520rm_a_b @ Ws ) )
         => ( ( P4 @ nil_nat @ nil_term_a_b @ nil_nat @ nil_term_a_b )
           => ( ! [X3: nat,Xs3: list_nat,Y3: term_a_b,Ys2: list_term_a_b,Z: nat,Zs: list_nat,W: term_a_b,Ws2: list_term_a_b] :
                  ( ( ( size_size_list_nat @ Xs3 )
                    = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
                 => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                      = ( size_size_list_nat @ Zs ) )
                   => ( ( ( size_size_list_nat @ Zs )
                        = ( size_s8906293707977694520rm_a_b @ Ws2 ) )
                     => ( ( P4 @ Xs3 @ Ys2 @ Zs @ Ws2 )
                       => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) @ ( cons_term_a_b @ W @ Ws2 ) ) ) ) ) )
             => ( P4 @ Xs @ Ys @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_772_list__induct3,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,Zs2: list_term_a_b,P4: list_term_a_b > list_term_a_b > list_term_a_b > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_s8906293707977694520rm_a_b @ Zs2 ) )
       => ( ( P4 @ nil_term_a_b @ nil_term_a_b @ nil_term_a_b )
         => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b,Z: term_a_b,Zs: list_term_a_b] :
                ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                  = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
               => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                    = ( size_s8906293707977694520rm_a_b @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_term_a_b @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_773_list__induct3,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,Zs2: list_nat,P4: list_term_a_b > list_term_a_b > list_nat > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( P4 @ nil_term_a_b @ nil_term_a_b @ nil_nat )
         => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b,Z: nat,Zs: list_nat] :
                ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                  = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
               => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                    = ( size_size_list_nat @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_774_list__induct3,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat,Zs2: list_term_a_b,P4: list_term_a_b > list_nat > list_term_a_b > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s8906293707977694520rm_a_b @ Zs2 ) )
       => ( ( P4 @ nil_term_a_b @ nil_nat @ nil_term_a_b )
         => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: nat,Ys2: list_nat,Z: term_a_b,Zs: list_term_a_b] :
                ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                  = ( size_size_list_nat @ Ys2 ) )
               => ( ( ( size_size_list_nat @ Ys2 )
                    = ( size_s8906293707977694520rm_a_b @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_term_a_b @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_775_list__induct3,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat,Zs2: list_nat,P4: list_term_a_b > list_nat > list_nat > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( P4 @ nil_term_a_b @ nil_nat @ nil_nat )
         => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: nat,Ys2: list_nat,Z: nat,Zs: list_nat] :
                ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                  = ( size_size_list_nat @ Ys2 ) )
               => ( ( ( size_size_list_nat @ Ys2 )
                    = ( size_size_list_nat @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_776_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b,Zs2: list_term_a_b,P4: list_nat > list_term_a_b > list_term_a_b > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_s8906293707977694520rm_a_b @ Zs2 ) )
       => ( ( P4 @ nil_nat @ nil_term_a_b @ nil_term_a_b )
         => ( ! [X3: nat,Xs3: list_nat,Y3: term_a_b,Ys2: list_term_a_b,Z: term_a_b,Zs: list_term_a_b] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
               => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                    = ( size_s8906293707977694520rm_a_b @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_term_a_b @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_777_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b,Zs2: list_nat,P4: list_nat > list_term_a_b > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( ( size_s8906293707977694520rm_a_b @ Ys )
          = ( size_size_list_nat @ Zs2 ) )
       => ( ( P4 @ nil_nat @ nil_term_a_b @ nil_nat )
         => ( ! [X3: nat,Xs3: list_nat,Y3: term_a_b,Ys2: list_term_a_b,Z: nat,Zs: list_nat] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
               => ( ( ( size_s8906293707977694520rm_a_b @ Ys2 )
                    = ( size_size_list_nat @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_778_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_term_a_b,P4: list_nat > list_nat > list_term_a_b > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( ( size_size_list_nat @ Ys )
          = ( size_s8906293707977694520rm_a_b @ Zs2 ) )
       => ( ( P4 @ nil_nat @ nil_nat @ nil_term_a_b )
         => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat,Z: term_a_b,Zs: list_term_a_b] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_size_list_nat @ Ys2 ) )
               => ( ( ( size_size_list_nat @ Ys2 )
                    = ( size_s8906293707977694520rm_a_b @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_term_a_b @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_779_list__induct3,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_nat,P4: 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 @ Zs2 ) )
       => ( ( P4 @ nil_nat @ nil_nat @ nil_nat )
         => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat,Z: nat,Zs: list_nat] :
                ( ( ( size_size_list_nat @ Xs3 )
                  = ( size_size_list_nat @ Ys2 ) )
               => ( ( ( size_size_list_nat @ Ys2 )
                    = ( size_size_list_nat @ Zs ) )
                 => ( ( P4 @ Xs3 @ Ys2 @ Zs )
                   => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z @ Zs ) ) ) ) )
           => ( P4 @ Xs @ Ys @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_780_list__induct2,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,P4: list_term_a_b > list_term_a_b > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( P4 @ nil_term_a_b @ nil_term_a_b )
       => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b] :
              ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
             => ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) ) )
         => ( P4 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_781_list__induct2,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat,P4: list_term_a_b > list_nat > $o] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P4 @ nil_term_a_b @ nil_nat )
       => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: nat,Ys2: list_nat] :
              ( ( ( size_s8906293707977694520rm_a_b @ Xs3 )
                = ( size_size_list_nat @ Ys2 ) )
             => ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) )
         => ( P4 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_782_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b,P4: list_nat > list_term_a_b > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( P4 @ nil_nat @ nil_term_a_b )
       => ( ! [X3: nat,Xs3: list_nat,Y3: term_a_b,Ys2: list_term_a_b] :
              ( ( ( size_size_list_nat @ Xs3 )
                = ( size_s8906293707977694520rm_a_b @ Ys2 ) )
             => ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) ) )
         => ( P4 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_783_list__induct2,axiom,
    ! [Xs: list_nat,Ys: list_nat,P4: list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ( P4 @ nil_nat @ nil_nat )
       => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat] :
              ( ( ( size_size_list_nat @ Xs3 )
                = ( size_size_list_nat @ Ys2 ) )
             => ( ( P4 @ Xs3 @ Ys2 )
               => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) )
         => ( P4 @ Xs @ Ys ) ) ) ) ).

% list_induct2
thf(fact_784_concat_Osimps_I1_J,axiom,
    ( ( concat_term_a_b @ nil_list_term_a_b )
    = nil_term_a_b ) ).

% concat.simps(1)
thf(fact_785_concat_Osimps_I1_J,axiom,
    ( ( concat_nat @ nil_list_nat )
    = nil_nat ) ).

% concat.simps(1)
thf(fact_786_filter2_Osimps_I1_J,axiom,
    ! [P4: term_a_b > term_a_b > $o,Uu2: list_term_a_b] :
      ( ( missin5478484803207743724rm_a_b @ P4 @ nil_term_a_b @ Uu2 )
      = ( produc4885699992713594593rm_a_b @ nil_term_a_b @ nil_term_a_b ) ) ).

% filter2.simps(1)
thf(fact_787_filter2_Osimps_I1_J,axiom,
    ! [P4: term_a_b > nat > $o,Uu2: list_nat] :
      ( ( missin8610218420629654184_b_nat @ P4 @ nil_term_a_b @ Uu2 )
      = ( produc5386604813764302749st_nat @ nil_term_a_b @ nil_nat ) ) ).

% filter2.simps(1)
thf(fact_788_filter2_Osimps_I1_J,axiom,
    ! [P4: nat > term_a_b > $o,Uu2: list_term_a_b] :
      ( ( missin7648764293464682024rm_a_b @ P4 @ nil_nat @ Uu2 )
      = ( produc4336470666470712605rm_a_b @ nil_nat @ nil_term_a_b ) ) ).

% filter2.simps(1)
thf(fact_789_filter2_Osimps_I1_J,axiom,
    ! [P4: nat > nat > $o,Uu2: list_nat] :
      ( ( missin7656342814955748836at_nat @ P4 @ nil_nat @ Uu2 )
      = ( produc2694037385005941721st_nat @ nil_nat @ nil_nat ) ) ).

% filter2.simps(1)
thf(fact_790_same__length__different,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( Xs != Ys )
     => ( ( ( size_s8906293707977694520rm_a_b @ Xs )
          = ( size_s8906293707977694520rm_a_b @ Ys ) )
       => ? [Pre: list_term_a_b,X3: term_a_b,Xs5: list_term_a_b,Y3: term_a_b,Ys6: list_term_a_b] :
            ( ( X3 != Y3 )
            & ( Xs
              = ( append_term_a_b @ Pre @ ( append_term_a_b @ ( cons_term_a_b @ X3 @ nil_term_a_b ) @ Xs5 ) ) )
            & ( Ys
              = ( append_term_a_b @ Pre @ ( append_term_a_b @ ( cons_term_a_b @ Y3 @ nil_term_a_b ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_791_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,X3: nat,Xs5: list_nat,Y3: nat,Ys6: list_nat] :
            ( ( X3 != Y3 )
            & ( Xs
              = ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ X3 @ nil_nat ) @ Xs5 ) ) )
            & ( Ys
              = ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ Y3 @ nil_nat ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_792_splice_Opinduct,axiom,
    ! [A0: list_term_a_b,A1: list_term_a_b,P4: list_term_a_b > list_term_a_b > $o] :
      ( ( accp_P1505376972976473906rm_a_b @ splice_rel_term_a_b @ ( produc4885699992713594593rm_a_b @ A0 @ A1 ) )
     => ( ! [Ys2: list_term_a_b] :
            ( ( accp_P1505376972976473906rm_a_b @ splice_rel_term_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Ys2 ) )
           => ( P4 @ nil_term_a_b @ Ys2 ) )
       => ( ! [X3: term_a_b,Xs3: list_term_a_b,Ys2: list_term_a_b] :
              ( ( accp_P1505376972976473906rm_a_b @ splice_rel_term_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X3 @ Xs3 ) @ Ys2 ) )
             => ( ( P4 @ Ys2 @ Xs3 )
               => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ Ys2 ) ) )
         => ( P4 @ A0 @ A1 ) ) ) ) ).

% splice.pinduct
thf(fact_793_splice_Opinduct,axiom,
    ! [A0: list_nat,A1: list_nat,P4: list_nat > list_nat > $o] :
      ( ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ A0 @ A1 ) )
     => ( ! [Ys2: list_nat] :
            ( ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
           => ( P4 @ nil_nat @ Ys2 ) )
       => ( ! [X3: nat,Xs3: list_nat,Ys2: list_nat] :
              ( ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ Ys2 ) )
             => ( ( P4 @ Ys2 @ Xs3 )
               => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ Ys2 ) ) )
         => ( P4 @ A0 @ A1 ) ) ) ) ).

% splice.pinduct
thf(fact_794_shuffles_Opinduct,axiom,
    ! [A0: list_term_a_b,A1: list_term_a_b,P4: list_term_a_b > list_term_a_b > $o] :
      ( ( accp_P1505376972976473906rm_a_b @ shuffl7548313169530246058rm_a_b @ ( produc4885699992713594593rm_a_b @ A0 @ A1 ) )
     => ( ! [Ys2: list_term_a_b] :
            ( ( accp_P1505376972976473906rm_a_b @ shuffl7548313169530246058rm_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Ys2 ) )
           => ( P4 @ nil_term_a_b @ Ys2 ) )
       => ( ! [Xs3: list_term_a_b] :
              ( ( accp_P1505376972976473906rm_a_b @ shuffl7548313169530246058rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs3 @ nil_term_a_b ) )
             => ( P4 @ Xs3 @ nil_term_a_b ) )
         => ( ! [X3: term_a_b,Xs3: list_term_a_b,Y3: term_a_b,Ys2: list_term_a_b] :
                ( ( accp_P1505376972976473906rm_a_b @ shuffl7548313169530246058rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) )
               => ( ( P4 @ Xs3 @ ( cons_term_a_b @ Y3 @ Ys2 ) )
                 => ( ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ Ys2 )
                   => ( P4 @ ( cons_term_a_b @ X3 @ Xs3 ) @ ( cons_term_a_b @ Y3 @ Ys2 ) ) ) ) )
           => ( P4 @ A0 @ A1 ) ) ) ) ) ).

% shuffles.pinduct
thf(fact_795_shuffles_Opinduct,axiom,
    ! [A0: list_nat,A1: list_nat,P4: list_nat > list_nat > $o] :
      ( ( accp_P8037286306265792042st_nat @ shuffles_rel_nat @ ( produc2694037385005941721st_nat @ A0 @ A1 ) )
     => ( ! [Ys2: list_nat] :
            ( ( accp_P8037286306265792042st_nat @ shuffles_rel_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
           => ( P4 @ nil_nat @ Ys2 ) )
       => ( ! [Xs3: list_nat] :
              ( ( accp_P8037286306265792042st_nat @ shuffles_rel_nat @ ( produc2694037385005941721st_nat @ Xs3 @ nil_nat ) )
             => ( P4 @ Xs3 @ nil_nat ) )
         => ( ! [X3: nat,Xs3: list_nat,Y3: nat,Ys2: list_nat] :
                ( ( accp_P8037286306265792042st_nat @ shuffles_rel_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
               => ( ( P4 @ Xs3 @ ( cons_nat @ Y3 @ Ys2 ) )
                 => ( ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ Ys2 )
                   => ( P4 @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) )
           => ( P4 @ A0 @ A1 ) ) ) ) ) ).

% shuffles.pinduct
thf(fact_796_Cons__lenlex__iff,axiom,
    ! [M: nat,Ms: list_nat,N: nat,Ns: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ M @ Ms ) @ ( cons_nat @ N @ Ns ) ) @ ( lenlex_nat @ R ) )
      = ( ( 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 @ M @ N ) @ R ) )
        | ( ( M = N )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ms @ Ns ) @ ( lenlex_nat @ R ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_797_Cons__lenlex__iff,axiom,
    ! [M: term_a_b,Ms: list_term_a_b,N: term_a_b,Ns: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ M @ Ms ) @ ( cons_term_a_b @ N @ Ns ) ) @ ( lenlex_term_a_b @ R ) )
      = ( ( ord_less_nat @ ( size_s8906293707977694520rm_a_b @ Ms ) @ ( size_s8906293707977694520rm_a_b @ Ns ) )
        | ( ( ( size_s8906293707977694520rm_a_b @ Ms )
            = ( size_s8906293707977694520rm_a_b @ Ns ) )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ M @ N ) @ R ) )
        | ( ( M = N )
          & ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Ms @ Ns ) @ ( lenlex_term_a_b @ R ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_798_in__measures_I2_J,axiom,
    ! [X: term_a_b,Y: term_a_b,F: term_a_b > nat,Fs: list_term_a_b_nat] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( measures_term_a_b @ ( cons_term_a_b_nat @ F @ Fs ) ) )
      = ( ( ord_less_nat @ ( F @ X ) @ ( F @ Y ) )
        | ( ( ( F @ X )
            = ( F @ Y ) )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( measures_term_a_b @ Fs ) ) ) ) ) ).

% in_measures(2)
thf(fact_799_impossible__Cons,axiom,
    ! [Xs: list_nat,Ys: list_nat,X: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ ( size_size_list_nat @ Ys ) )
     => ( Xs
       != ( cons_nat @ X @ Ys ) ) ) ).

% impossible_Cons
thf(fact_800_measures__less,axiom,
    ! [F: term_a_b > nat,X: term_a_b,Y: term_a_b,Fs: list_term_a_b_nat] :
      ( ( ord_less_nat @ ( F @ X ) @ ( F @ Y ) )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( measures_term_a_b @ ( cons_term_a_b_nat @ F @ Fs ) ) ) ) ).

% measures_less
thf(fact_801_measures__lesseq,axiom,
    ! [F: term_a_b > nat,X: term_a_b,Y: term_a_b,Fs: list_term_a_b_nat] :
      ( ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( measures_term_a_b @ Fs ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( measures_term_a_b @ ( cons_term_a_b_nat @ F @ Fs ) ) ) ) ) ).

% measures_lesseq
thf(fact_802_splice_Opelims,axiom,
    ! [X: list_term_a_b,Xa: list_term_a_b,Y: list_term_a_b] :
      ( ( ( splice_term_a_b @ X @ Xa )
        = Y )
     => ( ( accp_P1505376972976473906rm_a_b @ splice_rel_term_a_b @ ( produc4885699992713594593rm_a_b @ X @ Xa ) )
       => ( ( ( X = nil_term_a_b )
           => ( ( Y = Xa )
             => ~ ( accp_P1505376972976473906rm_a_b @ splice_rel_term_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Xa ) ) ) )
         => ~ ! [X3: term_a_b,Xs3: list_term_a_b] :
                ( ( X
                  = ( cons_term_a_b @ X3 @ Xs3 ) )
               => ( ( Y
                    = ( cons_term_a_b @ X3 @ ( splice_term_a_b @ Xa @ Xs3 ) ) )
                 => ~ ( accp_P1505376972976473906rm_a_b @ splice_rel_term_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X3 @ Xs3 ) @ Xa ) ) ) ) ) ) ) ).

% splice.pelims
thf(fact_803_splice_Opelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( splice_nat @ X @ Xa )
        = Y )
     => ( ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ X @ Xa ) )
       => ( ( ( X = nil_nat )
           => ( ( Y = Xa )
             => ~ ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Xa ) ) ) )
         => ~ ! [X3: nat,Xs3: list_nat] :
                ( ( X
                  = ( cons_nat @ X3 @ Xs3 ) )
               => ( ( Y
                    = ( cons_nat @ X3 @ ( splice_nat @ Xa @ Xs3 ) ) )
                 => ~ ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ Xa ) ) ) ) ) ) ) ).

% splice.pelims
thf(fact_804_splice_Opsimps_I1_J,axiom,
    ! [Ys: list_term_a_b] :
      ( ( accp_P1505376972976473906rm_a_b @ splice_rel_term_a_b @ ( produc4885699992713594593rm_a_b @ nil_term_a_b @ Ys ) )
     => ( ( splice_term_a_b @ nil_term_a_b @ Ys )
        = Ys ) ) ).

% splice.psimps(1)
thf(fact_805_splice_Opsimps_I1_J,axiom,
    ! [Ys: list_nat] :
      ( ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Ys ) )
     => ( ( splice_nat @ nil_nat @ Ys )
        = Ys ) ) ).

% splice.psimps(1)
thf(fact_806_splice_Opsimps_I2_J,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat] :
      ( ( accp_P8037286306265792042st_nat @ splice_rel_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ Ys ) )
     => ( ( splice_nat @ ( cons_nat @ X @ Xs ) @ Ys )
        = ( cons_nat @ X @ ( splice_nat @ Ys @ Xs ) ) ) ) ).

% splice.psimps(2)
thf(fact_807_union__list__sorted_Opelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( missin8019018944680490243ed_nat @ X @ Xa )
        = Y )
     => ( ( accp_P8037286306265792042st_nat @ missin7611735270441097048el_nat @ ( produc2694037385005941721st_nat @ X @ Xa ) )
       => ( ! [X3: nat,Xs3: list_nat] :
              ( ( X
                = ( cons_nat @ X3 @ Xs3 ) )
             => ! [Y3: nat,Ys2: list_nat] :
                  ( ( Xa
                    = ( cons_nat @ Y3 @ Ys2 ) )
                 => ( ( ( ( X3 = Y3 )
                       => ( Y
                          = ( cons_nat @ X3 @ ( missin8019018944680490243ed_nat @ Xs3 @ Ys2 ) ) ) )
                      & ( ( X3 != Y3 )
                       => ( ( ( ord_less_nat @ X3 @ Y3 )
                           => ( Y
                              = ( cons_nat @ X3 @ ( missin8019018944680490243ed_nat @ Xs3 @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) )
                          & ( ~ ( ord_less_nat @ X3 @ Y3 )
                           => ( Y
                              = ( cons_nat @ Y3 @ ( missin8019018944680490243ed_nat @ ( cons_nat @ X3 @ Xs3 ) @ Ys2 ) ) ) ) ) ) )
                   => ~ ( accp_P8037286306265792042st_nat @ missin7611735270441097048el_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) ) )
         => ( ( ( X = nil_nat )
             => ( ( Y = Xa )
               => ~ ( accp_P8037286306265792042st_nat @ missin7611735270441097048el_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Xa ) ) ) )
           => ~ ! [V: nat,Va: list_nat] :
                  ( ( X
                    = ( cons_nat @ V @ Va ) )
                 => ( ( Xa = nil_nat )
                   => ( ( Y
                        = ( cons_nat @ V @ Va ) )
                     => ~ ( accp_P8037286306265792042st_nat @ missin7611735270441097048el_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ V @ Va ) @ nil_nat ) ) ) ) ) ) ) ) ) ).

% union_list_sorted.pelims
thf(fact_808_splice__Nil2,axiom,
    ! [Xs: list_term_a_b] :
      ( ( splice_term_a_b @ Xs @ nil_term_a_b )
      = Xs ) ).

% splice_Nil2
thf(fact_809_splice__Nil2,axiom,
    ! [Xs: list_nat] :
      ( ( splice_nat @ Xs @ nil_nat )
      = Xs ) ).

% splice_Nil2
thf(fact_810_split__Nil__iff,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ( splice_term_a_b @ Xs @ Ys )
        = nil_term_a_b )
      = ( ( Xs = nil_term_a_b )
        & ( Ys = nil_term_a_b ) ) ) ).

% split_Nil_iff
thf(fact_811_split__Nil__iff,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( splice_nat @ Xs @ Ys )
        = nil_nat )
      = ( ( Xs = nil_nat )
        & ( Ys = nil_nat ) ) ) ).

% split_Nil_iff
thf(fact_812_subrelI,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,S: set_Pr4386577575007340137rm_a_b] :
      ( ! [X3: term_a_b,Y3: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ R )
         => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ S ) )
     => ( ord_le118470702582115849rm_a_b @ R @ S ) ) ).

% subrelI
thf(fact_813_subset__emptyI,axiom,
    ! [A5: set_list_nat] :
      ( ! [X3: list_nat] :
          ~ ( member_list_nat2 @ X3 @ A5 )
     => ( ord_le6045566169113846134st_nat @ A5 @ bot_bot_set_list_nat ) ) ).

% subset_emptyI
thf(fact_814_subset__emptyI,axiom,
    ! [A5: set_Pr4386577575007340137rm_a_b] :
      ( ! [X3: produc357393685978478089rm_a_b] :
          ~ ( member5869715511025134514rm_a_b @ X3 @ A5 )
     => ( ord_le118470702582115849rm_a_b @ A5 @ bot_bo197521221353338581rm_a_b ) ) ).

% subset_emptyI
thf(fact_815_subset__code_I1_J,axiom,
    ! [Xs: list_list_nat,B6: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ B6 )
      = ( ! [X4: list_nat] :
            ( ( member_list_nat2 @ X4 @ ( set_list_nat2 @ Xs ) )
           => ( member_list_nat2 @ X4 @ B6 ) ) ) ) ).

% subset_code(1)
thf(fact_816_subset__code_I1_J,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,B6: set_Pr4386577575007340137rm_a_b] :
      ( ( ord_le118470702582115849rm_a_b @ ( set_Pr2370880052973118494rm_a_b @ Xs ) @ B6 )
      = ( ! [X4: produc357393685978478089rm_a_b] :
            ( ( member5869715511025134514rm_a_b @ X4 @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
           => ( member5869715511025134514rm_a_b @ X4 @ B6 ) ) ) ) ).

% subset_code(1)
thf(fact_817_trancl__mono,axiom,
    ! [P: produc357393685978478089rm_a_b,R: set_Pr4386577575007340137rm_a_b,S: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ P @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ( ord_le118470702582115849rm_a_b @ R @ S )
       => ( member5869715511025134514rm_a_b @ P @ ( transi7922773638565587891rm_a_b @ S ) ) ) ) ).

% trancl_mono
thf(fact_818_splice_Osimps_I2_J,axiom,
    ! [X: nat,Xs: list_nat,Ys: list_nat] :
      ( ( splice_nat @ ( cons_nat @ X @ Xs ) @ Ys )
      = ( cons_nat @ X @ ( splice_nat @ Ys @ Xs ) ) ) ).

% splice.simps(2)
thf(fact_819_splice_Osimps_I1_J,axiom,
    ! [Ys: list_term_a_b] :
      ( ( splice_term_a_b @ nil_term_a_b @ Ys )
      = Ys ) ).

% splice.simps(1)
thf(fact_820_splice_Osimps_I1_J,axiom,
    ! [Ys: list_nat] :
      ( ( splice_nat @ nil_nat @ Ys )
      = Ys ) ).

% splice.simps(1)
thf(fact_821_union__list__sorted_Osimps_I2_J,axiom,
    ! [Ys: list_nat] :
      ( ( missin8019018944680490243ed_nat @ nil_nat @ Ys )
      = Ys ) ).

% union_list_sorted.simps(2)
thf(fact_822_set__subset__Cons,axiom,
    ! [Xs: list_nat,X: nat] : ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ ( set_nat2 @ ( cons_nat @ X @ Xs ) ) ) ).

% set_subset_Cons
thf(fact_823_splice_Oelims,axiom,
    ! [X: list_term_a_b,Xa: list_term_a_b,Y: list_term_a_b] :
      ( ( ( splice_term_a_b @ X @ Xa )
        = Y )
     => ( ( ( X = nil_term_a_b )
         => ( Y != Xa ) )
       => ~ ! [X3: term_a_b,Xs3: list_term_a_b] :
              ( ( X
                = ( cons_term_a_b @ X3 @ Xs3 ) )
             => ( Y
               != ( cons_term_a_b @ X3 @ ( splice_term_a_b @ Xa @ Xs3 ) ) ) ) ) ) ).

% splice.elims
thf(fact_824_splice_Oelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( splice_nat @ X @ Xa )
        = Y )
     => ( ( ( X = nil_nat )
         => ( Y != Xa ) )
       => ~ ! [X3: nat,Xs3: list_nat] :
              ( ( X
                = ( cons_nat @ X3 @ Xs3 ) )
             => ( Y
               != ( cons_nat @ X3 @ ( splice_nat @ Xa @ Xs3 ) ) ) ) ) ) ).

% splice.elims
thf(fact_825_union__list__sorted_Osimps_I1_J,axiom,
    ! [X: nat,Y: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ( X = Y )
       => ( ( missin8019018944680490243ed_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
          = ( cons_nat @ X @ ( missin8019018944680490243ed_nat @ Xs @ Ys ) ) ) )
      & ( ( X != Y )
       => ( ( ( ord_less_nat @ X @ Y )
           => ( ( missin8019018944680490243ed_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
              = ( cons_nat @ X @ ( missin8019018944680490243ed_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) ) ) )
          & ( ~ ( ord_less_nat @ X @ Y )
           => ( ( missin8019018944680490243ed_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
              = ( cons_nat @ Y @ ( missin8019018944680490243ed_nat @ ( cons_nat @ X @ Xs ) @ Ys ) ) ) ) ) ) ) ).

% union_list_sorted.simps(1)
thf(fact_826_union__list__sorted_Osimps_I3_J,axiom,
    ! [V2: nat,Va2: list_nat] :
      ( ( missin8019018944680490243ed_nat @ ( cons_nat @ V2 @ Va2 ) @ nil_nat )
      = ( cons_nat @ V2 @ Va2 ) ) ).

% union_list_sorted.simps(3)
thf(fact_827_union__list__sorted_Oelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( missin8019018944680490243ed_nat @ X @ Xa )
        = Y )
     => ( ! [X3: nat,Xs3: list_nat] :
            ( ( X
              = ( cons_nat @ X3 @ Xs3 ) )
           => ! [Y3: nat,Ys2: list_nat] :
                ( ( Xa
                  = ( cons_nat @ Y3 @ Ys2 ) )
               => ~ ( ( ( X3 = Y3 )
                     => ( Y
                        = ( cons_nat @ X3 @ ( missin8019018944680490243ed_nat @ Xs3 @ Ys2 ) ) ) )
                    & ( ( X3 != Y3 )
                     => ( ( ( ord_less_nat @ X3 @ Y3 )
                         => ( Y
                            = ( cons_nat @ X3 @ ( missin8019018944680490243ed_nat @ Xs3 @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) )
                        & ( ~ ( ord_less_nat @ X3 @ Y3 )
                         => ( Y
                            = ( cons_nat @ Y3 @ ( missin8019018944680490243ed_nat @ ( cons_nat @ X3 @ Xs3 ) @ Ys2 ) ) ) ) ) ) ) ) )
       => ( ( ( X = nil_nat )
           => ( Y != Xa ) )
         => ~ ! [V: nat,Va: list_nat] :
                ( ( X
                  = ( cons_nat @ V @ Va ) )
               => ( ( Xa = nil_nat )
                 => ( Y
                   != ( cons_nat @ V @ Va ) ) ) ) ) ) ) ).

% union_list_sorted.elims
thf(fact_828_listrel__iff__nth,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( listre1194016999521814427rm_a_b @ R ) )
      = ( ( ( size_s8906293707977694520rm_a_b @ Xs )
          = ( size_s8906293707977694520rm_a_b @ Ys ) )
        & ! [N2: nat] :
            ( ( ord_less_nat @ N2 @ ( size_s8906293707977694520rm_a_b @ Xs ) )
           => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ Xs @ N2 ) @ ( nth_term_a_b @ Ys @ N2 ) ) @ R ) ) ) ) ).

% listrel_iff_nth
thf(fact_829_subtract__list__sorted_Opelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( missin6424796737333596952ed_nat @ X @ Xa )
        = Y )
     => ( ( accp_P8037286306265792042st_nat @ missin3644257100165608323el_nat @ ( produc2694037385005941721st_nat @ X @ Xa ) )
       => ( ! [X3: nat,Xs3: list_nat] :
              ( ( X
                = ( cons_nat @ X3 @ Xs3 ) )
             => ! [Y3: nat,Ys2: list_nat] :
                  ( ( Xa
                    = ( cons_nat @ Y3 @ Ys2 ) )
                 => ( ( ( ( X3 = Y3 )
                       => ( Y
                          = ( missin6424796737333596952ed_nat @ Xs3 @ ( cons_nat @ Y3 @ Ys2 ) ) ) )
                      & ( ( X3 != Y3 )
                       => ( ( ( ord_less_nat @ X3 @ Y3 )
                           => ( Y
                              = ( cons_nat @ X3 @ ( missin6424796737333596952ed_nat @ Xs3 @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) )
                          & ( ~ ( ord_less_nat @ X3 @ Y3 )
                           => ( Y
                              = ( missin6424796737333596952ed_nat @ ( cons_nat @ X3 @ Xs3 ) @ Ys2 ) ) ) ) ) )
                   => ~ ( accp_P8037286306265792042st_nat @ missin3644257100165608323el_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs3 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) ) )
         => ( ( ( X = nil_nat )
             => ( ( Y = nil_nat )
               => ~ ( accp_P8037286306265792042st_nat @ missin3644257100165608323el_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Xa ) ) ) )
           => ~ ! [V: nat,Va: list_nat] :
                  ( ( X
                    = ( cons_nat @ V @ Va ) )
                 => ( ( Xa = nil_nat )
                   => ( ( Y
                        = ( cons_nat @ V @ Va ) )
                     => ~ ( accp_P8037286306265792042st_nat @ missin3644257100165608323el_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ V @ Va ) @ nil_nat ) ) ) ) ) ) ) ) ) ).

% subtract_list_sorted.pelims
thf(fact_830_subtract__list__sorted_Oelims,axiom,
    ! [X: list_nat,Xa: list_nat,Y: list_nat] :
      ( ( ( missin6424796737333596952ed_nat @ X @ Xa )
        = Y )
     => ( ! [X3: nat,Xs3: list_nat] :
            ( ( X
              = ( cons_nat @ X3 @ Xs3 ) )
           => ! [Y3: nat,Ys2: list_nat] :
                ( ( Xa
                  = ( cons_nat @ Y3 @ Ys2 ) )
               => ~ ( ( ( X3 = Y3 )
                     => ( Y
                        = ( missin6424796737333596952ed_nat @ Xs3 @ ( cons_nat @ Y3 @ Ys2 ) ) ) )
                    & ( ( X3 != Y3 )
                     => ( ( ( ord_less_nat @ X3 @ Y3 )
                         => ( Y
                            = ( cons_nat @ X3 @ ( missin6424796737333596952ed_nat @ Xs3 @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) )
                        & ( ~ ( ord_less_nat @ X3 @ Y3 )
                         => ( Y
                            = ( missin6424796737333596952ed_nat @ ( cons_nat @ X3 @ Xs3 ) @ Ys2 ) ) ) ) ) ) ) )
       => ( ( ( X = nil_nat )
           => ( Y != nil_nat ) )
         => ~ ! [V: nat,Va: list_nat] :
                ( ( X
                  = ( cons_nat @ V @ Va ) )
               => ( ( Xa = nil_nat )
                 => ( Y
                   != ( cons_nat @ V @ Va ) ) ) ) ) ) ) ).

% subtract_list_sorted.elims
thf(fact_831_nth__append__length,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat] :
      ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs ) )
      = X ) ).

% nth_append_length
thf(fact_832_subtract__list__sorted_Osimps_I2_J,axiom,
    ! [Ys: list_nat] :
      ( ( missin6424796737333596952ed_nat @ nil_nat @ Ys )
      = nil_nat ) ).

% subtract_list_sorted.simps(2)
thf(fact_833_all__nth__imp__all__set,axiom,
    ! [Xs: list_list_nat,P4: list_nat > $o,X: list_nat] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
         => ( P4 @ ( nth_list_nat @ Xs @ I2 ) ) )
     => ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
       => ( P4 @ X ) ) ) ).

% all_nth_imp_all_set
thf(fact_834_all__nth__imp__all__set,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,P4: produc357393685978478089rm_a_b > $o,X: produc357393685978478089rm_a_b] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s8600120110137556219rm_a_b @ Xs ) )
         => ( P4 @ ( nth_Pr1098598711982373392rm_a_b @ Xs @ I2 ) ) )
     => ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
       => ( P4 @ X ) ) ) ).

% all_nth_imp_all_set
thf(fact_835_in__set__conv__nth,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
            & ( ( nth_list_nat @ Xs @ I3 )
              = X ) ) ) ) ).

% in_set_conv_nth
thf(fact_836_in__set__conv__nth,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8600120110137556219rm_a_b @ Xs ) )
            & ( ( nth_Pr1098598711982373392rm_a_b @ Xs @ I3 )
              = X ) ) ) ) ).

% in_set_conv_nth
thf(fact_837_nth__mem,axiom,
    ! [N: nat,Xs: list_list_nat] :
      ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( member_list_nat2 @ ( nth_list_nat @ Xs @ N ) @ ( set_list_nat2 @ Xs ) ) ) ).

% nth_mem
thf(fact_838_nth__mem,axiom,
    ! [N: nat,Xs: list_P8875379029341186191rm_a_b] :
      ( ( ord_less_nat @ N @ ( size_s8600120110137556219rm_a_b @ Xs ) )
     => ( member5869715511025134514rm_a_b @ ( nth_Pr1098598711982373392rm_a_b @ Xs @ N ) @ ( set_Pr2370880052973118494rm_a_b @ Xs ) ) ) ).

% nth_mem
thf(fact_839_in__set__idx,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s3023201423986296836st_nat @ Xs ) )
          & ( ( nth_list_nat @ Xs @ I2 )
            = X ) ) ) ).

% in_set_idx
thf(fact_840_in__set__idx,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s8600120110137556219rm_a_b @ Xs ) )
          & ( ( nth_Pr1098598711982373392rm_a_b @ Xs @ I2 )
            = X ) ) ) ).

% in_set_idx
thf(fact_841_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_list_nat,A5: set_list_nat] :
      ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A5 )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
           => ( member_list_nat2 @ ( nth_list_nat @ Xs @ I3 ) @ A5 ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_842_set__list__subset__eq__nth__conv,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,A5: set_Pr4386577575007340137rm_a_b] :
      ( ( ord_le118470702582115849rm_a_b @ ( set_Pr2370880052973118494rm_a_b @ Xs ) @ A5 )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8600120110137556219rm_a_b @ Xs ) )
           => ( member5869715511025134514rm_a_b @ ( nth_Pr1098598711982373392rm_a_b @ Xs @ I3 ) @ A5 ) ) ) ) ).

% set_list_subset_eq_nth_conv
thf(fact_843_append__Cons__nth__middle,axiom,
    ! [I: nat,Xs: list_nat,Y: nat,Zs2: list_nat] :
      ( ( I
        = ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y @ Zs2 ) ) @ I )
        = Y ) ) ).

% append_Cons_nth_middle
thf(fact_844_append__Cons__nth__not__middle,axiom,
    ! [I: nat,Xs: list_nat,U: nat,Ys: list_nat,Z2: nat] :
      ( ( I
       != ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ U @ Ys ) ) @ I )
        = ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Z2 @ Ys ) ) @ I ) ) ) ).

% append_Cons_nth_not_middle
thf(fact_845_subtract__list__sorted_Osimps_I1_J,axiom,
    ! [X: nat,Y: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ( X = Y )
       => ( ( missin6424796737333596952ed_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
          = ( missin6424796737333596952ed_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) ) )
      & ( ( X != Y )
       => ( ( ( ord_less_nat @ X @ Y )
           => ( ( missin6424796737333596952ed_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
              = ( cons_nat @ X @ ( missin6424796737333596952ed_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) ) ) )
          & ( ~ ( ord_less_nat @ X @ Y )
           => ( ( missin6424796737333596952ed_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
              = ( missin6424796737333596952ed_nat @ ( cons_nat @ X @ Xs ) @ Ys ) ) ) ) ) ) ).

% subtract_list_sorted.simps(1)
thf(fact_846_subtract__list__sorted_Osimps_I3_J,axiom,
    ! [V2: nat,Va2: list_nat] :
      ( ( missin6424796737333596952ed_nat @ ( cons_nat @ V2 @ Va2 ) @ nil_nat )
      = ( cons_nat @ V2 @ Va2 ) ) ).

% subtract_list_sorted.simps(3)
thf(fact_847_subt__at_Osimps_I2_J,axiom,
    ! [F: a,Ss: list_term_a_b,I: nat,P: list_nat] :
      ( ( term_subt_at_a_b @ ( fun_a_b @ F @ Ss ) @ ( cons_nat @ I @ P ) )
      = ( term_subt_at_a_b @ ( nth_term_a_b @ Ss @ I ) @ P ) ) ).

% subt_at.simps(2)
thf(fact_848_poss__of__term__Cons,axiom,
    ! [I: nat,P: list_nat,U: term_a_b,F: a,Ts: list_term_a_b] :
      ( ( member_list_nat2 @ ( cons_nat @ I @ P ) @ ( terms_7168686267159881682rm_a_b @ U @ ( fun_a_b @ F @ Ts ) ) )
     => ( member_list_nat2 @ P @ ( terms_7168686267159881682rm_a_b @ U @ ( nth_term_a_b @ Ts @ I ) ) ) ) ).

% poss_of_term_Cons
thf(fact_849_append__Cons__nth__left,axiom,
    ! [I: nat,Xs: list_nat,U: nat,Ys: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ U @ Ys ) ) @ I )
        = ( nth_nat @ Xs @ I ) ) ) ).

% append_Cons_nth_left
thf(fact_850_append__Cons__nth__right,axiom,
    ! [Xs: list_nat,I: nat,U: nat,Ys: list_nat,Z2: nat] :
      ( ( ord_less_nat @ ( size_size_list_nat @ Xs ) @ I )
     => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ U @ Ys ) ) @ I )
        = ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Z2 @ Ys ) ) @ I ) ) ) ).

% append_Cons_nth_right
thf(fact_851_trancl__mono__set,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,S: set_Pr4386577575007340137rm_a_b] :
      ( ( ord_le118470702582115849rm_a_b @ R @ S )
     => ( ord_le118470702582115849rm_a_b @ ( transi7922773638565587891rm_a_b @ R ) @ ( transi7922773638565587891rm_a_b @ S ) ) ) ).

% trancl_mono_set
thf(fact_852_listrel1__iff__update,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( listrel1_term_a_b @ R ) )
      = ( ? [Y5: term_a_b,N2: nat] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ Xs @ N2 ) @ Y5 ) @ R )
            & ( ord_less_nat @ N2 @ ( size_s8906293707977694520rm_a_b @ Xs ) )
            & ( Ys
              = ( list_update_term_a_b @ Xs @ N2 @ Y5 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_853_lex__take__index,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( lex_term_a_b @ R ) )
     => ~ ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Xs ) )
           => ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ys ) )
             => ( ( ( take_term_a_b @ I2 @ Xs )
                  = ( take_term_a_b @ I2 @ Ys ) )
               => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ Xs @ I2 ) @ ( nth_term_a_b @ Ys @ I2 ) ) @ R ) ) ) ) ) ).

% lex_take_index
thf(fact_854_list__update__nonempty,axiom,
    ! [Xs: list_term_a_b,K: nat,X: term_a_b] :
      ( ( ( list_update_term_a_b @ Xs @ K @ X )
        = nil_term_a_b )
      = ( Xs = nil_term_a_b ) ) ).

% list_update_nonempty
thf(fact_855_list__update__nonempty,axiom,
    ! [Xs: list_nat,K: nat,X: nat] :
      ( ( ( list_update_nat @ Xs @ K @ X )
        = nil_nat )
      = ( Xs = nil_nat ) ) ).

% list_update_nonempty
thf(fact_856_list__update__length,axiom,
    ! [Xs: list_nat,X: nat,Ys: list_nat,Y: nat] :
      ( ( list_update_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs ) @ Y )
      = ( append_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) ) ).

% list_update_length
thf(fact_857_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_term_a_b @ N @ nil_term_a_b )
      = nil_term_a_b ) ).

% take_Nil
thf(fact_858_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_nat @ N @ nil_nat )
      = nil_nat ) ).

% take_Nil
thf(fact_859_in__set__takeD,axiom,
    ! [X: list_nat,N: nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ ( take_list_nat @ N @ Xs ) ) )
     => ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_860_in__set__takeD,axiom,
    ! [X: produc357393685978478089rm_a_b,N: nat,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( take_P7698341771522494711rm_a_b @ N @ Xs ) ) )
     => ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) ) ) ).

% in_set_takeD
thf(fact_861_list__update_Osimps_I1_J,axiom,
    ! [I: nat,V2: term_a_b] :
      ( ( list_update_term_a_b @ nil_term_a_b @ I @ V2 )
      = nil_term_a_b ) ).

% list_update.simps(1)
thf(fact_862_list__update_Osimps_I1_J,axiom,
    ! [I: nat,V2: nat] :
      ( ( list_update_nat @ nil_nat @ I @ V2 )
      = nil_nat ) ).

% list_update.simps(1)
thf(fact_863_list__update__code_I1_J,axiom,
    ! [I: nat,Y: term_a_b] :
      ( ( list_update_term_a_b @ nil_term_a_b @ I @ Y )
      = nil_term_a_b ) ).

% list_update_code(1)
thf(fact_864_list__update__code_I1_J,axiom,
    ! [I: nat,Y: nat] :
      ( ( list_update_nat @ nil_nat @ I @ Y )
      = nil_nat ) ).

% list_update_code(1)
thf(fact_865_set__update__subsetI,axiom,
    ! [Xs: list_list_nat,A5: set_list_nat,X: list_nat,I: nat] :
      ( ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ Xs ) @ A5 )
     => ( ( member_list_nat2 @ X @ A5 )
       => ( ord_le6045566169113846134st_nat @ ( set_list_nat2 @ ( list_update_list_nat @ Xs @ I @ X ) ) @ A5 ) ) ) ).

% set_update_subsetI
thf(fact_866_set__update__subsetI,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,A5: set_Pr4386577575007340137rm_a_b,X: produc357393685978478089rm_a_b,I: nat] :
      ( ( ord_le118470702582115849rm_a_b @ ( set_Pr2370880052973118494rm_a_b @ Xs ) @ A5 )
     => ( ( member5869715511025134514rm_a_b @ X @ A5 )
       => ( ord_le118470702582115849rm_a_b @ ( set_Pr2370880052973118494rm_a_b @ ( list_u4211539095652206455rm_a_b @ Xs @ I @ X ) ) @ A5 ) ) ) ).

% set_update_subsetI
thf(fact_867_set__update__memI,axiom,
    ! [N: nat,Xs: list_list_nat,X: list_nat] :
      ( ( ord_less_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
     => ( member_list_nat2 @ X @ ( set_list_nat2 @ ( list_update_list_nat @ Xs @ N @ X ) ) ) ) ).

% set_update_memI
thf(fact_868_set__update__memI,axiom,
    ! [N: nat,Xs: list_P8875379029341186191rm_a_b,X: produc357393685978478089rm_a_b] :
      ( ( ord_less_nat @ N @ ( size_s8600120110137556219rm_a_b @ Xs ) )
     => ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( list_u4211539095652206455rm_a_b @ Xs @ N @ X ) ) ) ) ).

% set_update_memI
thf(fact_869_replace__term__at_Osimps_I3_J,axiom,
    ! [I: nat,Ts: list_term_a_b,F: a,Ps: list_nat,T: term_a_b] :
      ( ( ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Ts ) )
       => ( ( term_r6860082780075436317at_a_b @ ( fun_a_b @ F @ Ts ) @ ( cons_nat @ I @ Ps ) @ T )
          = ( fun_a_b @ F @ ( list_update_term_a_b @ Ts @ I @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ts @ I ) @ Ps @ T ) ) ) ) )
      & ( ~ ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Ts ) )
       => ( ( term_r6860082780075436317at_a_b @ ( fun_a_b @ F @ Ts ) @ ( cons_nat @ I @ Ps ) @ T )
          = ( fun_a_b @ F @ Ts ) ) ) ) ).

% replace_term_at.simps(3)
thf(fact_870_nth__append__take,axiom,
    ! [I: nat,Xs: list_nat,Y: nat,Ys: list_nat] :
      ( ( ord_less_eq_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( append_nat @ ( take_nat @ I @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ I )
        = Y ) ) ).

% nth_append_take
thf(fact_871_take__Suc__conv__app__nth,axiom,
    ! [I: nat,Xs: list_term_a_b] :
      ( ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Xs ) )
     => ( ( take_term_a_b @ ( suc @ I ) @ Xs )
        = ( append_term_a_b @ ( take_term_a_b @ I @ Xs ) @ ( cons_term_a_b @ ( nth_term_a_b @ Xs @ I ) @ nil_term_a_b ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_872_take__Suc__conv__app__nth,axiom,
    ! [I: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( take_nat @ ( suc @ I ) @ Xs )
        = ( append_nat @ ( take_nat @ I @ Xs ) @ ( cons_nat @ ( nth_nat @ Xs @ I ) @ nil_nat ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_873_add__elem__list__listsE,axiom,
    ! [Ys: list_nat,X: nat,Xs: list_nat] :
      ( ( member_list_nat2 @ Ys @ ( set_list_nat2 @ ( basic_4874698711677410535ts_nat @ X @ Xs ) ) )
     => ? [N3: nat] :
          ( ( ord_less_eq_nat @ N3 @ ( size_size_list_nat @ Xs ) )
          & ( Ys
            = ( append_nat @ ( take_nat @ N3 @ Xs ) @ ( cons_nat @ X @ ( drop_nat @ N3 @ Xs ) ) ) ) ) ) ).

% add_elem_list_listsE
thf(fact_874_add__elem__list__listsI,axiom,
    ! [N: nat,Xs: list_nat,Ys: list_nat,X: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( Ys
          = ( append_nat @ ( take_nat @ N @ Xs ) @ ( cons_nat @ X @ ( drop_nat @ N @ Xs ) ) ) )
       => ( member_list_nat2 @ Ys @ ( set_list_nat2 @ ( basic_4874698711677410535ts_nat @ X @ Xs ) ) ) ) ) ).

% add_elem_list_listsI
thf(fact_875_lexord__take__index__conv,axiom,
    ! [X: list_term_a_b,Y: list_term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ X @ Y ) @ ( lexord_term_a_b @ R ) )
      = ( ( ( ord_less_nat @ ( size_s8906293707977694520rm_a_b @ X ) @ ( size_s8906293707977694520rm_a_b @ Y ) )
          & ( ( take_term_a_b @ ( size_s8906293707977694520rm_a_b @ X ) @ Y )
            = X ) )
        | ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( ord_min_nat @ ( size_s8906293707977694520rm_a_b @ X ) @ ( size_s8906293707977694520rm_a_b @ Y ) ) )
            & ( ( take_term_a_b @ I3 @ X )
              = ( take_term_a_b @ I3 @ Y ) )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ X @ I3 ) @ ( nth_term_a_b @ Y @ I3 ) ) @ R ) ) ) ) ).

% lexord_take_index_conv
thf(fact_876_nth__Cons__Suc,axiom,
    ! [X: nat,Xs: list_nat,N: nat] :
      ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ ( suc @ N ) )
      = ( nth_nat @ Xs @ N ) ) ).

% nth_Cons_Suc
thf(fact_877_take__Suc__Cons,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( take_nat @ ( suc @ N ) @ ( cons_nat @ X @ Xs ) )
      = ( cons_nat @ X @ ( take_nat @ N @ Xs ) ) ) ).

% take_Suc_Cons
thf(fact_878_drop__Suc__Cons,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( drop_nat @ ( suc @ N ) @ ( cons_nat @ X @ Xs ) )
      = ( drop_nat @ N @ Xs ) ) ).

% drop_Suc_Cons
thf(fact_879_drop__all,axiom,
    ! [Xs: list_term_a_b,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s8906293707977694520rm_a_b @ Xs ) @ N )
     => ( ( drop_term_a_b @ N @ Xs )
        = nil_term_a_b ) ) ).

% drop_all
thf(fact_880_drop__all,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N )
     => ( ( drop_nat @ N @ Xs )
        = nil_nat ) ) ).

% drop_all
thf(fact_881_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_term_a_b] :
      ( ( ( drop_term_a_b @ N @ Xs )
        = nil_term_a_b )
      = ( ord_less_eq_nat @ ( size_s8906293707977694520rm_a_b @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_882_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( drop_nat @ N @ Xs )
        = nil_nat )
      = ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_883_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_term_a_b] :
      ( ( nil_term_a_b
        = ( drop_term_a_b @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s8906293707977694520rm_a_b @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_884_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( nil_nat
        = ( drop_nat @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_885_in__set__dropD,axiom,
    ! [X: list_nat,N: nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ ( drop_list_nat @ N @ Xs ) ) )
     => ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_886_in__set__dropD,axiom,
    ! [X: produc357393685978478089rm_a_b,N: nat,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( drop_P2146130716461001295rm_a_b @ N @ Xs ) ) )
     => ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) ) ) ).

% in_set_dropD
thf(fact_887_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_term_a_b @ N @ nil_term_a_b )
      = nil_term_a_b ) ).

% drop_Nil
thf(fact_888_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_nat @ N @ nil_nat )
      = nil_nat ) ).

% drop_Nil
thf(fact_889_Cons__nth__drop__Suc,axiom,
    ! [I: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( cons_nat @ ( nth_nat @ Xs @ I ) @ ( drop_nat @ ( suc @ I ) @ Xs ) )
        = ( drop_nat @ I @ Xs ) ) ) ).

% Cons_nth_drop_Suc
thf(fact_890_take__drop__imp__nth,axiom,
    ! [I: nat,Ss: list_nat,X: nat] :
      ( ( ( append_nat @ ( take_nat @ I @ Ss ) @ ( cons_nat @ X @ ( drop_nat @ ( suc @ I ) @ Ss ) ) )
        = Ss )
     => ( X
        = ( nth_nat @ Ss @ I ) ) ) ).

% take_drop_imp_nth
thf(fact_891_nth__via__drop,axiom,
    ! [N: nat,Xs: list_nat,Y: nat,Ys: list_nat] :
      ( ( ( drop_nat @ N @ Xs )
        = ( cons_nat @ Y @ Ys ) )
     => ( ( nth_nat @ Xs @ N )
        = Y ) ) ).

% nth_via_drop
thf(fact_892_length__Suc__conv,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( suc @ N ) )
      = ( ? [Y5: nat,Ys3: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y5 @ Ys3 ) )
            & ( ( size_size_list_nat @ Ys3 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_893_Suc__length__conv,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( suc @ N )
        = ( size_size_list_nat @ Xs ) )
      = ( ? [Y5: nat,Ys3: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y5 @ Ys3 ) )
            & ( ( size_size_list_nat @ Ys3 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_894_Abstract__Rewriting_Ochain__mono,axiom,
    ! [R4: set_Pr4386577575007340137rm_a_b,R2: set_Pr4386577575007340137rm_a_b,Seq: nat > term_a_b] :
      ( ( ord_le118470702582115849rm_a_b @ R4 @ R2 )
     => ( ! [I2: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( Seq @ I2 ) @ ( Seq @ ( suc @ I2 ) ) ) @ R4 )
       => ! [I4: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( Seq @ I4 ) @ ( Seq @ ( suc @ I4 ) ) ) @ R2 ) ) ) ).

% Abstract_Rewriting.chain_mono
thf(fact_895_list__update__code_I3_J,axiom,
    ! [X: nat,Xs: list_nat,I: nat,Y: nat] :
      ( ( list_update_nat @ ( cons_nat @ X @ Xs ) @ ( suc @ I ) @ Y )
      = ( cons_nat @ X @ ( list_update_nat @ Xs @ I @ Y ) ) ) ).

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

% gen_length_code(2)
thf(fact_897_id__take__nth__drop,axiom,
    ! [I: nat,Xs: list_nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( Xs
        = ( append_nat @ ( take_nat @ I @ Xs ) @ ( cons_nat @ ( nth_nat @ Xs @ I ) @ ( drop_nat @ ( suc @ I ) @ Xs ) ) ) ) ) ).

% id_take_nth_drop
thf(fact_898_nth__append__take__drop__is__nth__conv,axiom,
    ! [I: nat,Xs: list_nat,J: nat,Y: nat] :
      ( ( ord_less_eq_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( ord_less_eq_nat @ J @ ( size_size_list_nat @ Xs ) )
       => ( ( I != J )
         => ( ( nth_nat @ ( append_nat @ ( take_nat @ J @ Xs ) @ ( cons_nat @ Y @ ( drop_nat @ ( suc @ J ) @ Xs ) ) ) @ I )
            = ( nth_nat @ Xs @ I ) ) ) ) ) ).

% nth_append_take_drop_is_nth_conv
thf(fact_899_upd__conv__take__nth__drop,axiom,
    ! [I: nat,Xs: list_nat,A: nat] :
      ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
     => ( ( list_update_nat @ Xs @ I @ A )
        = ( append_nat @ ( take_nat @ I @ Xs ) @ ( cons_nat @ A @ ( drop_nat @ ( suc @ I ) @ Xs ) ) ) ) ) ).

% upd_conv_take_nth_drop
thf(fact_900_Suc__le__length__iff,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_size_list_nat @ Xs ) )
      = ( ? [X4: nat,Ys3: list_nat] :
            ( ( Xs
              = ( cons_nat @ X4 @ Ys3 ) )
            & ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Ys3 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_901_subterm_Olift__Suc__mono__less,axiom,
    ! [F: nat > term_a_b,N: nat,N4: nat] :
      ( ! [N3: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) ) @ subterm_and_supt_a_b )
     => ( ( ord_less_nat @ N @ N4 )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ N4 ) @ ( F @ N ) ) @ subterm_and_supt_a_b ) ) ) ).

% subterm.lift_Suc_mono_less
thf(fact_902_subterm_Olift__Suc__mono__less__iff,axiom,
    ! [F: nat > term_a_b,M: nat,N: nat] :
      ( ! [N3: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) ) @ subterm_and_supt_a_b )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ M ) @ ( F @ N ) ) @ subterm_and_supt_a_b )
        = ( ord_less_nat @ N @ M ) ) ) ).

% subterm.lift_Suc_mono_less_iff
thf(fact_903_subterm_Olift__Suc__antimono__le,axiom,
    ! [F: nat > term_a_b,N: nat,N4: nat] :
      ( ! [N3: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) ) @ subter523971068842742411eq_a_b )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ N ) @ ( F @ N4 ) ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.lift_Suc_antimono_le
thf(fact_904_subterm_Olift__Suc__mono__le,axiom,
    ! [F: nat > term_a_b,N: nat,N4: nat] :
      ( ! [N3: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) ) @ subter523971068842742411eq_a_b )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F @ N4 ) @ ( F @ N ) ) @ subter523971068842742411eq_a_b ) ) ) ).

% subterm.lift_Suc_mono_le
thf(fact_905_nth__append__drop__is__nth__conv,axiom,
    ! [J: nat,I: nat,Xs: list_nat,Y: nat] :
      ( ( ord_less_nat @ J @ I )
     => ( ( ord_less_eq_nat @ J @ ( size_size_list_nat @ Xs ) )
       => ( ( ord_less_eq_nat @ I @ ( size_size_list_nat @ Xs ) )
         => ( ( nth_nat @ ( append_nat @ ( take_nat @ J @ Xs ) @ ( cons_nat @ Y @ ( drop_nat @ ( suc @ J ) @ Xs ) ) ) @ I )
            = ( nth_nat @ Xs @ I ) ) ) ) ) ).

% nth_append_drop_is_nth_conv
thf(fact_906_length__add__elem__list__lists,axiom,
    ! [Ys: list_nat,X: nat,Xs: list_nat] :
      ( ( member_list_nat2 @ Ys @ ( set_list_nat2 @ ( basic_4874698711677410535ts_nat @ X @ Xs ) ) )
     => ( ( size_size_list_nat @ Ys )
        = ( suc @ ( size_size_list_nat @ Xs ) ) ) ) ).

% length_add_elem_list_lists
thf(fact_907_length__Suc__conv__rev,axiom,
    ! [Xs: list_term_a_b,N: nat] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( suc @ N ) )
      = ( ? [Y5: term_a_b,Ys3: list_term_a_b] :
            ( ( Xs
              = ( append_term_a_b @ Ys3 @ ( cons_term_a_b @ Y5 @ nil_term_a_b ) ) )
            & ( ( size_s8906293707977694520rm_a_b @ Ys3 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_908_length__Suc__conv__rev,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( suc @ N ) )
      = ( ? [Y5: nat,Ys3: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ Y5 @ nil_nat ) ) )
            & ( ( size_size_list_nat @ Ys3 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_909_length__append__singleton,axiom,
    ! [Xs: list_term_a_b,X: term_a_b] :
      ( ( size_s8906293707977694520rm_a_b @ ( append_term_a_b @ Xs @ ( cons_term_a_b @ X @ nil_term_a_b ) ) )
      = ( suc @ ( size_s8906293707977694520rm_a_b @ Xs ) ) ) ).

% length_append_singleton
thf(fact_910_length__append__singleton,axiom,
    ! [Xs: list_nat,X: nat] :
      ( ( size_size_list_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) )
      = ( suc @ ( size_size_list_nat @ Xs ) ) ) ).

% length_append_singleton
thf(fact_911_chain__imp__trancl,axiom,
    ! [S6: nat > term_a_b,R: set_Pr4386577575007340137rm_a_b,I: nat,J: nat] :
      ( ! [I2: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( S6 @ I2 ) @ ( S6 @ ( suc @ I2 ) ) ) @ R )
     => ( ( ord_less_nat @ I @ J )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( S6 @ I ) @ ( S6 @ J ) ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% chain_imp_trancl
thf(fact_912_length__Cons,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( size_size_list_nat @ ( cons_nat @ X @ Xs ) )
      = ( suc @ ( size_size_list_nat @ Xs ) ) ) ).

% length_Cons
thf(fact_913_replace__term__at_Oelims,axiom,
    ! [X: term_a_b,Xa: list_nat,Xb: term_a_b,Y: term_a_b] :
      ( ( ( term_r6860082780075436317at_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xa = nil_nat )
         => ( Y != Xb ) )
       => ( ! [X3: b] :
              ( ( X
                = ( var_b_a @ X3 ) )
             => ( ? [V: nat,Va: list_nat] :
                    ( Xa
                    = ( cons_nat @ V @ Va ) )
               => ( Y
                 != ( var_b_a @ X3 ) ) ) )
         => ~ ! [F3: a,Ts2: list_term_a_b] :
                ( ( X
                  = ( fun_a_b @ F3 @ Ts2 ) )
               => ! [I2: nat,Ps2: list_nat] :
                    ( ( Xa
                      = ( cons_nat @ I2 @ Ps2 ) )
                   => ~ ( ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) )
                         => ( Y
                            = ( fun_a_b @ F3 @ ( list_update_term_a_b @ Ts2 @ I2 @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ts2 @ I2 ) @ Ps2 @ Xb ) ) ) ) )
                        & ( ~ ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) )
                         => ( Y
                            = ( fun_a_b @ F3 @ Ts2 ) ) ) ) ) ) ) ) ) ).

% replace_term_at.elims
thf(fact_914_funas__term_Ocases,axiom,
    ! [X: term_a_b] :
      ( ! [X3: b] :
          ( X
         != ( var_b_a @ X3 ) )
     => ~ ! [F3: a,Ts2: list_term_a_b] :
            ( X
           != ( fun_a_b @ F3 @ Ts2 ) ) ) ).

% funas_term.cases
thf(fact_915_linear__term_Ocases,axiom,
    ! [X: term_a_b] :
      ( ! [Uu: b] :
          ( X
         != ( var_b_a @ Uu ) )
     => ~ ! [Uv: a,Ts2: list_term_a_b] :
            ( X
           != ( fun_a_b @ Uv @ Ts2 ) ) ) ).

% linear_term.cases
thf(fact_916_Term_Oterm_Oexhaust,axiom,
    ! [Y: term_a_b] :
      ( ! [X12: b] :
          ( Y
         != ( var_b_a @ X12 ) )
     => ~ ! [X212: a,X222: list_term_a_b] :
            ( Y
           != ( fun_a_b @ X212 @ X222 ) ) ) ).

% Term.term.exhaust
thf(fact_917_term_Odistinct_I1_J,axiom,
    ! [X1: b,X21: a,X22: list_term_a_b] :
      ( ( var_b_a @ X1 )
     != ( fun_a_b @ X21 @ X22 ) ) ).

% term.distinct(1)
thf(fact_918_supteq__var__imp__eq,axiom,
    ! [X: b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( var_b_a @ X ) @ T ) @ subter523971068842742411eq_a_b )
      = ( T
        = ( var_b_a @ X ) ) ) ).

% supteq_var_imp_eq
thf(fact_919_Var__supt,axiom,
    ! [X: b,T: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( var_b_a @ X ) @ T ) @ subterm_and_supt_a_b ) ).

% Var_supt
thf(fact_920_supt__var,axiom,
    ! [X: b,U: term_a_b] :
      ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( var_b_a @ X ) @ U ) @ subterm_and_supt_a_b ) ).

% supt_var
thf(fact_921_term__to__sig_Ocases,axiom,
    ! [X: produc5279506192219892694rm_a_b] :
      ( ! [F4: set_Pr4934435412358123699_a_nat,V: b,X3: b] :
          ( X
         != ( produc8030969961714872974rm_a_b @ F4 @ ( produc1437816968797971900rm_a_b @ V @ ( var_b_a @ X3 ) ) ) )
     => ~ ! [F4: set_Pr4934435412358123699_a_nat,V: b,F3: a,Ts2: list_term_a_b] :
            ( X
           != ( produc8030969961714872974rm_a_b @ F4 @ ( produc1437816968797971900rm_a_b @ V @ ( fun_a_b @ F3 @ Ts2 ) ) ) ) ) ).

% term_to_sig.cases
thf(fact_922_replace__term__at_Osimps_I2_J,axiom,
    ! [X: b,V2: nat,Va2: list_nat,T: term_a_b] :
      ( ( term_r6860082780075436317at_a_b @ ( var_b_a @ X ) @ ( cons_nat @ V2 @ Va2 ) @ T )
      = ( var_b_a @ X ) ) ).

% replace_term_at.simps(2)
thf(fact_923_depth_Ocases,axiom,
    ! [X: term_a_b] :
      ( ! [X3: b] :
          ( X
         != ( var_b_a @ X3 ) )
     => ( ! [F3: a] :
            ( X
           != ( fun_a_b @ F3 @ nil_term_a_b ) )
       => ~ ! [F3: a,V: term_a_b,Va: list_term_a_b] :
              ( X
             != ( fun_a_b @ F3 @ ( cons_term_a_b @ V @ Va ) ) ) ) ) ).

% depth.cases
thf(fact_924_replace__term__at_Ocases,axiom,
    ! [X: produc2732850333517536310rm_a_b] :
      ( ! [S2: term_a_b,T2: term_a_b] :
          ( X
         != ( produc3812856575676843240rm_a_b @ S2 @ ( produc5151171985953862413rm_a_b @ nil_nat @ T2 ) ) )
     => ( ! [X3: b,V: nat,Va: list_nat,T2: term_a_b] :
            ( X
           != ( produc3812856575676843240rm_a_b @ ( var_b_a @ X3 ) @ ( produc5151171985953862413rm_a_b @ ( cons_nat @ V @ Va ) @ T2 ) ) )
       => ~ ! [F3: a,Ts2: list_term_a_b,I2: nat,Ps2: list_nat,T2: term_a_b] :
              ( X
             != ( produc3812856575676843240rm_a_b @ ( fun_a_b @ F3 @ Ts2 ) @ ( produc5151171985953862413rm_a_b @ ( cons_nat @ I2 @ Ps2 ) @ T2 ) ) ) ) ) ).

% replace_term_at.cases
thf(fact_925_ctxt__at__pos_Ocases,axiom,
    ! [X: produc3697673438841856213st_nat] :
      ( ! [S2: term_a_b] :
          ( X
         != ( produc4563063199488751885st_nat @ S2 @ nil_nat ) )
     => ( ! [F3: a,Ss3: list_term_a_b,I2: nat,P2: list_nat] :
            ( X
           != ( produc4563063199488751885st_nat @ ( fun_a_b @ F3 @ Ss3 ) @ ( cons_nat @ I2 @ P2 ) ) )
       => ~ ! [X3: b,V: nat,Va: list_nat] :
              ( X
             != ( produc4563063199488751885st_nat @ ( var_b_a @ X3 ) @ ( cons_nat @ V @ Va ) ) ) ) ) ).

% ctxt_at_pos.cases
thf(fact_926_subt__at_Ocases,axiom,
    ! [X: produc3697673438841856213st_nat] :
      ( ! [S2: term_a_b] :
          ( X
         != ( produc4563063199488751885st_nat @ S2 @ nil_nat ) )
     => ( ! [F3: a,Ss3: list_term_a_b,I2: nat,P2: list_nat] :
            ( X
           != ( produc4563063199488751885st_nat @ ( fun_a_b @ F3 @ Ss3 ) @ ( cons_nat @ I2 @ P2 ) ) )
       => ~ ! [X3: b,V: nat,Va: list_nat] :
              ( X
             != ( produc4563063199488751885st_nat @ ( var_b_a @ X3 ) @ ( cons_nat @ V @ Va ) ) ) ) ) ).

% subt_at.cases
thf(fact_927_fun__at_Ocases,axiom,
    ! [X: produc3697673438841856213st_nat] :
      ( ! [X3: b] :
          ( X
         != ( produc4563063199488751885st_nat @ ( var_b_a @ X3 ) @ nil_nat ) )
     => ( ! [F3: a,Ts2: list_term_a_b] :
            ( X
           != ( produc4563063199488751885st_nat @ ( fun_a_b @ F3 @ Ts2 ) @ nil_nat ) )
       => ( ! [F3: a,Ts2: list_term_a_b,I2: nat,P2: list_nat] :
              ( X
             != ( produc4563063199488751885st_nat @ ( fun_a_b @ F3 @ Ts2 ) @ ( cons_nat @ I2 @ P2 ) ) )
         => ~ ! [Vb: b,V: nat,Va: list_nat] :
                ( X
               != ( produc4563063199488751885st_nat @ ( var_b_a @ Vb ) @ ( cons_nat @ V @ Va ) ) ) ) ) ) ).

% fun_at.cases
thf(fact_928_take__hd__drop,axiom,
    ! [N: nat,Xs: list_term_a_b] :
      ( ( ord_less_nat @ N @ ( size_s8906293707977694520rm_a_b @ Xs ) )
     => ( ( append_term_a_b @ ( take_term_a_b @ N @ Xs ) @ ( cons_term_a_b @ ( hd_term_a_b @ ( drop_term_a_b @ N @ Xs ) ) @ nil_term_a_b ) )
        = ( take_term_a_b @ ( suc @ N ) @ Xs ) ) ) ).

% take_hd_drop
thf(fact_929_take__hd__drop,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( append_nat @ ( take_nat @ N @ Xs ) @ ( cons_nat @ ( hd_nat @ ( drop_nat @ N @ Xs ) ) @ nil_nat ) )
        = ( take_nat @ ( suc @ N ) @ Xs ) ) ) ).

% take_hd_drop
thf(fact_930_hd__append2,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( hd_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
        = ( hd_term_a_b @ Xs ) ) ) ).

% hd_append2
thf(fact_931_hd__append2,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( hd_nat @ ( append_nat @ Xs @ Ys ) )
        = ( hd_nat @ Xs ) ) ) ).

% hd_append2
thf(fact_932_list_Osel_I1_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( ( hd_nat @ ( cons_nat @ X21 @ X22 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_933_hd__concat,axiom,
    ! [Xs: list_list_term_a_b] :
      ( ( Xs != nil_list_term_a_b )
     => ( ( ( hd_list_term_a_b @ Xs )
         != nil_term_a_b )
       => ( ( hd_term_a_b @ ( concat_term_a_b @ Xs ) )
          = ( hd_term_a_b @ ( hd_list_term_a_b @ Xs ) ) ) ) ) ).

% hd_concat
thf(fact_934_hd__concat,axiom,
    ! [Xs: list_list_nat] :
      ( ( Xs != nil_list_nat )
     => ( ( ( hd_list_nat @ Xs )
         != nil_nat )
       => ( ( hd_nat @ ( concat_nat @ Xs ) )
          = ( hd_nat @ ( hd_list_nat @ Xs ) ) ) ) ) ).

% hd_concat
thf(fact_935_hd__in__set,axiom,
    ! [Xs: list_list_nat] :
      ( ( Xs != nil_list_nat )
     => ( member_list_nat2 @ ( hd_list_nat @ Xs ) @ ( set_list_nat2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_936_hd__in__set,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b] :
      ( ( Xs != nil_Pr6942174756412032271rm_a_b )
     => ( member5869715511025134514rm_a_b @ ( hd_Pro6001814652670619252rm_a_b @ Xs ) @ ( set_Pr2370880052973118494rm_a_b @ Xs ) ) ) ).

% hd_in_set
thf(fact_937_hd__in__set,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( member_term_a_b2 @ ( hd_term_a_b @ Xs ) @ ( set_term_a_b2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_938_hd__in__set,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( member_nat2 @ ( hd_nat @ Xs ) @ ( set_nat2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_939_list_Oset__sel_I1_J,axiom,
    ! [A: list_list_nat] :
      ( ( A != nil_list_nat )
     => ( member_list_nat2 @ ( hd_list_nat @ A ) @ ( set_list_nat2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_940_list_Oset__sel_I1_J,axiom,
    ! [A: list_P8875379029341186191rm_a_b] :
      ( ( A != nil_Pr6942174756412032271rm_a_b )
     => ( member5869715511025134514rm_a_b @ ( hd_Pro6001814652670619252rm_a_b @ A ) @ ( set_Pr2370880052973118494rm_a_b @ A ) ) ) ).

% list.set_sel(1)
thf(fact_941_list_Oset__sel_I1_J,axiom,
    ! [A: list_term_a_b] :
      ( ( A != nil_term_a_b )
     => ( member_term_a_b2 @ ( hd_term_a_b @ A ) @ ( set_term_a_b2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_942_list_Oset__sel_I1_J,axiom,
    ! [A: list_nat] :
      ( ( A != nil_nat )
     => ( member_nat2 @ ( hd_nat @ A ) @ ( set_nat2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_943_hd__append,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ( Xs = nil_term_a_b )
       => ( ( hd_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( hd_term_a_b @ Ys ) ) )
      & ( ( Xs != nil_term_a_b )
       => ( ( hd_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( hd_term_a_b @ Xs ) ) ) ) ).

% hd_append
thf(fact_944_hd__append,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( Xs = nil_nat )
       => ( ( hd_nat @ ( append_nat @ Xs @ Ys ) )
          = ( hd_nat @ Ys ) ) )
      & ( ( Xs != nil_nat )
       => ( ( hd_nat @ ( append_nat @ Xs @ Ys ) )
          = ( hd_nat @ Xs ) ) ) ) ).

% hd_append
thf(fact_945_longest__common__prefix,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
    ? [Ps2: list_term_a_b,Xs5: list_term_a_b,Ys6: list_term_a_b] :
      ( ( Xs
        = ( append_term_a_b @ Ps2 @ Xs5 ) )
      & ( Ys
        = ( append_term_a_b @ Ps2 @ Ys6 ) )
      & ( ( Xs5 = nil_term_a_b )
        | ( Ys6 = nil_term_a_b )
        | ( ( hd_term_a_b @ Xs5 )
         != ( hd_term_a_b @ Ys6 ) ) ) ) ).

% longest_common_prefix
thf(fact_946_longest__common__prefix,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
    ? [Ps2: list_nat,Xs5: list_nat,Ys6: list_nat] :
      ( ( Xs
        = ( append_nat @ Ps2 @ Xs5 ) )
      & ( Ys
        = ( append_nat @ Ps2 @ Ys6 ) )
      & ( ( Xs5 = nil_nat )
        | ( Ys6 = nil_nat )
        | ( ( hd_nat @ Xs5 )
         != ( hd_nat @ Ys6 ) ) ) ) ).

% longest_common_prefix
thf(fact_947_hd__Nil__eq__last,axiom,
    ( ( hd_term_a_b @ nil_term_a_b )
    = ( last_term_a_b @ nil_term_a_b ) ) ).

% hd_Nil_eq_last
thf(fact_948_hd__Nil__eq__last,axiom,
    ( ( hd_nat @ nil_nat )
    = ( last_nat @ nil_nat ) ) ).

% hd_Nil_eq_last
thf(fact_949_gterm__of__term_Ocases,axiom,
    ! [X: term_a_b] :
      ( ! [F3: a,Ts2: list_term_a_b] :
          ( X
         != ( fun_a_b @ F3 @ Ts2 ) )
     => ~ ! [V: b] :
            ( X
           != ( var_b_a @ V ) ) ) ).

% gterm_of_term.cases
thf(fact_950_replace__term__at_Opelims,axiom,
    ! [X: term_a_b,Xa: list_nat,Xb: term_a_b,Y: term_a_b] :
      ( ( ( term_r6860082780075436317at_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P2729577386226225901rm_a_b @ term_r1280879029893354718el_a_b @ ( produc3812856575676843240rm_a_b @ X @ ( produc5151171985953862413rm_a_b @ Xa @ Xb ) ) )
       => ( ( ( Xa = nil_nat )
           => ( ( Y = Xb )
             => ~ ( accp_P2729577386226225901rm_a_b @ term_r1280879029893354718el_a_b @ ( produc3812856575676843240rm_a_b @ X @ ( produc5151171985953862413rm_a_b @ nil_nat @ Xb ) ) ) ) )
         => ( ! [X3: b] :
                ( ( X
                  = ( var_b_a @ X3 ) )
               => ! [V: nat,Va: list_nat] :
                    ( ( Xa
                      = ( cons_nat @ V @ Va ) )
                   => ( ( Y
                        = ( var_b_a @ X3 ) )
                     => ~ ( accp_P2729577386226225901rm_a_b @ term_r1280879029893354718el_a_b @ ( produc3812856575676843240rm_a_b @ ( var_b_a @ X3 ) @ ( produc5151171985953862413rm_a_b @ ( cons_nat @ V @ Va ) @ Xb ) ) ) ) ) )
           => ~ ! [F3: a,Ts2: list_term_a_b] :
                  ( ( X
                    = ( fun_a_b @ F3 @ Ts2 ) )
                 => ! [I2: nat,Ps2: list_nat] :
                      ( ( Xa
                        = ( cons_nat @ I2 @ Ps2 ) )
                     => ( ( ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) )
                           => ( Y
                              = ( fun_a_b @ F3 @ ( list_update_term_a_b @ Ts2 @ I2 @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ts2 @ I2 ) @ Ps2 @ Xb ) ) ) ) )
                          & ( ~ ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) )
                           => ( Y
                              = ( fun_a_b @ F3 @ Ts2 ) ) ) )
                       => ~ ( accp_P2729577386226225901rm_a_b @ term_r1280879029893354718el_a_b @ ( produc3812856575676843240rm_a_b @ ( fun_a_b @ F3 @ Ts2 ) @ ( produc5151171985953862413rm_a_b @ ( cons_nat @ I2 @ Ps2 ) @ Xb ) ) ) ) ) ) ) ) ) ) ).

% replace_term_at.pelims
thf(fact_951_term_Osel_I4_J,axiom,
    ! [X21: a,X22: list_term_a_b] :
      ( ( args_a_b @ ( fun_a_b @ X21 @ X22 ) )
      = X22 ) ).

% term.sel(4)
thf(fact_952_term_Osel_I3_J,axiom,
    ! [X1: b] :
      ( ( args_a_b @ ( var_b_a @ X1 ) )
      = nil_term_a_b ) ).

% term.sel(3)
thf(fact_953_subt__at_Oelims,axiom,
    ! [X: term_a_b,Xa: list_nat,Y: term_a_b] :
      ( ( ( term_subt_at_a_b @ X @ Xa )
        = Y )
     => ( ( ( Xa = nil_nat )
         => ( Y != X ) )
       => ( ! [F3: a,Ss3: list_term_a_b] :
              ( ( X
                = ( fun_a_b @ F3 @ Ss3 ) )
             => ! [I2: nat,P2: list_nat] :
                  ( ( Xa
                    = ( cons_nat @ I2 @ P2 ) )
                 => ( Y
                   != ( term_subt_at_a_b @ ( nth_term_a_b @ Ss3 @ I2 ) @ P2 ) ) ) )
         => ~ ( ? [X3: b] :
                  ( X
                  = ( var_b_a @ X3 ) )
             => ( ? [V: nat,Va: list_nat] :
                    ( Xa
                    = ( cons_nat @ V @ Va ) )
               => ( Y != undefined_term_a_b ) ) ) ) ) ) ).

% subt_at.elims
thf(fact_954_SuccI,axiom,
    ! [Kl: list_list_nat,K: list_nat,Kl2: set_list_list_nat] :
      ( ( member_list_list_nat2 @ ( append_list_nat @ Kl @ ( cons_list_nat @ K @ nil_list_nat ) ) @ Kl2 )
     => ( member_list_nat2 @ K @ ( bNF_Gr3053708287304744325st_nat @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_955_SuccI,axiom,
    ! [Kl: list_P8875379029341186191rm_a_b,K: produc357393685978478089rm_a_b,Kl2: set_li7311725489111463791rm_a_b] :
      ( ( member7646937072540562872rm_a_b @ ( append1152621114427393060rm_a_b @ Kl @ ( cons_P3536305108106557631rm_a_b @ K @ nil_Pr6942174756412032271rm_a_b ) ) @ Kl2 )
     => ( member5869715511025134514rm_a_b @ K @ ( bNF_Gr7233806482624125860rm_a_b @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_956_SuccI,axiom,
    ! [Kl: list_term_a_b,K: term_a_b,Kl2: set_list_term_a_b] :
      ( ( member_list_term_a_b2 @ ( append_term_a_b @ Kl @ ( cons_term_a_b @ K @ nil_term_a_b ) ) @ Kl2 )
     => ( member_term_a_b2 @ K @ ( bNF_Gr5510842888252665017rm_a_b @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_957_SuccI,axiom,
    ! [Kl: list_nat,K: nat,Kl2: set_list_nat] :
      ( ( member_list_nat2 @ ( append_nat @ Kl @ ( cons_nat @ K @ nil_nat ) ) @ Kl2 )
     => ( member_nat2 @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_958_SuccD,axiom,
    ! [K: list_nat,Kl2: set_list_list_nat,Kl: list_list_nat] :
      ( ( member_list_nat2 @ K @ ( bNF_Gr3053708287304744325st_nat @ Kl2 @ Kl ) )
     => ( member_list_list_nat2 @ ( append_list_nat @ Kl @ ( cons_list_nat @ K @ nil_list_nat ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_959_SuccD,axiom,
    ! [K: produc357393685978478089rm_a_b,Kl2: set_li7311725489111463791rm_a_b,Kl: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ K @ ( bNF_Gr7233806482624125860rm_a_b @ Kl2 @ Kl ) )
     => ( member7646937072540562872rm_a_b @ ( append1152621114427393060rm_a_b @ Kl @ ( cons_P3536305108106557631rm_a_b @ K @ nil_Pr6942174756412032271rm_a_b ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_960_SuccD,axiom,
    ! [K: term_a_b,Kl2: set_list_term_a_b,Kl: list_term_a_b] :
      ( ( member_term_a_b2 @ K @ ( bNF_Gr5510842888252665017rm_a_b @ Kl2 @ Kl ) )
     => ( member_list_term_a_b2 @ ( append_term_a_b @ Kl @ ( cons_term_a_b @ K @ nil_term_a_b ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_961_SuccD,axiom,
    ! [K: nat,Kl2: set_list_nat,Kl: list_nat] :
      ( ( member_nat2 @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ Kl ) )
     => ( member_list_nat2 @ ( append_nat @ Kl @ ( cons_nat @ K @ nil_nat ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_962_empty__Shift,axiom,
    ! [Kl2: set_list_list_nat,K: list_nat] :
      ( ( member_list_list_nat2 @ nil_list_nat @ Kl2 )
     => ( ( member_list_nat2 @ K @ ( bNF_Gr3053708287304744325st_nat @ Kl2 @ nil_list_nat ) )
       => ( member_list_list_nat2 @ nil_list_nat @ ( bNF_Gr9051742241863529473st_nat @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_963_empty__Shift,axiom,
    ! [Kl2: set_li7311725489111463791rm_a_b,K: produc357393685978478089rm_a_b] :
      ( ( member7646937072540562872rm_a_b @ nil_Pr6942174756412032271rm_a_b @ Kl2 )
     => ( ( member5869715511025134514rm_a_b @ K @ ( bNF_Gr7233806482624125860rm_a_b @ Kl2 @ nil_Pr6942174756412032271rm_a_b ) )
       => ( member7646937072540562872rm_a_b @ nil_Pr6942174756412032271rm_a_b @ ( bNF_Gr369565347726608424rm_a_b @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_964_empty__Shift,axiom,
    ! [Kl2: set_list_term_a_b,K: term_a_b] :
      ( ( member_list_term_a_b2 @ nil_term_a_b @ Kl2 )
     => ( ( member_term_a_b2 @ K @ ( bNF_Gr5510842888252665017rm_a_b @ Kl2 @ nil_term_a_b ) )
       => ( member_list_term_a_b2 @ nil_term_a_b @ ( bNF_Gr2285504805956674357rm_a_b @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_965_empty__Shift,axiom,
    ! [Kl2: set_list_nat,K: nat] :
      ( ( member_list_nat2 @ nil_nat @ Kl2 )
     => ( ( member_nat2 @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ nil_nat ) )
       => ( member_list_nat2 @ nil_nat @ ( bNF_Gr1872714664788909425ft_nat @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_966_Succ__Shift,axiom,
    ! [Kl2: set_list_nat,K: nat,Kl: list_nat] :
      ( ( bNF_Gr6352880689984616693cc_nat @ ( bNF_Gr1872714664788909425ft_nat @ Kl2 @ K ) @ Kl )
      = ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ ( cons_nat @ K @ Kl ) ) ) ).

% Succ_Shift
thf(fact_967_subt__at_Opelims,axiom,
    ! [X: term_a_b,Xa: list_nat,Y: term_a_b] :
      ( ( ( term_subt_at_a_b @ X @ Xa )
        = Y )
     => ( ( accp_P682940083893826398st_nat @ term_subt_at_rel_a_b @ ( produc4563063199488751885st_nat @ X @ Xa ) )
       => ( ( ( Xa = nil_nat )
           => ( ( Y = X )
             => ~ ( accp_P682940083893826398st_nat @ term_subt_at_rel_a_b @ ( produc4563063199488751885st_nat @ X @ nil_nat ) ) ) )
         => ( ! [F3: a,Ss3: list_term_a_b] :
                ( ( X
                  = ( fun_a_b @ F3 @ Ss3 ) )
               => ! [I2: nat,P2: list_nat] :
                    ( ( Xa
                      = ( cons_nat @ I2 @ P2 ) )
                   => ( ( Y
                        = ( term_subt_at_a_b @ ( nth_term_a_b @ Ss3 @ I2 ) @ P2 ) )
                     => ~ ( accp_P682940083893826398st_nat @ term_subt_at_rel_a_b @ ( produc4563063199488751885st_nat @ ( fun_a_b @ F3 @ Ss3 ) @ ( cons_nat @ I2 @ P2 ) ) ) ) ) )
           => ~ ! [X3: b] :
                  ( ( X
                    = ( var_b_a @ X3 ) )
                 => ! [V: nat,Va: list_nat] :
                      ( ( Xa
                        = ( cons_nat @ V @ Va ) )
                     => ( ( Y = undefined_term_a_b )
                       => ~ ( accp_P682940083893826398st_nat @ term_subt_at_rel_a_b @ ( produc4563063199488751885st_nat @ ( var_b_a @ X3 ) @ ( cons_nat @ V @ Va ) ) ) ) ) ) ) ) ) ) ).

% subt_at.pelims
thf(fact_968_ShiftD,axiom,
    ! [Kl: list_nat,Kl2: set_list_nat,K: nat] :
      ( ( member_list_nat2 @ Kl @ ( bNF_Gr1872714664788909425ft_nat @ Kl2 @ K ) )
     => ( member_list_nat2 @ ( cons_nat @ K @ Kl ) @ Kl2 ) ) ).

% ShiftD
thf(fact_969_rtrancl__list__conv,axiom,
    ! [S: nat,T: nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ S @ T ) @ ( transi2905341329935302413cl_nat @ R2 ) )
      = ( ? [Ts3: list_nat] :
            ( ( ( last_nat @ ( cons_nat @ S @ Ts3 ) )
              = T )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ts3 ) )
               => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ ( cons_nat @ S @ Ts3 ) @ I3 ) @ ( nth_nat @ ( cons_nat @ S @ Ts3 ) @ ( suc @ I3 ) ) ) @ R2 ) ) ) ) ) ).

% rtrancl_list_conv
thf(fact_970_rtrancl__list__conv,axiom,
    ! [S: term_a_b,T: term_a_b,R2: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ ( transi7742714808557438673rm_a_b @ R2 ) )
      = ( ? [Ts3: list_term_a_b] :
            ( ( ( last_term_a_b @ ( cons_term_a_b @ S @ Ts3 ) )
              = T )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ ( size_s8906293707977694520rm_a_b @ Ts3 ) )
               => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ ( cons_term_a_b @ S @ Ts3 ) @ I3 ) @ ( nth_term_a_b @ ( cons_term_a_b @ S @ Ts3 ) @ ( suc @ I3 ) ) ) @ R2 ) ) ) ) ) ).

% rtrancl_list_conv
thf(fact_971_fun__at_Osimps_I3_J,axiom,
    ! [I: nat,Ts: list_term_a_b,F: a,P: list_nat] :
      ( ( ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Ts ) )
       => ( ( term_fun_at_a_b @ ( fun_a_b @ F @ Ts ) @ ( cons_nat @ I @ P ) )
          = ( term_fun_at_a_b @ ( nth_term_a_b @ Ts @ I ) @ P ) ) )
      & ( ~ ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Ts ) )
       => ( ( term_fun_at_a_b @ ( fun_a_b @ F @ Ts ) @ ( cons_nat @ I @ P ) )
          = none_Sum_sum_a_b ) ) ) ).

% fun_at.simps(3)
thf(fact_972_nth__drop__0,axiom,
    ! [Ss: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Ss ) )
     => ( ( cons_nat @ ( nth_nat @ Ss @ zero_zero_nat ) @ ( drop_nat @ ( suc @ zero_zero_nat ) @ Ss ) )
        = Ss ) ) ).

% nth_drop_0
thf(fact_973_r__into__rtrancl,axiom,
    ! [P: produc357393685978478089rm_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ P @ R )
     => ( member5869715511025134514rm_a_b @ P @ ( transi7742714808557438673rm_a_b @ R ) ) ) ).

% r_into_rtrancl
thf(fact_974_rtrancl__trancl__absorb,axiom,
    ! [R2: set_Pr4386577575007340137rm_a_b] :
      ( ( transi7922773638565587891rm_a_b @ ( transi7742714808557438673rm_a_b @ R2 ) )
      = ( transi7742714808557438673rm_a_b @ R2 ) ) ).

% rtrancl_trancl_absorb
thf(fact_975_trancl__rtrancl__absorb,axiom,
    ! [R2: set_Pr4386577575007340137rm_a_b] :
      ( ( transi7742714808557438673rm_a_b @ ( transi7922773638565587891rm_a_b @ R2 ) )
      = ( transi7742714808557438673rm_a_b @ R2 ) ) ).

% trancl_rtrancl_absorb
thf(fact_976_length__0__conv,axiom,
    ! [Xs: list_term_a_b] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_term_a_b ) ) ).

% length_0_conv
thf(fact_977_length__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_nat ) ) ).

% length_0_conv
thf(fact_978_nth__Cons__0,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ zero_zero_nat )
      = X ) ).

% nth_Cons_0
thf(fact_979_take0,axiom,
    ( ( take_term_a_b @ zero_zero_nat )
    = ( ^ [Xs2: list_term_a_b] : nil_term_a_b ) ) ).

% take0
thf(fact_980_take0,axiom,
    ( ( take_nat @ zero_zero_nat )
    = ( ^ [Xs2: list_nat] : nil_nat ) ) ).

% take0
thf(fact_981_take__eq__Nil,axiom,
    ! [N: nat,Xs: list_term_a_b] :
      ( ( ( take_term_a_b @ N @ Xs )
        = nil_term_a_b )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_term_a_b ) ) ) ).

% take_eq_Nil
thf(fact_982_take__eq__Nil,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( take_nat @ N @ Xs )
        = nil_nat )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_nat ) ) ) ).

% take_eq_Nil
thf(fact_983_take__eq__Nil2,axiom,
    ! [N: nat,Xs: list_term_a_b] :
      ( ( nil_term_a_b
        = ( take_term_a_b @ N @ Xs ) )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_term_a_b ) ) ) ).

% take_eq_Nil2
thf(fact_984_take__eq__Nil2,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( nil_nat
        = ( take_nat @ N @ Xs ) )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_nat ) ) ) ).

% take_eq_Nil2
thf(fact_985_length__greater__0__conv,axiom,
    ! [Xs: list_term_a_b] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s8906293707977694520rm_a_b @ Xs ) )
      = ( Xs != nil_term_a_b ) ) ).

% length_greater_0_conv
thf(fact_986_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_987_rtrancl__imp__seq,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ? [F3: nat > term_a_b,N3: nat] :
          ( ( ( F3 @ zero_zero_nat )
            = X )
          & ( ( F3 @ N3 )
            = Y )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ N3 )
             => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F3 @ I4 ) @ ( F3 @ ( suc @ I4 ) ) ) @ R ) ) ) ) ).

% rtrancl_imp_seq
thf(fact_988_rtrancl__fun__conv,axiom,
    ! [S: term_a_b,T: term_a_b,R2: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ ( transi7742714808557438673rm_a_b @ R2 ) )
      = ( ? [F2: nat > term_a_b,N2: nat] :
            ( ( ( F2 @ zero_zero_nat )
              = S )
            & ( ( F2 @ N2 )
              = T )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ N2 )
               => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( F2 @ I3 ) @ ( F2 @ ( suc @ I3 ) ) ) @ R2 ) ) ) ) ) ).

% rtrancl_fun_conv
thf(fact_989_converse__rtrancl__into__rtrancl,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ ( transi7742714808557438673rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7742714808557438673rm_a_b @ R ) ) ) ) ).

% converse_rtrancl_into_rtrancl
thf(fact_990_converse__rtrancl__induct,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,P4: term_a_b > $o] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( P4 @ B )
       => ( ! [Y3: term_a_b,Z: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z ) @ R )
             => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z @ B ) @ ( transi7742714808557438673rm_a_b @ R ) )
               => ( ( P4 @ Z )
                 => ( P4 @ Y3 ) ) ) )
         => ( P4 @ A ) ) ) ) ).

% converse_rtrancl_induct
thf(fact_991_converse__rtranclE,axiom,
    ! [X: term_a_b,Z2: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z2 ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( X != Z2 )
       => ~ ! [Y3: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y3 ) @ R )
             => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z2 ) @ ( transi7742714808557438673rm_a_b @ R ) ) ) ) ) ).

% converse_rtranclE
thf(fact_992_rtrancl__induct,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,P4: term_a_b > $o] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( P4 @ A )
       => ( ! [Y3: term_a_b,Z: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ Y3 ) @ ( transi7742714808557438673rm_a_b @ R ) )
             => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ Z ) @ R )
               => ( ( P4 @ Y3 )
                 => ( P4 @ Z ) ) ) )
         => ( P4 @ B ) ) ) ) ).

% rtrancl_induct
thf(fact_993_rtrancl__trans,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,Z2: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ Z2 ) @ ( transi7742714808557438673rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z2 ) @ ( transi7742714808557438673rm_a_b @ R ) ) ) ) ).

% rtrancl_trans
thf(fact_994_rtranclE,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( A != B )
       => ~ ! [Y3: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ Y3 ) @ ( transi7742714808557438673rm_a_b @ R ) )
             => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ B ) @ R ) ) ) ) ).

% rtranclE
thf(fact_995_rtrancl_Ortrancl__into__rtrancl,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ R )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7742714808557438673rm_a_b @ R ) ) ) ) ).

% rtrancl.rtrancl_into_rtrancl
thf(fact_996_rtrancl_Ortrancl__refl,axiom,
    ! [A: term_a_b,R: set_Pr4386577575007340137rm_a_b] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ A ) @ ( transi7742714808557438673rm_a_b @ R ) ) ).

% rtrancl.rtrancl_refl
thf(fact_997_rtrancl_Osimps,axiom,
    ! [A1: term_a_b,A22: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ ( transi7742714808557438673rm_a_b @ R ) )
      = ( ? [A3: term_a_b] :
            ( ( A1 = A3 )
            & ( A22 = A3 ) )
        | ? [A3: term_a_b,B4: term_a_b,C2: term_a_b] :
            ( ( A1 = A3 )
            & ( A22 = C2 )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A3 @ B4 ) @ ( transi7742714808557438673rm_a_b @ R ) )
            & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B4 @ C2 ) @ R ) ) ) ) ).

% rtrancl.simps
thf(fact_998_rtrancl_Ocases,axiom,
    ! [A1: term_a_b,A22: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ A22 ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( A22 != A1 )
       => ~ ! [B3: term_a_b] :
              ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A1 @ B3 ) @ ( transi7742714808557438673rm_a_b @ R ) )
             => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B3 @ A22 ) @ R ) ) ) ) ).

% rtrancl.cases
thf(fact_999_rtrancl__listrel1__ConsI2,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs: list_nat,Ys: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R ) ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R ) ) ) ) ) ).

% rtrancl_listrel1_ConsI2
thf(fact_1000_rtrancl__listrel1__ConsI2,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ Xs @ Ys ) @ ( transi911495901722478305rm_a_b @ ( listrel1_term_a_b @ R ) ) )
       => ( member4405265420456397394rm_a_b @ ( produc4885699992713594593rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ ( cons_term_a_b @ Y @ Ys ) ) @ ( transi911495901722478305rm_a_b @ ( listrel1_term_a_b @ R ) ) ) ) ) ).

% rtrancl_listrel1_ConsI2
thf(fact_1001_trancl__rtrancl__trancl,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ ( transi7742714808557438673rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% trancl_rtrancl_trancl
thf(fact_1002_rtrancl__trancl__trancl,axiom,
    ! [X: term_a_b,Y: term_a_b,R: set_Pr4386577575007340137rm_a_b,Z2: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y @ Z2 ) @ ( transi7922773638565587891rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z2 ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% rtrancl_trancl_trancl
thf(fact_1003_rtrancl__into__trancl2,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ R )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ ( transi7742714808557438673rm_a_b @ R ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% rtrancl_into_trancl2
thf(fact_1004_rtrancl__into__trancl1,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ R ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ R )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7922773638565587891rm_a_b @ R ) ) ) ) ).

% rtrancl_into_trancl1
thf(fact_1005_rtrancl__eq__or__trancl,axiom,
    ! [X: term_a_b,Y: term_a_b,R2: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7742714808557438673rm_a_b @ R2 ) )
      = ( ( X = Y )
        | ( ( X != Y )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7922773638565587891rm_a_b @ R2 ) ) ) ) ) ).

% rtrancl_eq_or_trancl
thf(fact_1006_trancl__into__rtrancl,axiom,
    ! [A: term_a_b,B: term_a_b,R: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R ) )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ R ) ) ) ).

% trancl_into_rtrancl
thf(fact_1007_tranclD2,axiom,
    ! [X: term_a_b,Y: term_a_b,R2: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7922773638565587891rm_a_b @ R2 ) )
     => ? [Z: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z ) @ ( transi7742714808557438673rm_a_b @ R2 ) )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z @ Y ) @ R2 ) ) ) ).

% tranclD2
thf(fact_1008_rtranclD,axiom,
    ! [A: term_a_b,B: term_a_b,R2: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ R2 ) )
     => ( ( A = B )
        | ( ( A != B )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7922773638565587891rm_a_b @ R2 ) ) ) ) ) ).

% rtranclD
thf(fact_1009_tranclD,axiom,
    ! [X: term_a_b,Y: term_a_b,R2: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( transi7922773638565587891rm_a_b @ R2 ) )
     => ? [Z: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Z ) @ R2 )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Z @ Y ) @ ( transi7742714808557438673rm_a_b @ R2 ) ) ) ) ).

% tranclD
thf(fact_1010_converse__rtrancl__induct2,axiom,
    ! [Ax: term_a_b,Ay: term_a_b,Bx: term_a_b,By: term_a_b,R: set_Pr2972776593051762503rm_a_b,P4: term_a_b > term_a_b > $o] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Ax @ Ay ) @ ( produc7020197800436672577rm_a_b @ Bx @ By ) ) @ ( transi2615809358984392588rm_a_b @ R ) )
     => ( ( P4 @ Bx @ By )
       => ( ! [A4: term_a_b,B3: term_a_b,Aa: term_a_b,Ba: term_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) @ ( produc7020197800436672577rm_a_b @ Aa @ Ba ) ) @ R )
             => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Aa @ Ba ) @ ( produc7020197800436672577rm_a_b @ Bx @ By ) ) @ ( transi2615809358984392588rm_a_b @ R ) )
               => ( ( P4 @ Aa @ Ba )
                 => ( P4 @ A4 @ B3 ) ) ) )
         => ( P4 @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1011_converse__rtranclE2,axiom,
    ! [Xa: term_a_b,Xb: term_a_b,Za: term_a_b,Zb: term_a_b,R: set_Pr2972776593051762503rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Xa @ Xb ) @ ( produc7020197800436672577rm_a_b @ Za @ Zb ) ) @ ( transi2615809358984392588rm_a_b @ R ) )
     => ( ( ( produc7020197800436672577rm_a_b @ Xa @ Xb )
         != ( produc7020197800436672577rm_a_b @ Za @ Zb ) )
       => ~ ! [A4: term_a_b,B3: term_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Xa @ Xb ) @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) ) @ R )
             => ~ ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) @ ( produc7020197800436672577rm_a_b @ Za @ Zb ) ) @ ( transi2615809358984392588rm_a_b @ R ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1012_rtrancl__induct2,axiom,
    ! [Ax: term_a_b,Ay: term_a_b,Bx: term_a_b,By: term_a_b,R: set_Pr2972776593051762503rm_a_b,P4: term_a_b > term_a_b > $o] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Ax @ Ay ) @ ( produc7020197800436672577rm_a_b @ Bx @ By ) ) @ ( transi2615809358984392588rm_a_b @ R ) )
     => ( ( P4 @ Ax @ Ay )
       => ( ! [A4: term_a_b,B3: term_a_b,Aa: term_a_b,Ba: term_a_b] :
              ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ Ax @ Ay ) @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) ) @ ( transi2615809358984392588rm_a_b @ R ) )
             => ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B3 ) @ ( produc7020197800436672577rm_a_b @ Aa @ Ba ) ) @ R )
               => ( ( P4 @ A4 @ B3 )
                 => ( P4 @ Aa @ Ba ) ) ) )
         => ( P4 @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1013_list_Osize_I3_J,axiom,
    ( ( size_s8906293707977694520rm_a_b @ nil_term_a_b )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1014_list_Osize_I3_J,axiom,
    ( ( size_size_list_nat @ nil_nat )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_1015_take__0,axiom,
    ! [Xs: list_term_a_b] :
      ( ( take_term_a_b @ zero_zero_nat @ Xs )
      = nil_term_a_b ) ).

% take_0
thf(fact_1016_take__0,axiom,
    ! [Xs: list_nat] :
      ( ( take_nat @ zero_zero_nat @ Xs )
      = nil_nat ) ).

% take_0
thf(fact_1017_list__update__code_I2_J,axiom,
    ! [X: nat,Xs: list_nat,Y: nat] :
      ( ( list_update_nat @ ( cons_nat @ X @ Xs ) @ zero_zero_nat @ Y )
      = ( cons_nat @ Y @ Xs ) ) ).

% list_update_code(2)
thf(fact_1018_chain__imp__rtrancl,axiom,
    ! [S6: nat > term_a_b,R: set_Pr4386577575007340137rm_a_b,I: nat,J: nat] :
      ( ! [I2: nat] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( S6 @ I2 ) @ ( S6 @ ( suc @ I2 ) ) ) @ R )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( S6 @ I ) @ ( S6 @ J ) ) @ ( transi7742714808557438673rm_a_b @ R ) ) ) ) ).

% chain_imp_rtrancl
thf(fact_1019_rtrancl__listrel1__ConsI1,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat,X: nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R ) ) )
     => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ X @ Ys ) ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R ) ) ) ) ).

% rtrancl_listrel1_ConsI1
thf(fact_1020_length__pos__if__in__set,axiom,
    ! [X: list_nat,Xs: list_list_nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1021_length__pos__if__in__set,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s8600120110137556219rm_a_b @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1022_hd__conv__nth,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( hd_term_a_b @ Xs )
        = ( nth_term_a_b @ Xs @ zero_zero_nat ) ) ) ).

% hd_conv_nth
thf(fact_1023_hd__conv__nth,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( hd_nat @ Xs )
        = ( nth_nat @ Xs @ zero_zero_nat ) ) ) ).

% hd_conv_nth
thf(fact_1024_nth__equal__first__eq,axiom,
    ! [X: list_nat,Xs: list_list_nat,N: nat] :
      ( ~ ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_s3023201423986296836st_nat @ Xs ) )
       => ( ( ( nth_list_nat @ ( cons_list_nat @ X @ Xs ) @ N )
            = X )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1025_nth__equal__first__eq,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b,N: nat] :
      ( ~ ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_s8600120110137556219rm_a_b @ Xs ) )
       => ( ( ( nth_Pr1098598711982373392rm_a_b @ ( cons_P3536305108106557631rm_a_b @ X @ Xs ) @ N )
            = X )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1026_nth__equal__first__eq,axiom,
    ! [X: nat,Xs: list_nat,N: nat] :
      ( ~ ( member_nat2 @ X @ ( set_nat2 @ Xs ) )
     => ( ( ord_less_eq_nat @ N @ ( size_size_list_nat @ Xs ) )
       => ( ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
            = X )
          = ( N = zero_zero_nat ) ) ) ) ).

% nth_equal_first_eq
thf(fact_1027_n__lists__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( n_lists_term_a_b @ N @ nil_term_a_b )
          = ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( n_lists_term_a_b @ N @ nil_term_a_b )
          = nil_list_term_a_b ) ) ) ).

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

% n_lists_Nil
thf(fact_1029_list__of__permutation__element__n_Osimps_I1_J,axiom,
    ! [X: term_a_b,L: list_term_a_b] :
      ( ( basic_7447718476515137801rm_a_b @ X @ zero_zero_nat @ L )
      = ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) ) ).

% list_of_permutation_element_n.simps(1)
thf(fact_1030_list__of__permutation__element__n_Osimps_I1_J,axiom,
    ! [X: nat,L: list_nat] :
      ( ( basic_7079635023375748421_n_nat @ X @ zero_zero_nat @ L )
      = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% list_of_permutation_element_n.simps(1)
thf(fact_1031_meetI,axiom,
    ! [A: term_a_b,B: term_a_b,A5: set_Pr4386577575007340137rm_a_b,C: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ A5 ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ C ) @ ( transi7742714808557438673rm_a_b @ A5 ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ ( abstra1093061187967292567rm_a_b @ A5 ) ) ) ) ).

% meetI
thf(fact_1032_length__n__lists__elem,axiom,
    ! [Ys: list_nat,N: nat,Xs: list_nat] :
      ( ( member_list_nat2 @ Ys @ ( set_list_nat2 @ ( n_lists_nat @ N @ Xs ) ) )
     => ( ( size_size_list_nat @ Ys )
        = N ) ) ).

% length_n_lists_elem
thf(fact_1033_meetE,axiom,
    ! [B: term_a_b,C: term_a_b,A5: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ ( abstra1093061187967292567rm_a_b @ A5 ) )
     => ~ ! [A4: term_a_b] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B ) @ ( transi7742714808557438673rm_a_b @ A5 ) )
           => ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ C ) @ ( transi7742714808557438673rm_a_b @ A5 ) ) ) ) ).

% meetE
thf(fact_1034_meetD,axiom,
    ! [B: term_a_b,C: term_a_b,A5: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ B @ C ) @ ( abstra1093061187967292567rm_a_b @ A5 ) )
     => ? [A4: term_a_b] :
          ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ B ) @ ( transi7742714808557438673rm_a_b @ A5 ) )
          & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A4 @ C ) @ ( transi7742714808557438673rm_a_b @ A5 ) ) ) ) ).

% meetD
thf(fact_1035_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_term_a_b] :
      ( ( n_lists_term_a_b @ zero_zero_nat @ Xs )
      = ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) ) ).

% n_lists.simps(1)
thf(fact_1036_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_nat] :
      ( ( n_lists_nat @ zero_zero_nat @ Xs )
      = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% n_lists.simps(1)
thf(fact_1037_list__of__permutation__element__n_Oelims,axiom,
    ! [X: term_a_b,Xa: nat,Xb: list_term_a_b,Y: list_list_term_a_b] :
      ( ( ( basic_7447718476515137801rm_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xa = zero_zero_nat )
         => ( Y
           != ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) ) )
       => ~ ! [N3: nat] :
              ( ( Xa
                = ( suc @ N3 ) )
             => ( Y
               != ( concat_list_term_a_b @ ( map_li5549351542446159646rm_a_b @ ( basic_1593220722155286443rm_a_b @ X ) @ ( n_lists_term_a_b @ N3 @ Xb ) ) ) ) ) ) ) ).

% list_of_permutation_element_n.elims
thf(fact_1038_list__of__permutation__element__n_Oelims,axiom,
    ! [X: nat,Xa: nat,Xb: list_nat,Y: list_list_nat] :
      ( ( ( basic_7079635023375748421_n_nat @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xa = zero_zero_nat )
         => ( Y
           != ( cons_list_nat @ nil_nat @ nil_list_nat ) ) )
       => ~ ! [N3: nat] :
              ( ( Xa
                = ( suc @ N3 ) )
             => ( Y
               != ( concat_list_nat @ ( map_li960784813134754710st_nat @ ( basic_4874698711677410535ts_nat @ X ) @ ( n_lists_nat @ N3 @ Xb ) ) ) ) ) ) ) ).

% list_of_permutation_element_n.elims
thf(fact_1039_constT__nfunas__term__poss__of__term__empty,axiom,
    ! [C: a,T: term_a_b] :
      ( ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ C @ zero_zero_nat ) @ ( term_funas_term_a_b @ T ) ) )
      = ( ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C @ nil_term_a_b ) @ T )
        = bot_bot_set_list_nat ) ) ).

% constT_nfunas_term_poss_of_term_empty
thf(fact_1040_depth_Osimps_I2_J,axiom,
    ! [F: a] :
      ( ( term_depth_a_b @ ( fun_a_b @ F @ nil_term_a_b ) )
      = zero_zero_nat ) ).

% depth.simps(2)
thf(fact_1041_list_Omap__disc__iff,axiom,
    ! [F: term_a_b > term_a_b,A: list_term_a_b] :
      ( ( ( map_te2328734355998148206rm_a_b @ F @ A )
        = nil_term_a_b )
      = ( A = nil_term_a_b ) ) ).

% list.map_disc_iff
thf(fact_1042_list_Omap__disc__iff,axiom,
    ! [F: nat > term_a_b,A: list_nat] :
      ( ( ( map_nat_term_a_b @ F @ A )
        = nil_term_a_b )
      = ( A = nil_nat ) ) ).

% list.map_disc_iff
thf(fact_1043_list_Omap__disc__iff,axiom,
    ! [F: term_a_b > nat,A: list_term_a_b] :
      ( ( ( map_term_a_b_nat @ F @ A )
        = nil_nat )
      = ( A = nil_term_a_b ) ) ).

% list.map_disc_iff
thf(fact_1044_list_Omap__disc__iff,axiom,
    ! [F: nat > nat,A: list_nat] :
      ( ( ( map_nat_nat @ F @ A )
        = nil_nat )
      = ( A = nil_nat ) ) ).

% list.map_disc_iff
thf(fact_1045_Nil__is__map__conv,axiom,
    ! [F: term_a_b > term_a_b,Xs: list_term_a_b] :
      ( ( nil_term_a_b
        = ( map_te2328734355998148206rm_a_b @ F @ Xs ) )
      = ( Xs = nil_term_a_b ) ) ).

% Nil_is_map_conv
thf(fact_1046_Nil__is__map__conv,axiom,
    ! [F: nat > term_a_b,Xs: list_nat] :
      ( ( nil_term_a_b
        = ( map_nat_term_a_b @ F @ Xs ) )
      = ( Xs = nil_nat ) ) ).

% Nil_is_map_conv
thf(fact_1047_Nil__is__map__conv,axiom,
    ! [F: term_a_b > nat,Xs: list_term_a_b] :
      ( ( nil_nat
        = ( map_term_a_b_nat @ F @ Xs ) )
      = ( Xs = nil_term_a_b ) ) ).

% Nil_is_map_conv
thf(fact_1048_Nil__is__map__conv,axiom,
    ! [F: nat > nat,Xs: list_nat] :
      ( ( nil_nat
        = ( map_nat_nat @ F @ Xs ) )
      = ( Xs = nil_nat ) ) ).

% Nil_is_map_conv
thf(fact_1049_map__is__Nil__conv,axiom,
    ! [F: term_a_b > term_a_b,Xs: list_term_a_b] :
      ( ( ( map_te2328734355998148206rm_a_b @ F @ Xs )
        = nil_term_a_b )
      = ( Xs = nil_term_a_b ) ) ).

% map_is_Nil_conv
thf(fact_1050_map__is__Nil__conv,axiom,
    ! [F: nat > term_a_b,Xs: list_nat] :
      ( ( ( map_nat_term_a_b @ F @ Xs )
        = nil_term_a_b )
      = ( Xs = nil_nat ) ) ).

% map_is_Nil_conv
thf(fact_1051_map__is__Nil__conv,axiom,
    ! [F: term_a_b > nat,Xs: list_term_a_b] :
      ( ( ( map_term_a_b_nat @ F @ Xs )
        = nil_nat )
      = ( Xs = nil_term_a_b ) ) ).

% map_is_Nil_conv
thf(fact_1052_map__is__Nil__conv,axiom,
    ! [F: nat > nat,Xs: list_nat] :
      ( ( ( map_nat_nat @ F @ Xs )
        = nil_nat )
      = ( Xs = nil_nat ) ) ).

% map_is_Nil_conv
thf(fact_1053_list_Omap__ident__strong,axiom,
    ! [T: list_list_nat,F: list_nat > list_nat] :
      ( ! [Z: list_nat] :
          ( ( member_list_nat2 @ Z @ ( set_list_nat2 @ T ) )
         => ( ( F @ Z )
            = Z ) )
     => ( ( map_li7225945977422193158st_nat @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1054_list_Omap__ident__strong,axiom,
    ! [T: list_P8875379029341186191rm_a_b,F: produc357393685978478089rm_a_b > produc357393685978478089rm_a_b] :
      ( ! [Z: produc357393685978478089rm_a_b] :
          ( ( member5869715511025134514rm_a_b @ Z @ ( set_Pr2370880052973118494rm_a_b @ T ) )
         => ( ( F @ Z )
            = Z ) )
     => ( ( map_Pr3281474655358167172rm_a_b @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1055_map__idI,axiom,
    ! [Xs: list_list_nat,F: list_nat > list_nat] :
      ( ! [X3: list_nat] :
          ( ( member_list_nat2 @ X3 @ ( set_list_nat2 @ Xs ) )
         => ( ( F @ X3 )
            = X3 ) )
     => ( ( map_li7225945977422193158st_nat @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1056_map__idI,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,F: produc357393685978478089rm_a_b > produc357393685978478089rm_a_b] :
      ( ! [X3: produc357393685978478089rm_a_b] :
          ( ( member5869715511025134514rm_a_b @ X3 @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
         => ( ( F @ X3 )
            = X3 ) )
     => ( ( map_Pr3281474655358167172rm_a_b @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1057_list_Osimps_I8_J,axiom,
    ! [F: term_a_b > term_a_b] :
      ( ( map_te2328734355998148206rm_a_b @ F @ nil_term_a_b )
      = nil_term_a_b ) ).

% list.simps(8)
thf(fact_1058_list_Osimps_I8_J,axiom,
    ! [F: term_a_b > nat] :
      ( ( map_term_a_b_nat @ F @ nil_term_a_b )
      = nil_nat ) ).

% list.simps(8)
thf(fact_1059_list_Osimps_I8_J,axiom,
    ! [F: nat > term_a_b] :
      ( ( map_nat_term_a_b @ F @ nil_nat )
      = nil_term_a_b ) ).

% list.simps(8)
thf(fact_1060_list_Osimps_I8_J,axiom,
    ! [F: nat > nat] :
      ( ( map_nat_nat @ F @ nil_nat )
      = nil_nat ) ).

% list.simps(8)
thf(fact_1061_list_Osimps_I9_J,axiom,
    ! [F: nat > nat,X21: nat,X22: list_nat] :
      ( ( map_nat_nat @ F @ ( cons_nat @ X21 @ X22 ) )
      = ( cons_nat @ ( F @ X21 ) @ ( map_nat_nat @ F @ X22 ) ) ) ).

% list.simps(9)
thf(fact_1062_Cons__eq__map__D,axiom,
    ! [X: nat,Xs: list_nat,F: nat > nat,Ys: list_nat] :
      ( ( ( cons_nat @ X @ Xs )
        = ( map_nat_nat @ F @ Ys ) )
     => ? [Z: nat,Zs: list_nat] :
          ( ( Ys
            = ( cons_nat @ Z @ Zs ) )
          & ( X
            = ( F @ Z ) )
          & ( Xs
            = ( map_nat_nat @ F @ Zs ) ) ) ) ).

% Cons_eq_map_D
thf(fact_1063_map__eq__Cons__D,axiom,
    ! [F: nat > nat,Xs: list_nat,Y: nat,Ys: list_nat] :
      ( ( ( map_nat_nat @ F @ Xs )
        = ( cons_nat @ Y @ Ys ) )
     => ? [Z: nat,Zs: list_nat] :
          ( ( Xs
            = ( cons_nat @ Z @ Zs ) )
          & ( ( F @ Z )
            = Y )
          & ( ( map_nat_nat @ F @ Zs )
            = Ys ) ) ) ).

% map_eq_Cons_D
thf(fact_1064_Cons__eq__map__conv,axiom,
    ! [X: nat,Xs: list_nat,F: nat > nat,Ys: list_nat] :
      ( ( ( cons_nat @ X @ Xs )
        = ( map_nat_nat @ F @ Ys ) )
      = ( ? [Z5: nat,Zs3: list_nat] :
            ( ( Ys
              = ( cons_nat @ Z5 @ Zs3 ) )
            & ( X
              = ( F @ Z5 ) )
            & ( Xs
              = ( map_nat_nat @ F @ Zs3 ) ) ) ) ) ).

% Cons_eq_map_conv
thf(fact_1065_map__eq__Cons__conv,axiom,
    ! [F: nat > nat,Xs: list_nat,Y: nat,Ys: list_nat] :
      ( ( ( map_nat_nat @ F @ Xs )
        = ( cons_nat @ Y @ Ys ) )
      = ( ? [Z5: nat,Zs3: list_nat] :
            ( ( Xs
              = ( cons_nat @ Z5 @ Zs3 ) )
            & ( ( F @ Z5 )
              = Y )
            & ( ( map_nat_nat @ F @ Zs3 )
              = Ys ) ) ) ) ).

% map_eq_Cons_conv
thf(fact_1066_funas__term__replace__at__lower,axiom,
    ! [P: list_nat,S: term_a_b,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ord_le8666007276011122963_a_nat @ ( term_funas_term_a_b @ T ) @ ( term_funas_term_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ T ) ) ) ) ).

% funas_term_replace_at_lower
thf(fact_1067_add__elem__list__lists_Osimps_I2_J,axiom,
    ! [X: nat,Y: nat,Ys: list_nat] :
      ( ( basic_4874698711677410535ts_nat @ X @ ( cons_nat @ Y @ Ys ) )
      = ( cons_list_nat @ ( cons_nat @ X @ ( cons_nat @ Y @ Ys ) ) @ ( map_li7225945977422193158st_nat @ ( cons_nat @ Y ) @ ( basic_4874698711677410535ts_nat @ X @ Ys ) ) ) ) ).

% add_elem_list_lists.simps(2)
thf(fact_1068_funas__term__subt__at,axiom,
    ! [F: a,N: nat,T: term_a_b] :
      ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ N ) @ ( term_funas_term_a_b @ T ) )
     => ? [P2: list_nat,Ts2: list_term_a_b] :
          ( ( member_list_nat2 @ P2 @ ( term_poss_a_b @ T ) )
          & ( ( term_subt_at_a_b @ T @ P2 )
            = ( fun_a_b @ F @ Ts2 ) )
          & ( ( size_s8906293707977694520rm_a_b @ Ts2 )
            = N ) ) ) ).

% funas_term_subt_at
thf(fact_1069_funas__term__const__subst__conv,axiom,
    ! [C: a,L2: term_a_b] :
      ( ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ C @ zero_zero_nat ) @ ( term_funas_term_a_b @ L2 ) ) )
      = ( ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ L2 @ ( fun_a_b @ C @ nil_term_a_b ) ) @ subter523971068842742411eq_a_b ) ) ) ).

% funas_term_const_subst_conv
thf(fact_1070_all__ctxt__closedD,axiom,
    ! [F5: set_Pr4934435412358123699_a_nat,R: set_Pr4386577575007340137rm_a_b,F: a,Ss: list_term_a_b,Ts: list_term_a_b] :
      ( ( terms_5226143800768910156ed_a_b @ F5 @ R )
     => ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( size_s8906293707977694520rm_a_b @ Ss ) ) @ F5 )
       => ( ( ( size_s8906293707977694520rm_a_b @ Ts )
            = ( size_s8906293707977694520rm_a_b @ Ss ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ts ) )
               => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ Ts @ I2 ) @ ( nth_term_a_b @ Ss @ I2 ) ) @ R ) )
           => ( ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ts ) )
                 => ( ord_le8666007276011122963_a_nat @ ( term_funas_term_a_b @ ( nth_term_a_b @ Ts @ I2 ) ) @ F5 ) )
             => ( ! [I2: nat] :
                    ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ts ) )
                   => ( ord_le8666007276011122963_a_nat @ ( term_funas_term_a_b @ ( nth_term_a_b @ Ss @ I2 ) ) @ F5 ) )
               => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F @ Ts ) @ ( fun_a_b @ F @ Ss ) ) @ R ) ) ) ) ) ) ) ).

% all_ctxt_closedD
thf(fact_1071_list__of__permutation__element__n_Opelims,axiom,
    ! [X: term_a_b,Xa: nat,Xb: list_term_a_b,Y: list_list_term_a_b] :
      ( ( ( basic_7447718476515137801rm_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P8135062053096525805rm_a_b @ basic_7323182009002229978rm_a_b @ ( produc2767632391123599848rm_a_b @ X @ ( produc7556795533067728397rm_a_b @ Xa @ Xb ) ) )
       => ( ( ( Xa = zero_zero_nat )
           => ( ( Y
                = ( cons_list_term_a_b @ nil_term_a_b @ nil_list_term_a_b ) )
             => ~ ( accp_P8135062053096525805rm_a_b @ basic_7323182009002229978rm_a_b @ ( produc2767632391123599848rm_a_b @ X @ ( produc7556795533067728397rm_a_b @ zero_zero_nat @ Xb ) ) ) ) )
         => ~ ! [N3: nat] :
                ( ( Xa
                  = ( suc @ N3 ) )
               => ( ( Y
                    = ( concat_list_term_a_b @ ( map_li5549351542446159646rm_a_b @ ( basic_1593220722155286443rm_a_b @ X ) @ ( n_lists_term_a_b @ N3 @ Xb ) ) ) )
                 => ~ ( accp_P8135062053096525805rm_a_b @ basic_7323182009002229978rm_a_b @ ( produc2767632391123599848rm_a_b @ X @ ( produc7556795533067728397rm_a_b @ ( suc @ N3 ) @ Xb ) ) ) ) ) ) ) ) ).

% list_of_permutation_element_n.pelims
thf(fact_1072_list__of__permutation__element__n_Opelims,axiom,
    ! [X: nat,Xa: nat,Xb: list_nat,Y: list_list_nat] :
      ( ( ( basic_7079635023375748421_n_nat @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P5862832406524804077st_nat @ basic_5396556626788897174el_nat @ ( produc4673969588984964072st_nat @ X @ ( produc8282810413953273033st_nat @ Xa @ Xb ) ) )
       => ( ( ( Xa = zero_zero_nat )
           => ( ( Y
                = ( cons_list_nat @ nil_nat @ nil_list_nat ) )
             => ~ ( accp_P5862832406524804077st_nat @ basic_5396556626788897174el_nat @ ( produc4673969588984964072st_nat @ X @ ( produc8282810413953273033st_nat @ zero_zero_nat @ Xb ) ) ) ) )
         => ~ ! [N3: nat] :
                ( ( Xa
                  = ( suc @ N3 ) )
               => ( ( Y
                    = ( concat_list_nat @ ( map_li960784813134754710st_nat @ ( basic_4874698711677410535ts_nat @ X ) @ ( n_lists_nat @ N3 @ Xb ) ) ) )
                 => ~ ( accp_P5862832406524804077st_nat @ basic_5396556626788897174el_nat @ ( produc4673969588984964072st_nat @ X @ ( produc8282810413953273033st_nat @ ( suc @ N3 ) @ Xb ) ) ) ) ) ) ) ) ).

% list_of_permutation_element_n.pelims
thf(fact_1073_all__ctxt__closed__def,axiom,
    ( terms_5226143800768910156ed_a_b
    = ( ^ [F6: set_Pr4934435412358123699_a_nat,R3: set_Pr4386577575007340137rm_a_b] :
          ( ! [F2: a,Ts3: list_term_a_b,Ss2: list_term_a_b] :
              ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F2 @ ( size_s8906293707977694520rm_a_b @ Ss2 ) ) @ F6 )
             => ( ( ( size_s8906293707977694520rm_a_b @ Ts3 )
                  = ( size_s8906293707977694520rm_a_b @ Ss2 ) )
               => ( ! [I3: nat] :
                      ( ( ord_less_nat @ I3 @ ( size_s8906293707977694520rm_a_b @ Ts3 ) )
                     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ Ts3 @ I3 ) @ ( nth_term_a_b @ Ss2 @ I3 ) ) @ R3 ) )
                 => ( ! [I3: nat] :
                        ( ( ord_less_nat @ I3 @ ( size_s8906293707977694520rm_a_b @ Ts3 ) )
                       => ( ord_le8666007276011122963_a_nat @ ( sup_su459911885395995103_a_nat @ ( term_funas_term_a_b @ ( nth_term_a_b @ Ts3 @ I3 ) ) @ ( term_funas_term_a_b @ ( nth_term_a_b @ Ss2 @ I3 ) ) ) @ F6 ) )
                   => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( fun_a_b @ F2 @ Ts3 ) @ ( fun_a_b @ F2 @ Ss2 ) ) @ R3 ) ) ) ) )
          & ! [X4: b] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( var_b_a @ X4 ) @ ( var_b_a @ X4 ) ) @ R3 ) ) ) ) ).

% all_ctxt_closed_def
thf(fact_1074_rtrancl__Un__separatorE,axiom,
    ! [A: term_a_b,B: term_a_b,P4: set_Pr4386577575007340137rm_a_b,Q4: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ ( sup_su6776935440552674877rm_a_b @ P4 @ Q4 ) ) )
     => ( ! [X3: term_a_b,Y3: term_a_b] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ X3 ) @ ( transi7742714808557438673rm_a_b @ P4 ) )
           => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) @ Q4 )
             => ( X3 = Y3 ) ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ P4 ) ) ) ) ).

% rtrancl_Un_separatorE
thf(fact_1075_rtrancl__Un__separator__converseE,axiom,
    ! [A: term_a_b,B: term_a_b,P4: set_Pr4386577575007340137rm_a_b,Q4: set_Pr4386577575007340137rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ ( sup_su6776935440552674877rm_a_b @ P4 @ Q4 ) ) )
     => ( ! [X3: term_a_b,Y3: term_a_b] :
            ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ B ) @ ( transi7742714808557438673rm_a_b @ P4 ) )
           => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ Y3 @ X3 ) @ Q4 )
             => ( Y3 = X3 ) ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( transi7742714808557438673rm_a_b @ P4 ) ) ) ) ).

% rtrancl_Un_separator_converseE
thf(fact_1076_in__rtrancl__UnI,axiom,
    ! [X: produc357393685978478089rm_a_b,R2: set_Pr4386577575007340137rm_a_b,S6: set_Pr4386577575007340137rm_a_b] :
      ( ( ( member5869715511025134514rm_a_b @ X @ ( transi7742714808557438673rm_a_b @ R2 ) )
        | ( member5869715511025134514rm_a_b @ X @ ( transi7742714808557438673rm_a_b @ S6 ) ) )
     => ( member5869715511025134514rm_a_b @ X @ ( transi7742714808557438673rm_a_b @ ( sup_su6776935440552674877rm_a_b @ R2 @ S6 ) ) ) ) ).

% in_rtrancl_UnI
thf(fact_1077_rtrancl__union__subset__rtrancl__union__trancl,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,S: set_Pr4386577575007340137rm_a_b] :
      ( ( transi7742714808557438673rm_a_b @ ( sup_su6776935440552674877rm_a_b @ R @ ( transi7922773638565587891rm_a_b @ S ) ) )
      = ( transi7742714808557438673rm_a_b @ ( sup_su6776935440552674877rm_a_b @ R @ S ) ) ) ).

% rtrancl_union_subset_rtrancl_union_trancl
thf(fact_1078_trancl__union__right,axiom,
    ! [R: set_Pr4386577575007340137rm_a_b,S: set_Pr4386577575007340137rm_a_b] : ( ord_le118470702582115849rm_a_b @ ( transi7922773638565587891rm_a_b @ R ) @ ( transi7922773638565587891rm_a_b @ ( sup_su6776935440552674877rm_a_b @ S @ R ) ) ) ).

% trancl_union_right
thf(fact_1079_funas__term__replace__at__upper,axiom,
    ! [S: term_a_b,P: list_nat,T: term_a_b] : ( ord_le8666007276011122963_a_nat @ ( term_funas_term_a_b @ ( term_r6860082780075436317at_a_b @ S @ P @ T ) ) @ ( sup_su459911885395995103_a_nat @ ( term_funas_term_a_b @ S ) @ ( term_funas_term_a_b @ T ) ) ) ).

% funas_term_replace_at_upper
thf(fact_1080_list__union_Osimps_I1_J,axiom,
    ! [Ys: list_term_a_b] :
      ( ( missin4887234603271916558rm_a_b @ nil_term_a_b @ Ys )
      = Ys ) ).

% list_union.simps(1)
thf(fact_1081_list__union_Osimps_I1_J,axiom,
    ! [Ys: list_nat] :
      ( ( missin7861371969718421194on_nat @ nil_nat @ Ys )
      = Ys ) ).

% list_union.simps(1)
thf(fact_1082_nth__Cons__pos,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
        = ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_1083_Missing__List_Omin__list_Oelims,axiom,
    ! [X: list_nat,Y: nat] :
      ( ( ( missing_min_list_nat @ X )
        = Y )
     => ( ! [X3: nat] :
            ( ( X
              = ( cons_nat @ X3 @ nil_nat ) )
           => ( Y != X3 ) )
       => ( ! [X3: nat,V: nat,Va: list_nat] :
              ( ( X
                = ( cons_nat @ X3 @ ( cons_nat @ V @ Va ) ) )
             => ( Y
               != ( ord_min_nat @ X3 @ ( missing_min_list_nat @ ( cons_nat @ V @ Va ) ) ) ) )
         => ~ ( ( X = nil_nat )
             => ( Y != undefined_nat ) ) ) ) ) ).

% Missing_List.min_list.elims
thf(fact_1084_Missing__List_Omin__list_Osimps_I1_J,axiom,
    ! [X: nat] :
      ( ( missing_min_list_nat @ ( cons_nat @ X @ nil_nat ) )
      = X ) ).

% Missing_List.min_list.simps(1)
thf(fact_1085_min__list__ex,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( member_nat2 @ ( missing_min_list_nat @ Xs ) @ ( set_nat2 @ Xs ) ) ) ).

% min_list_ex
thf(fact_1086_Missing__List_Omin__list_Osimps_I2_J,axiom,
    ! [X: nat,V2: nat,Va2: list_nat] :
      ( ( missing_min_list_nat @ ( cons_nat @ X @ ( cons_nat @ V2 @ Va2 ) ) )
      = ( ord_min_nat @ X @ ( missing_min_list_nat @ ( cons_nat @ V2 @ Va2 ) ) ) ) ).

% Missing_List.min_list.simps(2)
thf(fact_1087_nth__Cons_H,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
          = X ) )
      & ( ( N != zero_zero_nat )
       => ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
          = ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% nth_Cons'
thf(fact_1088_drop__Cons_H,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( drop_nat @ N @ ( cons_nat @ X @ Xs ) )
          = ( cons_nat @ X @ Xs ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( drop_nat @ N @ ( cons_nat @ X @ Xs ) )
          = ( drop_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ).

% drop_Cons'
thf(fact_1089_min__list__Cons,axiom,
    ! [X: nat,Y: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ( size_size_list_nat @ Xs )
          = ( size_size_list_nat @ Ys ) )
       => ( ( ord_less_eq_nat @ ( missing_min_list_nat @ Xs ) @ ( missing_min_list_nat @ Ys ) )
         => ( ord_less_eq_nat @ ( missing_min_list_nat @ ( cons_nat @ X @ Xs ) ) @ ( missing_min_list_nat @ ( cons_nat @ Y @ Ys ) ) ) ) ) ) ).

% min_list_Cons
thf(fact_1090_nth__non__equal__first__eq,axiom,
    ! [X: nat,Y: nat,Xs: list_nat,N: nat] :
      ( ( X != Y )
     => ( ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
          = Y )
        = ( ( ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) )
            = Y )
          & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ) ).

% nth_non_equal_first_eq
thf(fact_1091_take__Cons_H,axiom,
    ! [N: nat,X: term_a_b,Xs: list_term_a_b] :
      ( ( ( N = zero_zero_nat )
       => ( ( take_term_a_b @ N @ ( cons_term_a_b @ X @ Xs ) )
          = nil_term_a_b ) )
      & ( ( N != zero_zero_nat )
       => ( ( take_term_a_b @ N @ ( cons_term_a_b @ X @ Xs ) )
          = ( cons_term_a_b @ X @ ( take_term_a_b @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ) ).

% take_Cons'
thf(fact_1092_take__Cons_H,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( take_nat @ N @ ( cons_nat @ X @ Xs ) )
          = nil_nat ) )
      & ( ( N != zero_zero_nat )
       => ( ( take_nat @ N @ ( cons_nat @ X @ Xs ) )
          = ( cons_nat @ X @ ( take_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ) ).

% take_Cons'
thf(fact_1093_last__conv__nth,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( last_term_a_b @ Xs )
        = ( nth_term_a_b @ Xs @ ( minus_minus_nat @ ( size_s8906293707977694520rm_a_b @ Xs ) @ one_one_nat ) ) ) ) ).

% last_conv_nth
thf(fact_1094_last__conv__nth,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( last_nat @ Xs )
        = ( nth_nat @ Xs @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) ) ) ) ).

% last_conv_nth
thf(fact_1095_last__list__update,axiom,
    ! [Xs: list_term_a_b,K: nat,X: term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( ( K
            = ( minus_minus_nat @ ( size_s8906293707977694520rm_a_b @ Xs ) @ one_one_nat ) )
         => ( ( last_term_a_b @ ( list_update_term_a_b @ Xs @ K @ X ) )
            = X ) )
        & ( ( K
           != ( minus_minus_nat @ ( size_s8906293707977694520rm_a_b @ Xs ) @ one_one_nat ) )
         => ( ( last_term_a_b @ ( list_update_term_a_b @ Xs @ K @ X ) )
            = ( last_term_a_b @ Xs ) ) ) ) ) ).

% last_list_update
thf(fact_1096_last__list__update,axiom,
    ! [Xs: list_nat,K: nat,X: nat] :
      ( ( Xs != nil_nat )
     => ( ( ( K
            = ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) )
         => ( ( last_nat @ ( list_update_nat @ Xs @ K @ X ) )
            = X ) )
        & ( ( K
           != ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) )
         => ( ( last_nat @ ( list_update_nat @ Xs @ K @ X ) )
            = ( last_nat @ Xs ) ) ) ) ) ).

% last_list_update
thf(fact_1097_nth__append__Cons,axiom,
    ! [I: nat,Xs: list_nat,Y: nat,Zs2: list_nat] :
      ( ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
       => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y @ Zs2 ) ) @ I )
          = ( nth_nat @ Xs @ I ) ) )
      & ( ~ ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
       => ( ( ( I
              = ( size_size_list_nat @ Xs ) )
           => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y @ Zs2 ) ) @ I )
              = Y ) )
          & ( ( I
             != ( size_size_list_nat @ Xs ) )
           => ( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ Y @ Zs2 ) ) @ I )
              = ( nth_nat @ Zs2 @ ( minus_minus_nat @ I @ ( suc @ ( size_size_list_nat @ Xs ) ) ) ) ) ) ) ) ) ).

% nth_append_Cons
thf(fact_1098_enumerate__simps_I2_J,axiom,
    ! [N: nat,X: nat,Xs: list_nat] :
      ( ( enumerate_nat @ N @ ( cons_nat @ X @ Xs ) )
      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ N @ X ) @ ( enumerate_nat @ ( suc @ N ) @ Xs ) ) ) ).

% enumerate_simps(2)
thf(fact_1099_enumerate__simps_I1_J,axiom,
    ! [N: nat] :
      ( ( enumerate_term_a_b @ N @ nil_term_a_b )
      = nil_Pr4197086119080101963rm_a_b ) ).

% enumerate_simps(1)
thf(fact_1100_enumerate__simps_I1_J,axiom,
    ! [N: nat] :
      ( ( enumerate_nat @ N @ nil_nat )
      = nil_Pr5478986624290739719at_nat ) ).

% enumerate_simps(1)
thf(fact_1101_filter__False,axiom,
    ! [Xs: list_term_a_b,P4: term_a_b > $o] :
      ( ! [X3: term_a_b] :
          ( ( member_term_a_b2 @ X3 @ ( set_term_a_b2 @ Xs ) )
         => ~ ( P4 @ X3 ) )
     => ( ( filter_term_a_b @ P4 @ Xs )
        = nil_term_a_b ) ) ).

% filter_False
thf(fact_1102_filter__False,axiom,
    ! [Xs: list_nat,P4: nat > $o] :
      ( ! [X3: nat] :
          ( ( member_nat2 @ X3 @ ( set_nat2 @ Xs ) )
         => ~ ( P4 @ X3 ) )
     => ( ( filter_nat @ P4 @ Xs )
        = nil_nat ) ) ).

% filter_False
thf(fact_1103_filter_Osimps_I1_J,axiom,
    ! [P4: term_a_b > $o] :
      ( ( filter_term_a_b @ P4 @ nil_term_a_b )
      = nil_term_a_b ) ).

% filter.simps(1)
thf(fact_1104_filter_Osimps_I1_J,axiom,
    ! [P4: nat > $o] :
      ( ( filter_nat @ P4 @ nil_nat )
      = nil_nat ) ).

% filter.simps(1)
thf(fact_1105_filter__cong,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat,P4: list_nat > $o,Q4: list_nat > $o] :
      ( ( Xs = Ys )
     => ( ! [X3: list_nat] :
            ( ( member_list_nat2 @ X3 @ ( set_list_nat2 @ Ys ) )
           => ( ( P4 @ X3 )
              = ( Q4 @ X3 ) ) )
       => ( ( filter_list_nat @ P4 @ Xs )
          = ( filter_list_nat @ Q4 @ Ys ) ) ) ) ).

% filter_cong
thf(fact_1106_filter__cong,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,Ys: list_P8875379029341186191rm_a_b,P4: produc357393685978478089rm_a_b > $o,Q4: produc357393685978478089rm_a_b > $o] :
      ( ( Xs = Ys )
     => ( ! [X3: produc357393685978478089rm_a_b] :
            ( ( member5869715511025134514rm_a_b @ X3 @ ( set_Pr2370880052973118494rm_a_b @ Ys ) )
           => ( ( P4 @ X3 )
              = ( Q4 @ X3 ) ) )
       => ( ( filter1978632790000409606rm_a_b @ P4 @ Xs )
          = ( filter1978632790000409606rm_a_b @ Q4 @ Ys ) ) ) ) ).

% filter_cong
thf(fact_1107_filter__empty__conv,axiom,
    ! [P4: term_a_b > $o,Xs: list_term_a_b] :
      ( ( ( filter_term_a_b @ P4 @ Xs )
        = nil_term_a_b )
      = ( ! [X4: term_a_b] :
            ( ( member_term_a_b2 @ X4 @ ( set_term_a_b2 @ Xs ) )
           => ~ ( P4 @ X4 ) ) ) ) ).

% filter_empty_conv
thf(fact_1108_filter__empty__conv,axiom,
    ! [P4: nat > $o,Xs: list_nat] :
      ( ( ( filter_nat @ P4 @ Xs )
        = nil_nat )
      = ( ! [X4: nat] :
            ( ( member_nat2 @ X4 @ ( set_nat2 @ Xs ) )
           => ~ ( P4 @ X4 ) ) ) ) ).

% filter_empty_conv
thf(fact_1109_empty__filter__conv,axiom,
    ! [P4: term_a_b > $o,Xs: list_term_a_b] :
      ( ( nil_term_a_b
        = ( filter_term_a_b @ P4 @ Xs ) )
      = ( ! [X4: term_a_b] :
            ( ( member_term_a_b2 @ X4 @ ( set_term_a_b2 @ Xs ) )
           => ~ ( P4 @ X4 ) ) ) ) ).

% empty_filter_conv
thf(fact_1110_empty__filter__conv,axiom,
    ! [P4: nat > $o,Xs: list_nat] :
      ( ( nil_nat
        = ( filter_nat @ P4 @ Xs ) )
      = ( ! [X4: nat] :
            ( ( member_nat2 @ X4 @ ( set_nat2 @ Xs ) )
           => ~ ( P4 @ X4 ) ) ) ) ).

% empty_filter_conv
thf(fact_1111_filter_Osimps_I2_J,axiom,
    ! [P4: nat > $o,X: nat,Xs: list_nat] :
      ( ( ( P4 @ X )
       => ( ( filter_nat @ P4 @ ( cons_nat @ X @ Xs ) )
          = ( cons_nat @ X @ ( filter_nat @ P4 @ Xs ) ) ) )
      & ( ~ ( P4 @ X )
       => ( ( filter_nat @ P4 @ ( cons_nat @ X @ Xs ) )
          = ( filter_nat @ P4 @ Xs ) ) ) ) ).

% filter.simps(2)
thf(fact_1112_length__filter__less,axiom,
    ! [X: list_nat,Xs: list_list_nat,P4: list_nat > $o] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ~ ( P4 @ X )
       => ( ord_less_nat @ ( size_s3023201423986296836st_nat @ ( filter_list_nat @ P4 @ Xs ) ) @ ( size_s3023201423986296836st_nat @ Xs ) ) ) ) ).

% length_filter_less
thf(fact_1113_length__filter__less,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b,P4: produc357393685978478089rm_a_b > $o] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ~ ( P4 @ X )
       => ( ord_less_nat @ ( size_s8600120110137556219rm_a_b @ ( filter1978632790000409606rm_a_b @ P4 @ Xs ) ) @ ( size_s8600120110137556219rm_a_b @ Xs ) ) ) ) ).

% length_filter_less
thf(fact_1114_filter__eq__Cons__iff,axiom,
    ! [P4: nat > $o,Ys: list_nat,X: nat,Xs: list_nat] :
      ( ( ( filter_nat @ P4 @ Ys )
        = ( cons_nat @ X @ Xs ) )
      = ( ? [Us3: list_nat,Vs3: list_nat] :
            ( ( Ys
              = ( append_nat @ Us3 @ ( cons_nat @ X @ Vs3 ) ) )
            & ! [X4: nat] :
                ( ( member_nat2 @ X4 @ ( set_nat2 @ Us3 ) )
               => ~ ( P4 @ X4 ) )
            & ( P4 @ X )
            & ( Xs
              = ( filter_nat @ P4 @ Vs3 ) ) ) ) ) ).

% filter_eq_Cons_iff
thf(fact_1115_Cons__eq__filter__iff,axiom,
    ! [X: nat,Xs: list_nat,P4: nat > $o,Ys: list_nat] :
      ( ( ( cons_nat @ X @ Xs )
        = ( filter_nat @ P4 @ Ys ) )
      = ( ? [Us3: list_nat,Vs3: list_nat] :
            ( ( Ys
              = ( append_nat @ Us3 @ ( cons_nat @ X @ Vs3 ) ) )
            & ! [X4: nat] :
                ( ( member_nat2 @ X4 @ ( set_nat2 @ Us3 ) )
               => ~ ( P4 @ X4 ) )
            & ( P4 @ X )
            & ( Xs
              = ( filter_nat @ P4 @ Vs3 ) ) ) ) ) ).

% Cons_eq_filter_iff
thf(fact_1116_filter__eq__ConsD,axiom,
    ! [P4: nat > $o,Ys: list_nat,X: nat,Xs: list_nat] :
      ( ( ( filter_nat @ P4 @ Ys )
        = ( cons_nat @ X @ Xs ) )
     => ? [Us2: list_nat,Vs2: list_nat] :
          ( ( Ys
            = ( append_nat @ Us2 @ ( cons_nat @ X @ Vs2 ) ) )
          & ! [X5: nat] :
              ( ( member_nat2 @ X5 @ ( set_nat2 @ Us2 ) )
             => ~ ( P4 @ X5 ) )
          & ( P4 @ X )
          & ( Xs
            = ( filter_nat @ P4 @ Vs2 ) ) ) ) ).

% filter_eq_ConsD
thf(fact_1117_Cons__eq__filterD,axiom,
    ! [X: nat,Xs: list_nat,P4: nat > $o,Ys: list_nat] :
      ( ( ( cons_nat @ X @ Xs )
        = ( filter_nat @ P4 @ Ys ) )
     => ? [Us2: list_nat,Vs2: list_nat] :
          ( ( Ys
            = ( append_nat @ Us2 @ ( cons_nat @ X @ Vs2 ) ) )
          & ! [X5: nat] :
              ( ( member_nat2 @ X5 @ ( set_nat2 @ Us2 ) )
             => ~ ( P4 @ X5 ) )
          & ( P4 @ X )
          & ( Xs
            = ( filter_nat @ P4 @ Vs2 ) ) ) ) ).

% Cons_eq_filterD
thf(fact_1118_list__diff_Osimps_I1_J,axiom,
    ! [Ys: list_term_a_b] :
      ( ( missin8626798239073972496rm_a_b @ nil_term_a_b @ Ys )
      = nil_term_a_b ) ).

% list_diff.simps(1)
thf(fact_1119_list__diff_Osimps_I1_J,axiom,
    ! [Ys: list_nat] :
      ( ( missin818507234016924876ff_nat @ nil_nat @ Ys )
      = nil_nat ) ).

% list_diff.simps(1)
thf(fact_1120_list_Osize_I4_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( ( size_size_list_nat @ ( cons_nat @ X21 @ X22 ) )
      = ( plus_plus_nat @ ( size_size_list_nat @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_1121_term_Osize_I4_J,axiom,
    ! [X21: a,X22: list_term_a_b] :
      ( ( size_size_term_a_b @ ( fun_a_b @ X21 @ X22 ) )
      = ( plus_plus_nat @ ( size_list_term_a_b @ size_size_term_a_b @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% term.size(4)
thf(fact_1122_list_Osize__gen_I1_J,axiom,
    ! [X: term_a_b > nat] :
      ( ( size_list_term_a_b @ X @ nil_term_a_b )
      = zero_zero_nat ) ).

% list.size_gen(1)
thf(fact_1123_list_Osize__gen_I1_J,axiom,
    ! [X: nat > nat] :
      ( ( size_list_nat @ X @ nil_nat )
      = zero_zero_nat ) ).

% list.size_gen(1)
thf(fact_1124_size__list__estimation,axiom,
    ! [X: list_nat,Xs: list_list_nat,Y: nat,F: list_nat > nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( ord_less_nat @ Y @ ( F @ X ) )
       => ( ord_less_nat @ Y @ ( size_list_list_nat @ F @ Xs ) ) ) ) ).

% size_list_estimation
thf(fact_1125_size__list__estimation,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b,Y: nat,F: produc357393685978478089rm_a_b > nat] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ( ord_less_nat @ Y @ ( F @ X ) )
       => ( ord_less_nat @ Y @ ( size_l3466988539524548625rm_a_b @ F @ Xs ) ) ) ) ).

% size_list_estimation
thf(fact_1126_size__list__pointwise,axiom,
    ! [Xs: list_list_nat,F: list_nat > nat,G: list_nat > nat] :
      ( ! [X3: list_nat] :
          ( ( member_list_nat2 @ X3 @ ( set_list_nat2 @ Xs ) )
         => ( ord_less_eq_nat @ ( F @ X3 ) @ ( G @ X3 ) ) )
     => ( ord_less_eq_nat @ ( size_list_list_nat @ F @ Xs ) @ ( size_list_list_nat @ G @ Xs ) ) ) ).

% size_list_pointwise
thf(fact_1127_size__list__pointwise,axiom,
    ! [Xs: list_P8875379029341186191rm_a_b,F: produc357393685978478089rm_a_b > nat,G: produc357393685978478089rm_a_b > nat] :
      ( ! [X3: produc357393685978478089rm_a_b] :
          ( ( member5869715511025134514rm_a_b @ X3 @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
         => ( ord_less_eq_nat @ ( F @ X3 ) @ ( G @ X3 ) ) )
     => ( ord_less_eq_nat @ ( size_l3466988539524548625rm_a_b @ F @ Xs ) @ ( size_l3466988539524548625rm_a_b @ G @ Xs ) ) ) ).

% size_list_pointwise
thf(fact_1128_size__list__estimation_H,axiom,
    ! [X: list_nat,Xs: list_list_nat,Y: nat,F: list_nat > nat] :
      ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
     => ( ( ord_less_eq_nat @ Y @ ( F @ X ) )
       => ( ord_less_eq_nat @ Y @ ( size_list_list_nat @ F @ Xs ) ) ) ) ).

% size_list_estimation'
thf(fact_1129_size__list__estimation_H,axiom,
    ! [X: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b,Y: nat,F: produc357393685978478089rm_a_b > nat] :
      ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
     => ( ( ord_less_eq_nat @ Y @ ( F @ X ) )
       => ( ord_less_eq_nat @ Y @ ( size_l3466988539524548625rm_a_b @ F @ Xs ) ) ) ) ).

% size_list_estimation'
thf(fact_1130_size__simp5,axiom,
    ! [S: term_a_b,Ss: list_term_a_b,T: term_a_b] :
      ( ( member_term_a_b2 @ S @ ( set_term_a_b2 @ Ss ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
       => ( ( ord_less_nat @ ( size_size_term_a_b @ T ) @ ( size_size_term_a_b @ S ) )
         => ( ord_less_nat @ ( size_size_term_a_b @ T ) @ ( suc @ ( size_list_term_a_b @ size_size_term_a_b @ Ss ) ) ) ) ) ) ).

% size_simp5
thf(fact_1131_size__simp6,axiom,
    ! [S: term_a_b,Ss: list_term_a_b,T: term_a_b] :
      ( ( member_term_a_b2 @ S @ ( set_term_a_b2 @ Ss ) )
     => ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
       => ( ( ord_less_eq_nat @ ( size_size_term_a_b @ T ) @ ( size_size_term_a_b @ S ) )
         => ( ord_less_eq_nat @ ( size_size_term_a_b @ T ) @ ( suc @ ( size_list_term_a_b @ size_size_term_a_b @ Ss ) ) ) ) ) ) ).

% size_simp6
thf(fact_1132_supt__size,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ( ord_less_nat @ ( size_size_term_a_b @ T ) @ ( size_size_term_a_b @ S ) ) ) ).

% supt_size
thf(fact_1133_supteq__size,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
     => ( ord_less_eq_nat @ ( size_size_term_a_b @ T ) @ ( size_size_term_a_b @ S ) ) ) ).

% supteq_size
thf(fact_1134_size__simp1,axiom,
    ! [T: list_nat,Ts: list_list_nat] :
      ( ( member_list_nat2 @ T @ ( set_list_nat2 @ Ts ) )
     => ( ord_less_nat @ ( size_size_list_nat @ T ) @ ( suc @ ( size_list_list_nat @ size_size_list_nat @ Ts ) ) ) ) ).

% size_simp1
thf(fact_1135_size__simp1,axiom,
    ! [T: produc357393685978478089rm_a_b,Ts: list_P8875379029341186191rm_a_b] :
      ( ( member5869715511025134514rm_a_b @ T @ ( set_Pr2370880052973118494rm_a_b @ Ts ) )
     => ( ord_less_nat @ ( size_s1656455353560805493rm_a_b @ T ) @ ( suc @ ( size_l3466988539524548625rm_a_b @ size_s1656455353560805493rm_a_b @ Ts ) ) ) ) ).

% size_simp1
thf(fact_1136_nth__zip,axiom,
    ! [I: nat,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Xs ) )
     => ( ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Ys ) )
       => ( ( nth_Pr1098598711982373392rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) @ I )
          = ( produc7020197800436672577rm_a_b @ ( nth_term_a_b @ Xs @ I ) @ ( nth_term_a_b @ Ys @ I ) ) ) ) ) ).

% nth_zip
thf(fact_1137_product_Osimps_I2_J,axiom,
    ! [X: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( produc7187426634685890287rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ Ys )
      = ( append1152621114427393060rm_a_b @ ( map_te7860633433546091055rm_a_b @ ( produc7020197800436672577rm_a_b @ X ) @ Ys ) @ ( produc7187426634685890287rm_a_b @ Xs @ Ys ) ) ) ).

% product.simps(2)
thf(fact_1138_Nil__eq__zip__iff,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( nil_Pr6942174756412032271rm_a_b
        = ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) )
      = ( ( Xs = nil_term_a_b )
        | ( Ys = nil_term_a_b ) ) ) ).

% Nil_eq_zip_iff
thf(fact_1139_Nil__eq__zip__iff,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat] :
      ( ( nil_Pr5682614035376309451_b_nat
        = ( zip_term_a_b_nat @ Xs @ Ys ) )
      = ( ( Xs = nil_term_a_b )
        | ( Ys = nil_nat ) ) ) ).

% Nil_eq_zip_iff
thf(fact_1140_Nil__eq__zip__iff,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b] :
      ( ( nil_Pr4197086119080101963rm_a_b
        = ( zip_nat_term_a_b @ Xs @ Ys ) )
      = ( ( Xs = nil_nat )
        | ( Ys = nil_term_a_b ) ) ) ).

% Nil_eq_zip_iff
thf(fact_1141_Nil__eq__zip__iff,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( nil_Pr5478986624290739719at_nat
        = ( zip_nat_nat @ Xs @ Ys ) )
      = ( ( Xs = nil_nat )
        | ( Ys = nil_nat ) ) ) ).

% Nil_eq_zip_iff
thf(fact_1142_zip__eq__Nil__iff,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ( zip_te2260252107881041761rm_a_b @ Xs @ Ys )
        = nil_Pr6942174756412032271rm_a_b )
      = ( ( Xs = nil_term_a_b )
        | ( Ys = nil_term_a_b ) ) ) ).

% zip_eq_Nil_iff
thf(fact_1143_zip__eq__Nil__iff,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat] :
      ( ( ( zip_term_a_b_nat @ Xs @ Ys )
        = nil_Pr5682614035376309451_b_nat )
      = ( ( Xs = nil_term_a_b )
        | ( Ys = nil_nat ) ) ) ).

% zip_eq_Nil_iff
thf(fact_1144_zip__eq__Nil__iff,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b] :
      ( ( ( zip_nat_term_a_b @ Xs @ Ys )
        = nil_Pr4197086119080101963rm_a_b )
      = ( ( Xs = nil_nat )
        | ( Ys = nil_term_a_b ) ) ) ).

% zip_eq_Nil_iff
thf(fact_1145_zip__eq__Nil__iff,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( zip_nat_nat @ Xs @ Ys )
        = nil_Pr5478986624290739719at_nat )
      = ( ( Xs = nil_nat )
        | ( Ys = nil_nat ) ) ) ).

% zip_eq_Nil_iff
thf(fact_1146_zip__Cons__Cons,axiom,
    ! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat] :
      ( ( zip_nat_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( zip_nat_nat @ Xs @ Ys ) ) ) ).

% zip_Cons_Cons
thf(fact_1147_zip__Cons__Cons,axiom,
    ! [X: term_a_b,Xs: list_term_a_b,Y: term_a_b,Ys: list_term_a_b] :
      ( ( zip_te2260252107881041761rm_a_b @ ( cons_term_a_b @ X @ Xs ) @ ( cons_term_a_b @ Y @ Ys ) )
      = ( cons_P3536305108106557631rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) ) ).

% zip_Cons_Cons
thf(fact_1148_in__set__impl__in__set__zip1,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,X: term_a_b] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( member_term_a_b2 @ X @ ( set_term_a_b2 @ Xs ) )
       => ~ ! [Y3: term_a_b] :
              ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y3 ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) ) ) ) ).

% in_set_impl_in_set_zip1
thf(fact_1149_in__set__impl__in__set__zip2,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,Y: term_a_b] :
      ( ( ( size_s8906293707977694520rm_a_b @ Xs )
        = ( size_s8906293707977694520rm_a_b @ Ys ) )
     => ( ( member_term_a_b2 @ Y @ ( set_term_a_b2 @ Ys ) )
       => ~ ! [X3: term_a_b] :
              ~ ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X3 @ Y ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) ) ) ) ).

% in_set_impl_in_set_zip2
thf(fact_1150_zip__same,axiom,
    ! [A: list_nat,B: list_nat,Xs: list_list_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ A @ B ) @ ( set_Pr3842133991353686454st_nat @ ( zip_li7157463729305086713st_nat @ Xs @ Xs ) ) )
      = ( ( member_list_nat2 @ A @ ( set_list_nat2 @ Xs ) )
        & ( A = B ) ) ) ).

% zip_same
thf(fact_1151_zip__same,axiom,
    ! [A: produc357393685978478089rm_a_b,B: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ A @ B ) @ ( set_Pr1141850553043368956rm_a_b @ ( zip_Pr5674138466097917431rm_a_b @ Xs @ Xs ) ) )
      = ( ( member5869715511025134514rm_a_b @ A @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
        & ( A = B ) ) ) ).

% zip_same
thf(fact_1152_zip__same,axiom,
    ! [A: term_a_b,B: term_a_b,Xs: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ A @ B ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Xs ) ) )
      = ( ( member_term_a_b2 @ A @ ( set_term_a_b2 @ Xs ) )
        & ( A = B ) ) ) ).

% zip_same
thf(fact_1153_in__set__zipE,axiom,
    ! [X: list_nat,Y: list_nat,Xs: list_list_nat,Ys: list_list_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ X @ Y ) @ ( set_Pr3842133991353686454st_nat @ ( zip_li7157463729305086713st_nat @ Xs @ Ys ) ) )
     => ~ ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
         => ~ ( member_list_nat2 @ Y @ ( set_list_nat2 @ Ys ) ) ) ) ).

% in_set_zipE
thf(fact_1154_in__set__zipE,axiom,
    ! [X: list_nat,Y: produc357393685978478089rm_a_b,Xs: list_list_nat,Ys: list_P8875379029341186191rm_a_b] :
      ( ( member4140859439665155893rm_a_b @ ( produc3015861401532503632rm_a_b @ X @ Y ) @ ( set_Pr7273799732993181129rm_a_b @ ( zip_li1978623282951132976rm_a_b @ Xs @ Ys ) ) )
     => ~ ( ( member_list_nat2 @ X @ ( set_list_nat2 @ Xs ) )
         => ~ ( member5869715511025134514rm_a_b @ Y @ ( set_Pr2370880052973118494rm_a_b @ Ys ) ) ) ) ).

% in_set_zipE
thf(fact_1155_in__set__zipE,axiom,
    ! [X: produc357393685978478089rm_a_b,Y: list_nat,Xs: list_P8875379029341186191rm_a_b,Ys: list_list_nat] :
      ( ( member190277321972437807st_nat @ ( produc5056965718246025362st_nat @ X @ Y ) @ ( set_Pr3323217615300463043st_nat @ ( zip_Pr4019727599664654706st_nat @ Xs @ Ys ) ) )
     => ~ ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
         => ~ ( member_list_nat2 @ Y @ ( set_list_nat2 @ Ys ) ) ) ) ).

% in_set_zipE
thf(fact_1156_in__set__zipE,axiom,
    ! [X: produc357393685978478089rm_a_b,Y: produc357393685978478089rm_a_b,Xs: list_P8875379029341186191rm_a_b,Ys: list_P8875379029341186191rm_a_b] :
      ( ( member8417600551952982416rm_a_b @ ( produc1763473618796451543rm_a_b @ X @ Y ) @ ( set_Pr1141850553043368956rm_a_b @ ( zip_Pr5674138466097917431rm_a_b @ Xs @ Ys ) ) )
     => ~ ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ Xs ) )
         => ~ ( member5869715511025134514rm_a_b @ Y @ ( set_Pr2370880052973118494rm_a_b @ Ys ) ) ) ) ).

% in_set_zipE
thf(fact_1157_in__set__zipE,axiom,
    ! [X: term_a_b,Y: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) )
     => ~ ( ( member_term_a_b2 @ X @ ( set_term_a_b2 @ Xs ) )
         => ~ ( member_term_a_b2 @ Y @ ( set_term_a_b2 @ Ys ) ) ) ) ).

% in_set_zipE
thf(fact_1158_set__zip__leftD,axiom,
    ! [X: term_a_b,Y: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) )
     => ( member_term_a_b2 @ X @ ( set_term_a_b2 @ Xs ) ) ) ).

% set_zip_leftD
thf(fact_1159_set__zip__rightD,axiom,
    ! [X: term_a_b,Y: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) )
     => ( member_term_a_b2 @ Y @ ( set_term_a_b2 @ Ys ) ) ) ).

% set_zip_rightD
thf(fact_1160_zip__update,axiom,
    ! [Xs: list_term_a_b,I: nat,X: term_a_b,Ys: list_term_a_b,Y: term_a_b] :
      ( ( zip_te2260252107881041761rm_a_b @ ( list_update_term_a_b @ Xs @ I @ X ) @ ( list_update_term_a_b @ Ys @ I @ Y ) )
      = ( list_u4211539095652206455rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) @ I @ ( produc7020197800436672577rm_a_b @ X @ Y ) ) ) ).

% zip_update
thf(fact_1161_hd__zip,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat] :
      ( ( Xs != nil_term_a_b )
     => ( ( Ys != nil_nat )
       => ( ( hd_Pro5563056963574031536_b_nat @ ( zip_term_a_b_nat @ Xs @ Ys ) )
          = ( produc2478027105211390077_b_nat @ ( hd_term_a_b @ Xs ) @ ( hd_nat @ Ys ) ) ) ) ) ).

% hd_zip
thf(fact_1162_hd__zip,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b] :
      ( ( Xs != nil_nat )
     => ( ( Ys != nil_term_a_b )
       => ( ( hd_Pro4077529047277824048rm_a_b @ ( zip_nat_term_a_b @ Xs @ Ys ) )
          = ( produc1516572978046417917rm_a_b @ ( hd_nat @ Xs ) @ ( hd_term_a_b @ Ys ) ) ) ) ) ).

% hd_zip
thf(fact_1163_hd__zip,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( Ys != nil_nat )
       => ( ( hd_Pro3460610213475200108at_nat @ ( zip_nat_nat @ Xs @ Ys ) )
          = ( product_Pair_nat_nat @ ( hd_nat @ Xs ) @ ( hd_nat @ Ys ) ) ) ) ) ).

% hd_zip
thf(fact_1164_hd__zip,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( Ys != nil_term_a_b )
       => ( ( hd_Pro6001814652670619252rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) )
          = ( produc7020197800436672577rm_a_b @ ( hd_term_a_b @ Xs ) @ ( hd_term_a_b @ Ys ) ) ) ) ) ).

% hd_zip
thf(fact_1165_zip__eq__ConsE,axiom,
    ! [Xs: list_nat,Ys: list_nat,Xy: product_prod_nat_nat,Xys: list_P6011104703257516679at_nat] :
      ( ( ( zip_nat_nat @ Xs @ Ys )
        = ( cons_P6512896166579812791at_nat @ Xy @ Xys ) )
     => ~ ! [X3: nat,Xs5: list_nat] :
            ( ( Xs
              = ( cons_nat @ X3 @ Xs5 ) )
           => ! [Y3: nat,Ys6: list_nat] :
                ( ( Ys
                  = ( cons_nat @ Y3 @ Ys6 ) )
               => ( ( Xy
                    = ( product_Pair_nat_nat @ X3 @ Y3 ) )
                 => ( Xys
                   != ( zip_nat_nat @ Xs5 @ Ys6 ) ) ) ) ) ) ).

% zip_eq_ConsE
thf(fact_1166_zip__eq__ConsE,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b,Xy: produc357393685978478089rm_a_b,Xys: list_P8875379029341186191rm_a_b] :
      ( ( ( zip_te2260252107881041761rm_a_b @ Xs @ Ys )
        = ( cons_P3536305108106557631rm_a_b @ Xy @ Xys ) )
     => ~ ! [X3: term_a_b,Xs5: list_term_a_b] :
            ( ( Xs
              = ( cons_term_a_b @ X3 @ Xs5 ) )
           => ! [Y3: term_a_b,Ys6: list_term_a_b] :
                ( ( Ys
                  = ( cons_term_a_b @ Y3 @ Ys6 ) )
               => ( ( Xy
                    = ( produc7020197800436672577rm_a_b @ X3 @ Y3 ) )
                 => ( Xys
                   != ( zip_te2260252107881041761rm_a_b @ Xs5 @ Ys6 ) ) ) ) ) ) ).

% zip_eq_ConsE
thf(fact_1167_last__zip,axiom,
    ! [Xs: list_term_a_b,Ys: list_nat] :
      ( ( Xs != nil_term_a_b )
     => ( ( Ys != nil_nat )
       => ( ( ( size_s8906293707977694520rm_a_b @ Xs )
            = ( size_size_list_nat @ Ys ) )
         => ( ( last_P2830796297332812132_b_nat @ ( zip_term_a_b_nat @ Xs @ Ys ) )
            = ( produc2478027105211390077_b_nat @ ( last_term_a_b @ Xs ) @ ( last_nat @ Ys ) ) ) ) ) ) ).

% last_zip
thf(fact_1168_last__zip,axiom,
    ! [Xs: list_nat,Ys: list_term_a_b] :
      ( ( Xs != nil_nat )
     => ( ( Ys != nil_term_a_b )
       => ( ( ( size_size_list_nat @ Xs )
            = ( size_s8906293707977694520rm_a_b @ Ys ) )
         => ( ( last_P1345268381036604644rm_a_b @ ( zip_nat_term_a_b @ Xs @ Ys ) )
            = ( produc1516572978046417917rm_a_b @ ( last_nat @ Xs ) @ ( last_term_a_b @ Ys ) ) ) ) ) ) ).

% last_zip
thf(fact_1169_last__zip,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( Ys != nil_nat )
       => ( ( ( size_size_list_nat @ Xs )
            = ( size_size_list_nat @ Ys ) )
         => ( ( last_P6484183829340986144at_nat @ ( zip_nat_nat @ Xs @ Ys ) )
            = ( product_Pair_nat_nat @ ( last_nat @ Xs ) @ ( last_nat @ Ys ) ) ) ) ) ) ).

% last_zip
thf(fact_1170_last__zip,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( Ys != nil_term_a_b )
       => ( ( ( size_s8906293707977694520rm_a_b @ Xs )
            = ( size_s8906293707977694520rm_a_b @ Ys ) )
         => ( ( last_P6746431593072707880rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) )
            = ( produc7020197800436672577rm_a_b @ ( last_term_a_b @ Xs ) @ ( last_term_a_b @ Ys ) ) ) ) ) ) ).

% last_zip
thf(fact_1171_size__simp4,axiom,
    ! [X: term_a_b,Y: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) )
     => ( ord_less_nat @ ( size_size_term_a_b @ Y ) @ ( suc @ ( size_list_term_a_b @ size_size_term_a_b @ Ys ) ) ) ) ).

% size_simp4
thf(fact_1172_size__simp3,axiom,
    ! [X: term_a_b,Y: term_a_b,Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ X @ Y ) @ ( set_Pr2370880052973118494rm_a_b @ ( zip_te2260252107881041761rm_a_b @ Xs @ Ys ) ) )
     => ( ord_less_nat @ ( size_size_term_a_b @ X ) @ ( suc @ ( size_list_term_a_b @ size_size_term_a_b @ Xs ) ) ) ) ).

% size_simp3
thf(fact_1173_distinct__adj__append__iff,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( distin3333876298242337718rm_a_b @ ( append_term_a_b @ Xs @ Ys ) )
      = ( ( distin3333876298242337718rm_a_b @ Xs )
        & ( distin3333876298242337718rm_a_b @ Ys )
        & ( ( Xs = nil_term_a_b )
          | ( Ys = nil_term_a_b )
          | ( ( last_term_a_b @ Xs )
           != ( hd_term_a_b @ Ys ) ) ) ) ) ).

% distinct_adj_append_iff
thf(fact_1174_distinct__adj__append__iff,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( distinct_adj_nat @ ( append_nat @ Xs @ Ys ) )
      = ( ( distinct_adj_nat @ Xs )
        & ( distinct_adj_nat @ Ys )
        & ( ( Xs = nil_nat )
          | ( Ys = nil_nat )
          | ( ( last_nat @ Xs )
           != ( hd_nat @ Ys ) ) ) ) ) ).

% distinct_adj_append_iff
thf(fact_1175_replace__term__context__at_Osimps_I2_J,axiom,
    ! [I: nat,Ss: list_term_a_b,F: a,C4: subterm_and_ctxt_a_b,Ts: list_term_a_b,Ps: list_nat,U: term_a_b] :
      ( ( ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Ss ) )
       => ( ( terms_4774307173741787698at_a_b @ ( subterm_and_More_a_b @ F @ Ss @ C4 @ Ts ) @ ( cons_nat @ I @ Ps ) @ U )
          = ( subterm_and_More_a_b @ F @ ( list_update_term_a_b @ Ss @ I @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ss @ I ) @ Ps @ U ) ) @ C4 @ Ts ) ) )
      & ( ~ ( ord_less_nat @ I @ ( size_s8906293707977694520rm_a_b @ Ss ) )
       => ( ( ( I
              = ( size_s8906293707977694520rm_a_b @ Ss ) )
           => ( ( terms_4774307173741787698at_a_b @ ( subterm_and_More_a_b @ F @ Ss @ C4 @ Ts ) @ ( cons_nat @ I @ Ps ) @ U )
              = ( subterm_and_More_a_b @ F @ Ss @ ( terms_4774307173741787698at_a_b @ C4 @ Ps @ U ) @ Ts ) ) )
          & ( ( I
             != ( size_s8906293707977694520rm_a_b @ Ss ) )
           => ( ( terms_4774307173741787698at_a_b @ ( subterm_and_More_a_b @ F @ Ss @ C4 @ Ts ) @ ( cons_nat @ I @ Ps ) @ U )
              = ( subterm_and_More_a_b @ F @ Ss @ C4 @ ( list_update_term_a_b @ Ts @ ( minus_minus_nat @ I @ ( suc @ ( size_s8906293707977694520rm_a_b @ Ss ) ) ) @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ts @ ( minus_minus_nat @ I @ ( suc @ ( size_s8906293707977694520rm_a_b @ Ss ) ) ) ) @ Ps @ U ) ) ) ) ) ) ) ) ).

% replace_term_context_at.simps(2)
thf(fact_1176_distinct__adj__Cons__Cons,axiom,
    ! [X: nat,Y: nat,Xs: list_nat] :
      ( ( distinct_adj_nat @ ( cons_nat @ X @ ( cons_nat @ Y @ Xs ) ) )
      = ( ( X != Y )
        & ( distinct_adj_nat @ ( cons_nat @ Y @ Xs ) ) ) ) ).

% distinct_adj_Cons_Cons
thf(fact_1177_distinct__adj__Nil,axiom,
    distin3333876298242337718rm_a_b @ nil_term_a_b ).

% distinct_adj_Nil
thf(fact_1178_distinct__adj__Nil,axiom,
    distinct_adj_nat @ nil_nat ).

% distinct_adj_Nil
thf(fact_1179_distinct__adj__singleton,axiom,
    ! [X: term_a_b] : ( distin3333876298242337718rm_a_b @ ( cons_term_a_b @ X @ nil_term_a_b ) ) ).

% distinct_adj_singleton
thf(fact_1180_distinct__adj__singleton,axiom,
    ! [X: nat] : ( distinct_adj_nat @ ( cons_nat @ X @ nil_nat ) ) ).

% distinct_adj_singleton
thf(fact_1181_distinct__adj__ConsD,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( distinct_adj_nat @ ( cons_nat @ X @ Xs ) )
     => ( distinct_adj_nat @ Xs ) ) ).

% distinct_adj_ConsD
thf(fact_1182_distinct__adj__Cons,axiom,
    ! [X: term_a_b,Xs: list_term_a_b] :
      ( ( distin3333876298242337718rm_a_b @ ( cons_term_a_b @ X @ Xs ) )
      = ( ( Xs = nil_term_a_b )
        | ( ( X
           != ( hd_term_a_b @ Xs ) )
          & ( distin3333876298242337718rm_a_b @ Xs ) ) ) ) ).

% distinct_adj_Cons
thf(fact_1183_distinct__adj__Cons,axiom,
    ! [X: nat,Xs: list_nat] :
      ( ( distinct_adj_nat @ ( cons_nat @ X @ Xs ) )
      = ( ( Xs = nil_nat )
        | ( ( X
           != ( hd_nat @ Xs ) )
          & ( distinct_adj_nat @ Xs ) ) ) ) ).

% distinct_adj_Cons
thf(fact_1184_ctxt__at__pos_Osimps_I2_J,axiom,
    ! [F: a,Ss: list_term_a_b,I: nat,P: list_nat] :
      ( ( term_ctxt_at_pos_a_b @ ( fun_a_b @ F @ Ss ) @ ( cons_nat @ I @ P ) )
      = ( subterm_and_More_a_b @ F @ ( take_term_a_b @ I @ Ss ) @ ( term_ctxt_at_pos_a_b @ ( nth_term_a_b @ Ss @ I ) @ P ) @ ( drop_term_a_b @ ( suc @ I ) @ Ss ) ) ) ).

% ctxt_at_pos.simps(2)
thf(fact_1185_replace__term__context__at_Oelims,axiom,
    ! [X: subterm_and_ctxt_a_b,Xa: list_nat,Xb: term_a_b,Y: subterm_and_ctxt_a_b] :
      ( ( ( terms_4774307173741787698at_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( ( X = subterm_and_Hole_a_b )
         => ( Y != subterm_and_Hole_a_b ) )
       => ( ! [F3: a,Ss3: list_term_a_b,C5: subterm_and_ctxt_a_b,Ts2: list_term_a_b] :
              ( ( X
                = ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ Ts2 ) )
             => ! [I2: nat,Ps2: list_nat] :
                  ( ( Xa
                    = ( cons_nat @ I2 @ Ps2 ) )
                 => ~ ( ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                       => ( Y
                          = ( subterm_and_More_a_b @ F3 @ ( list_update_term_a_b @ Ss3 @ I2 @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ss3 @ I2 ) @ Ps2 @ Xb ) ) @ C5 @ Ts2 ) ) )
                      & ( ~ ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                       => ( ( ( I2
                              = ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                           => ( Y
                              = ( subterm_and_More_a_b @ F3 @ Ss3 @ ( terms_4774307173741787698at_a_b @ C5 @ Ps2 @ Xb ) @ Ts2 ) ) )
                          & ( ( I2
                             != ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                           => ( Y
                              = ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ ( list_update_term_a_b @ Ts2 @ ( minus_minus_nat @ I2 @ ( suc @ ( size_s8906293707977694520rm_a_b @ Ss3 ) ) ) @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ts2 @ ( minus_minus_nat @ I2 @ ( suc @ ( size_s8906293707977694520rm_a_b @ Ss3 ) ) ) ) @ Ps2 @ Xb ) ) ) ) ) ) ) ) ) )
         => ~ ( ? [V: a,Va: list_term_a_b,Vb: subterm_and_ctxt_a_b,Vc: list_term_a_b] :
                  ( X
                  = ( subterm_and_More_a_b @ V @ Va @ Vb @ Vc ) )
             => ( ( Xa = nil_nat )
               => ( Y != undefi3573907640150307307xt_a_b ) ) ) ) ) ) ).

% replace_term_context_at.elims
thf(fact_1186_ctxt__at__pos_Oelims,axiom,
    ! [X: term_a_b,Xa: list_nat,Y: subterm_and_ctxt_a_b] :
      ( ( ( term_ctxt_at_pos_a_b @ X @ Xa )
        = Y )
     => ( ( ( Xa = nil_nat )
         => ( Y != subterm_and_Hole_a_b ) )
       => ( ! [F3: a,Ss3: list_term_a_b] :
              ( ( X
                = ( fun_a_b @ F3 @ Ss3 ) )
             => ! [I2: nat,P2: list_nat] :
                  ( ( Xa
                    = ( cons_nat @ I2 @ P2 ) )
                 => ( Y
                   != ( subterm_and_More_a_b @ F3 @ ( take_term_a_b @ I2 @ Ss3 ) @ ( term_ctxt_at_pos_a_b @ ( nth_term_a_b @ Ss3 @ I2 ) @ P2 ) @ ( drop_term_a_b @ ( suc @ I2 ) @ Ss3 ) ) ) ) )
         => ~ ( ? [X3: b] :
                  ( X
                  = ( var_b_a @ X3 ) )
             => ( ? [V: nat,Va: list_nat] :
                    ( Xa
                    = ( cons_nat @ V @ Va ) )
               => ( Y != undefi3573907640150307307xt_a_b ) ) ) ) ) ) ).

% ctxt_at_pos.elims
thf(fact_1187_ctxt__at__pos_Opelims,axiom,
    ! [X: term_a_b,Xa: list_nat,Y: subterm_and_ctxt_a_b] :
      ( ( ( term_ctxt_at_pos_a_b @ X @ Xa )
        = Y )
     => ( ( accp_P682940083893826398st_nat @ term_c6096582210798399037el_a_b @ ( produc4563063199488751885st_nat @ X @ Xa ) )
       => ( ( ( Xa = nil_nat )
           => ( ( Y = subterm_and_Hole_a_b )
             => ~ ( accp_P682940083893826398st_nat @ term_c6096582210798399037el_a_b @ ( produc4563063199488751885st_nat @ X @ nil_nat ) ) ) )
         => ( ! [F3: a,Ss3: list_term_a_b] :
                ( ( X
                  = ( fun_a_b @ F3 @ Ss3 ) )
               => ! [I2: nat,P2: list_nat] :
                    ( ( Xa
                      = ( cons_nat @ I2 @ P2 ) )
                   => ( ( Y
                        = ( subterm_and_More_a_b @ F3 @ ( take_term_a_b @ I2 @ Ss3 ) @ ( term_ctxt_at_pos_a_b @ ( nth_term_a_b @ Ss3 @ I2 ) @ P2 ) @ ( drop_term_a_b @ ( suc @ I2 ) @ Ss3 ) ) )
                     => ~ ( accp_P682940083893826398st_nat @ term_c6096582210798399037el_a_b @ ( produc4563063199488751885st_nat @ ( fun_a_b @ F3 @ Ss3 ) @ ( cons_nat @ I2 @ P2 ) ) ) ) ) )
           => ~ ! [X3: b] :
                  ( ( X
                    = ( var_b_a @ X3 ) )
                 => ! [V: nat,Va: list_nat] :
                      ( ( Xa
                        = ( cons_nat @ V @ Va ) )
                     => ( ( Y = undefi3573907640150307307xt_a_b )
                       => ~ ( accp_P682940083893826398st_nat @ term_c6096582210798399037el_a_b @ ( produc4563063199488751885st_nat @ ( var_b_a @ X3 ) @ ( cons_nat @ V @ Va ) ) ) ) ) ) ) ) ) ) ).

% ctxt_at_pos.pelims
thf(fact_1188_replace__term__context__at_Opelims,axiom,
    ! [X: subterm_and_ctxt_a_b,Xa: list_nat,Xb: term_a_b,Y: subterm_and_ctxt_a_b] :
      ( ( ( terms_4774307173741787698at_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P6624108184151110466rm_a_b @ terms_6690452295706263049el_a_b @ ( produc1096132875450744233rm_a_b @ X @ ( produc5151171985953862413rm_a_b @ Xa @ Xb ) ) )
       => ( ( ( X = subterm_and_Hole_a_b )
           => ( ( Y = subterm_and_Hole_a_b )
             => ~ ( accp_P6624108184151110466rm_a_b @ terms_6690452295706263049el_a_b @ ( produc1096132875450744233rm_a_b @ subterm_and_Hole_a_b @ ( produc5151171985953862413rm_a_b @ Xa @ Xb ) ) ) ) )
         => ( ! [F3: a,Ss3: list_term_a_b,C5: subterm_and_ctxt_a_b,Ts2: list_term_a_b] :
                ( ( X
                  = ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ Ts2 ) )
               => ! [I2: nat,Ps2: list_nat] :
                    ( ( Xa
                      = ( cons_nat @ I2 @ Ps2 ) )
                   => ( ( ( ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                         => ( Y
                            = ( subterm_and_More_a_b @ F3 @ ( list_update_term_a_b @ Ss3 @ I2 @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ss3 @ I2 ) @ Ps2 @ Xb ) ) @ C5 @ Ts2 ) ) )
                        & ( ~ ( ord_less_nat @ I2 @ ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                         => ( ( ( I2
                                = ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                             => ( Y
                                = ( subterm_and_More_a_b @ F3 @ Ss3 @ ( terms_4774307173741787698at_a_b @ C5 @ Ps2 @ Xb ) @ Ts2 ) ) )
                            & ( ( I2
                               != ( size_s8906293707977694520rm_a_b @ Ss3 ) )
                             => ( Y
                                = ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ ( list_update_term_a_b @ Ts2 @ ( minus_minus_nat @ I2 @ ( suc @ ( size_s8906293707977694520rm_a_b @ Ss3 ) ) ) @ ( term_r6860082780075436317at_a_b @ ( nth_term_a_b @ Ts2 @ ( minus_minus_nat @ I2 @ ( suc @ ( size_s8906293707977694520rm_a_b @ Ss3 ) ) ) ) @ Ps2 @ Xb ) ) ) ) ) ) ) )
                     => ~ ( accp_P6624108184151110466rm_a_b @ terms_6690452295706263049el_a_b @ ( produc1096132875450744233rm_a_b @ ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ Ts2 ) @ ( produc5151171985953862413rm_a_b @ ( cons_nat @ I2 @ Ps2 ) @ Xb ) ) ) ) ) )
           => ~ ! [V: a,Va: list_term_a_b,Vb: subterm_and_ctxt_a_b,Vc: list_term_a_b] :
                  ( ( X
                    = ( subterm_and_More_a_b @ V @ Va @ Vb @ Vc ) )
                 => ( ( Xa = nil_nat )
                   => ( ( Y = undefi3573907640150307307xt_a_b )
                     => ~ ( accp_P6624108184151110466rm_a_b @ terms_6690452295706263049el_a_b @ ( produc1096132875450744233rm_a_b @ ( subterm_and_More_a_b @ V @ Va @ Vb @ Vc ) @ ( produc5151171985953862413rm_a_b @ nil_nat @ Xb ) ) ) ) ) ) ) ) ) ) ).

% replace_term_context_at.pelims
thf(fact_1189_inv__const__ctxt_H_Oelims,axiom,
    ! [X: set_Pr4934435412358123699_a_nat,Xa: b,Xb: subterm_and_ctxt_a_b,Y: term_a_b] :
      ( ( ( terms_130083692264552600xt_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = subterm_and_Hole_a_b )
         => ( Y
           != ( var_b_a @ Xa ) ) )
       => ~ ! [F3: a,Ss3: list_term_a_b,C5: subterm_and_ctxt_a_b,Ts2: list_term_a_b] :
              ( ( Xb
                = ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ Ts2 ) )
             => ~ ( ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( suc @ ( plus_plus_nat @ ( size_s8906293707977694520rm_a_b @ Ss3 ) @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) ) ) @ X )
                   => ( Y
                      = ( fun_a_b @ F3 @ ( append_term_a_b @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ X @ Xa ) @ Ss3 ) @ ( cons_term_a_b @ ( terms_130083692264552600xt_a_b @ X @ Xa @ C5 ) @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ X @ Xa ) @ Ts2 ) ) ) ) ) )
                  & ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( suc @ ( plus_plus_nat @ ( size_s8906293707977694520rm_a_b @ Ss3 ) @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) ) ) @ X )
                   => ( Y
                      = ( var_b_a @ Xa ) ) ) ) ) ) ) ).

% inv_const_ctxt'.elims
thf(fact_1190_term__to__sig_Osimps_I2_J,axiom,
    ! [F: a,Ts: list_term_a_b,F7: set_Pr4934435412358123699_a_nat,V2: b] :
      ( ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( size_s8906293707977694520rm_a_b @ Ts ) ) @ F7 )
       => ( ( terms_8519481630511763164ig_a_b @ F7 @ V2 @ ( fun_a_b @ F @ Ts ) )
          = ( fun_a_b @ F @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ F7 @ V2 ) @ Ts ) ) ) )
      & ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( size_s8906293707977694520rm_a_b @ Ts ) ) @ F7 )
       => ( ( terms_8519481630511763164ig_a_b @ F7 @ V2 @ ( fun_a_b @ F @ Ts ) )
          = ( var_b_a @ V2 ) ) ) ) ).

% term_to_sig.simps(2)
thf(fact_1191_term__to__sig_Oelims,axiom,
    ! [X: set_Pr4934435412358123699_a_nat,Xa: b,Xb: term_a_b,Y: term_a_b] :
      ( ( ( terms_8519481630511763164ig_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ! [X3: b] :
            ( ( Xb
              = ( var_b_a @ X3 ) )
           => ( Y
             != ( var_b_a @ X3 ) ) )
       => ~ ! [F3: a,Ts2: list_term_a_b] :
              ( ( Xb
                = ( fun_a_b @ F3 @ Ts2 ) )
             => ~ ( ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) @ X )
                   => ( Y
                      = ( fun_a_b @ F3 @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ X @ Xa ) @ Ts2 ) ) ) )
                  & ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) @ X )
                   => ( Y
                      = ( var_b_a @ Xa ) ) ) ) ) ) ) ).

% term_to_sig.elims
thf(fact_1192_inv__const__ctxt_H_Osimps_I2_J,axiom,
    ! [F: a,Ss: list_term_a_b,Ts: list_term_a_b,F7: set_Pr4934435412358123699_a_nat,V2: b,C4: subterm_and_ctxt_a_b] :
      ( ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( suc @ ( plus_plus_nat @ ( size_s8906293707977694520rm_a_b @ Ss ) @ ( size_s8906293707977694520rm_a_b @ Ts ) ) ) ) @ F7 )
       => ( ( terms_130083692264552600xt_a_b @ F7 @ V2 @ ( subterm_and_More_a_b @ F @ Ss @ C4 @ Ts ) )
          = ( fun_a_b @ F @ ( append_term_a_b @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ F7 @ V2 ) @ Ss ) @ ( cons_term_a_b @ ( terms_130083692264552600xt_a_b @ F7 @ V2 @ C4 ) @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ F7 @ V2 ) @ Ts ) ) ) ) ) )
      & ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F @ ( suc @ ( plus_plus_nat @ ( size_s8906293707977694520rm_a_b @ Ss ) @ ( size_s8906293707977694520rm_a_b @ Ts ) ) ) ) @ F7 )
       => ( ( terms_130083692264552600xt_a_b @ F7 @ V2 @ ( subterm_and_More_a_b @ F @ Ss @ C4 @ Ts ) )
          = ( var_b_a @ V2 ) ) ) ) ).

% inv_const_ctxt'.simps(2)
thf(fact_1193_inv__const__ctxt_H_Opelims,axiom,
    ! [X: set_Pr4934435412358123699_a_nat,Xa: b,Xb: subterm_and_ctxt_a_b,Y: term_a_b] :
      ( ( ( terms_130083692264552600xt_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P7840533129395112868xt_a_b @ terms_8678133689484017443el_a_b @ ( produc8492722943253109151xt_a_b @ X @ ( produc8957000483500942811xt_a_b @ Xa @ Xb ) ) )
       => ( ( ( Xb = subterm_and_Hole_a_b )
           => ( ( Y
                = ( var_b_a @ Xa ) )
             => ~ ( accp_P7840533129395112868xt_a_b @ terms_8678133689484017443el_a_b @ ( produc8492722943253109151xt_a_b @ X @ ( produc8957000483500942811xt_a_b @ Xa @ subterm_and_Hole_a_b ) ) ) ) )
         => ~ ! [F3: a,Ss3: list_term_a_b,C5: subterm_and_ctxt_a_b,Ts2: list_term_a_b] :
                ( ( Xb
                  = ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ Ts2 ) )
               => ( ( ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( suc @ ( plus_plus_nat @ ( size_s8906293707977694520rm_a_b @ Ss3 ) @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) ) ) @ X )
                     => ( Y
                        = ( fun_a_b @ F3 @ ( append_term_a_b @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ X @ Xa ) @ Ss3 ) @ ( cons_term_a_b @ ( terms_130083692264552600xt_a_b @ X @ Xa @ C5 ) @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ X @ Xa ) @ Ts2 ) ) ) ) ) )
                    & ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( suc @ ( plus_plus_nat @ ( size_s8906293707977694520rm_a_b @ Ss3 ) @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) ) ) @ X )
                     => ( Y
                        = ( var_b_a @ Xa ) ) ) )
                 => ~ ( accp_P7840533129395112868xt_a_b @ terms_8678133689484017443el_a_b @ ( produc8492722943253109151xt_a_b @ X @ ( produc8957000483500942811xt_a_b @ Xa @ ( subterm_and_More_a_b @ F3 @ Ss3 @ C5 @ Ts2 ) ) ) ) ) ) ) ) ) ).

% inv_const_ctxt'.pelims
thf(fact_1194_term__to__sig_Opelims,axiom,
    ! [X: set_Pr4934435412358123699_a_nat,Xa: b,Xb: term_a_b,Y: term_a_b] :
      ( ( ( terms_8519481630511763164ig_a_b @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P3366084933459579103rm_a_b @ terms_8023737178250165727el_a_b @ ( produc8030969961714872974rm_a_b @ X @ ( produc1437816968797971900rm_a_b @ Xa @ Xb ) ) )
       => ( ! [X3: b] :
              ( ( Xb
                = ( var_b_a @ X3 ) )
             => ( ( Y
                  = ( var_b_a @ X3 ) )
               => ~ ( accp_P3366084933459579103rm_a_b @ terms_8023737178250165727el_a_b @ ( produc8030969961714872974rm_a_b @ X @ ( produc1437816968797971900rm_a_b @ Xa @ ( var_b_a @ X3 ) ) ) ) ) )
         => ~ ! [F3: a,Ts2: list_term_a_b] :
                ( ( Xb
                  = ( fun_a_b @ F3 @ Ts2 ) )
               => ( ( ( ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) @ X )
                     => ( Y
                        = ( fun_a_b @ F3 @ ( map_te2328734355998148206rm_a_b @ ( terms_8519481630511763164ig_a_b @ X @ Xa ) @ Ts2 ) ) ) )
                    & ( ~ ( member5724188588386418708_a_nat @ ( product_Pair_a_nat @ F3 @ ( size_s8906293707977694520rm_a_b @ Ts2 ) ) @ X )
                     => ( Y
                        = ( var_b_a @ Xa ) ) ) )
                 => ~ ( accp_P3366084933459579103rm_a_b @ terms_8023737178250165727el_a_b @ ( produc8030969961714872974rm_a_b @ X @ ( produc1437816968797971900rm_a_b @ Xa @ ( fun_a_b @ F3 @ Ts2 ) ) ) ) ) ) ) ) ) ).

% term_to_sig.pelims
thf(fact_1195_poss__of__term__const__ctxt__apply,axiom,
    ! [P: list_nat,C: a,C4: subterm_and_ctxt_a_b,S: term_a_b] :
      ( ( member_list_nat2 @ P @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ C @ nil_term_a_b ) @ ( subter2376574525758040790rm_a_b @ C4 @ S ) ) )
     => ( ( term_p5017330785391824242ar_nat @ P @ ( term_hole_pos_a_b @ C4 ) )
        | ( term_p3503116865373065078eq_nat @ ( term_hole_pos_a_b @ C4 ) @ P ) ) ) ).

% poss_of_term_const_ctxt_apply
thf(fact_1196_ctxt__supteq,axiom,
    ! [S: term_a_b,C4: subterm_and_ctxt_a_b,T: term_a_b] :
      ( ( S
        = ( subter2376574525758040790rm_a_b @ C4 @ T ) )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b ) ) ).

% ctxt_supteq
thf(fact_1197_replace__at__hole__pos,axiom,
    ! [C4: subterm_and_ctxt_a_b,S: term_a_b,T: term_a_b] :
      ( ( term_r6860082780075436317at_a_b @ ( subter2376574525758040790rm_a_b @ C4 @ S ) @ ( term_hole_pos_a_b @ C4 ) @ T )
      = ( subter2376574525758040790rm_a_b @ C4 @ T ) ) ).

% replace_at_hole_pos
thf(fact_1198_ctxt__supt,axiom,
    ! [C4: subterm_and_ctxt_a_b,S: term_a_b,T: term_a_b] :
      ( ( C4 != subterm_and_Hole_a_b )
     => ( ( S
          = ( subter2376574525758040790rm_a_b @ C4 @ T ) )
       => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b ) ) ) ).

% ctxt_supt
thf(fact_1199_ctxt__apply__term__replace__term__hole__pos,axiom,
    ! [C4: subterm_and_ctxt_a_b,S: term_a_b,Q5: list_nat,U: term_a_b] :
      ( ( term_r6860082780075436317at_a_b @ ( subter2376574525758040790rm_a_b @ C4 @ S ) @ ( append_nat @ ( term_hole_pos_a_b @ C4 ) @ Q5 ) @ U )
      = ( subter2376574525758040790rm_a_b @ C4 @ ( term_r6860082780075436317at_a_b @ S @ Q5 @ U ) ) ) ).

% ctxt_apply_term_replace_term_hole_pos
thf(fact_1200_hole__pos__replace__term__at,axiom,
    ! [C4: subterm_and_ctxt_a_b,P: list_nat,S: term_a_b,U: term_a_b] :
      ( ( term_p3503116865373065078eq_nat @ ( term_hole_pos_a_b @ C4 ) @ P )
     => ( ( term_r6860082780075436317at_a_b @ ( subter2376574525758040790rm_a_b @ C4 @ S ) @ P @ U )
        = ( subter2376574525758040790rm_a_b @ C4 @ ( term_r6860082780075436317at_a_b @ S @ ( term_pos_diff_nat @ P @ ( term_hole_pos_a_b @ C4 ) ) @ U ) ) ) ) ).

% hole_pos_replace_term_at
thf(fact_1201_supt__ctxtE,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
     => ~ ! [C5: subterm_and_ctxt_a_b] :
            ( ( C5 != subterm_and_Hole_a_b )
           => ( S
             != ( subter2376574525758040790rm_a_b @ C5 @ T ) ) ) ) ).

% supt_ctxtE
thf(fact_1202_supt__ctxt__conv,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subterm_and_supt_a_b )
      = ( ? [C6: subterm_and_ctxt_a_b] :
            ( ( C6 != subterm_and_Hole_a_b )
            & ( S
              = ( subter2376574525758040790rm_a_b @ C6 @ T ) ) ) ) ) ).

% supt_ctxt_conv
thf(fact_1203_nectxt__imp__supt__ctxt,axiom,
    ! [C4: subterm_and_ctxt_a_b,T: term_a_b] :
      ( ( C4 != subterm_and_Hole_a_b )
     => ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( subter2376574525758040790rm_a_b @ C4 @ T ) @ T ) @ subterm_and_supt_a_b ) ) ).

% nectxt_imp_supt_ctxt
thf(fact_1204_supteq__ctxtE,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
     => ~ ! [C5: subterm_and_ctxt_a_b] :
            ( S
           != ( subter2376574525758040790rm_a_b @ C5 @ T ) ) ) ).

% supteq_ctxtE
thf(fact_1205_ctxt__imp__supteq,axiom,
    ! [C4: subterm_and_ctxt_a_b,T: term_a_b] : ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( subter2376574525758040790rm_a_b @ C4 @ T ) @ T ) @ subter523971068842742411eq_a_b ) ).

% ctxt_imp_supteq
thf(fact_1206_supteq__ctxt__conv,axiom,
    ! [S: term_a_b,T: term_a_b] :
      ( ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ S @ T ) @ subter523971068842742411eq_a_b )
      = ( ? [C6: subterm_and_ctxt_a_b] :
            ( S
            = ( subter2376574525758040790rm_a_b @ C6 @ T ) ) ) ) ).

% supteq_ctxt_conv
thf(fact_1207_ctxt__of__pos__term__apply__replace__at__ident,axiom,
    ! [P: list_nat,S: term_a_b,T: term_a_b] :
      ( ( member_list_nat2 @ P @ ( term_poss_a_b @ S ) )
     => ( ( subter2376574525758040790rm_a_b @ ( term_ctxt_at_pos_a_b @ S @ P ) @ T )
        = ( term_r6860082780075436317at_a_b @ S @ P @ T ) ) ) ).

% ctxt_of_pos_term_apply_replace_at_ident
thf(fact_1208_ctxt__apply__term_Osimps_I2_J,axiom,
    ! [F: a,Ss1: list_term_a_b,C4: subterm_and_ctxt_a_b,Ss22: list_term_a_b,S: term_a_b] :
      ( ( subter2376574525758040790rm_a_b @ ( subterm_and_More_a_b @ F @ Ss1 @ C4 @ Ss22 ) @ S )
      = ( fun_a_b @ F @ ( append_term_a_b @ Ss1 @ ( cons_term_a_b @ ( subter2376574525758040790rm_a_b @ C4 @ S ) @ Ss22 ) ) ) ) ).

% ctxt_apply_term.simps(2)
thf(fact_1209_par__hole__pos__replace__term__context__at,axiom,
    ! [P: list_nat,C4: subterm_and_ctxt_a_b,S: term_a_b,U: term_a_b] :
      ( ( term_p5017330785391824242ar_nat @ P @ ( term_hole_pos_a_b @ C4 ) )
     => ( ( term_r6860082780075436317at_a_b @ ( subter2376574525758040790rm_a_b @ C4 @ S ) @ P @ U )
        = ( subter2376574525758040790rm_a_b @ ( terms_4774307173741787698at_a_b @ C4 @ P @ U ) @ S ) ) ) ).

% par_hole_pos_replace_term_context_at
thf(fact_1210_ctxt__apply__term_Oelims,axiom,
    ! [X: subterm_and_ctxt_a_b,Xa: term_a_b,Y: term_a_b] :
      ( ( ( subter2376574525758040790rm_a_b @ X @ Xa )
        = Y )
     => ( ( ( X = subterm_and_Hole_a_b )
         => ( Y != Xa ) )
       => ~ ! [F3: a,Ss12: list_term_a_b,C5: subterm_and_ctxt_a_b,Ss23: list_term_a_b] :
              ( ( X
                = ( subterm_and_More_a_b @ F3 @ Ss12 @ C5 @ Ss23 ) )
             => ( Y
               != ( fun_a_b @ F3 @ ( append_term_a_b @ Ss12 @ ( cons_term_a_b @ ( subter2376574525758040790rm_a_b @ C5 @ Xa ) @ Ss23 ) ) ) ) ) ) ) ).

% ctxt_apply_term.elims
thf(fact_1211_ctxt__apply__term_Opelims,axiom,
    ! [X: subterm_and_ctxt_a_b,Xa: term_a_b,Y: term_a_b] :
      ( ( ( subter2376574525758040790rm_a_b @ X @ Xa )
        = Y )
     => ( ( accp_P3593619727431919613rm_a_b @ subter4805821089994021477el_a_b @ ( produc4052837482945413184rm_a_b @ X @ Xa ) )
       => ( ( ( X = subterm_and_Hole_a_b )
           => ( ( Y = Xa )
             => ~ ( accp_P3593619727431919613rm_a_b @ subter4805821089994021477el_a_b @ ( produc4052837482945413184rm_a_b @ subterm_and_Hole_a_b @ Xa ) ) ) )
         => ~ ! [F3: a,Ss12: list_term_a_b,C5: subterm_and_ctxt_a_b,Ss23: list_term_a_b] :
                ( ( X
                  = ( subterm_and_More_a_b @ F3 @ Ss12 @ C5 @ Ss23 ) )
               => ( ( Y
                    = ( fun_a_b @ F3 @ ( append_term_a_b @ Ss12 @ ( cons_term_a_b @ ( subter2376574525758040790rm_a_b @ C5 @ Xa ) @ Ss23 ) ) ) )
                 => ~ ( accp_P3593619727431919613rm_a_b @ subter4805821089994021477el_a_b @ ( produc4052837482945413184rm_a_b @ ( subterm_and_More_a_b @ F3 @ Ss12 @ C5 @ Ss23 ) @ Xa ) ) ) ) ) ) ) ).

% ctxt_apply_term.pelims
thf(fact_1212_rotate1__hd__tl,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( rotate1_term_a_b @ Xs )
        = ( append_term_a_b @ ( tl_term_a_b @ Xs ) @ ( cons_term_a_b @ ( hd_term_a_b @ Xs ) @ nil_term_a_b ) ) ) ) ).

% rotate1_hd_tl
thf(fact_1213_rotate1__hd__tl,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( rotate1_nat @ Xs )
        = ( append_nat @ ( tl_nat @ Xs ) @ ( cons_nat @ ( hd_nat @ Xs ) @ nil_nat ) ) ) ) ).

% rotate1_hd_tl
thf(fact_1214_tl__append2,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( tl_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
        = ( append_term_a_b @ ( tl_term_a_b @ Xs ) @ Ys ) ) ) ).

% tl_append2
thf(fact_1215_tl__append2,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( tl_nat @ ( append_nat @ Xs @ Ys ) )
        = ( append_nat @ ( tl_nat @ Xs ) @ Ys ) ) ) ).

% tl_append2
thf(fact_1216_list_Ocollapse,axiom,
    ! [List: list_term_a_b] :
      ( ( List != nil_term_a_b )
     => ( ( cons_term_a_b @ ( hd_term_a_b @ List ) @ ( tl_term_a_b @ List ) )
        = List ) ) ).

% list.collapse
thf(fact_1217_list_Ocollapse,axiom,
    ! [List: list_nat] :
      ( ( List != nil_nat )
     => ( ( cons_nat @ ( hd_nat @ List ) @ ( tl_nat @ List ) )
        = List ) ) ).

% list.collapse
thf(fact_1218_hd__Cons__tl,axiom,
    ! [Xs: list_term_a_b] :
      ( ( Xs != nil_term_a_b )
     => ( ( cons_term_a_b @ ( hd_term_a_b @ Xs ) @ ( tl_term_a_b @ Xs ) )
        = Xs ) ) ).

% hd_Cons_tl
thf(fact_1219_hd__Cons__tl,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( cons_nat @ ( hd_nat @ Xs ) @ ( tl_nat @ Xs ) )
        = Xs ) ) ).

% hd_Cons_tl
thf(fact_1220_tl__append__if,axiom,
    ! [Xs: list_term_a_b,Ys: list_term_a_b] :
      ( ( ( Xs = nil_term_a_b )
       => ( ( tl_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( tl_term_a_b @ Ys ) ) )
      & ( ( Xs != nil_term_a_b )
       => ( ( tl_term_a_b @ ( append_term_a_b @ Xs @ Ys ) )
          = ( append_term_a_b @ ( tl_term_a_b @ Xs ) @ Ys ) ) ) ) ).

% tl_append_if
thf(fact_1221_tl__append__if,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( Xs = nil_nat )
       => ( ( tl_nat @ ( append_nat @ Xs @ Ys ) )
          = ( tl_nat @ Ys ) ) )
      & ( ( Xs != nil_nat )
       => ( ( tl_nat @ ( append_nat @ Xs @ Ys ) )
          = ( append_nat @ ( tl_nat @ Xs ) @ Ys ) ) ) ) ).

% tl_append_if
thf(fact_1222_list_Oexhaust__sel,axiom,
    ! [List: list_term_a_b] :
      ( ( List != nil_term_a_b )
     => ( List
        = ( cons_term_a_b @ ( hd_term_a_b @ List ) @ ( tl_term_a_b @ List ) ) ) ) ).

% list.exhaust_sel
thf(fact_1223_list_Oexhaust__sel,axiom,
    ! [List: list_nat] :
      ( ( List != nil_nat )
     => ( List
        = ( cons_nat @ ( hd_nat @ List ) @ ( tl_nat @ List ) ) ) ) ).

% list.exhaust_sel
thf(fact_1224_tl__Nil,axiom,
    ! [Xs: list_term_a_b] :
      ( ( ( tl_term_a_b @ Xs )
        = nil_term_a_b )
      = ( ( Xs = nil_term_a_b )
        | ? [X4: term_a_b] :
            ( Xs
            = ( cons_term_a_b @ X4 @ nil_term_a_b ) ) ) ) ).

% tl_Nil
thf(fact_1225_tl__Nil,axiom,
    ! [Xs: list_nat] :
      ( ( ( tl_nat @ Xs )
        = nil_nat )
      = ( ( Xs = nil_nat )
        | ? [X4: nat] :
            ( Xs
            = ( cons_nat @ X4 @ nil_nat ) ) ) ) ).

% tl_Nil
thf(fact_1226_Nil__tl,axiom,
    ! [Xs: list_term_a_b] :
      ( ( nil_term_a_b
        = ( tl_term_a_b @ Xs ) )
      = ( ( Xs = nil_term_a_b )
        | ? [X4: term_a_b] :
            ( Xs
            = ( cons_term_a_b @ X4 @ nil_term_a_b ) ) ) ) ).

% Nil_tl
thf(fact_1227_Nil__tl,axiom,
    ! [Xs: list_nat] :
      ( ( nil_nat
        = ( tl_nat @ Xs ) )
      = ( ( Xs = nil_nat )
        | ? [X4: nat] :
            ( Xs
            = ( cons_nat @ X4 @ nil_nat ) ) ) ) ).

% Nil_tl
thf(fact_1228_list_Osel_I2_J,axiom,
    ( ( tl_term_a_b @ nil_term_a_b )
    = nil_term_a_b ) ).

% list.sel(2)
thf(fact_1229_list_Osel_I2_J,axiom,
    ( ( tl_nat @ nil_nat )
    = nil_nat ) ).

% list.sel(2)
thf(fact_1230_list_Oset__sel_I2_J,axiom,
    ! [A: list_list_nat,X: list_nat] :
      ( ( A != nil_list_nat )
     => ( ( member_list_nat2 @ X @ ( set_list_nat2 @ ( tl_list_nat @ A ) ) )
       => ( member_list_nat2 @ X @ ( set_list_nat2 @ A ) ) ) ) ).

% list.set_sel(2)
thf(fact_1231_list_Oset__sel_I2_J,axiom,
    ! [A: list_P8875379029341186191rm_a_b,X: produc357393685978478089rm_a_b] :
      ( ( A != nil_Pr6942174756412032271rm_a_b )
     => ( ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ ( tl_Pro9011950709736066168rm_a_b @ A ) ) )
       => ( member5869715511025134514rm_a_b @ X @ ( set_Pr2370880052973118494rm_a_b @ A ) ) ) ) ).

% list.set_sel(2)
thf(fact_1232_list_Oset__sel_I2_J,axiom,
    ! [A: list_term_a_b,X: term_a_b] :
      ( ( A != nil_term_a_b )
     => ( ( member_term_a_b2 @ X @ ( set_term_a_b2 @ ( tl_term_a_b @ A ) ) )
       => ( member_term_a_b2 @ X @ ( set_term_a_b2 @ A ) ) ) ) ).

% list.set_sel(2)
thf(fact_1233_list_Oset__sel_I2_J,axiom,
    ! [A: list_nat,X: nat] :
      ( ( A != nil_nat )
     => ( ( member_nat2 @ X @ ( set_nat2 @ ( tl_nat @ A ) ) )
       => ( member_nat2 @ X @ ( set_nat2 @ A ) ) ) ) ).

% list.set_sel(2)
thf(fact_1234_last__tl,axiom,
    ! [Xs: list_term_a_b] :
      ( ( ( Xs = nil_term_a_b )
        | ( ( tl_term_a_b @ Xs )
         != nil_term_a_b ) )
     => ( ( last_term_a_b @ ( tl_term_a_b @ Xs ) )
        = ( last_term_a_b @ Xs ) ) ) ).

% last_tl
thf(fact_1235_last__tl,axiom,
    ! [Xs: list_nat] :
      ( ( ( Xs = nil_nat )
        | ( ( tl_nat @ Xs )
         != nil_nat ) )
     => ( ( last_nat @ ( tl_nat @ Xs ) )
        = ( last_nat @ Xs ) ) ) ).

% last_tl
thf(fact_1236_list_Oexpand,axiom,
    ! [List: list_term_a_b,List2: list_term_a_b] :
      ( ( ( List = nil_term_a_b )
        = ( List2 = nil_term_a_b ) )
     => ( ( ( List != nil_term_a_b )
         => ( ( List2 != nil_term_a_b )
           => ( ( ( hd_term_a_b @ List )
                = ( hd_term_a_b @ List2 ) )
              & ( ( tl_term_a_b @ List )
                = ( tl_term_a_b @ List2 ) ) ) ) )
       => ( List = List2 ) ) ) ).

% list.expand
thf(fact_1237_list_Oexpand,axiom,
    ! [List: list_nat,List2: list_nat] :
      ( ( ( List = nil_nat )
        = ( List2 = nil_nat ) )
     => ( ( ( List != nil_nat )
         => ( ( List2 != nil_nat )
           => ( ( ( hd_nat @ List )
                = ( hd_nat @ List2 ) )
              & ( ( tl_nat @ List )
                = ( tl_nat @ List2 ) ) ) ) )
       => ( List = List2 ) ) ) ).

% list.expand
thf(fact_1238_list_Osel_I3_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( ( tl_nat @ ( cons_nat @ X21 @ X22 ) )
      = X22 ) ).

% list.sel(3)

% Helper facts (7)
thf(help_If_2_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X: list_nat,Y: list_nat] :
      ( ( if_list_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X: list_nat,Y: list_nat] :
      ( ( if_list_nat @ $true @ X @ Y )
      = X ) ).

thf(help_If_2_1_If_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J_T,axiom,
    ! [X: list_list_nat,Y: list_list_nat] :
      ( ( if_list_list_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J_T,axiom,
    ! [X: list_list_nat,Y: list_list_nat] :
      ( ( if_list_list_nat @ $true @ X @ Y )
      = X ) ).

thf(help_If_3_1_If_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_T,axiom,
    ! [P4: $o] :
      ( ( P4 = $true )
      | ( P4 = $false ) ) ).

thf(help_If_2_1_If_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_T,axiom,
    ! [X: list_P8875379029341186191rm_a_b,Y: list_P8875379029341186191rm_a_b] :
      ( ( if_lis6431594140241482069rm_a_b @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Product____Type__Oprod_It__Term__Oterm_Itf__a_Mtf__b_J_Mt__Term__Oterm_Itf__a_Mtf__b_J_J_J_T,axiom,
    ! [X: list_P8875379029341186191rm_a_b,Y: list_P8875379029341186191rm_a_b] :
      ( ( if_lis6431594140241482069rm_a_b @ $true @ X @ Y )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( ? [Q2: list_nat] :
        ( ( member_list_nat2 @ Q2 @ ( terms_7168686267159881682rm_a_b @ ( fun_a_b @ c @ nil_term_a_b ) @ t ) )
        & ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ sa @ pa @ u2 ) @ ( term_r6860082780075436317at_a_b @ t @ Q2 @ u2 ) ) @ ( transi7922773638565587891rm_a_b @ u ) ) )
    | ( member5869715511025134514rm_a_b @ ( produc7020197800436672577rm_a_b @ ( term_r6860082780075436317at_a_b @ sa @ pa @ u2 ) @ t ) @ ( transi7922773638565587891rm_a_b @ u ) ) ) ).

%------------------------------------------------------------------------------