TPTP Problem File: SLH0013^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    : VYDRA_MDL/0011_Monitor/prob_00324_014643__16964600_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1851 ( 565 unt; 588 typ;   0 def)
%            Number of atoms       : 3554 (2031 equ;   0 cnn)
%            Maximal formula atoms :   14 (   2 avg)
%            Number of connectives : 15123 ( 496   ~;  66   |; 420   &;12447   @)
%                                         (   0 <=>;1694  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   8 avg)
%            Number of types       :  144 ( 143 usr)
%            Number of type conns  : 1392 (1392   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  448 ( 445 usr;  29 con; 0-4 aty)
%            Number of variables   : 4582 ( 119   ^;4143   !; 320   ?;4582   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 14:54:30.007
%------------------------------------------------------------------------------
% Could-be-implicit typings (143)
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_Mt__Product____Type__Oprod_I_062_Itf__t_M_Eo_J_Mt__Product____Type__Oprod_I_062_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_Mt__Mapping__Omapping_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_J_J_J,type,
    produc7746120839355144914_h_t_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J_J,type,
    produc7977236207705644419_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J,type,
    produc5299569298341740495_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J,type,
    produc5565737697667648800_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J_J_J,type,
    produc350418192459910653_h_t_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J,type,
    set_Pr7123406742897930003_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc2930678406704639923_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc3174282710306170860_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J_J,type,
    produc3979266224418810301_h_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Mapping__Omapping_It__Nat__Onat_M_Eo_J_J_J_J,type,
    produc1783361409637995907_nat_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__t_M_Eo_J_Mt__Product____Type__Oprod_I_062_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_Mt__Mapping__Omapping_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_J_J,type,
    produc4131690961896830686_h_t_o: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    set_Pr6980190999441956595_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_It__Set__Oset_Itf__a_J_Mt__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J,type,
    produc5282693569712909143_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J,type,
    set_Pr4341985475574286023_h_t_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    set_Pr918899152635689223_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc2761083964526449299_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    produc5096814605807688167_h_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J_J,type,
    produc5405368317271509971at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_I_062_Itf__t_M_Eo_J_Mt__Product____Type__Oprod_I_062_Itf__h_M_Eo_J_Mt__Mapping__Omapping_Itf__h_M_Eo_J_J_J_J,type,
    produc7507468038271248494ng_h_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc4080278507718765863_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J,type,
    produc8467556406643898867_h_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_Itf__a_J_Mt__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc7416024164062932887_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J_J,type,
    produc8962804702779969045_h_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_Mt__Mapping__Omapping_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_J,type,
    produc7553516336514902421_h_t_o: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    set_Pr8268588392426440327_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc4363423165740810442_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J_J_J,type,
    produc4003748141140169725od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    produc6121082497140218670at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc7254934781974199719_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J_J,type,
    set_Pr6976816108740651469_nat_t: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_Mtf__t_J_J,type,
    option8396723326150384441_t_t_t: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    option7188603832408115496_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J,type,
    produc8916249546318103765_h_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    produc3711645117720249709_nat_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    set_Pr2751536223740281991_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    list_P4315939809025048720_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc8451769845593431434_set_a: $tType ).

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

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_Mtf__t_J,type,
    produc2926181002191610227_t_t_t: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    list_P1560699769720516777_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    list_P7697742841123615913_nat_t: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    list_P1974509249127798147_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mtf__t_J_J,type,
    list_P100653400526954749et_a_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Mapping__Omapping_It__Nat__Onat_M_Eo_J_J_J,type,
    produc6863188293027480355_nat_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc209148559573106274_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc5512707594232479998_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J_J,type,
    produc3609689240849350473od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J_J,type,
    produc7816779865488266557od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc809793603290300071_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    list_P6109117928404460371_nat_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    set_Pr3075641135855851309_nat_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc3290003073410612618_set_a: $tType ).

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

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc2687737633280426365at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__t_M_Eo_J_Mt__Product____Type__Oprod_I_062_Itf__h_M_Eo_J_Mt__Mapping__Omapping_Itf__h_M_Eo_J_J_J,type,
    produc4527254387385649606ng_h_o: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__h_Mtf__t_J_Mt__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    set_Pr2990887038747690439od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    produc2829101240413136333_nat_t: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    option6842317343963772841_set_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    option4241632866121027589_h_t_t: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__h_J_Mt__IArray__Oiarray_It__Set__Oset_Itf__a_J_J_J_J,type,
    option8761023800807099238_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    list_P6739568432217944425_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    list_P6951459944542807621_h_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc8472197452120411308at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__h_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J_J,type,
    set_Pr4622222292976158843od_h_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    set_Pr2919416885666844703_h_t_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__h_J_J,type,
    set_Pr2067008405110692883_h_t_h: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    option5775791656947114332_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__h_Mtf__t_J_Mt__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    produc2593129430228269031od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc9219478359178935824_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    list_P396102569433322640_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    list_P2035273040109328284_set_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mtf__t_J_J,type,
    list_P6689957890503519626et_a_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    produc9165125586590101385od_h_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    set_Pr2711178225231897962_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    set_Pr4350348695907903606_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mtf__t_J_J,type,
    set_Pr9005033546302094948et_a_t: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    list_P4877514418049769965_nat_t: $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__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    list_P8233081824612726534_nat_t: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_Mtf__t_J_J,type,
    list_P3501493449842482016at_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc3416767791517006041_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    produc5880037315381070619od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    produc2796182059459404991_h_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__h_J,type,
    produc2796182007820659379_h_t_h: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__h_J_Mt__IArray__Oiarray_It__Set__Oset_Itf__a_J_J_J,type,
    produc4796906486038651680_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Mapping__Omapping_It__Nat__Onat_M_Eo_J_J,type,
    produc228893250607966907_nat_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    produc1757852559615113307od_h_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__List__Olist_Itf__t_J_J_J,type,
    set_Pr8197441175499558087list_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc4536847747303215114_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc8090089739038349590_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mtf__t_J,type,
    produc267757839698675204et_a_t: $tType ).

thf(ty_n_t__Mapping__Omapping_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J,type,
    mappin3084283847901878192_h_t_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    produc7382685841506696807_nat_t: $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__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_J,type,
    set_Pr5845495582615845127_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_li5450038453877631591at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__h_M_Eo_J_Mt__Mapping__Omapping_Itf__h_M_Eo_J_J,type,
    produc3497948360376928893ng_h_o: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    option4621139365931258234_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__List__Olist_Itf__t_J_J,type,
    produc2570983277269156327list_t: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    option4927543243414619207at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    list_P1095827921439705018_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    set_Pr6994796776334525076_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__h_Mt__Set__Oset_Itf__a_J_J_J,type,
    set_Pr7585996402506494368_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J,type,
    produc1703568184450464039_set_a: $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__Option__Ooption_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    option6159645106754071430_nat_t: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    list_P4201438511612060998_nat_t: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    option2110264179601050681od_h_t: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__t_Mtf__t_J_J,type,
    list_P9116000306261664621od_t_t: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    list_P7520416276666729081od_h_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__t_Mtf__t_J_J,type,
    set_Product_prod_t_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    set_Product_prod_h_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__h_Mtf__h_J_J,type,
    set_Product_prod_h_h: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    product_prod_t_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mt__Set__Oset_Itf__a_J_J,type,
    product_prod_h_set_a: $tType ).

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

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    product_prod_nat_t: $tType ).

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

thf(ty_n_t__IArray__Oiarray_It__Set__Oset_Itf__a_J_J,type,
    iarray_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mtf__t_J,type,
    product_prod_t_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    product_prod_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__h_Mtf__h_J,type,
    product_prod_h_h: $tType ).

thf(ty_n_t__Mapping__Omapping_It__Nat__Onat_M_Eo_J,type,
    mapping_nat_o: $tType ).

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

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

thf(ty_n_t__Option__Ooption_It__Nat__Onat_J,type,
    option_nat: $tType ).

thf(ty_n_t__Mapping__Omapping_Itf__h_M_Eo_J,type,
    mapping_h_o: $tType ).

thf(ty_n_t__Trace__Otrace_Itf__a_Mtf__t_J,type,
    trace_a_t: $tType ).

thf(ty_n_t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    formula_a_t: $tType ).

thf(ty_n_t__MDL__Oregex_Itf__a_Mtf__t_J,type,
    regex_a_t: $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__Option__Ooption_Itf__t_J,type,
    option_t: $tType ).

thf(ty_n_t__List__Olist_Itf__t_J,type,
    list_t: $tType ).

thf(ty_n_t__List__Olist_Itf__h_J,type,
    list_h: $tType ).

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

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

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

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

thf(ty_n_tf__t,type,
    t: $tType ).

thf(ty_n_tf__h,type,
    h: $tType ).

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

% Explicit typings (445)
thf(sy_c_AList_Omap__default_001t__Nat__Onat_001t__Nat__Onat,type,
    map_default_nat_nat: nat > nat > ( nat > nat ) > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_AList_Omap__default_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    map_de319322384750460784_h_t_t: option2110264179601050681od_h_t > t > ( t > t ) > list_P6951459944542807621_h_t_t > list_P6951459944542807621_h_t_t ).

thf(sy_c_AList_Omap__default_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    map_de6535475216089663815_set_a: h > product_prod_t_set_a > ( product_prod_t_set_a > product_prod_t_set_a ) > list_P2035273040109328284_set_a > list_P2035273040109328284_set_a ).

thf(sy_c_AList_Omap__default_001tf__h_001tf__t,type,
    map_default_h_t: h > t > ( t > t ) > list_P7520416276666729081od_h_t > list_P7520416276666729081od_h_t ).

thf(sy_c_AList_Omap__default_001tf__t_001t__Set__Oset_Itf__a_J,type,
    map_default_t_set_a: t > set_a > ( set_a > set_a ) > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_AList_Omap__default__rel_001t__Nat__Onat_001t__Nat__Onat,type,
    map_de1546328871509799619at_nat: produc5405368317271509971at_nat > produc5405368317271509971at_nat > $o ).

thf(sy_c_AList_Omap__default__rel_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    map_de2727128406196902201_h_t_t: produc350418192459910653_h_t_t > produc350418192459910653_h_t_t > $o ).

thf(sy_c_AList_Omap__default__rel_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    map_de7666120435537666192_set_a: produc7977236207705644419_set_a > produc7977236207705644419_set_a > $o ).

thf(sy_c_AList_Omap__default__rel_001tf__h_001tf__t,type,
    map_default_rel_h_t: produc4003748141140169725od_h_t > produc4003748141140169725od_h_t > $o ).

thf(sy_c_AList_Omap__default__rel_001tf__t_001t__Set__Oset_Itf__a_J,type,
    map_de3190415642291457710_set_a: produc5282693569712909143_set_a > produc5282693569712909143_set_a > $o ).

thf(sy_c_AList_Omap__entry_001t__Nat__Onat_001t__Nat__Onat,type,
    map_entry_nat_nat: nat > ( nat > nat ) > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_AList_Omap__entry_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    map_en3518867738813299809_h_t_t: option2110264179601050681od_h_t > ( t > t ) > list_P6951459944542807621_h_t_t > list_P6951459944542807621_h_t_t ).

thf(sy_c_AList_Omap__entry_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    map_en2515006764104892344_set_a: h > ( product_prod_t_set_a > product_prod_t_set_a ) > list_P2035273040109328284_set_a > list_P2035273040109328284_set_a ).

thf(sy_c_AList_Omap__entry_001tf__h_001tf__t,type,
    map_entry_h_t: h > ( t > t ) > list_P7520416276666729081od_h_t > list_P7520416276666729081od_h_t ).

thf(sy_c_AList_Omap__entry_001tf__t_001t__Set__Oset_Itf__a_J,type,
    map_entry_t_set_a: t > ( set_a > set_a ) > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_AList_Omap__entry__rel_001t__Nat__Onat_001t__Nat__Onat,type,
    map_en6292189407319230482at_nat: produc6121082497140218670at_nat > produc6121082497140218670at_nat > $o ).

thf(sy_c_AList_Omap__entry__rel_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    map_en6080971802216376712_h_t_t: produc3979266224418810301_h_t_t > produc3979266224418810301_h_t_t > $o ).

thf(sy_c_AList_Omap__entry__rel_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    map_en2814123513717708639_set_a: produc5565737697667648800_set_a > produc5565737697667648800_set_a > $o ).

thf(sy_c_AList_Omap__entry__rel_001tf__h_001tf__t,type,
    map_entry_rel_h_t: produc7816779865488266557od_h_t > produc7816779865488266557od_h_t > $o ).

thf(sy_c_AList_Omap__entry__rel_001tf__t_001t__Set__Oset_Itf__a_J,type,
    map_en3227980828384783485_set_a: produc4363423165740810442_set_a > produc4363423165740810442_set_a > $o ).

thf(sy_c_AList_Oupdate_001t__Nat__Onat_001t__Nat__Onat,type,
    update_nat_nat: nat > nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_AList_Oupdate_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    update8434369818336473236_h_t_t: option2110264179601050681od_h_t > t > list_P6951459944542807621_h_t_t > list_P6951459944542807621_h_t_t ).

thf(sy_c_AList_Oupdate_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001tf__t,type,
    update3857189359446083706et_a_t: produc3416767791517006041_set_a > t > list_P100653400526954749et_a_t > list_P100653400526954749et_a_t ).

thf(sy_c_AList_Oupdate_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    update4071563448085720810_nat_t: product_prod_nat_t > product_prod_nat_t > list_P6109117928404460371_nat_t > list_P6109117928404460371_nat_t ).

thf(sy_c_AList_Oupdate_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    update5932696815919682944_set_a: product_prod_nat_t > product_prod_t_set_a > list_P1974509249127798147_set_a > list_P1974509249127798147_set_a ).

thf(sy_c_AList_Oupdate_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001tf__t,type,
    update5743496843116572509at_t_t: product_prod_nat_t > t > list_P3501493449842482016at_t_t > list_P3501493449842482016at_t_t ).

thf(sy_c_AList_Oupdate_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    update4717408315617176430_nat_t: product_prod_t_set_a > product_prod_nat_t > list_P7697742841123615913_nat_t > list_P7697742841123615913_nat_t ).

thf(sy_c_AList_Oupdate_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001tf__t,type,
    update5955773816522057689et_a_t: product_prod_t_set_a > t > list_P6689957890503519626et_a_t > list_P6689957890503519626et_a_t ).

thf(sy_c_AList_Oupdate_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    update7745024658507608171_set_a: h > product_prod_t_set_a > list_P2035273040109328284_set_a > list_P2035273040109328284_set_a ).

thf(sy_c_AList_Oupdate_001tf__h_001tf__t,type,
    update_h_t: h > t > list_P7520416276666729081od_h_t > list_P7520416276666729081od_h_t ).

thf(sy_c_AList_Oupdate_001tf__t_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    update2263109191067301102_set_a: t > produc3416767791517006041_set_a > list_P1560699769720516777_set_a > list_P1560699769720516777_set_a ).

thf(sy_c_AList_Oupdate_001tf__t_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    update634203635698218827_nat_t: t > product_prod_nat_t > list_P8233081824612726534_nat_t > list_P8233081824612726534_nat_t ).

thf(sy_c_AList_Oupdate_001tf__t_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    update4191782666772473695_set_a: t > product_prod_t_set_a > list_P396102569433322640_set_a > list_P396102569433322640_set_a ).

thf(sy_c_AList_Oupdate_001tf__t_001t__Set__Oset_Itf__a_J,type,
    update_t_set_a: t > set_a > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_AList_Oupdate_001tf__t_001tf__t,type,
    update_t_t: t > t > list_P9116000306261664621od_t_t > list_P9116000306261664621od_t_t ).

thf(sy_c_AList_Oupdate__with__aux_001t__Nat__Onat_001t__Nat__Onat,type,
    update528237659335440164at_nat: nat > nat > ( nat > nat ) > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_AList_Oupdate__with__aux_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001tf__h,type,
    update7483552193390621395et_a_h: product_prod_t_set_a > h > ( product_prod_t_set_a > product_prod_t_set_a ) > list_P2035273040109328284_set_a > list_P2035273040109328284_set_a ).

thf(sy_c_AList_Oupdate__with__aux_001t__Set__Oset_Itf__a_J_001tf__t,type,
    update3874308102259066165et_a_t: set_a > t > ( set_a > set_a ) > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_AList_Oupdate__with__aux_001tf__t_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    update5296690350059339754od_h_t: t > option2110264179601050681od_h_t > ( t > t ) > list_P6951459944542807621_h_t_t > list_P6951459944542807621_h_t_t ).

thf(sy_c_AList_Oupdate__with__aux_001tf__t_001tf__h,type,
    update_with_aux_t_h: t > h > ( t > t ) > list_P7520416276666729081od_h_t > list_P7520416276666729081od_h_t ).

thf(sy_c_AList_Oupdates_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001tf__t,type,
    update1653935275978086463et_a_t: list_P6739568432217944425_set_a > list_t > list_P100653400526954749et_a_t > list_P100653400526954749et_a_t ).

thf(sy_c_AList_Oupdates_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    update6395688813646615525_nat_t: list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t > list_P6109117928404460371_nat_t > list_P6109117928404460371_nat_t ).

thf(sy_c_AList_Oupdates_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    update3729442732451685701_set_a: list_P4201438511612060998_nat_t > list_P1095827921439705018_set_a > list_P1974509249127798147_set_a > list_P1974509249127798147_set_a ).

thf(sy_c_AList_Oupdates_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001tf__t,type,
    update916233812449959970at_t_t: list_P4201438511612060998_nat_t > list_t > list_P3501493449842482016at_t_t > list_P3501493449842482016at_t_t ).

thf(sy_c_AList_Oupdates_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    update2514154232149179187_nat_t: list_P1095827921439705018_set_a > list_P4201438511612060998_nat_t > list_P7697742841123615913_nat_t > list_P7697742841123615913_nat_t ).

thf(sy_c_AList_Oupdates_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001tf__t,type,
    update3596881908701622868et_a_t: list_P1095827921439705018_set_a > list_t > list_P6689957890503519626et_a_t > list_P6689957890503519626et_a_t ).

thf(sy_c_AList_Oupdates_001tf__t_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    update59855107599303859_set_a: list_t > list_P6739568432217944425_set_a > list_P1560699769720516777_set_a > list_P1560699769720516777_set_a ).

thf(sy_c_AList_Oupdates_001tf__t_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    update5030312641886382096_nat_t: list_t > list_P4201438511612060998_nat_t > list_P8233081824612726534_nat_t > list_P8233081824612726534_nat_t ).

thf(sy_c_AList_Oupdates_001tf__t_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    update1832890758952038874_set_a: list_t > list_P1095827921439705018_set_a > list_P396102569433322640_set_a > list_P396102569433322640_set_a ).

thf(sy_c_AList_Oupdates_001tf__t_001tf__t,type,
    updates_t_t: list_t > list_t > list_P9116000306261664621od_t_t > list_P9116000306261664621od_t_t ).

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__Nat__Onat_Mt__Nat__Onat_J,type,
    bNF_Gr3130287167067265568at_nat: set_li5450038453877631591at_nat > product_prod_nat_nat > set_li5450038453877631591at_nat ).

thf(sy_c_BNF__Greatest__Fixpoint_OShift_001tf__a,type,
    bNF_Greatest_Shift_a: set_list_a > a > set_list_a ).

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__Nat__Onat_Mt__Nat__Onat_J,type,
    bNF_Gr5363859321595349404at_nat: set_li5450038453877631591at_nat > list_P6011104703257516679at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001tf__a,type,
    bNF_Greatest_Succ_a: set_list_a > list_a > set_a ).

thf(sy_c_Fun__Def_Ois__measure_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    fun_is451698544401419116_set_a: ( list_P6739568432217944425_set_a > nat ) > $o ).

thf(sy_c_Fun__Def_Ois__measure_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    fun_is438584119853254217_nat_t: ( list_P4201438511612060998_nat_t > nat ) > $o ).

thf(sy_c_Fun__Def_Ois__measure_001t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    fun_is9086716649689197943_set_a: ( list_P1095827921439705018_set_a > nat ) > $o ).

thf(sy_c_Fun__Def_Ois__measure_001t__List__Olist_Itf__t_J,type,
    fun_is2414390421183857876list_t: ( list_t > nat ) > $o ).

thf(sy_c_Fun__Def_Ois__measure_001t__String__Ochar,type,
    fun_is_measure_char: ( char > nat ) > $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_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    plus_p9057090461656269880at_nat: product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Option__Ooption_It__Nat__Onat_J,type,
    zero_zero_option_nat: option_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    zero_z3979849011205770936at_nat: product_prod_nat_nat ).

thf(sy_c_IArray_Osub_001t__Set__Oset_Itf__a_J,type,
    sub_set_a: iarray_set_a > nat > set_a ).

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

thf(sy_c_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    if_Pro6206227464963214023at_nat: $o > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

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

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

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    append7877908342654880933_set_a: list_P4315939809025048720_set_a > list_P4315939809025048720_set_a > list_P4315939809025048720_set_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    append8177913269955611778_nat_t: list_P4877514418049769965_nat_t > list_P4877514418049769965_nat_t > list_P4877514418049769965_nat_t ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    append7235343099912497022_set_a: list_P6739568432217944425_set_a > list_P6739568432217944425_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    append1694031088188373467_nat_t: list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    append8768163766229313743_set_a: list_P1095827921439705018_set_a > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

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

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

thf(sy_c_List_Oappend_001tf__t,type,
    append_t: list_t > list_t > list_t ).

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__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    drop_P8422428636864094739_set_a: nat > list_P6739568432217944425_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Odrop_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    drop_P6121829286696379760_nat_t: nat > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Odrop_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    drop_P283403782220237946_set_a: nat > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

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

thf(sy_c_List_Odrop_001tf__t,type,
    drop_t: nat > list_t > list_t ).

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

thf(sy_c_List_Oenumerate_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    enumer7763302717704308148_set_a: nat > list_P6739568432217944425_set_a > list_P4315939809025048720_set_a ).

thf(sy_c_List_Oenumerate_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    enumer6477790069082461713_nat_t: nat > list_P4201438511612060998_nat_t > list_P4877514418049769965_nat_t ).

thf(sy_c_List_Oenumerate_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    enumer4564034045956179481_set_a: nat > list_P1095827921439705018_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Oenumerate_001tf__t,type,
    enumerate_t: nat > list_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Ofind_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    find_P7784641753113621437_set_a: ( produc3416767791517006041_set_a > $o ) > list_P6739568432217944425_set_a > option6842317343963772841_set_a ).

thf(sy_c_List_Ofind_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    find_P139940598250739994_nat_t: ( product_prod_nat_t > $o ) > list_P4201438511612060998_nat_t > option6159645106754071430_nat_t ).

thf(sy_c_List_Ofind_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    find_P8878986506667028699_h_t_t: ( produc2796182059459404991_h_t_t > $o ) > list_P6951459944542807621_h_t_t > option4241632866121027589_h_t_t ).

thf(sy_c_List_Ofind_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    find_P6060379126387363634_set_a: ( produc8090089739038349590_set_a > $o ) > list_P2035273040109328284_set_a > option5775791656947114332_set_a ).

thf(sy_c_List_Ofind_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    find_P1183509874644452751od_h_t: ( product_prod_h_t > $o ) > list_P7520416276666729081od_h_t > option2110264179601050681od_h_t ).

thf(sy_c_List_Ofind_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    find_P3657267623437522768_set_a: ( product_prod_t_set_a > $o ) > list_P1095827921439705018_set_a > option4621139365931258234_set_a ).

thf(sy_c_List_Ofind_001tf__t,type,
    find_t: ( t > $o ) > list_t > option_t ).

thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    gen_le7785176509601842694_set_a: nat > list_P6739568432217944425_set_a > nat ).

thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    gen_le771686426693238883_nat_t: nat > list_P4201438511612060998_nat_t > nat ).

thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    gen_le3153664615746278471_set_a: nat > list_P1095827921439705018_set_a > nat ).

thf(sy_c_List_Ogen__length_001tf__t,type,
    gen_length_t: nat > list_t > nat ).

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

thf(sy_c_List_Olenlex_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    lenlex700694733380053262_set_a: set_Pr6980190999441956595_set_a > set_Pr7123406742897930003_set_a ).

thf(sy_c_List_Olenlex_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    lenlex548651899613956971_nat_t: set_Pr3075641135855851309_nat_t > set_Pr6976816108740651469_nat_t ).

thf(sy_c_List_Olenlex_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    lenlex9172771710577580863_set_a: set_Pr2751536223740281991_set_a > set_Pr8268588392426440327_set_a ).

thf(sy_c_List_Olenlex_001tf__t,type,
    lenlex_t: set_Product_prod_t_t > set_Pr8197441175499558087list_t ).

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

thf(sy_c_List_Olex_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    lex_Pr6838511504502894575_set_a: set_Pr6980190999441956595_set_a > set_Pr7123406742897930003_set_a ).

thf(sy_c_List_Olex_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    lex_Pr4364183600902119244_nat_t: set_Pr3075641135855851309_nat_t > set_Pr6976816108740651469_nat_t ).

thf(sy_c_List_Olex_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    lex_Pr3546421067709956510_set_a: set_Pr2751536223740281991_set_a > set_Pr8268588392426440327_set_a ).

thf(sy_c_List_Olex_001tf__t,type,
    lex_t: set_Product_prod_t_t > set_Pr8197441175499558087list_t ).

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__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    cons_P4636835598303252387_set_a: produc3416767791517006041_set_a > list_P6739568432217944425_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    cons_P8443330349171532544_nat_t: product_prod_nat_t > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    cons_P6082639445353249653_h_t_t: produc2796182059459404991_h_t_t > list_P6951459944542807621_h_t_t > list_P6951459944542807621_h_t_t ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    cons_P8657861537117511884_set_a: produc8090089739038349590_set_a > list_P2035273040109328284_set_a > list_P2035273040109328284_set_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    cons_P6251494208368732457od_h_t: product_prod_h_t > list_P7520416276666729081od_h_t > list_P7520416276666729081od_h_t ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    cons_P6565363215658504938_set_a: product_prod_t_set_a > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

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

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

thf(sy_c_List_Olist_OCons_001tf__t,type,
    cons_t: t > list_t > list_t ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    nil_Pr5478986624290739719at_nat: list_P6011104703257516679at_nat ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    nil_Pr3375152174953641811_set_a: list_P6739568432217944425_set_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    nil_Pr1417316752131242672_nat_t: list_P4201438511612060998_nat_t ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    nil_Pr8838988226997446597_h_t_t: list_P6951459944542807621_h_t_t ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    nil_Pr4294158543271970076_set_a: list_P2035273040109328284_set_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    nil_Product_prod_h_t: list_P7520416276666729081od_h_t ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    nil_Pr7982011819685168954_set_a: list_P1095827921439705018_set_a ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_Itf__a_J,type,
    nil_set_a: list_set_a ).

thf(sy_c_List_Olist_ONil_001tf__a,type,
    nil_a: list_a ).

thf(sy_c_List_Olist_ONil_001tf__t,type,
    nil_t: list_t ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    hd_Pro7027854469447250222_set_a: list_P6739568432217944425_set_a > produc3416767791517006041_set_a ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    hd_Pro2949996766343426955_nat_t: list_P4201438511612060998_nat_t > product_prod_nat_t ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    hd_Pro7269572941766900511_set_a: list_P1095827921439705018_set_a > product_prod_t_set_a ).

thf(sy_c_List_Olist_Ohd_001tf__t,type,
    hd_t: list_t > t ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    map_Pr4616634467373167957_set_a: ( produc3416767791517006041_set_a > product_prod_t_set_a ) > list_P6739568432217944425_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001tf__t,type,
    map_Pr2296930535221706802et_a_t: ( produc3416767791517006041_set_a > t ) > list_P6739568432217944425_set_a > list_t ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    map_Pr7725294012737935666_nat_t: ( product_prod_nat_t > product_prod_nat_t ) > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    map_Pr4372437991695306040_set_a: ( product_prod_nat_t > product_prod_t_set_a ) > list_P4201438511612060998_nat_t > list_P1095827921439705018_set_a ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001tf__t,type,
    map_Pr800344189181476629at_t_t: ( product_prod_nat_t > t ) > list_P4201438511612060998_nat_t > list_t ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    map_Pr3157149491392799526_nat_t: ( product_prod_t_set_a > product_prod_nat_t ) > list_P1095827921439705018_set_a > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001tf__t,type,
    map_Pr119846518281778721et_a_t: ( product_prod_t_set_a > t ) > list_P1095827921439705018_set_a > list_t ).

thf(sy_c_List_Olist_Omap_001tf__t_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    map_t_702850366842924198_set_a: ( t > produc3416767791517006041_set_a ) > list_t > list_P6739568432217944425_set_a ).

thf(sy_c_List_Olist_Omap_001tf__t_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    map_t_4914423018617898755_nat_t: ( t > product_prod_nat_t ) > list_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Olist_Omap_001tf__t_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    map_t_7579227405386970535_set_a: ( t > product_prod_t_set_a ) > list_t > list_P1095827921439705018_set_a ).

thf(sy_c_List_Olist_Omap_001tf__t_001tf__t,type,
    map_t_t: ( t > t ) > list_t > list_t ).

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__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    list_u4984865194623475435_set_a: list_P6739568432217944425_set_a > nat > produc3416767791517006041_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Olist__update_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    list_u7556474282317044296_nat_t: list_P4201438511612060998_nat_t > nat > product_prod_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Olist__update_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    list_u6938334460439117218_set_a: list_P1095827921439705018_set_a > nat > product_prod_t_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_List_Olist__update_001tf__t,type,
    list_update_t: list_t > nat > t > list_t ).

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

thf(sy_c_List_Olistrel1_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    listre5239452510186245434_set_a: set_Pr6980190999441956595_set_a > set_Pr7123406742897930003_set_a ).

thf(sy_c_List_Olistrel1_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    listre7062490390707579799_nat_t: set_Pr3075641135855851309_nat_t > set_Pr6976816108740651469_nat_t ).

thf(sy_c_List_Olistrel1_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    listre1572245647505301011_set_a: set_Pr2751536223740281991_set_a > set_Pr8268588392426440327_set_a ).

thf(sy_c_List_Olistrel1_001tf__t,type,
    listrel1_t: set_Product_prod_t_t > set_Pr8197441175499558087list_t ).

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__Nat__Onat_Mt__Nat__Onat_J,type,
    nth_Pr7617993195940197384at_nat: list_P6011104703257516679at_nat > nat > product_prod_nat_nat ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    nth_Pr8284457900147689105_set_a: list_P4315939809025048720_set_a > nat > produc3290003073410612618_set_a ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    nth_Pr8123890867510592110_nat_t: list_P4877514418049769965_nat_t > nat > produc7382685841506696807_nat_t ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    nth_Pr1324953721505055890_set_a: list_P6739568432217944425_set_a > nat > produc3416767791517006041_set_a ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    nth_Pr2476257163150662383_nat_t: list_P4201438511612060998_nat_t > nat > product_prod_nat_t ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    nth_Pr3428157630605187782_h_t_t: list_P6951459944542807621_h_t_t > nat > produc2796182059459404991_h_t_t ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    nth_Pr2651153946192415133_set_a: list_P2035273040109328284_set_a > nat > produc8090089739038349590_set_a ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    nth_Product_prod_h_t: list_P7520416276666729081od_h_t > nat > product_prod_h_t ).

thf(sy_c_List_Onth_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    nth_Pr633927046780761275_set_a: list_P1095827921439705018_set_a > nat > product_prod_t_set_a ).

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

thf(sy_c_List_Onth_001tf__h,type,
    nth_h: list_h > nat > h ).

thf(sy_c_List_Onth_001tf__t,type,
    nth_t: list_t > nat > t ).

thf(sy_c_List_Orotate1_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    rotate4488246661542978630_set_a: list_P6739568432217944425_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Orotate1_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    rotate8125167659641560739_nat_t: list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Orotate1_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    rotate2331158137962743303_set_a: list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_List_Orotate1_001tf__t,type,
    rotate1_t: list_t > list_t ).

thf(sy_c_List_Orotate_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    rotate3591195261073959455_set_a: nat > list_P6739568432217944425_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Orotate_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    rotate7455341356463262076_nat_t: nat > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Orotate_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    rotate4948212982839034734_set_a: nat > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

thf(sy_c_List_Orotate_001tf__t,type,
    rotate_t: nat > list_t > list_t ).

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__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    take_P1723439655008974187_set_a: nat > list_P6739568432217944425_set_a > list_P6739568432217944425_set_a ).

thf(sy_c_List_Otake_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    take_P1264513708533117128_nat_t: nat > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t ).

thf(sy_c_List_Otake_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    take_P2822414627813279522_set_a: nat > list_P1095827921439705018_set_a > list_P1095827921439705018_set_a ).

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

thf(sy_c_List_Otake_001tf__t,type,
    take_t: nat > list_t > list_t ).

thf(sy_c_MDL_OMDL_Omatch_001tf__a_001tf__t,type,
    match_a_t: trace_a_t > regex_a_t > set_Pr1261947904930325089at_nat ).

thf(sy_c_MDL_OMDL_Osat_001tf__a_001tf__t,type,
    sat_a_t: trace_a_t > formula_a_t > nat > $o ).

thf(sy_c_MDL_Oeps_001tf__a_001tf__t,type,
    eps_a_t: regex_a_t > $o ).

thf(sy_c_MDL_Oformula_OAtom_001tf__a_001tf__t,type,
    atom_a_t: a > formula_a_t ).

thf(sy_c_MDL_Oformula_OBin_001tf__a_001tf__t,type,
    bin_a_t: ( $o > $o > $o ) > formula_a_t > formula_a_t > formula_a_t ).

thf(sy_c_MDL_Oformula_OBool_001tf__a_001tf__t,type,
    bool_a_t: $o > formula_a_t ).

thf(sy_c_MDL_Oformula_ONeg_001tf__a_001tf__t,type,
    neg_a_t: formula_a_t > formula_a_t ).

thf(sy_c_MDL_Orderive_001tf__a_001tf__t,type,
    rderive_a_t: regex_a_t > regex_a_t ).

thf(sy_c_MDL_Oregex_OStar_001tf__a_001tf__t,type,
    star_a_t: regex_a_t > regex_a_t ).

thf(sy_c_MDL_Oregex_OTimes_001tf__a_001tf__t,type,
    times_a_t: regex_a_t > regex_a_t > regex_a_t ).

thf(sy_c_MDL_Owf__regex_001tf__a_001tf__t,type,
    wf_regex_a_t: regex_a_t > $o ).

thf(sy_c_Monitor_OVYDRA__MDL_001tf__a_001tf__t_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    vYDRA_3633401052503215442od_h_t: trace_a_t > option2110264179601050681od_h_t > ( option2110264179601050681od_h_t > option7188603832408115496_set_a ) > $o ).

thf(sy_c_Monitor_OVYDRA__MDL_001tf__a_001tf__t_001tf__h,type,
    vYDRA_MDL_a_t_h: trace_a_t > h > ( h > option5775791656947114332_set_a ) > $o ).

thf(sy_c_Monitor_Oread__t_001t__Nat__Onat_001t__Nat__Onat,type,
    read_t_nat_nat: option4927543243414619207at_nat > option_nat ).

thf(sy_c_Monitor_Oread__t_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    read_t2092621867719112_h_t_t: option4241632866121027589_h_t_t > option_t ).

thf(sy_c_Monitor_Oread__t_001tf__h_001tf__t,type,
    read_t_h_t: option2110264179601050681od_h_t > option_t ).

thf(sy_c_Monitor_Orun__subs_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001tf__h_001tf__t_001t__Set__Oset_Itf__a_J,type,
    run_su6538576578939915079_set_a: ( produc3416767791517006041_set_a > option5775791656947114332_set_a ) > list_P6739568432217944425_set_a > option8761023800807099238_set_a ).

thf(sy_c_Monitor_Orun__subs_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001tf__h_001tf__t_001t__Set__Oset_Itf__a_J,type,
    run_su4854328543928480938_set_a: ( product_prod_nat_t > option5775791656947114332_set_a ) > list_P4201438511612060998_nat_t > option8761023800807099238_set_a ).

thf(sy_c_Monitor_Orun__subs_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001tf__h_001tf__t_001t__Set__Oset_Itf__a_J,type,
    run_su8365392467984265486_set_a: ( product_prod_t_set_a > option5775791656947114332_set_a ) > list_P1095827921439705018_set_a > option8761023800807099238_set_a ).

thf(sy_c_Monitor_Orun__subs_001tf__t_001tf__h_001tf__t_001t__Set__Oset_Itf__a_J,type,
    run_subs_t_h_t_set_a: ( t > option5775791656947114332_set_a ) > list_t > option8761023800807099238_set_a ).

thf(sy_c_Monitor_Orun__t_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t_001tf__a,type,
    run_t_6187369673847646894_t_t_a: ( option2110264179601050681od_h_t > option7188603832408115496_set_a ) > option4241632866121027589_h_t_t > option8396723326150384441_t_t_t ).

thf(sy_c_Monitor_Orun__t_001tf__h_001tf__t_001tf__a,type,
    run_t_h_t_a: ( h > option5775791656947114332_set_a ) > option2110264179601050681od_h_t > option4241632866121027589_h_t_t ).

thf(sy_c_Monitor_Ot0_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t_001tf__a,type,
    t0_opt7280579062267883515_t_t_a: option2110264179601050681od_h_t > ( option2110264179601050681od_h_t > option7188603832408115496_set_a ) > option4241632866121027589_h_t_t ).

thf(sy_c_Monitor_Ot0_001tf__h_001tf__t_001tf__a,type,
    t0_h_t_a: h > ( h > option5775791656947114332_set_a ) > option2110264179601050681od_h_t ).

thf(sy_c_Nat_OSuc,type,
    suc: 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__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    size_s4712524065041078524_set_a: list_P4315939809025048720_set_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    size_s4602255498846139993_nat_t: list_P4877514418049769965_nat_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    size_s6950157911653109757_set_a: list_P6739568432217944425_set_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    size_s1593550824562968538_nat_t: list_P4201438511612060998_nat_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    size_s359041857338270385_h_t_t: list_P6951459944542807621_h_t_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    size_s2286189404704077320_set_a: list_P2035273040109328284_set_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    size_s785782387481697509od_h_t: list_P7520416276666729081od_h_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    size_s5362121731612881446_set_a: list_P1095827921439705018_set_a > nat ).

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

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__t_J,type,
    size_size_list_t: list_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    size_s4016968051272393527la_a_t: formula_a_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__MDL__Oregex_Itf__a_Mtf__t_J,type,
    size_size_regex_a_t: regex_a_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    size_s2345760128710500465_h_t_t: option4241632866121027589_h_t_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    size_s5864537446109811656_set_a: option5775791656947114332_set_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    size_s6536553198265154213od_h_t: option2110264179601050681od_h_t > nat ).

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

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

thf(sy_c_Nat__Bijection_Oprod__encode,type,
    nat_prod_encode: product_prod_nat_nat > nat ).

thf(sy_c_Nat__Bijection_Otriangle,type,
    nat_triangle: nat > nat ).

thf(sy_c_Option_Ooption_ONone_001t__Nat__Onat,type,
    none_nat: option_nat ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    none_P5556105721700978146at_nat: option4927543243414619207at_nat ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    none_P797220180637652640_h_t_t: option4241632866121027589_h_t_t ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    none_P2868508613186038903_set_a: option5775791656947114332_set_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    none_P849260865442546644od_h_t: option2110264179601050681od_h_t ).

thf(sy_c_Option_Ooption_ONone_001tf__t,type,
    none_t: option_t ).

thf(sy_c_Option_Ooption_OSome_001t__Nat__Onat,type,
    some_nat: nat > option_nat ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_Itf__h_J_Mt__IArray__Oiarray_It__Set__Oset_Itf__a_J_J_J,type,
    some_P7355459033391471877_set_a: produc4796906486038651680_set_a > option8761023800807099238_set_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    some_P7363390416028606310at_nat: product_prod_nat_nat > option4927543243414619207at_nat ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    some_P7041282404814600884_set_a: produc3416767791517006041_set_a > option6842317343963772841_set_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    some_P266144611102051089_nat_t: product_prod_nat_t > option6159645106754071430_nat_t ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_Mtf__t_J,type,
    some_P4035567189591855192_t_t_t: produc2926181002191610227_t_t_t > option8396723326150384441_t_t_t ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    some_P6376182011896009927_set_a: produc209148559573106274_set_a > option7188603832408115496_set_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    some_P8406129549712030756_h_t_t: produc2796182059459404991_h_t_t > option4241632866121027589_h_t_t ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    some_P2245991037696317435_set_a: produc8090089739038349590_set_a > option5775791656947114332_set_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    some_P2526622376857543512od_h_t: product_prod_h_t > option2110264179601050681od_h_t ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    some_P4667681669429350681_set_a: product_prod_t_set_a > option4621139365931258234_set_a ).

thf(sy_c_Option_Ooption_OSome_001tf__t,type,
    some_t: t > option_t ).

thf(sy_c_Option_Ooption_Osize__option_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    size_o8489950193150799586_h_t_t: ( produc2796182059459404991_h_t_t > nat ) > option4241632866121027589_h_t_t > nat ).

thf(sy_c_Option_Ooption_Osize__option_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    size_o6599886792432175033_set_a: ( produc8090089739038349590_set_a > nat ) > option5775791656947114332_set_a > nat ).

thf(sy_c_Option_Ooption_Osize__option_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    size_o5333920154352007446od_h_t: ( product_prod_h_t > nat ) > option2110264179601050681od_h_t > nat ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ord_le1203424502768444845at_nat: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    ord_le7650071679307129824_set_a: product_prod_t_set_a > product_prod_t_set_a > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless_001tf__t,type,
    ord_less_t: t > t > $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__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    ord_le8460144461188290721at_nat: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    ord_le282975657701390649_set_a: produc3416767791517006041_set_a > produc3416767791517006041_set_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    ord_le8519243152518785686_nat_t: product_prod_nat_t > product_prod_nat_t > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    ord_le1576776917030837460_set_a: product_prod_t_set_a > product_prod_t_set_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    ord_le8406513867147106209st_nat: set_Pr3451248702717554689st_nat > set_Pr3451248702717554689st_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ord_le3146513528884898305at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    ord_le2737813103468918719_h_t_t: set_Pr2919416885666844703_h_t_t > set_Pr2919416885666844703_h_t_t > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    ord_le919132016096821270_set_a: set_Pr4350348695907903606_set_a > set_Pr4350348695907903606_set_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    ord_le6870178751910059251od_h_t: set_Product_prod_h_t > set_Product_prod_h_t > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    ord_le3254057565153606196_set_a: set_Pr6994796776334525076_set_a > set_Pr6994796776334525076_set_a > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001tf__t,type,
    ord_less_eq_t: t > t > $o ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_Eo_J_001t__Mapping__Omapping_It__Nat__Onat_M_Eo_J,type,
    produc1708576699232315691_nat_o: ( nat > $o ) > mapping_nat_o > produc228893250607966907_nat_o ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_Eo_J_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Mapping__Omapping_It__Nat__Onat_M_Eo_J_J,type,
    produc4390676519605123987_nat_o: ( nat > $o ) > produc228893250607966907_nat_o > produc6863188293027480355_nat_o ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc1236331799044183215at_nat: ( nat > nat ) > list_P6011104703257516679at_nat > produc2687737633280426365at_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_001t__Mapping__Omapping_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J,type,
    produc6881441380283963085_h_t_o: ( option2110264179601050681od_h_t > $o ) > mappin3084283847901878192_h_t_o > produc7553516336514902421_h_t_o ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001t__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc6108346596544203678_set_a: ( product_prod_t_set_a > product_prod_t_set_a ) > list_P2035273040109328284_set_a > produc3174282710306170860_set_a ).

thf(sy_c_Product__Type_OPair_001_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_001t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc1477228808185177916_set_a: ( set_a > set_a ) > list_P1095827921439705018_set_a > produc8451769845593431434_set_a ).

thf(sy_c_Product__Type_OPair_001_062_Itf__h_M_Eo_J_001t__Mapping__Omapping_Itf__h_M_Eo_J,type,
    produc1980689136670736053ng_h_o: ( h > $o ) > mapping_h_o > produc3497948360376928893ng_h_o ).

thf(sy_c_Product__Type_OPair_001_062_Itf__t_M_Eo_J_001t__Product____Type__Oprod_I_062_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_Mt__Mapping__Omapping_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_J,type,
    produc7651783672790414224_h_t_o: ( t > $o ) > produc7553516336514902421_h_t_o > produc4131690961896830686_h_t_o ).

thf(sy_c_Product__Type_OPair_001_062_Itf__t_M_Eo_J_001t__Product____Type__Oprod_I_062_Itf__h_M_Eo_J_Mt__Mapping__Omapping_Itf__h_M_Eo_J_J,type,
    produc7514823755972731768ng_h_o: ( t > $o ) > produc3497948360376928893ng_h_o > produc4527254387385649606ng_h_o ).

thf(sy_c_Product__Type_OPair_001_062_Itf__t_Mtf__t_J_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    produc6657849915346856839_h_t_t: ( t > t ) > list_P6951459944542807621_h_t_t > produc8916249546318103765_h_t_t ).

thf(sy_c_Product__Type_OPair_001_062_Itf__t_Mtf__t_J_001t__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    produc1198824894057669819od_h_t: ( t > t ) > list_P7520416276666729081od_h_t > produc9165125586590101385od_h_t ).

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__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Mapping__Omapping_It__Nat__Onat_M_Eo_J_J_J,type,
    produc5654405827127464947_nat_o: list_P6011104703257516679at_nat > produc6863188293027480355_nat_o > produc1783361409637995907_nat_o ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc5226300575157571691_set_a: list_P6739568432217944425_set_a > list_P6739568432217944425_set_a > produc2930678406704639923_set_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    produc87868410121502373_nat_t: list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t > produc3711645117720249709_nat_t ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_001t__Product____Type__Oprod_I_062_Itf__t_M_Eo_J_Mt__Product____Type__Oprod_I_062_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_Mt__Mapping__Omapping_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_M_Eo_J_J_J,type,
    produc5988617653040243660_h_t_o: list_P6951459944542807621_h_t_t > produc4131690961896830686_h_t_o > produc7746120839355144914_h_t_o ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001t__Product____Type__Oprod_I_062_Itf__t_M_Eo_J_Mt__Product____Type__Oprod_I_062_Itf__h_M_Eo_J_Mt__Mapping__Omapping_Itf__h_M_Eo_J_J_J,type,
    produc1771462706825532648ng_h_o: list_P7520416276666729081od_h_t > produc4527254387385649606ng_h_o > produc7507468038271248494ng_h_o ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc3154345580163335831_set_a: list_P1095827921439705018_set_a > list_P1095827921439705018_set_a > produc7254934781974199719_set_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__h_J_001t__IArray__Oiarray_It__Set__Oset_Itf__a_J_J,type,
    produc2489086116771085328_set_a: list_h > iarray_set_a > produc4796906486038651680_set_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__t_J_001t__List__Olist_Itf__t_J,type,
    produc8116999438917745495list_t: list_t > list_t > produc2570983277269156327list_t ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc6109913384486294878at_nat: nat > list_P6011104703257516679at_nat > produc8472197452120411308at_nat ).

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

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc1709345877921393766at_nat: nat > produc2687737633280426365at_nat > produc6121082497140218670at_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    produc2291548248119593221at_nat: nat > produc6121082497140218670at_nat > produc5405368317271509971at_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc6363918193147894082_set_a: nat > produc3416767791517006041_set_a > produc3290003073410612618_set_a ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    produc3386237057313890207_nat_t: nat > product_prod_nat_t > produc7382685841506696807_nat_t ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc1331735522928163851_set_a: nat > product_prod_t_set_a > produc3416767791517006041_set_a ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001tf__t,type,
    product_Pair_nat_t: nat > t > product_prod_nat_t ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_001tf__t,type,
    produc3127976490108324323_t_t_t: option4241632866121027589_h_t_t > t > produc2926181002191610227_t_t_t ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    produc8237491370697050595_h_t_t: option2110264179601050681od_h_t > list_P6951459944542807621_h_t_t > produc8467556406643898867_h_t_t ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001t__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J,type,
    produc6798967726795071415_h_t_t: option2110264179601050681od_h_t > produc8916249546318103765_h_t_t > produc3979266224418810301_h_t_t ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J_J,type,
    produc4856507016996140791_h_t_t: option2110264179601050681od_h_t > produc8962804702779969045_h_t_t > produc350418192459910653_h_t_t ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc451741411942435538_set_a: option2110264179601050681od_h_t > product_prod_t_set_a > produc209148559573106274_set_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__h,type,
    produc770200333395398307_h_t_h: option2110264179601050681od_h_t > h > produc2796182007820659379_h_t_h ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    produc770200333395398319_h_t_t: option2110264179601050681od_h_t > t > produc2796182059459404991_h_t_t ).

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

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc5532101387244520523_set_a: produc3416767791517006041_set_a > produc3416767791517006041_set_a > produc2761083964526449299_set_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    produc2776648103937650693_nat_t: product_prod_nat_t > product_prod_nat_t > produc2829101240413136333_nat_t ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    produc2709429758397217111_h_t_t: produc2796182059459404991_h_t_t > produc2796182059459404991_h_t_t > produc5096814605807688167_h_t_t ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc4641403753979154199_set_a: produc8090089739038349590_set_a > produc8090089739038349590_set_a > produc4080278507718765863_set_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__h_Mtf__t_J_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    produc9015743616642157143od_h_t: product_prod_h_t > product_prod_h_t > produc2593129430228269031od_h_t ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc1519467037424502857_set_a: product_prod_t_set_a > produc3174282710306170860_set_a > produc5299569298341740495_set_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc4993190531567155607_set_a: product_prod_t_set_a > product_prod_t_set_a > produc809793603290300071_set_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001tf__t,type,
    produc1642816347796938356et_a_t: product_prod_t_set_a > t > produc267757839698675204et_a_t ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_Itf__a_J_001t__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc5228937807858423569_set_a: set_a > produc8451769845593431434_set_a > produc7416024164062932887_set_a ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_Itf__a_J_001t__Set__Oset_Itf__a_J,type,
    produc9088192753505129239_set_a: set_a > set_a > produc1703568184450464039_set_a ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc8663000205161293422_set_a: h > list_P2035273040109328284_set_a > produc5512707594232479998_set_a ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    produc1747536959180979019od_h_t: h > list_P7520416276666729081od_h_t > produc1757852559615113307od_h_t ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    produc3780965960682828555od_h_t: h > option2110264179601050681od_h_t > produc5880037315381070619od_h_t ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc6767557719958946458_set_a: h > produc3174282710306170860_set_a > produc5565737697667648800_set_a ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    produc8329345787630718007od_h_t: h > produc9165125586590101385od_h_t > produc7816779865488266557od_h_t ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J,type,
    produc1553154368631514749_set_a: h > produc5299569298341740495_set_a > produc7977236207705644419_set_a ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J_J,type,
    produc2899723240397946359od_h_t: h > produc3609689240849350473od_h_t > produc4003748141140169725od_h_t ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc3432067189782488838_set_a: h > product_prod_t_set_a > produc8090089739038349590_set_a ).

thf(sy_c_Product__Type_OPair_001tf__h_001t__Set__Oset_Itf__a_J,type,
    product_Pair_h_set_a: h > set_a > product_prod_h_set_a ).

thf(sy_c_Product__Type_OPair_001tf__h_001tf__h,type,
    product_Pair_h_h: h > h > product_prod_h_h ).

thf(sy_c_Product__Type_OPair_001tf__h_001tf__t,type,
    product_Pair_h_t: h > t > product_prod_h_t ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    produc8373274609231865216_set_a: t > list_P1095827921439705018_set_a > produc9219478359178935824_set_a ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    produc1804414786580393028_set_a: t > produc8451769845593431434_set_a > produc4363423165740810442_set_a ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J,type,
    produc7172541847997997711_h_t_t: t > produc8916249546318103765_h_t_t > produc8962804702779969045_h_t_t ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    produc4122255162991801923od_h_t: t > produc9165125586590101385od_h_t > produc3609689240849350473od_h_t ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_It__Set__Oset_Itf__a_J_Mt__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    produc4219576724249136209_set_a: t > produc7416024164062932887_set_a > produc5282693569712909143_set_a ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc9102197234902130170_set_a: t > product_prod_t_set_a > produc4536847747303215114_set_a ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Set__Oset_Itf__a_J,type,
    product_Pair_t_set_a: t > set_a > product_prod_t_set_a ).

thf(sy_c_Product__Type_OPair_001tf__t_001tf__t,type,
    product_Pair_t_t: t > t > product_prod_t_t ).

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

thf(sy_c_Product__Type_Oprod_Ofst_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    produc4004510029700249243_h_t_t: produc2796182059459404991_h_t_t > option2110264179601050681od_h_t ).

thf(sy_c_Product__Type_Oprod_Ofst_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc6892702156181598450_set_a: produc8090089739038349590_set_a > h ).

thf(sy_c_Product__Type_Oprod_Ofst_001tf__h_001tf__t,type,
    product_fst_h_t: product_prod_h_t > h ).

thf(sy_c_Product__Type_Oprod_Ofst_001tf__t_001t__Set__Oset_Itf__a_J,type,
    product_fst_t_set_a: product_prod_t_set_a > t ).

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

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc3342598052951375197_set_a: produc3416767791517006041_set_a > product_prod_t_set_a ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001tf__t,type,
    product_snd_nat_t: product_prod_nat_t > t ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    produc4382304763178309853_h_t_t: produc2796182059459404991_h_t_t > t ).

thf(sy_c_Product__Type_Oprod_Osnd_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    produc5260167487839082036_set_a: produc8090089739038349590_set_a > product_prod_t_set_a ).

thf(sy_c_Product__Type_Oprod_Osnd_001tf__h_001tf__t,type,
    product_snd_h_t: product_prod_h_t > t ).

thf(sy_c_Product__Type_Oprod_Osnd_001tf__t_001t__Set__Oset_Itf__a_J,type,
    product_snd_t_set_a: product_prod_t_set_a > set_a ).

thf(sy_c_Relation_Orelcomp_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    relcomp_nat_nat_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Relation_Orelcomp_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__h_001tf__t,type,
    relcom4290436867423444548_t_h_t: set_Pr2067008405110692883_h_t_h > set_Product_prod_h_t > set_Pr2919416885666844703_h_t_t ).

thf(sy_c_Relation_Orelcomp_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t_001tf__t,type,
    relcom7734458031170435384_t_t_t: set_Pr2919416885666844703_h_t_t > set_Product_prod_t_t > set_Pr2919416885666844703_h_t_t ).

thf(sy_c_Relation_Orelcomp_001tf__h_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    relcom776841177565963228_h_t_t: set_Pr4622222292976158843od_h_t > set_Pr2919416885666844703_h_t_t > set_Product_prod_h_t ).

thf(sy_c_Relation_Orelcomp_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001tf__t,type,
    relcom6838666584484513569et_a_t: set_Pr4350348695907903606_set_a > set_Pr9005033546302094948et_a_t > set_Product_prod_h_t ).

thf(sy_c_Relation_Orelcomp_001tf__h_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    relcom8627917426470064051_set_a: set_Product_prod_h_h > set_Pr4350348695907903606_set_a > set_Pr4350348695907903606_set_a ).

thf(sy_c_Relation_Orelcomp_001tf__h_001tf__h_001tf__t,type,
    relcomp_h_h_t: set_Product_prod_h_h > set_Product_prod_h_t > set_Product_prod_h_t ).

thf(sy_c_Relation_Orelcomp_001tf__h_001tf__t_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    relcom5074675434734929575_set_a: set_Product_prod_h_t > set_Pr2711178225231897962_set_a > set_Pr4350348695907903606_set_a ).

thf(sy_c_Relation_Orelcomp_001tf__h_001tf__t_001t__Set__Oset_Itf__a_J,type,
    relcomp_h_t_set_a: set_Product_prod_h_t > set_Pr6994796776334525076_set_a > set_Pr7585996402506494368_set_a ).

thf(sy_c_Relation_Orelcomp_001tf__h_001tf__t_001tf__t,type,
    relcomp_h_t_t: set_Product_prod_h_t > set_Product_prod_t_t > set_Product_prod_h_t ).

thf(sy_c_Relation_Orelcomp_001tf__t_001t__Set__Oset_Itf__a_J_001t__Set__Oset_Itf__a_J,type,
    relcom3934421791305656016_set_a: set_Pr6994796776334525076_set_a > set_Pr5845495582615845127_set_a > set_Pr6994796776334525076_set_a ).

thf(sy_c_Relation_Orelcomp_001tf__t_001tf__t_001t__Set__Oset_Itf__a_J,type,
    relcomp_t_t_set_a: set_Product_prod_t_t > set_Pr6994796776334525076_set_a > set_Pr6994796776334525076_set_a ).

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__Nat__Onat_Mt__Nat__Onat_J,type,
    collec3392354462482085612at_nat: ( product_prod_nat_nat > $o ) > set_Pr1261947904930325089at_nat ).

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

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

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Nat__Onat,type,
    set_or4665077453230672383an_nat: nat > nat > set_nat ).

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

thf(sy_c_Trace_O_092_060Gamma_062_001tf__a_001tf__t,type,
    gamma_a_t: trace_a_t > nat > set_a ).

thf(sy_c_Trace_O_092_060tau_062_001tf__a_001tf__t,type,
    tau_a_t: trace_a_t > nat > t ).

thf(sy_c_Trace_Osorted__list_001t__Nat__Onat,type,
    sorted_list_nat: list_nat > $o ).

thf(sy_c_Trace_Osorted__list_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    sorted4478976867109148398_set_a: list_P6739568432217944425_set_a > $o ).

thf(sy_c_Trace_Osorted__list_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    sorted1655624744600754507_nat_t: list_P4201438511612060998_nat_t > $o ).

thf(sy_c_Trace_Osorted__list_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    sorted5003863949113869663_set_a: list_P1095827921439705018_set_a > $o ).

thf(sy_c_Trace_Osorted__list_001tf__t,type,
    sorted_list_t: list_t > $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__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    transi6894134243792755750_set_a: set_Pr7123406742897930003_set_a > set_Pr7123406742897930003_set_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    transi8901708931774269699_nat_t: set_Pr6976816108740651469_nat_t > set_Pr6976816108740651469_nat_t ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    transi5209167329950108989_set_a: set_Pr8268588392426440327_set_a > set_Pr8268588392426440327_set_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__List__Olist_Itf__t_J,type,
    transi7631189048725058202list_t: set_Pr8197441175499558087list_t > set_Pr8197441175499558087list_t ).

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__Nat__Onat_Mt__Nat__Onat_J,type,
    transi8609417484261754244at_nat: set_Pr8693737435421807431at_nat > set_Pr8693737435421807431at_nat ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    transi8353235497968031810_h_t_t: set_Pr4341985475574286023_h_t_t > set_Pr4341985475574286023_h_t_t ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    transi3302872164550607129_set_a: set_Pr918899152635689223_set_a > set_Pr918899152635689223_set_a ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    transi6164259836908458614od_h_t: set_Pr2990887038747690439od_h_t > set_Pr2990887038747690439od_h_t ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    transi2002986897968859191_set_a: set_Pr2751536223740281991_set_a > set_Pr2751536223740281991_set_a ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J,type,
    accp_P9053349721105380151at_nat: ( produc6121082497140218670at_nat > produc6121082497140218670at_nat > $o ) > produc6121082497140218670at_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Nat__Onat_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J_J_J,type,
    accp_P8262604802235901066at_nat: ( produc5405368317271509971at_nat > produc5405368317271509971at_nat > $o ) > produc5405368317271509971at_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J_J,type,
    accp_P8782983773687629812_h_t_t: ( produc3979266224418810301_h_t_t > produc3979266224418810301_h_t_t > $o ) > produc3979266224418810301_h_t_t > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_J_J_J,type,
    accp_P6726631513323756852_h_t_t: ( produc350418192459910653_h_t_t > produc350418192459910653_h_t_t > $o ) > produc350418192459910653_h_t_t > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J,type,
    accp_P8904481692493317463_set_a: ( produc5565737697667648800_set_a > produc5565737697667648800_set_a > $o ) > produc5565737697667648800_set_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J_J,type,
    accp_P5826603396118613620od_h_t: ( produc7816779865488266557od_h_t > produc7816779865488266557od_h_t > $o ) > produc7816779865488266557od_h_t > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J_J,type,
    accp_P4247297568117447610_set_a: ( produc7977236207705644419_set_a > produc7977236207705644419_set_a > $o ) > produc7977236207705644419_set_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_Itf__t_Mtf__t_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J_J_J,type,
    accp_P4377544425418686004od_h_t: ( produc4003748141140169725od_h_t > produc4003748141140169725od_h_t > $o ) > produc4003748141140169725od_h_t > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    accp_P507257802297271809_set_a: ( produc4363423165740810442_set_a > produc4363423165740810442_set_a > $o ) > produc4363423165740810442_set_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_It__Set__Oset_Itf__a_J_Mt__Product____Type__Oprod_I_062_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J_J,type,
    accp_P2364535113857967502_set_a: ( produc5282693569712909143_set_a > produc5282693569712909143_set_a > $o ) > produc5282693569712909143_set_a > $o ).

thf(sy_c_Window_Ochain__le_001t__Nat__Onat,type,
    chain_le_nat: list_nat > $o ).

thf(sy_c_Window_Ochain__le_001tf__t,type,
    chain_le_t: list_t > $o ).

thf(sy_c_Window_Oreaches_001t__Nat__Onat_001t__Nat__Onat,type,
    reaches_nat_nat: ( nat > option4927543243414619207at_nat ) > nat > nat > nat > $o ).

thf(sy_c_Window_Oreaches_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    reache5944868495896439325_h_t_t: ( option2110264179601050681od_h_t > option4241632866121027589_h_t_t ) > option2110264179601050681od_h_t > nat > option2110264179601050681od_h_t > $o ).

thf(sy_c_Window_Oreaches_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    reache8480716032150177652_set_a: ( h > option5775791656947114332_set_a ) > h > nat > h > $o ).

thf(sy_c_Window_Oreaches_001tf__h_001tf__t,type,
    reaches_h_t: ( h > option2110264179601050681od_h_t ) > h > nat > h > $o ).

thf(sy_c_Window_Oreaches_001tf__t_001t__Set__Oset_Itf__a_J,type,
    reaches_t_set_a: ( t > option4621139365931258234_set_a ) > t > nat > t > $o ).

thf(sy_c_Window_Oreaches__on_001t__Nat__Onat_001t__Nat__Onat,type,
    reaches_on_nat_nat: ( nat > option4927543243414619207at_nat ) > nat > list_nat > nat > $o ).

thf(sy_c_Window_Oreaches__on_001t__Option__Ooption_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J_001tf__t,type,
    reache4450721910237653584_t_t_t: ( option4241632866121027589_h_t_t > option8396723326150384441_t_t_t ) > option4241632866121027589_h_t_t > list_t > option4241632866121027589_h_t_t > $o ).

thf(sy_c_Window_Oreaches__on_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    reache8330399945480511167_set_a: ( option2110264179601050681od_h_t > option7188603832408115496_set_a ) > option2110264179601050681od_h_t > list_P1095827921439705018_set_a > option2110264179601050681od_h_t > $o ).

thf(sy_c_Window_Oreaches__on_001t__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_001tf__t,type,
    reache645946503560514460_h_t_t: ( option2110264179601050681od_h_t > option4241632866121027589_h_t_t ) > option2110264179601050681od_h_t > list_t > option2110264179601050681od_h_t > $o ).

thf(sy_c_Window_Oreaches__on_001tf__h_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    reache3397181163414509427_set_a: ( h > option5775791656947114332_set_a ) > h > list_P1095827921439705018_set_a > h > $o ).

thf(sy_c_Window_Oreaches__on_001tf__h_001tf__t,type,
    reaches_on_h_t: ( h > option2110264179601050681od_h_t ) > h > list_t > h > $o ).

thf(sy_c_Window_Oreaches__on_001tf__t_001t__Set__Oset_Itf__a_J,type,
    reaches_on_t_set_a: ( t > option4621139365931258234_set_a ) > t > list_set_a > t > $o ).

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

thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member3067507820990806192at_nat: list_P6011104703257516679at_nat > set_li5450038453877631591at_nat > $o ).

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

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

thf(sy_c_member_001t__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__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
    member1164773568115972444_set_a: produc2930678406704639923_set_a > set_Pr7123406742897930003_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J_J,type,
    member6554284536620456214_nat_t: produc3711645117720249709_nat_t > set_Pr6976816108740651469_nat_t > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    member7105239521983867088_set_a: produc7254934781974199719_set_a > set_Pr8268588392426440327_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__List__Olist_Itf__t_J_J,type,
    member1598007745118852880list_t: produc2570983277269156327list_t > set_Pr8197441175499558087list_t > $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__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__h_J,type,
    member1960274552866704988_h_t_h: produc2796182007820659379_h_t_h > set_Pr2067008405110692883_h_t_h > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J,type,
    member1960274604505450600_h_t_t: produc2796182059459404991_h_t_t > set_Pr2919416885666844703_h_t_t > $o ).

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

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    member8640275492606135612_set_a: produc2761083964526449299_set_a > set_Pr6980190999441956595_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J_J,type,
    member7182942125143788150_nat_t: produc2829101240413136333_nat_t > set_Pr3075641135855851309_nat_t > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_Mtf__t_J_J,type,
    member1552482442457946384_h_t_t: produc5096814605807688167_h_t_t > set_Pr4341985475574286023_h_t_t > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    member6311670872353163088_set_a: produc4080278507718765863_set_a > set_Pr918899152635689223_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__h_Mtf__t_J_Mt__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    member5425237497124928528od_h_t: produc2593129430228269031od_h_t > set_Pr2990887038747690439od_h_t > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    member6953777265722981072_set_a: produc809793603290300071_set_a > set_Pr2751536223740281991_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_Mtf__t_J,type,
    member8171993688707725101et_a_t: produc267757839698675204et_a_t > set_Pr9005033546302094948et_a_t > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Set__Oset_Itf__a_J_Mt__Set__Oset_Itf__a_J_J,type,
    member7983343339038529360_set_a: produc1703568184450464039_set_a > set_Pr5845495582615845127_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__h_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    member5044129860427116228od_h_t: produc5880037315381070619od_h_t > set_Pr4622222292976158843od_h_t > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__h_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    member6770953551192623679_set_a: produc8090089739038349590_set_a > set_Pr4350348695907903606_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__h_Mt__Set__Oset_Itf__a_J_J,type,
    member4959854103333166185_set_a: product_prod_h_set_a > set_Pr7585996402506494368_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__h_Mtf__h_J,type,
    member361086507548856208od_h_h: product_prod_h_h > set_Product_prod_h_h > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    member361086559187601820od_h_t: product_prod_h_t > set_Product_prod_h_t > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    member3217711559457489203_set_a: produc4536847747303215114_set_a > set_Pr2711178225231897962_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    member2646690471337469789_set_a: product_prod_t_set_a > set_Pr6994796776334525076_set_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__t_Mtf__t_J,type,
    member3805107722934592656od_t_t: product_prod_t_t > set_Product_prod_t_t > $o ).

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

thf(sy_v__092_060sigma_062,type,
    sigma: trace_a_t ).

thf(sy_v_e,type,
    e: h ).

thf(sy_v_init__hd,type,
    init_hd: h ).

thf(sy_v_run__hd,type,
    run_hd: h > option5775791656947114332_set_a ).

thf(sy_v_t,type,
    t2: t ).

thf(sy_v_ts,type,
    ts: list_t ).

thf(sy_v_z____,type,
    z: option2110264179601050681od_h_t ).

% Relevant facts (1257)
thf(fact_0_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs: list_P6739568432217944425_set_a] :
      ( ( size_s6950157911653109757_set_a @ Xs )
      = N ) ).

% Ex_list_of_length
thf(fact_1_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ Xs )
      = N ) ).

% Ex_list_of_length
thf(fact_2_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs: list_t] :
      ( ( size_size_list_t @ Xs )
      = N ) ).

% Ex_list_of_length
thf(fact_3_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ Xs )
      = N ) ).

% Ex_list_of_length
thf(fact_4_neq__if__length__neq,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
       != ( size_s6950157911653109757_set_a @ Ys ) )
     => ( Xs2 != Ys ) ) ).

% neq_if_length_neq
thf(fact_5_neq__if__length__neq,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
       != ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( Xs2 != Ys ) ) ).

% neq_if_length_neq
thf(fact_6_neq__if__length__neq,axiom,
    ! [Xs2: list_t,Ys: list_t] :
      ( ( ( size_size_list_t @ Xs2 )
       != ( size_size_list_t @ Ys ) )
     => ( Xs2 != Ys ) ) ).

% neq_if_length_neq
thf(fact_7_neq__if__length__neq,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
       != ( size_s5362121731612881446_set_a @ Ys ) )
     => ( Xs2 != Ys ) ) ).

% neq_if_length_neq
thf(fact_8_size__neq__size__imp__neq,axiom,
    ! [X: list_P6739568432217944425_set_a,Y: list_P6739568432217944425_set_a] :
      ( ( ( size_s6950157911653109757_set_a @ X )
       != ( size_s6950157911653109757_set_a @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_9_size__neq__size__imp__neq,axiom,
    ! [X: list_P4201438511612060998_nat_t,Y: list_P4201438511612060998_nat_t] :
      ( ( ( size_s1593550824562968538_nat_t @ X )
       != ( size_s1593550824562968538_nat_t @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_10_size__neq__size__imp__neq,axiom,
    ! [X: list_t,Y: list_t] :
      ( ( ( size_size_list_t @ X )
       != ( size_size_list_t @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_11_size__neq__size__imp__neq,axiom,
    ! [X: list_P1095827921439705018_set_a,Y: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ X )
       != ( size_s5362121731612881446_set_a @ Y ) )
     => ( X != Y ) ) ).

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

% size_neq_size_imp_neq
thf(fact_13_VYDRA__MDL__axioms,axiom,
    vYDRA_MDL_a_t_h @ sigma @ init_hd @ run_hd ).

% VYDRA_MDL_axioms
thf(fact_14_sat_Osimps_I3_J,axiom,
    ! [Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( neg_a_t @ Phi ) @ I )
      = ( ~ ( sat_a_t @ sigma @ Phi @ I ) ) ) ).

% sat.simps(3)
thf(fact_15_sat_Osimps_I1_J,axiom,
    ! [B: $o,I: nat] :
      ( ( sat_a_t @ sigma @ ( bool_a_t @ B ) @ I )
      = B ) ).

% sat.simps(1)
thf(fact_16_measure__size,axiom,
    fun_is451698544401419116_set_a @ size_s6950157911653109757_set_a ).

% measure_size
thf(fact_17_measure__size,axiom,
    fun_is438584119853254217_nat_t @ size_s1593550824562968538_nat_t ).

% measure_size
thf(fact_18_measure__size,axiom,
    fun_is2414390421183857876list_t @ size_size_list_t ).

% measure_size
thf(fact_19_measure__size,axiom,
    fun_is9086716649689197943_set_a @ size_s5362121731612881446_set_a ).

% measure_size
thf(fact_20_measure__size,axiom,
    fun_is_measure_char @ size_size_char ).

% measure_size
thf(fact_21_sat_Osimps_I4_J,axiom,
    ! [F: $o > $o > $o,Phi: formula_a_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( bin_a_t @ F @ Phi @ Psi ) @ I )
      = ( F @ ( sat_a_t @ sigma @ Phi @ I ) @ ( sat_a_t @ sigma @ Psi @ I ) ) ) ).

% sat.simps(4)
thf(fact_22_length__enumerate,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( size_s4712524065041078524_set_a @ ( enumer7763302717704308148_set_a @ N @ Xs2 ) )
      = ( size_s6950157911653109757_set_a @ Xs2 ) ) ).

% length_enumerate
thf(fact_23_length__enumerate,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_s4602255498846139993_nat_t @ ( enumer6477790069082461713_nat_t @ N @ Xs2 ) )
      = ( size_s1593550824562968538_nat_t @ Xs2 ) ) ).

% length_enumerate
thf(fact_24_length__enumerate,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( size_s1593550824562968538_nat_t @ ( enumerate_t @ N @ Xs2 ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_enumerate
thf(fact_25_length__enumerate,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( enumer4564034045956179481_set_a @ N @ Xs2 ) )
      = ( size_s5362121731612881446_set_a @ Xs2 ) ) ).

% length_enumerate
thf(fact_26_assms,axiom,
    reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ ts @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ e @ t2 ) ) ).

% assms
thf(fact_27_length__rotate1,axiom,
    ! [Xs2: list_t] :
      ( ( size_size_list_t @ ( rotate1_t @ Xs2 ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_rotate1
thf(fact_28_length__rotate1,axiom,
    ! [Xs2: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( rotate2331158137962743303_set_a @ Xs2 ) )
      = ( size_s5362121731612881446_set_a @ Xs2 ) ) ).

% length_rotate1
thf(fact_29_length__rotate1,axiom,
    ! [Xs2: list_P6739568432217944425_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( rotate4488246661542978630_set_a @ Xs2 ) )
      = ( size_s6950157911653109757_set_a @ Xs2 ) ) ).

% length_rotate1
thf(fact_30_length__rotate1,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( rotate8125167659641560739_nat_t @ Xs2 ) )
      = ( size_s1593550824562968538_nat_t @ Xs2 ) ) ).

% length_rotate1
thf(fact_31_is__measure_Osimps,axiom,
    ( fun_is_measure_char
    = ( ^ [A: char > nat] :
        ? [X2: char > nat] :
          ( ^ [Y2: char > nat,Z: char > nat] : ( Y2 = Z )
          @ A
          @ X2 ) ) ) ).

% is_measure.simps
thf(fact_32_is__measure_Osimps,axiom,
    ( fun_is9086716649689197943_set_a
    = ( ^ [A: list_P1095827921439705018_set_a > nat] :
        ? [X2: list_P1095827921439705018_set_a > nat] :
          ( ^ [Y2: list_P1095827921439705018_set_a > nat,Z: list_P1095827921439705018_set_a > nat] : ( Y2 = Z )
          @ A
          @ X2 ) ) ) ).

% is_measure.simps
thf(fact_33_is__measure_Osimps,axiom,
    ( fun_is2414390421183857876list_t
    = ( ^ [A: list_t > nat] :
        ? [X2: list_t > nat] :
          ( ^ [Y2: list_t > nat,Z: list_t > nat] : ( Y2 = Z )
          @ A
          @ X2 ) ) ) ).

% is_measure.simps
thf(fact_34_is__measure__trivial,axiom,
    ! [F: char > nat] : ( fun_is_measure_char @ F ) ).

% is_measure_trivial
thf(fact_35_is__measure__trivial,axiom,
    ! [F: list_P1095827921439705018_set_a > nat] : ( fun_is9086716649689197943_set_a @ F ) ).

% is_measure_trivial
thf(fact_36_is__measure__trivial,axiom,
    ! [F: list_t > nat] : ( fun_is2414390421183857876list_t @ F ) ).

% is_measure_trivial
thf(fact_37_z__def,axiom,
    ( ( run_t_h_t_a @ run_hd @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ e @ t2 ) ) )
    = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ z @ t2 ) ) ) ).

% z_def
thf(fact_38_ru__t__tau,axiom,
    ! [Ts: list_t,T: option2110264179601050681od_h_t,T2: option2110264179601050681od_h_t,X: t] :
      ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Ts @ T )
     => ( ( ( run_t_h_t_a @ run_hd @ T )
          = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ T2 @ X ) ) )
       => ( X
          = ( tau_a_t @ sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ).

% ru_t_tau
thf(fact_39_formula_Oinject_I1_J,axiom,
    ! [X1: $o,Y1: $o] :
      ( ( ( bool_a_t @ X1 )
        = ( bool_a_t @ Y1 ) )
      = ( X1 = Y1 ) ) ).

% formula.inject(1)
thf(fact_40_formula_Oinject_I4_J,axiom,
    ! [X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t] :
      ( ( ( bin_a_t @ X41 @ X42 @ X43 )
        = ( bin_a_t @ Y41 @ Y42 @ Y43 ) )
      = ( ( X41 = Y41 )
        & ( X42 = Y42 )
        & ( X43 = Y43 ) ) ) ).

% formula.inject(4)
thf(fact_41_formula_Oinject_I3_J,axiom,
    ! [X3: formula_a_t,Y3: formula_a_t] :
      ( ( ( neg_a_t @ X3 )
        = ( neg_a_t @ Y3 ) )
      = ( X3 = Y3 ) ) ).

% formula.inject(3)
thf(fact_42_option_Oinject,axiom,
    ! [X22: product_prod_h_t,Y22: product_prod_h_t] :
      ( ( ( some_P2526622376857543512od_h_t @ X22 )
        = ( some_P2526622376857543512od_h_t @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% option.inject
thf(fact_43_option_Oinject,axiom,
    ! [X22: produc2796182059459404991_h_t_t,Y22: produc2796182059459404991_h_t_t] :
      ( ( ( some_P8406129549712030756_h_t_t @ X22 )
        = ( some_P8406129549712030756_h_t_t @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% option.inject
thf(fact_44_option_Oinject,axiom,
    ! [X22: produc8090089739038349590_set_a,Y22: produc8090089739038349590_set_a] :
      ( ( ( some_P2245991037696317435_set_a @ X22 )
        = ( some_P2245991037696317435_set_a @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% option.inject
thf(fact_45__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062z_O_Aru__t_A_ISome_A_Ie_M_At_J_J_A_061_ASome_A_Iz_M_At_J_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
    ~ ! [Z2: option2110264179601050681od_h_t] :
        ( ( run_t_h_t_a @ run_hd @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ e @ t2 ) ) )
       != ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ Z2 @ t2 ) ) ) ).

% \<open>\<And>thesis. (\<And>z. ru_t (Some (e, t)) = Some (z, t) \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_46_prod_Oinject,axiom,
    ! [X1: h,X22: t,Y1: h,Y22: t] :
      ( ( ( product_Pair_h_t @ X1 @ X22 )
        = ( product_Pair_h_t @ Y1 @ Y22 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y22 ) ) ) ).

% prod.inject
thf(fact_47_prod_Oinject,axiom,
    ! [X1: option2110264179601050681od_h_t,X22: t,Y1: option2110264179601050681od_h_t,Y22: t] :
      ( ( ( produc770200333395398319_h_t_t @ X1 @ X22 )
        = ( produc770200333395398319_h_t_t @ Y1 @ Y22 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y22 ) ) ) ).

% prod.inject
thf(fact_48_prod_Oinject,axiom,
    ! [X1: h,X22: product_prod_t_set_a,Y1: h,Y22: product_prod_t_set_a] :
      ( ( ( produc3432067189782488838_set_a @ X1 @ X22 )
        = ( produc3432067189782488838_set_a @ Y1 @ Y22 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y22 ) ) ) ).

% prod.inject
thf(fact_49_prod_Oinject,axiom,
    ! [X1: t,X22: set_a,Y1: t,Y22: set_a] :
      ( ( ( product_Pair_t_set_a @ X1 @ X22 )
        = ( product_Pair_t_set_a @ Y1 @ Y22 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y22 ) ) ) ).

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

% prod.inject
thf(fact_51_old_Oprod_Oinject,axiom,
    ! [A2: h,B: t,A3: h,B2: t] :
      ( ( ( product_Pair_h_t @ A2 @ B )
        = ( product_Pair_h_t @ A3 @ B2 ) )
      = ( ( A2 = A3 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_52_old_Oprod_Oinject,axiom,
    ! [A2: option2110264179601050681od_h_t,B: t,A3: option2110264179601050681od_h_t,B2: t] :
      ( ( ( produc770200333395398319_h_t_t @ A2 @ B )
        = ( produc770200333395398319_h_t_t @ A3 @ B2 ) )
      = ( ( A2 = A3 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_53_old_Oprod_Oinject,axiom,
    ! [A2: h,B: product_prod_t_set_a,A3: h,B2: product_prod_t_set_a] :
      ( ( ( produc3432067189782488838_set_a @ A2 @ B )
        = ( produc3432067189782488838_set_a @ A3 @ B2 ) )
      = ( ( A2 = A3 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_54_old_Oprod_Oinject,axiom,
    ! [A2: t,B: set_a,A3: t,B2: set_a] :
      ( ( ( product_Pair_t_set_a @ A2 @ B )
        = ( product_Pair_t_set_a @ A3 @ B2 ) )
      = ( ( A2 = A3 )
        & ( B = B2 ) ) ) ).

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

% old.prod.inject
thf(fact_56_formula_Odistinct_I5_J,axiom,
    ! [X1: $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ( ( bool_a_t @ X1 )
     != ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.distinct(5)
thf(fact_57_formula_Odistinct_I3_J,axiom,
    ! [X1: $o,X3: formula_a_t] :
      ( ( bool_a_t @ X1 )
     != ( neg_a_t @ X3 ) ) ).

% formula.distinct(3)
thf(fact_58_formula_Odistinct_I35_J,axiom,
    ! [X3: formula_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ( ( neg_a_t @ X3 )
     != ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.distinct(35)
thf(fact_59_prod__induct3,axiom,
    ! [P: produc8090089739038349590_set_a > $o,X: produc8090089739038349590_set_a] :
      ( ! [A4: h,B3: t,C: set_a] : ( P @ ( produc3432067189782488838_set_a @ A4 @ ( product_Pair_t_set_a @ B3 @ C ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_60_prod__cases3,axiom,
    ! [Y: produc8090089739038349590_set_a] :
      ~ ! [A4: h,B3: t,C: set_a] :
          ( Y
         != ( produc3432067189782488838_set_a @ A4 @ ( product_Pair_t_set_a @ B3 @ C ) ) ) ).

% prod_cases3
thf(fact_61_Pair__inject,axiom,
    ! [A2: h,B: t,A3: h,B2: t] :
      ( ( ( product_Pair_h_t @ A2 @ B )
        = ( product_Pair_h_t @ A3 @ B2 ) )
     => ~ ( ( A2 = A3 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_62_Pair__inject,axiom,
    ! [A2: option2110264179601050681od_h_t,B: t,A3: option2110264179601050681od_h_t,B2: t] :
      ( ( ( produc770200333395398319_h_t_t @ A2 @ B )
        = ( produc770200333395398319_h_t_t @ A3 @ B2 ) )
     => ~ ( ( A2 = A3 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_63_Pair__inject,axiom,
    ! [A2: h,B: product_prod_t_set_a,A3: h,B2: product_prod_t_set_a] :
      ( ( ( produc3432067189782488838_set_a @ A2 @ B )
        = ( produc3432067189782488838_set_a @ A3 @ B2 ) )
     => ~ ( ( A2 = A3 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_64_Pair__inject,axiom,
    ! [A2: t,B: set_a,A3: t,B2: set_a] :
      ( ( ( product_Pair_t_set_a @ A2 @ B )
        = ( product_Pair_t_set_a @ A3 @ B2 ) )
     => ~ ( ( A2 = A3 )
         => ( B != B2 ) ) ) ).

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

% Pair_inject
thf(fact_66_prod__cases,axiom,
    ! [P: product_prod_h_t > $o,P2: product_prod_h_t] :
      ( ! [A4: h,B3: t] : ( P @ ( product_Pair_h_t @ A4 @ B3 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_67_prod__cases,axiom,
    ! [P: produc2796182059459404991_h_t_t > $o,P2: produc2796182059459404991_h_t_t] :
      ( ! [A4: option2110264179601050681od_h_t,B3: t] : ( P @ ( produc770200333395398319_h_t_t @ A4 @ B3 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_68_prod__cases,axiom,
    ! [P: produc8090089739038349590_set_a > $o,P2: produc8090089739038349590_set_a] :
      ( ! [A4: h,B3: product_prod_t_set_a] : ( P @ ( produc3432067189782488838_set_a @ A4 @ B3 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_69_prod__cases,axiom,
    ! [P: product_prod_t_set_a > $o,P2: product_prod_t_set_a] :
      ( ! [A4: t,B3: set_a] : ( P @ ( product_Pair_t_set_a @ A4 @ B3 ) )
     => ( P @ P2 ) ) ).

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

% prod_cases
thf(fact_71_surj__pair,axiom,
    ! [P2: product_prod_h_t] :
    ? [X4: h,Y4: t] :
      ( P2
      = ( product_Pair_h_t @ X4 @ Y4 ) ) ).

% surj_pair
thf(fact_72_surj__pair,axiom,
    ! [P2: produc2796182059459404991_h_t_t] :
    ? [X4: option2110264179601050681od_h_t,Y4: t] :
      ( P2
      = ( produc770200333395398319_h_t_t @ X4 @ Y4 ) ) ).

% surj_pair
thf(fact_73_surj__pair,axiom,
    ! [P2: produc8090089739038349590_set_a] :
    ? [X4: h,Y4: product_prod_t_set_a] :
      ( P2
      = ( produc3432067189782488838_set_a @ X4 @ Y4 ) ) ).

% surj_pair
thf(fact_74_surj__pair,axiom,
    ! [P2: product_prod_t_set_a] :
    ? [X4: t,Y4: set_a] :
      ( P2
      = ( product_Pair_t_set_a @ X4 @ Y4 ) ) ).

% surj_pair
thf(fact_75_surj__pair,axiom,
    ! [P2: product_prod_nat_nat] :
    ? [X4: nat,Y4: nat] :
      ( P2
      = ( product_Pair_nat_nat @ X4 @ Y4 ) ) ).

% surj_pair
thf(fact_76_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_h_t] :
      ~ ! [A4: h,B3: t] :
          ( Y
         != ( product_Pair_h_t @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_77_old_Oprod_Oexhaust,axiom,
    ! [Y: produc2796182059459404991_h_t_t] :
      ~ ! [A4: option2110264179601050681od_h_t,B3: t] :
          ( Y
         != ( produc770200333395398319_h_t_t @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_78_old_Oprod_Oexhaust,axiom,
    ! [Y: produc8090089739038349590_set_a] :
      ~ ! [A4: h,B3: product_prod_t_set_a] :
          ( Y
         != ( produc3432067189782488838_set_a @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_79_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_t_set_a] :
      ~ ! [A4: t,B3: set_a] :
          ( Y
         != ( product_Pair_t_set_a @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_80_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_nat_nat] :
      ~ ! [A4: nat,B3: nat] :
          ( Y
         != ( product_Pair_nat_nat @ A4 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_81_MDL_Osat_Ocong,axiom,
    sat_a_t = sat_a_t ).

% MDL.sat.cong
thf(fact_82_VYDRA__MDL_Oru__t__tau,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Ts: list_t,T: option2110264179601050681od_h_t,T2: option2110264179601050681od_h_t,X: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ Run_hd ) @ ( t0_h_t_a @ Init_hd @ Run_hd ) @ Ts @ T )
       => ( ( ( run_t_h_t_a @ Run_hd @ T )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ T2 @ X ) ) )
         => ( X
            = ( tau_a_t @ Sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ) ).

% VYDRA_MDL.ru_t_tau
thf(fact_83_mem__Collect__eq,axiom,
    ! [A2: a,P: a > $o] :
      ( ( member_a @ A2 @ ( collect_a @ P ) )
      = ( P @ A2 ) ) ).

% mem_Collect_eq
thf(fact_84_mem__Collect__eq,axiom,
    ! [A2: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
      ( ( member8440522571783428010at_nat @ A2 @ ( collec3392354462482085612at_nat @ P ) )
      = ( P @ A2 ) ) ).

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

% mem_Collect_eq
thf(fact_86_Collect__mem__eq,axiom,
    ! [A5: set_a] :
      ( ( collect_a
        @ ^ [X5: a] : ( member_a @ X5 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_87_Collect__mem__eq,axiom,
    ! [A5: set_Pr1261947904930325089at_nat] :
      ( ( collec3392354462482085612at_nat
        @ ^ [X5: product_prod_nat_nat] : ( member8440522571783428010at_nat @ X5 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_88_Collect__mem__eq,axiom,
    ! [A5: set_nat] :
      ( ( collect_nat
        @ ^ [X5: nat] : ( member_nat @ X5 @ A5 ) )
      = A5 ) ).

% Collect_mem_eq
thf(fact_89_MDL_Osat_Osimps_I3_J,axiom,
    ! [Sigma: trace_a_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( neg_a_t @ Phi ) @ I )
      = ( ~ ( sat_a_t @ Sigma @ Phi @ I ) ) ) ).

% MDL.sat.simps(3)
thf(fact_90_MDL_Osat_Osimps_I4_J,axiom,
    ! [Sigma: trace_a_t,F: $o > $o > $o,Phi: formula_a_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( bin_a_t @ F @ Phi @ Psi ) @ I )
      = ( F @ ( sat_a_t @ Sigma @ Phi @ I ) @ ( sat_a_t @ Sigma @ Psi @ I ) ) ) ).

% MDL.sat.simps(4)
thf(fact_91_MDL_Osat_Osimps_I1_J,axiom,
    ! [Sigma: trace_a_t,B: $o,I: nat] :
      ( ( sat_a_t @ Sigma @ ( bool_a_t @ B ) @ I )
      = B ) ).

% MDL.sat.simps(1)
thf(fact_92_ru__t__event,axiom,
    ! [T3: option2110264179601050681od_h_t,Ts: list_t,T: option2110264179601050681od_h_t,T2: option2110264179601050681od_h_t,X: t] :
      ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ T3 @ Ts @ T )
     => ( ( T3
          = ( t0_h_t_a @ init_hd @ run_hd ) )
       => ( ( ( run_t_h_t_a @ run_hd @ T )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ T2 @ X ) ) )
         => ? [Rho: list_P1095827921439705018_set_a,E: h,Tt: t] :
              ( ( T
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E @ Tt ) ) )
              & ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Rho @ E )
              & ( ( size_s5362121731612881446_set_a @ Rho )
                = ( suc @ ( size_size_list_t @ Ts ) ) )
              & ( X
                = ( tau_a_t @ sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ) ) ).

% ru_t_event
thf(fact_93_run__hd__sound,axiom,
    ! [N: nat,S: h,S2: h,T3: t,X6: set_a] :
      ( ( reache8480716032150177652_set_a @ run_hd @ init_hd @ N @ S )
     => ( ( ( run_hd @ S )
          = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S2 @ ( product_Pair_t_set_a @ T3 @ X6 ) ) ) )
       => ( ( product_Pair_t_set_a @ T3 @ X6 )
          = ( product_Pair_t_set_a @ ( tau_a_t @ sigma @ N ) @ ( gamma_a_t @ sigma @ N ) ) ) ) ) ).

% run_hd_sound
thf(fact_94_reaches__on__inj,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,T3: option2110264179601050681od_h_t,Vs2: list_t,T: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ T3 )
     => ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs2 @ T )
       => ( ( ( size_size_list_t @ Vs )
            = ( size_size_list_t @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T3 = T ) ) ) ) ) ).

% reaches_on_inj
thf(fact_95_reaches__on__inj,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,T3: h,Vs2: list_P1095827921439705018_set_a,T: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ T3 )
     => ( ( reache3397181163414509427_set_a @ Run @ S @ Vs2 @ T )
       => ( ( ( size_s5362121731612881446_set_a @ Vs )
            = ( size_s5362121731612881446_set_a @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T3 = T ) ) ) ) ) ).

% reaches_on_inj
thf(fact_96_run__t__read,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,X: option2110264179601050681od_h_t,X7: option2110264179601050681od_h_t,T3: t] :
      ( ( ( run_t_h_t_a @ Run_hd @ X )
        = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ X7 @ T3 ) ) )
     => ( ( read_t_h_t @ X )
        = ( some_t @ T3 ) ) ) ).

% run_t_read
thf(fact_97_read__t__run,axiom,
    ! [X: option2110264179601050681od_h_t,T3: t,Run_hd: h > option5775791656947114332_set_a] :
      ( ( ( read_t_h_t @ X )
        = ( some_t @ T3 ) )
     => ? [X8: option2110264179601050681od_h_t] :
          ( ( run_t_h_t_a @ Run_hd @ X )
          = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ X8 @ T3 ) ) ) ) ).

% read_t_run
thf(fact_98_VYDRA__MDL_Oru__t__event,axiom,
    ! [Sigma: trace_a_t,Init_hd: option2110264179601050681od_h_t,Run_hd: option2110264179601050681od_h_t > option7188603832408115496_set_a,T3: option4241632866121027589_h_t_t,Ts: list_t,T: option4241632866121027589_h_t_t,T2: option4241632866121027589_h_t_t,X: t] :
      ( ( vYDRA_3633401052503215442od_h_t @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache4450721910237653584_t_t_t @ ( run_t_6187369673847646894_t_t_a @ Run_hd ) @ T3 @ Ts @ T )
       => ( ( T3
            = ( t0_opt7280579062267883515_t_t_a @ Init_hd @ Run_hd ) )
         => ( ( ( run_t_6187369673847646894_t_t_a @ Run_hd @ T )
              = ( some_P4035567189591855192_t_t_t @ ( produc3127976490108324323_t_t_t @ T2 @ X ) ) )
           => ? [Rho: list_P1095827921439705018_set_a,E: option2110264179601050681od_h_t,Tt: t] :
                ( ( T
                  = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E @ Tt ) ) )
                & ( reache8330399945480511167_set_a @ Run_hd @ Init_hd @ Rho @ E )
                & ( ( size_s5362121731612881446_set_a @ Rho )
                  = ( suc @ ( size_size_list_t @ Ts ) ) )
                & ( X
                  = ( tau_a_t @ Sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ) ) ) ).

% VYDRA_MDL.ru_t_event
thf(fact_99_VYDRA__MDL_Oru__t__event,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,T3: option2110264179601050681od_h_t,Ts: list_t,T: option2110264179601050681od_h_t,T2: option2110264179601050681od_h_t,X: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ Run_hd ) @ T3 @ Ts @ T )
       => ( ( T3
            = ( t0_h_t_a @ Init_hd @ Run_hd ) )
         => ( ( ( run_t_h_t_a @ Run_hd @ T )
              = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ T2 @ X ) ) )
           => ? [Rho: list_P1095827921439705018_set_a,E: h,Tt: t] :
                ( ( T
                  = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E @ Tt ) ) )
                & ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Rho @ E )
                & ( ( size_s5362121731612881446_set_a @ Rho )
                  = ( suc @ ( size_size_list_t @ Ts ) ) )
                & ( X
                  = ( tau_a_t @ Sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ) ) ) ).

% VYDRA_MDL.ru_t_event
thf(fact_100_reaches__on__run__hd,axiom,
    ! [Es: list_P1095827921439705018_set_a,S: h,S2: h,T3: t,X6: set_a] :
      ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Es @ S )
     => ( ( ( run_hd @ S )
          = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S2 @ ( product_Pair_t_set_a @ T3 @ X6 ) ) ) )
       => ( ( T3
            = ( tau_a_t @ sigma @ ( size_s5362121731612881446_set_a @ Es ) ) )
          & ( X6
            = ( gamma_a_t @ sigma @ ( size_s5362121731612881446_set_a @ Es ) ) ) ) ) ) ).

% reaches_on_run_hd
thf(fact_101_read__t_Osimps_I2_J,axiom,
    ! [E2: nat,T3: nat] :
      ( ( read_t_nat_nat @ ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ E2 @ T3 ) ) )
      = ( some_nat @ T3 ) ) ).

% read_t.simps(2)
thf(fact_102_read__t_Osimps_I2_J,axiom,
    ! [E2: h,T3: t] :
      ( ( read_t_h_t @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E2 @ T3 ) ) )
      = ( some_t @ T3 ) ) ).

% read_t.simps(2)
thf(fact_103_read__t_Osimps_I2_J,axiom,
    ! [E2: option2110264179601050681od_h_t,T3: t] :
      ( ( read_t2092621867719112_h_t_t @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E2 @ T3 ) ) )
      = ( some_t @ T3 ) ) ).

% read_t.simps(2)
thf(fact_104_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_105_nat_Oinject,axiom,
    ! [X22: nat,Y22: nat] :
      ( ( ( suc @ X22 )
        = ( suc @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% nat.inject
thf(fact_106_n__not__Suc__n,axiom,
    ! [N: nat] :
      ( N
     != ( suc @ N ) ) ).

% n_not_Suc_n
thf(fact_107_Suc__inject,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( suc @ X )
        = ( suc @ Y ) )
     => ( X = Y ) ) ).

% Suc_inject
thf(fact_108_reaches_Ointros_I2_J,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,S2: t,V: set_a,N: nat,S3: t] :
      ( ( ( Run @ S )
        = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S2 @ V ) ) )
     => ( ( reaches_t_set_a @ Run @ S2 @ N @ S3 )
       => ( reaches_t_set_a @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_109_reaches_Ointros_I2_J,axiom,
    ! [Run: nat > option4927543243414619207at_nat,S: nat,S2: nat,V: nat,N: nat,S3: nat] :
      ( ( ( Run @ S )
        = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S2 @ V ) ) )
     => ( ( reaches_nat_nat @ Run @ S2 @ N @ S3 )
       => ( reaches_nat_nat @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_110_reaches_Ointros_I2_J,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,S2: h,V: t,N: nat,S3: h] :
      ( ( ( Run @ S )
        = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S2 @ V ) ) )
     => ( ( reaches_h_t @ Run @ S2 @ N @ S3 )
       => ( reaches_h_t @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_111_reaches_Ointros_I2_J,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,S2: option2110264179601050681od_h_t,V: t,N: nat,S3: option2110264179601050681od_h_t] :
      ( ( ( Run @ S )
        = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S2 @ V ) ) )
     => ( ( reache5944868495896439325_h_t_t @ Run @ S2 @ N @ S3 )
       => ( reache5944868495896439325_h_t_t @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_112_reaches_Ointros_I2_J,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,S2: h,V: product_prod_t_set_a,N: nat,S3: h] :
      ( ( ( Run @ S )
        = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S2 @ V ) ) )
     => ( ( reache8480716032150177652_set_a @ Run @ S2 @ N @ S3 )
       => ( reache8480716032150177652_set_a @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_113_reaches__Suc__split__last,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,N: nat,S2: t] :
      ( ( reaches_t_set_a @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S4: t,X4: set_a] :
          ( ( reaches_t_set_a @ Run @ S @ N @ S4 )
          & ( ( Run @ S4 )
            = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S2 @ X4 ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_114_reaches__Suc__split__last,axiom,
    ! [Run: nat > option4927543243414619207at_nat,S: nat,N: nat,S2: nat] :
      ( ( reaches_nat_nat @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S4: nat,X4: nat] :
          ( ( reaches_nat_nat @ Run @ S @ N @ S4 )
          & ( ( Run @ S4 )
            = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S2 @ X4 ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_115_reaches__Suc__split__last,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,N: nat,S2: h] :
      ( ( reaches_h_t @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S4: h,X4: t] :
          ( ( reaches_h_t @ Run @ S @ N @ S4 )
          & ( ( Run @ S4 )
            = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S2 @ X4 ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_116_reaches__Suc__split__last,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,N: nat,S2: option2110264179601050681od_h_t] :
      ( ( reache5944868495896439325_h_t_t @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S4: option2110264179601050681od_h_t,X4: t] :
          ( ( reache5944868495896439325_h_t_t @ Run @ S @ N @ S4 )
          & ( ( Run @ S4 )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S2 @ X4 ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_117_reaches__Suc__split__last,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,N: nat,S2: h] :
      ( ( reache8480716032150177652_set_a @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S4: h,X4: product_prod_t_set_a] :
          ( ( reache8480716032150177652_set_a @ Run @ S @ N @ S4 )
          & ( ( Run @ S4 )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S2 @ X4 ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_118_VYDRA__MDL_Oreaches__on__run__hd,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Es: list_P1095827921439705018_set_a,S: h,S2: h,T3: t,X6: set_a] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Es @ S )
       => ( ( ( Run_hd @ S )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S2 @ ( product_Pair_t_set_a @ T3 @ X6 ) ) ) )
         => ( ( T3
              = ( tau_a_t @ Sigma @ ( size_s5362121731612881446_set_a @ Es ) ) )
            & ( X6
              = ( gamma_a_t @ Sigma @ ( size_s5362121731612881446_set_a @ Es ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_run_hd
thf(fact_119_reaches__invar,axiom,
    ! [F: t > option4621139365931258234_set_a,X: t,N: nat,Y: t,P: t > $o] :
      ( ( reaches_t_set_a @ F @ X @ N @ Y )
     => ( ( P @ X )
       => ( ! [Z2: t,Z3: t,V2: set_a] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_120_reaches__invar,axiom,
    ! [F: nat > option4927543243414619207at_nat,X: nat,N: nat,Y: nat,P: nat > $o] :
      ( ( reaches_nat_nat @ F @ X @ N @ Y )
     => ( ( P @ X )
       => ( ! [Z2: nat,Z3: nat,V2: nat] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_121_reaches__invar,axiom,
    ! [F: h > option2110264179601050681od_h_t,X: h,N: nat,Y: h,P: h > $o] :
      ( ( reaches_h_t @ F @ X @ N @ Y )
     => ( ( P @ X )
       => ( ! [Z2: h,Z3: h,V2: t] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_122_reaches__invar,axiom,
    ! [F: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,X: option2110264179601050681od_h_t,N: nat,Y: option2110264179601050681od_h_t,P: option2110264179601050681od_h_t > $o] :
      ( ( reache5944868495896439325_h_t_t @ F @ X @ N @ Y )
     => ( ( P @ X )
       => ( ! [Z2: option2110264179601050681od_h_t,Z3: option2110264179601050681od_h_t,V2: t] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_123_reaches__invar,axiom,
    ! [F: h > option5775791656947114332_set_a,X: h,N: nat,Y: h,P: h > $o] :
      ( ( reache8480716032150177652_set_a @ F @ X @ N @ Y )
     => ( ( P @ X )
       => ( ! [Z2: h,Z3: h,V2: product_prod_t_set_a] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_124_VYDRA__MDL_Ointro,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,Init_hd: h,Sigma: trace_a_t] :
      ( ! [N2: nat,S5: h,S6: h,T4: t,X9: set_a] :
          ( ( reache8480716032150177652_set_a @ Run_hd @ Init_hd @ N2 @ S5 )
         => ( ( ( Run_hd @ S5 )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S6 @ ( product_Pair_t_set_a @ T4 @ X9 ) ) ) )
           => ( ( product_Pair_t_set_a @ T4 @ X9 )
              = ( product_Pair_t_set_a @ ( tau_a_t @ Sigma @ N2 ) @ ( gamma_a_t @ Sigma @ N2 ) ) ) ) )
     => ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd ) ) ).

% VYDRA_MDL.intro
thf(fact_125_VYDRA__MDL_Orun__hd__sound,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,N: nat,S: h,S2: h,T3: t,X6: set_a] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache8480716032150177652_set_a @ Run_hd @ Init_hd @ N @ S )
       => ( ( ( Run_hd @ S )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S2 @ ( product_Pair_t_set_a @ T3 @ X6 ) ) ) )
         => ( ( product_Pair_t_set_a @ T3 @ X6 )
            = ( product_Pair_t_set_a @ ( tau_a_t @ Sigma @ N ) @ ( gamma_a_t @ Sigma @ N ) ) ) ) ) ) ).

% VYDRA_MDL.run_hd_sound
thf(fact_126_VYDRA__MDL__def,axiom,
    ( vYDRA_MDL_a_t_h
    = ( ^ [Sigma2: trace_a_t,Init_hd2: h,Run_hd2: h > option5775791656947114332_set_a] :
        ! [N3: nat,S7: h,S8: h,T5: t,X2: set_a] :
          ( ( reache8480716032150177652_set_a @ Run_hd2 @ Init_hd2 @ N3 @ S7 )
         => ( ( ( Run_hd2 @ S7 )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S8 @ ( product_Pair_t_set_a @ T5 @ X2 ) ) ) )
           => ( ( product_Pair_t_set_a @ T5 @ X2 )
              = ( product_Pair_t_set_a @ ( tau_a_t @ Sigma2 @ N3 ) @ ( gamma_a_t @ Sigma2 @ N3 ) ) ) ) ) ) ) ).

% VYDRA_MDL_def
thf(fact_127_reaches__on,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,N: nat,S2: option2110264179601050681od_h_t] :
      ( ( reache5944868495896439325_h_t_t @ Run @ S @ N @ S2 )
     => ? [Vs3: list_t] :
          ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs3 @ S2 )
          & ( ( size_size_list_t @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_128_reaches__on,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,N: nat,S2: h] :
      ( ( reache8480716032150177652_set_a @ Run @ S @ N @ S2 )
     => ? [Vs3: list_P1095827921439705018_set_a] :
          ( ( reache3397181163414509427_set_a @ Run @ S @ Vs3 @ S2 )
          & ( ( size_s5362121731612881446_set_a @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_129_reaches__on__n,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,S2: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S2 )
     => ( reache5944868495896439325_h_t_t @ Run @ S @ ( size_size_list_t @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_130_reaches__on__n,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S2 )
     => ( reache8480716032150177652_set_a @ Run @ S @ ( size_s5362121731612881446_set_a @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_131_sat_Osimps_I2_J,axiom,
    ! [A2: a,I: nat] :
      ( ( sat_a_t @ sigma @ ( atom_a_t @ A2 ) @ I )
      = ( member_a @ A2 @ ( gamma_a_t @ sigma @ I ) ) ) ).

% sat.simps(2)
thf(fact_132_reach__event__t0__t,axiom,
    ! [Run_hd: option2110264179601050681od_h_t > option7188603832408115496_set_a,Init_hd: option2110264179601050681od_h_t,Vs: list_P1095827921439705018_set_a,E3: option2110264179601050681od_h_t,E4: option2110264179601050681od_h_t,T: t,X10: set_a] :
      ( ( reache8330399945480511167_set_a @ Run_hd @ Init_hd @ Vs @ E3 )
     => ( ( ( Run_hd @ E3 )
          = ( some_P6376182011896009927_set_a @ ( produc451741411942435538_set_a @ E4 @ ( product_Pair_t_set_a @ T @ X10 ) ) ) )
       => ( reache4450721910237653584_t_t_t @ ( run_t_6187369673847646894_t_t_a @ Run_hd ) @ ( t0_opt7280579062267883515_t_t_a @ Init_hd @ Run_hd ) @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E4 @ T ) ) ) ) ) ).

% reach_event_t0_t
thf(fact_133_reach__event__t0__t,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,Init_hd: h,Vs: list_P1095827921439705018_set_a,E3: h,E4: h,T: t,X10: set_a] :
      ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Vs @ E3 )
     => ( ( ( Run_hd @ E3 )
          = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ E4 @ ( product_Pair_t_set_a @ T @ X10 ) ) ) )
       => ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ Run_hd ) @ ( t0_h_t_a @ Init_hd @ Run_hd ) @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E4 @ T ) ) ) ) ) ).

% reach_event_t0_t
thf(fact_134_reaches_Ocases,axiom,
    ! [Run: t > option4621139365931258234_set_a,A1: t,A22: nat,A32: t] :
      ( ( reaches_t_set_a @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S6: t,V2: set_a,N2: nat] :
              ( ( A22
                = ( suc @ N2 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S6 @ V2 ) ) )
               => ~ ( reaches_t_set_a @ Run @ S6 @ N2 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_135_reaches_Ocases,axiom,
    ! [Run: nat > option4927543243414619207at_nat,A1: nat,A22: nat,A32: nat] :
      ( ( reaches_nat_nat @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S6: nat,V2: nat,N2: nat] :
              ( ( A22
                = ( suc @ N2 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S6 @ V2 ) ) )
               => ~ ( reaches_nat_nat @ Run @ S6 @ N2 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_136_reaches_Ocases,axiom,
    ! [Run: h > option2110264179601050681od_h_t,A1: h,A22: nat,A32: h] :
      ( ( reaches_h_t @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S6: h,V2: t,N2: nat] :
              ( ( A22
                = ( suc @ N2 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S6 @ V2 ) ) )
               => ~ ( reaches_h_t @ Run @ S6 @ N2 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_137_reaches_Ocases,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,A1: option2110264179601050681od_h_t,A22: nat,A32: option2110264179601050681od_h_t] :
      ( ( reache5944868495896439325_h_t_t @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S6: option2110264179601050681od_h_t,V2: t,N2: nat] :
              ( ( A22
                = ( suc @ N2 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S6 @ V2 ) ) )
               => ~ ( reache5944868495896439325_h_t_t @ Run @ S6 @ N2 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_138_reaches_Ocases,axiom,
    ! [Run: h > option5775791656947114332_set_a,A1: h,A22: nat,A32: h] :
      ( ( reache8480716032150177652_set_a @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S6: h,V2: product_prod_t_set_a,N2: nat] :
              ( ( A22
                = ( suc @ N2 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S6 @ V2 ) ) )
               => ~ ( reache8480716032150177652_set_a @ Run @ S6 @ N2 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_139_reaches_Osimps,axiom,
    ( reaches_t_set_a
    = ( ^ [Run2: t > option4621139365931258234_set_a,A12: t,A23: nat,A33: t] :
          ( ? [S7: t] :
              ( ( A12 = S7 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S7 ) )
          | ? [S7: t,S8: t,V3: set_a,N3: nat,S9: t] :
              ( ( A12 = S7 )
              & ( A23
                = ( suc @ N3 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S8 @ V3 ) ) )
              & ( reaches_t_set_a @ Run2 @ S8 @ N3 @ S9 ) ) ) ) ) ).

% reaches.simps
thf(fact_140_reaches_Osimps,axiom,
    ( reaches_nat_nat
    = ( ^ [Run2: nat > option4927543243414619207at_nat,A12: nat,A23: nat,A33: nat] :
          ( ? [S7: nat] :
              ( ( A12 = S7 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S7 ) )
          | ? [S7: nat,S8: nat,V3: nat,N3: nat,S9: nat] :
              ( ( A12 = S7 )
              & ( A23
                = ( suc @ N3 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S8 @ V3 ) ) )
              & ( reaches_nat_nat @ Run2 @ S8 @ N3 @ S9 ) ) ) ) ) ).

% reaches.simps
thf(fact_141_reaches_Osimps,axiom,
    ( reaches_h_t
    = ( ^ [Run2: h > option2110264179601050681od_h_t,A12: h,A23: nat,A33: h] :
          ( ? [S7: h] :
              ( ( A12 = S7 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S7 ) )
          | ? [S7: h,S8: h,V3: t,N3: nat,S9: h] :
              ( ( A12 = S7 )
              & ( A23
                = ( suc @ N3 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S8 @ V3 ) ) )
              & ( reaches_h_t @ Run2 @ S8 @ N3 @ S9 ) ) ) ) ) ).

% reaches.simps
thf(fact_142_reaches_Osimps,axiom,
    ( reache5944868495896439325_h_t_t
    = ( ^ [Run2: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,A12: option2110264179601050681od_h_t,A23: nat,A33: option2110264179601050681od_h_t] :
          ( ? [S7: option2110264179601050681od_h_t] :
              ( ( A12 = S7 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S7 ) )
          | ? [S7: option2110264179601050681od_h_t,S8: option2110264179601050681od_h_t,V3: t,N3: nat,S9: option2110264179601050681od_h_t] :
              ( ( A12 = S7 )
              & ( A23
                = ( suc @ N3 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S8 @ V3 ) ) )
              & ( reache5944868495896439325_h_t_t @ Run2 @ S8 @ N3 @ S9 ) ) ) ) ) ).

% reaches.simps
thf(fact_143_reaches_Osimps,axiom,
    ( reache8480716032150177652_set_a
    = ( ^ [Run2: h > option5775791656947114332_set_a,A12: h,A23: nat,A33: h] :
          ( ? [S7: h] :
              ( ( A12 = S7 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S7 ) )
          | ? [S7: h,S8: h,V3: product_prod_t_set_a,N3: nat,S9: h] :
              ( ( A12 = S7 )
              & ( A23
                = ( suc @ N3 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S8 @ V3 ) ) )
              & ( reache8480716032150177652_set_a @ Run2 @ S8 @ N3 @ S9 ) ) ) ) ) ).

% reaches.simps
thf(fact_144_reaches__onD,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,T3: t,B: set_a,Vs: list_P1095827921439705018_set_a,S2: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ T3 @ B ) @ Vs ) @ S2 )
     => ? [S4: h] :
          ( ( ( Run @ S )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S4 @ ( product_Pair_t_set_a @ T3 @ B ) ) ) )
          & ( reache3397181163414509427_set_a @ Run @ S4 @ Vs @ S2 ) ) ) ).

% reaches_onD
thf(fact_145_reach__event__t,axiom,
    ! [Run_hd: option2110264179601050681od_h_t > option7188603832408115496_set_a,E2: option2110264179601050681od_h_t,Vs: list_P1095827921439705018_set_a,E3: option2110264179601050681od_h_t,E5: option2110264179601050681od_h_t,T3: t,X6: set_a,E4: option2110264179601050681od_h_t,T: t,X10: set_a] :
      ( ( reache8330399945480511167_set_a @ Run_hd @ E2 @ Vs @ E3 )
     => ( ( ( Run_hd @ E2 )
          = ( some_P6376182011896009927_set_a @ ( produc451741411942435538_set_a @ E5 @ ( product_Pair_t_set_a @ T3 @ X6 ) ) ) )
       => ( ( ( Run_hd @ E3 )
            = ( some_P6376182011896009927_set_a @ ( produc451741411942435538_set_a @ E4 @ ( product_Pair_t_set_a @ T @ X10 ) ) ) )
         => ( reache4450721910237653584_t_t_t @ ( run_t_6187369673847646894_t_t_a @ Run_hd ) @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E5 @ T3 ) ) @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E4 @ T ) ) ) ) ) ) ).

% reach_event_t
thf(fact_146_reach__event__t,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,E2: h,Vs: list_P1095827921439705018_set_a,E3: h,E5: h,T3: t,X6: set_a,E4: h,T: t,X10: set_a] :
      ( ( reache3397181163414509427_set_a @ Run_hd @ E2 @ Vs @ E3 )
     => ( ( ( Run_hd @ E2 )
          = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ E5 @ ( product_Pair_t_set_a @ T3 @ X6 ) ) ) )
       => ( ( ( Run_hd @ E3 )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ E4 @ ( product_Pair_t_set_a @ T @ X10 ) ) ) )
         => ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ Run_hd ) @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E5 @ T3 ) ) @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E4 @ T ) ) ) ) ) ) ).

% reach_event_t
thf(fact_147_reaches__on_Ointros_I2_J,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,S2: t,V: set_a,Vs: list_set_a,S3: t] :
      ( ( ( Run @ S )
        = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S2 @ V ) ) )
     => ( ( reaches_on_t_set_a @ Run @ S2 @ Vs @ S3 )
       => ( reaches_on_t_set_a @ Run @ S @ ( cons_set_a @ V @ Vs ) @ S3 ) ) ) ).

% reaches_on.intros(2)
thf(fact_148_reaches__on_Ointros_I2_J,axiom,
    ! [Run: nat > option4927543243414619207at_nat,S: nat,S2: nat,V: nat,Vs: list_nat,S3: nat] :
      ( ( ( Run @ S )
        = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S2 @ V ) ) )
     => ( ( reaches_on_nat_nat @ Run @ S2 @ Vs @ S3 )
       => ( reaches_on_nat_nat @ Run @ S @ ( cons_nat @ V @ Vs ) @ S3 ) ) ) ).

% reaches_on.intros(2)
thf(fact_149_reaches__on_Ointros_I2_J,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,S2: h,V: t,Vs: list_t,S3: h] :
      ( ( ( Run @ S )
        = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S2 @ V ) ) )
     => ( ( reaches_on_h_t @ Run @ S2 @ Vs @ S3 )
       => ( reaches_on_h_t @ Run @ S @ ( cons_t @ V @ Vs ) @ S3 ) ) ) ).

% reaches_on.intros(2)
thf(fact_150_reaches__on_Ointros_I2_J,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,S2: option2110264179601050681od_h_t,V: t,Vs: list_t,S3: option2110264179601050681od_h_t] :
      ( ( ( Run @ S )
        = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S2 @ V ) ) )
     => ( ( reache645946503560514460_h_t_t @ Run @ S2 @ Vs @ S3 )
       => ( reache645946503560514460_h_t_t @ Run @ S @ ( cons_t @ V @ Vs ) @ S3 ) ) ) ).

% reaches_on.intros(2)
thf(fact_151_reaches__on_Ointros_I2_J,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,S2: h,V: product_prod_t_set_a,Vs: list_P1095827921439705018_set_a,S3: h] :
      ( ( ( Run @ S )
        = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S2 @ V ) ) )
     => ( ( reache3397181163414509427_set_a @ Run @ S2 @ Vs @ S3 )
       => ( reache3397181163414509427_set_a @ Run @ S @ ( cons_P6565363215658504938_set_a @ V @ Vs ) @ S3 ) ) ) ).

% reaches_on.intros(2)
thf(fact_152_reaches__on__ConsD,axiom,
    ! [Run: t > option4621139365931258234_set_a,Q: t,X: set_a,Xs2: list_set_a,Q2: t] :
      ( ( reaches_on_t_set_a @ Run @ Q @ ( cons_set_a @ X @ Xs2 ) @ Q2 )
     => ? [Q3: t] :
          ( ( ( Run @ Q )
            = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ Q3 @ X ) ) )
          & ( reaches_on_t_set_a @ Run @ Q3 @ Xs2 @ Q2 ) ) ) ).

% reaches_on_ConsD
thf(fact_153_reaches__on__ConsD,axiom,
    ! [Run: nat > option4927543243414619207at_nat,Q: nat,X: nat,Xs2: list_nat,Q2: nat] :
      ( ( reaches_on_nat_nat @ Run @ Q @ ( cons_nat @ X @ Xs2 ) @ Q2 )
     => ? [Q3: nat] :
          ( ( ( Run @ Q )
            = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ Q3 @ X ) ) )
          & ( reaches_on_nat_nat @ Run @ Q3 @ Xs2 @ Q2 ) ) ) ).

% reaches_on_ConsD
thf(fact_154_reaches__on__ConsD,axiom,
    ! [Run: h > option2110264179601050681od_h_t,Q: h,X: t,Xs2: list_t,Q2: h] :
      ( ( reaches_on_h_t @ Run @ Q @ ( cons_t @ X @ Xs2 ) @ Q2 )
     => ? [Q3: h] :
          ( ( ( Run @ Q )
            = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ Q3 @ X ) ) )
          & ( reaches_on_h_t @ Run @ Q3 @ Xs2 @ Q2 ) ) ) ).

% reaches_on_ConsD
thf(fact_155_reaches__on__ConsD,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,Q: option2110264179601050681od_h_t,X: t,Xs2: list_t,Q2: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ Q @ ( cons_t @ X @ Xs2 ) @ Q2 )
     => ? [Q3: option2110264179601050681od_h_t] :
          ( ( ( Run @ Q )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ Q3 @ X ) ) )
          & ( reache645946503560514460_h_t_t @ Run @ Q3 @ Xs2 @ Q2 ) ) ) ).

% reaches_on_ConsD
thf(fact_156_reaches__on__ConsD,axiom,
    ! [Run: h > option5775791656947114332_set_a,Q: h,X: product_prod_t_set_a,Xs2: list_P1095827921439705018_set_a,Q2: h] :
      ( ( reache3397181163414509427_set_a @ Run @ Q @ ( cons_P6565363215658504938_set_a @ X @ Xs2 ) @ Q2 )
     => ? [Q3: h] :
          ( ( ( Run @ Q )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ Q3 @ X ) ) )
          & ( reache3397181163414509427_set_a @ Run @ Q3 @ Xs2 @ Q2 ) ) ) ).

% reaches_on_ConsD
thf(fact_157_plus__prod_Ocases,axiom,
    ! [X: produc859450856879609959at_nat] :
      ~ ! [A4: nat,B3: nat,C: nat,D: nat] :
          ( X
         != ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B3 ) @ ( product_Pair_nat_nat @ C @ D ) ) ) ).

% plus_prod.cases
thf(fact_158_formula_Oinject_I2_J,axiom,
    ! [X22: a,Y22: a] :
      ( ( ( atom_a_t @ X22 )
        = ( atom_a_t @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% formula.inject(2)
thf(fact_159_length__map,axiom,
    ! [F: t > t,Xs2: list_t] :
      ( ( size_size_list_t @ ( map_t_t @ F @ Xs2 ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_map
thf(fact_160_length__map,axiom,
    ! [F: product_prod_nat_t > t,Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_size_list_t @ ( map_Pr800344189181476629at_t_t @ F @ Xs2 ) )
      = ( size_s1593550824562968538_nat_t @ Xs2 ) ) ).

% length_map
thf(fact_161_length__map,axiom,
    ! [F: t > product_prod_nat_t,Xs2: list_t] :
      ( ( size_s1593550824562968538_nat_t @ ( map_t_4914423018617898755_nat_t @ F @ Xs2 ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_map
thf(fact_162_length__map,axiom,
    ! [F: product_prod_t_set_a > t,Xs2: list_P1095827921439705018_set_a] :
      ( ( size_size_list_t @ ( map_Pr119846518281778721et_a_t @ F @ Xs2 ) )
      = ( size_s5362121731612881446_set_a @ Xs2 ) ) ).

% length_map
thf(fact_163_length__map,axiom,
    ! [F: t > product_prod_t_set_a,Xs2: list_t] :
      ( ( size_s5362121731612881446_set_a @ ( map_t_7579227405386970535_set_a @ F @ Xs2 ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_map
thf(fact_164_length__map,axiom,
    ! [F: product_prod_nat_t > product_prod_nat_t,Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( map_Pr7725294012737935666_nat_t @ F @ Xs2 ) )
      = ( size_s1593550824562968538_nat_t @ Xs2 ) ) ).

% length_map
thf(fact_165_length__map,axiom,
    ! [F: produc3416767791517006041_set_a > t,Xs2: list_P6739568432217944425_set_a] :
      ( ( size_size_list_t @ ( map_Pr2296930535221706802et_a_t @ F @ Xs2 ) )
      = ( size_s6950157911653109757_set_a @ Xs2 ) ) ).

% length_map
thf(fact_166_length__map,axiom,
    ! [F: product_prod_nat_t > product_prod_t_set_a,Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_s5362121731612881446_set_a @ ( map_Pr4372437991695306040_set_a @ F @ Xs2 ) )
      = ( size_s1593550824562968538_nat_t @ Xs2 ) ) ).

% length_map
thf(fact_167_length__map,axiom,
    ! [F: t > produc3416767791517006041_set_a,Xs2: list_t] :
      ( ( size_s6950157911653109757_set_a @ ( map_t_702850366842924198_set_a @ F @ Xs2 ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_map
thf(fact_168_length__map,axiom,
    ! [F: product_prod_t_set_a > product_prod_nat_t,Xs2: list_P1095827921439705018_set_a] :
      ( ( size_s1593550824562968538_nat_t @ ( map_Pr3157149491392799526_nat_t @ F @ Xs2 ) )
      = ( size_s5362121731612881446_set_a @ Xs2 ) ) ).

% length_map
thf(fact_169_length__rotate,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( size_size_list_t @ ( rotate_t @ N @ Xs2 ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_rotate
thf(fact_170_length__rotate,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( rotate4948212982839034734_set_a @ N @ Xs2 ) )
      = ( size_s5362121731612881446_set_a @ Xs2 ) ) ).

% length_rotate
thf(fact_171_length__rotate,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( rotate3591195261073959455_set_a @ N @ Xs2 ) )
      = ( size_s6950157911653109757_set_a @ Xs2 ) ) ).

% length_rotate
thf(fact_172_length__rotate,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( rotate7455341356463262076_nat_t @ N @ Xs2 ) )
      = ( size_s1593550824562968538_nat_t @ Xs2 ) ) ).

% length_rotate
thf(fact_173_enumerate__simps_I2_J,axiom,
    ! [N: nat,X: product_prod_t_set_a,Xs2: list_P1095827921439705018_set_a] :
      ( ( enumer4564034045956179481_set_a @ N @ ( cons_P6565363215658504938_set_a @ X @ Xs2 ) )
      = ( cons_P4636835598303252387_set_a @ ( produc1331735522928163851_set_a @ N @ X ) @ ( enumer4564034045956179481_set_a @ ( suc @ N ) @ Xs2 ) ) ) ).

% enumerate_simps(2)
thf(fact_174_enumerate__simps_I2_J,axiom,
    ! [N: nat,X: t,Xs2: list_t] :
      ( ( enumerate_t @ N @ ( cons_t @ X @ Xs2 ) )
      = ( cons_P8443330349171532544_nat_t @ ( product_Pair_nat_t @ N @ X ) @ ( enumerate_t @ ( suc @ N ) @ Xs2 ) ) ) ).

% enumerate_simps(2)
thf(fact_175_enumerate__simps_I2_J,axiom,
    ! [N: nat,X: nat,Xs2: list_nat] :
      ( ( enumerate_nat @ N @ ( cons_nat @ X @ Xs2 ) )
      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ N @ X ) @ ( enumerate_nat @ ( suc @ N ) @ Xs2 ) ) ) ).

% enumerate_simps(2)
thf(fact_176_zero__prod__def,axiom,
    ( zero_z3979849011205770936at_nat
    = ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) ) ).

% zero_prod_def
thf(fact_177_zero__option__def,axiom,
    ( zero_zero_option_nat
    = ( some_nat @ zero_zero_nat ) ) ).

% zero_option_def
thf(fact_178_formula_Osize_I12_J,axiom,
    ! [X12: a] :
      ( ( size_s4016968051272393527la_a_t @ ( atom_a_t @ X12 ) )
      = ( suc @ zero_zero_nat ) ) ).

% formula.size(12)
thf(fact_179_fst__conv,axiom,
    ! [X1: h,X22: t] :
      ( ( product_fst_h_t @ ( product_Pair_h_t @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_180_fst__conv,axiom,
    ! [X1: option2110264179601050681od_h_t,X22: t] :
      ( ( produc4004510029700249243_h_t_t @ ( produc770200333395398319_h_t_t @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_181_fst__conv,axiom,
    ! [X1: h,X22: product_prod_t_set_a] :
      ( ( produc6892702156181598450_set_a @ ( produc3432067189782488838_set_a @ X1 @ X22 ) )
      = X1 ) ).

% fst_conv
thf(fact_182_fst__conv,axiom,
    ! [X1: t,X22: set_a] :
      ( ( product_fst_t_set_a @ ( product_Pair_t_set_a @ X1 @ X22 ) )
      = X1 ) ).

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

% fst_conv
thf(fact_184_fst__eqD,axiom,
    ! [X: h,Y: t,A2: h] :
      ( ( ( product_fst_h_t @ ( product_Pair_h_t @ X @ Y ) )
        = A2 )
     => ( X = A2 ) ) ).

% fst_eqD
thf(fact_185_fst__eqD,axiom,
    ! [X: option2110264179601050681od_h_t,Y: t,A2: option2110264179601050681od_h_t] :
      ( ( ( produc4004510029700249243_h_t_t @ ( produc770200333395398319_h_t_t @ X @ Y ) )
        = A2 )
     => ( X = A2 ) ) ).

% fst_eqD
thf(fact_186_fst__eqD,axiom,
    ! [X: h,Y: product_prod_t_set_a,A2: h] :
      ( ( ( produc6892702156181598450_set_a @ ( produc3432067189782488838_set_a @ X @ Y ) )
        = A2 )
     => ( X = A2 ) ) ).

% fst_eqD
thf(fact_187_fst__eqD,axiom,
    ! [X: t,Y: set_a,A2: t] :
      ( ( ( product_fst_t_set_a @ ( product_Pair_t_set_a @ X @ Y ) )
        = A2 )
     => ( X = A2 ) ) ).

% fst_eqD
thf(fact_188_fst__eqD,axiom,
    ! [X: nat,Y: nat,A2: nat] :
      ( ( ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X @ Y ) )
        = A2 )
     => ( X = A2 ) ) ).

% fst_eqD
thf(fact_189_formula_Odistinct_I19_J,axiom,
    ! [X22: a,X3: formula_a_t] :
      ( ( atom_a_t @ X22 )
     != ( neg_a_t @ X3 ) ) ).

% formula.distinct(19)
thf(fact_190_formula_Odistinct_I21_J,axiom,
    ! [X22: a,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ( ( atom_a_t @ X22 )
     != ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.distinct(21)
thf(fact_191_formula_Odistinct_I1_J,axiom,
    ! [X1: $o,X22: a] :
      ( ( bool_a_t @ X1 )
     != ( atom_a_t @ X22 ) ) ).

% formula.distinct(1)
thf(fact_192_nat_Odistinct_I1_J,axiom,
    ! [X22: nat] :
      ( zero_zero_nat
     != ( suc @ X22 ) ) ).

% nat.distinct(1)
thf(fact_193_old_Onat_Odistinct_I2_J,axiom,
    ! [Nat2: nat] :
      ( ( suc @ Nat2 )
     != zero_zero_nat ) ).

% old.nat.distinct(2)
thf(fact_194_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

% old.nat.distinct(1)
thf(fact_195_nat_OdiscI,axiom,
    ! [Nat: nat,X22: nat] :
      ( ( Nat
        = ( suc @ X22 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_196_old_Onat_Oexhaust,axiom,
    ! [Y: nat] :
      ( ( Y != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y
           != ( suc @ Nat3 ) ) ) ).

% old.nat.exhaust
thf(fact_197_nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( P @ N2 )
           => ( P @ ( suc @ N2 ) ) )
       => ( P @ N ) ) ) ).

% nat_induct
thf(fact_198_diff__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [X4: nat] : ( P @ X4 @ zero_zero_nat )
     => ( ! [Y4: nat] : ( P @ zero_zero_nat @ ( suc @ Y4 ) )
       => ( ! [X4: nat,Y4: nat] :
              ( ( P @ X4 @ Y4 )
             => ( P @ ( suc @ X4 ) @ ( suc @ Y4 ) ) )
         => ( P @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_199_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_200_Suc__neq__Zero,axiom,
    ! [M: nat] :
      ( ( suc @ M )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_201_Zero__neq__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_neq_Suc
thf(fact_202_Zero__not__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_not_Suc
thf(fact_203_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M2: nat] :
          ( N
          = ( suc @ M2 ) ) ) ).

% not0_implies_Suc
thf(fact_204_reaches_Ointros_I1_J,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h] : ( reache8480716032150177652_set_a @ Run @ S @ zero_zero_nat @ S ) ).

% reaches.intros(1)
thf(fact_205_length__Suc__conv,axiom,
    ! [Xs2: list_t,N: nat] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: t,Ys2: list_t] :
            ( ( Xs2
              = ( cons_t @ Y5 @ Ys2 ) )
            & ( ( size_size_list_t @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_206_length__Suc__conv,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,N: nat] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: product_prod_t_set_a,Ys2: list_P1095827921439705018_set_a] :
            ( ( Xs2
              = ( cons_P6565363215658504938_set_a @ Y5 @ Ys2 ) )
            & ( ( size_s5362121731612881446_set_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_207_length__Suc__conv,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,N: nat] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: produc3416767791517006041_set_a,Ys2: list_P6739568432217944425_set_a] :
            ( ( Xs2
              = ( cons_P4636835598303252387_set_a @ Y5 @ Ys2 ) )
            & ( ( size_s6950157911653109757_set_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_208_length__Suc__conv,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,N: nat] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: product_prod_nat_t,Ys2: list_P4201438511612060998_nat_t] :
            ( ( Xs2
              = ( cons_P8443330349171532544_nat_t @ Y5 @ Ys2 ) )
            & ( ( size_s1593550824562968538_nat_t @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv
thf(fact_209_Suc__length__conv,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( ( suc @ N )
        = ( size_size_list_t @ Xs2 ) )
      = ( ? [Y5: t,Ys2: list_t] :
            ( ( Xs2
              = ( cons_t @ Y5 @ Ys2 ) )
            & ( ( size_size_list_t @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_210_Suc__length__conv,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ( suc @ N )
        = ( size_s5362121731612881446_set_a @ Xs2 ) )
      = ( ? [Y5: product_prod_t_set_a,Ys2: list_P1095827921439705018_set_a] :
            ( ( Xs2
              = ( cons_P6565363215658504938_set_a @ Y5 @ Ys2 ) )
            & ( ( size_s5362121731612881446_set_a @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_211_Suc__length__conv,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ( suc @ N )
        = ( size_s6950157911653109757_set_a @ Xs2 ) )
      = ( ? [Y5: produc3416767791517006041_set_a,Ys2: list_P6739568432217944425_set_a] :
            ( ( Xs2
              = ( cons_P4636835598303252387_set_a @ Y5 @ Ys2 ) )
            & ( ( size_s6950157911653109757_set_a @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_212_Suc__length__conv,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ( suc @ N )
        = ( size_s1593550824562968538_nat_t @ Xs2 ) )
      = ( ? [Y5: product_prod_nat_t,Ys2: list_P4201438511612060998_nat_t] :
            ( ( Xs2
              = ( cons_P8443330349171532544_nat_t @ Y5 @ Ys2 ) )
            & ( ( size_s1593550824562968538_nat_t @ Ys2 )
              = N ) ) ) ) ).

% Suc_length_conv
thf(fact_213_MDL_Osat_Osimps_I2_J,axiom,
    ! [Sigma: trace_a_t,A2: a,I: nat] :
      ( ( sat_a_t @ Sigma @ ( atom_a_t @ A2 ) @ I )
      = ( member_a @ A2 @ ( gamma_a_t @ Sigma @ I ) ) ) ).

% MDL.sat.simps(2)
thf(fact_214_option_Osize_I4_J,axiom,
    ! [X22: product_prod_h_t] :
      ( ( size_s6536553198265154213od_h_t @ ( some_P2526622376857543512od_h_t @ X22 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_215_option_Osize_I4_J,axiom,
    ! [X22: produc2796182059459404991_h_t_t] :
      ( ( size_s2345760128710500465_h_t_t @ ( some_P8406129549712030756_h_t_t @ X22 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_216_option_Osize_I4_J,axiom,
    ! [X22: produc8090089739038349590_set_a] :
      ( ( size_s5864537446109811656_set_a @ ( some_P2245991037696317435_set_a @ X22 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_217_formula_Osize_I11_J,axiom,
    ! [X11: $o] :
      ( ( size_s4016968051272393527la_a_t @ ( bool_a_t @ X11 ) )
      = ( suc @ zero_zero_nat ) ) ).

% formula.size(11)
thf(fact_218_reaches__on__run__hd__t,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,Init_hd: h,Vs: list_P1095827921439705018_set_a,E2: h] :
      ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Vs @ E2 )
     => ? [X_1: option2110264179601050681od_h_t] : ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ Run_hd ) @ ( t0_h_t_a @ Init_hd @ Run_hd ) @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ X_1 ) ) ).

% reaches_on_run_hd_t
thf(fact_219_length__Cons,axiom,
    ! [X: t,Xs2: list_t] :
      ( ( size_size_list_t @ ( cons_t @ X @ Xs2 ) )
      = ( suc @ ( size_size_list_t @ Xs2 ) ) ) ).

% length_Cons
thf(fact_220_length__Cons,axiom,
    ! [X: product_prod_t_set_a,Xs2: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( cons_P6565363215658504938_set_a @ X @ Xs2 ) )
      = ( suc @ ( size_s5362121731612881446_set_a @ Xs2 ) ) ) ).

% length_Cons
thf(fact_221_length__Cons,axiom,
    ! [X: produc3416767791517006041_set_a,Xs2: list_P6739568432217944425_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( cons_P4636835598303252387_set_a @ X @ Xs2 ) )
      = ( suc @ ( size_s6950157911653109757_set_a @ Xs2 ) ) ) ).

% length_Cons
thf(fact_222_length__Cons,axiom,
    ! [X: product_prod_nat_t,Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( cons_P8443330349171532544_nat_t @ X @ Xs2 ) )
      = ( suc @ ( size_s1593550824562968538_nat_t @ Xs2 ) ) ) ).

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

% size_char_eq_0
thf(fact_224_eq__fst__iff,axiom,
    ! [A2: h,P2: product_prod_h_t] :
      ( ( A2
        = ( product_fst_h_t @ P2 ) )
      = ( ? [B4: t] :
            ( P2
            = ( product_Pair_h_t @ A2 @ B4 ) ) ) ) ).

% eq_fst_iff
thf(fact_225_eq__fst__iff,axiom,
    ! [A2: option2110264179601050681od_h_t,P2: produc2796182059459404991_h_t_t] :
      ( ( A2
        = ( produc4004510029700249243_h_t_t @ P2 ) )
      = ( ? [B4: t] :
            ( P2
            = ( produc770200333395398319_h_t_t @ A2 @ B4 ) ) ) ) ).

% eq_fst_iff
thf(fact_226_eq__fst__iff,axiom,
    ! [A2: h,P2: produc8090089739038349590_set_a] :
      ( ( A2
        = ( produc6892702156181598450_set_a @ P2 ) )
      = ( ? [B4: product_prod_t_set_a] :
            ( P2
            = ( produc3432067189782488838_set_a @ A2 @ B4 ) ) ) ) ).

% eq_fst_iff
thf(fact_227_eq__fst__iff,axiom,
    ! [A2: t,P2: product_prod_t_set_a] :
      ( ( A2
        = ( product_fst_t_set_a @ P2 ) )
      = ( ? [B4: set_a] :
            ( P2
            = ( product_Pair_t_set_a @ A2 @ B4 ) ) ) ) ).

% eq_fst_iff
thf(fact_228_eq__fst__iff,axiom,
    ! [A2: nat,P2: product_prod_nat_nat] :
      ( ( A2
        = ( product_fst_nat_nat @ P2 ) )
      = ( ? [B4: nat] :
            ( P2
            = ( product_Pair_nat_nat @ A2 @ B4 ) ) ) ) ).

% eq_fst_iff
thf(fact_229_fstI,axiom,
    ! [X: product_prod_h_t,Y: h,Z4: t] :
      ( ( X
        = ( product_Pair_h_t @ Y @ Z4 ) )
     => ( ( product_fst_h_t @ X )
        = Y ) ) ).

% fstI
thf(fact_230_fstI,axiom,
    ! [X: produc2796182059459404991_h_t_t,Y: option2110264179601050681od_h_t,Z4: t] :
      ( ( X
        = ( produc770200333395398319_h_t_t @ Y @ Z4 ) )
     => ( ( produc4004510029700249243_h_t_t @ X )
        = Y ) ) ).

% fstI
thf(fact_231_fstI,axiom,
    ! [X: produc8090089739038349590_set_a,Y: h,Z4: product_prod_t_set_a] :
      ( ( X
        = ( produc3432067189782488838_set_a @ Y @ Z4 ) )
     => ( ( produc6892702156181598450_set_a @ X )
        = Y ) ) ).

% fstI
thf(fact_232_fstI,axiom,
    ! [X: product_prod_t_set_a,Y: t,Z4: set_a] :
      ( ( X
        = ( product_Pair_t_set_a @ Y @ Z4 ) )
     => ( ( product_fst_t_set_a @ X )
        = Y ) ) ).

% fstI
thf(fact_233_fstI,axiom,
    ! [X: product_prod_nat_nat,Y: nat,Z4: nat] :
      ( ( X
        = ( product_Pair_nat_nat @ Y @ Z4 ) )
     => ( ( product_fst_nat_nat @ X )
        = Y ) ) ).

% fstI
thf(fact_234_exists__least__lemma,axiom,
    ! [P: nat > $o] :
      ( ~ ( P @ zero_zero_nat )
     => ( ? [X_12: nat] : ( P @ X_12 )
       => ? [N2: nat] :
            ( ~ ( P @ N2 )
            & ( P @ ( suc @ N2 ) ) ) ) ) ).

% exists_least_lemma
thf(fact_235_list__decode_Ocases,axiom,
    ! [X: nat] :
      ( ( X != zero_zero_nat )
     => ~ ! [N2: nat] :
            ( X
           != ( suc @ N2 ) ) ) ).

% list_decode.cases
thf(fact_236_zero__reorient,axiom,
    ! [X: nat] :
      ( ( zero_zero_nat = X )
      = ( X = zero_zero_nat ) ) ).

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

% size'_char_eq_0
thf(fact_238_Cons__in__lex,axiom,
    ! [X: nat,Xs2: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y @ Ys ) ) @ ( lex_nat @ R ) )
      = ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
          & ( ( size_size_list_nat @ Xs2 )
            = ( size_size_list_nat @ Ys ) ) )
        | ( ( X = Y )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( lex_nat @ R ) ) ) ) ) ).

% Cons_in_lex
thf(fact_239_Cons__in__lex,axiom,
    ! [X: t,Xs2: list_t,Y: t,Ys: list_t,R: set_Product_prod_t_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ ( cons_t @ X @ Xs2 ) @ ( cons_t @ Y @ Ys ) ) @ ( lex_t @ R ) )
      = ( ( ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ X @ Y ) @ R )
          & ( ( size_size_list_t @ Xs2 )
            = ( size_size_list_t @ Ys ) ) )
        | ( ( X = Y )
          & ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Xs2 @ Ys ) @ ( lex_t @ R ) ) ) ) ) ).

% Cons_in_lex
thf(fact_240_Cons__in__lex,axiom,
    ! [X: product_prod_t_set_a,Xs2: list_P1095827921439705018_set_a,Y: product_prod_t_set_a,Ys: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ ( cons_P6565363215658504938_set_a @ X @ Xs2 ) @ ( cons_P6565363215658504938_set_a @ Y @ Ys ) ) @ ( lex_Pr3546421067709956510_set_a @ R ) )
      = ( ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ X @ Y ) @ R )
          & ( ( size_s5362121731612881446_set_a @ Xs2 )
            = ( size_s5362121731612881446_set_a @ Ys ) ) )
        | ( ( X = Y )
          & ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Xs2 @ Ys ) @ ( lex_Pr3546421067709956510_set_a @ R ) ) ) ) ) ).

% Cons_in_lex
thf(fact_241_Cons__in__lex,axiom,
    ! [X: produc3416767791517006041_set_a,Xs2: list_P6739568432217944425_set_a,Y: produc3416767791517006041_set_a,Ys: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ ( cons_P4636835598303252387_set_a @ X @ Xs2 ) @ ( cons_P4636835598303252387_set_a @ Y @ Ys ) ) @ ( lex_Pr6838511504502894575_set_a @ R ) )
      = ( ( ( member8640275492606135612_set_a @ ( produc5532101387244520523_set_a @ X @ Y ) @ R )
          & ( ( size_s6950157911653109757_set_a @ Xs2 )
            = ( size_s6950157911653109757_set_a @ Ys ) ) )
        | ( ( X = Y )
          & ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Xs2 @ Ys ) @ ( lex_Pr6838511504502894575_set_a @ R ) ) ) ) ) ).

% Cons_in_lex
thf(fact_242_Cons__in__lex,axiom,
    ! [X: product_prod_nat_t,Xs2: list_P4201438511612060998_nat_t,Y: product_prod_nat_t,Ys: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ ( cons_P8443330349171532544_nat_t @ X @ Xs2 ) @ ( cons_P8443330349171532544_nat_t @ Y @ Ys ) ) @ ( lex_Pr4364183600902119244_nat_t @ R ) )
      = ( ( ( member7182942125143788150_nat_t @ ( produc2776648103937650693_nat_t @ X @ Y ) @ R )
          & ( ( size_s1593550824562968538_nat_t @ Xs2 )
            = ( size_s1593550824562968538_nat_t @ Ys ) ) )
        | ( ( X = Y )
          & ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Xs2 @ Ys ) @ ( lex_Pr4364183600902119244_nat_t @ R ) ) ) ) ) ).

% Cons_in_lex
thf(fact_243_length__code,axiom,
    ( size_size_list_t
    = ( gen_length_t @ zero_zero_nat ) ) ).

% length_code
thf(fact_244_length__code,axiom,
    ( size_s5362121731612881446_set_a
    = ( gen_le3153664615746278471_set_a @ zero_zero_nat ) ) ).

% length_code
thf(fact_245_length__code,axiom,
    ( size_s6950157911653109757_set_a
    = ( gen_le7785176509601842694_set_a @ zero_zero_nat ) ) ).

% length_code
thf(fact_246_length__code,axiom,
    ( size_s1593550824562968538_nat_t
    = ( gen_le771686426693238883_nat_t @ zero_zero_nat ) ) ).

% length_code
thf(fact_247_formula_Osize_I14_J,axiom,
    ! [X141: $o > $o > $o,X142: formula_a_t,X143: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( bin_a_t @ X141 @ X142 @ X143 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X142 ) @ ( size_s4016968051272393527la_a_t @ X143 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(14)
thf(fact_248_add__left__cancel,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ A2 @ C3 ) )
      = ( B = C3 ) ) ).

% add_left_cancel
thf(fact_249_add__right__cancel,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ( plus_plus_nat @ B @ A2 )
        = ( plus_plus_nat @ C3 @ A2 ) )
      = ( B = C3 ) ) ).

% add_right_cancel
thf(fact_250_map__snd__enumerate,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( map_Pr4616634467373167957_set_a @ produc3342598052951375197_set_a @ ( enumer4564034045956179481_set_a @ N @ Xs2 ) )
      = Xs2 ) ).

% map_snd_enumerate
thf(fact_251_map__snd__enumerate,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( map_Pr800344189181476629at_t_t @ product_snd_nat_t @ ( enumerate_t @ N @ Xs2 ) )
      = Xs2 ) ).

% map_snd_enumerate
thf(fact_252_add__0,axiom,
    ! [A2: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A2 )
      = A2 ) ).

% add_0
thf(fact_253_zero__eq__add__iff__both__eq__0,axiom,
    ! [X: nat,Y: nat] :
      ( ( zero_zero_nat
        = ( plus_plus_nat @ X @ Y ) )
      = ( ( X = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% zero_eq_add_iff_both_eq_0
thf(fact_254_add__eq__0__iff__both__eq__0,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( plus_plus_nat @ X @ Y )
        = zero_zero_nat )
      = ( ( X = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% add_eq_0_iff_both_eq_0
thf(fact_255_add__cancel__right__right,axiom,
    ! [A2: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ A2 @ B ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_right
thf(fact_256_add__cancel__right__left,axiom,
    ! [A2: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ B @ A2 ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_left
thf(fact_257_add__cancel__left__right,axiom,
    ! [A2: nat,B: nat] :
      ( ( ( plus_plus_nat @ A2 @ B )
        = A2 )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_right
thf(fact_258_add__cancel__left__left,axiom,
    ! [B: nat,A2: nat] :
      ( ( ( plus_plus_nat @ B @ A2 )
        = A2 )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_left
thf(fact_259_add_Oright__neutral,axiom,
    ! [A2: nat] :
      ( ( plus_plus_nat @ A2 @ zero_zero_nat )
      = A2 ) ).

% add.right_neutral
thf(fact_260_add__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_261_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_262_add__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ M @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc_right
thf(fact_263_prod_Ocollapse,axiom,
    ! [Prod: product_prod_h_t] :
      ( ( product_Pair_h_t @ ( product_fst_h_t @ Prod ) @ ( product_snd_h_t @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_264_prod_Ocollapse,axiom,
    ! [Prod: produc2796182059459404991_h_t_t] :
      ( ( produc770200333395398319_h_t_t @ ( produc4004510029700249243_h_t_t @ Prod ) @ ( produc4382304763178309853_h_t_t @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_265_prod_Ocollapse,axiom,
    ! [Prod: produc8090089739038349590_set_a] :
      ( ( produc3432067189782488838_set_a @ ( produc6892702156181598450_set_a @ Prod ) @ ( produc5260167487839082036_set_a @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_266_prod_Ocollapse,axiom,
    ! [Prod: product_prod_t_set_a] :
      ( ( product_Pair_t_set_a @ ( product_fst_t_set_a @ Prod ) @ ( product_snd_t_set_a @ Prod ) )
      = Prod ) ).

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

% prod.collapse
thf(fact_268_plus__prod_Oelims,axiom,
    ! [X: product_prod_nat_nat,Xa: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( ( plus_p9057090461656269880at_nat @ X @ Xa )
        = Y )
     => ~ ! [A4: nat,B3: nat] :
            ( ( X
              = ( product_Pair_nat_nat @ A4 @ B3 ) )
           => ! [C: nat,D: nat] :
                ( ( Xa
                  = ( product_Pair_nat_nat @ C @ D ) )
               => ( Y
                 != ( product_Pair_nat_nat @ ( plus_plus_nat @ A4 @ C ) @ ( plus_plus_nat @ B3 @ D ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_269_plus__prod_Osimps,axiom,
    ! [A2: nat,B: nat,C3: nat,D2: nat] :
      ( ( plus_p9057090461656269880at_nat @ ( product_Pair_nat_nat @ A2 @ B ) @ ( product_Pair_nat_nat @ C3 @ D2 ) )
      = ( product_Pair_nat_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D2 ) ) ) ).

% plus_prod.simps
thf(fact_270_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A2 @ B ) @ C3 )
      = ( plus_plus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

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

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

% group_cancel.add1
thf(fact_273_group__cancel_Oadd2,axiom,
    ! [B5: nat,K: nat,B: nat,A2: nat] :
      ( ( B5
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A2 @ B5 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_274_add_Oassoc,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A2 @ B ) @ C3 )
      = ( plus_plus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add.assoc
thf(fact_275_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A: nat,B4: nat] : ( plus_plus_nat @ B4 @ A ) ) ) ).

% add.commute
thf(fact_276_add_Oleft__commute,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) )
      = ( plus_plus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add.left_commute
thf(fact_277_add__left__imp__eq,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ A2 @ C3 ) )
     => ( B = C3 ) ) ).

% add_left_imp_eq
thf(fact_278_add__right__imp__eq,axiom,
    ! [B: nat,A2: nat,C3: nat] :
      ( ( ( plus_plus_nat @ B @ A2 )
        = ( plus_plus_nat @ C3 @ A2 ) )
     => ( B = C3 ) ) ).

% add_right_imp_eq
thf(fact_279_gen__length__def,axiom,
    ( gen_length_t
    = ( ^ [N3: nat,Xs3: list_t] : ( plus_plus_nat @ N3 @ ( size_size_list_t @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_280_gen__length__def,axiom,
    ( gen_le3153664615746278471_set_a
    = ( ^ [N3: nat,Xs3: list_P1095827921439705018_set_a] : ( plus_plus_nat @ N3 @ ( size_s5362121731612881446_set_a @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_281_gen__length__def,axiom,
    ( gen_le7785176509601842694_set_a
    = ( ^ [N3: nat,Xs3: list_P6739568432217944425_set_a] : ( plus_plus_nat @ N3 @ ( size_s6950157911653109757_set_a @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_282_gen__length__def,axiom,
    ( gen_le771686426693238883_nat_t
    = ( ^ [N3: nat,Xs3: list_P4201438511612060998_nat_t] : ( plus_plus_nat @ N3 @ ( size_s1593550824562968538_nat_t @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_283_snd__conv,axiom,
    ! [X1: h,X22: t] :
      ( ( product_snd_h_t @ ( product_Pair_h_t @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_284_snd__conv,axiom,
    ! [X1: option2110264179601050681od_h_t,X22: t] :
      ( ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_285_snd__conv,axiom,
    ! [X1: h,X22: product_prod_t_set_a] :
      ( ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ X1 @ X22 ) )
      = X22 ) ).

% snd_conv
thf(fact_286_snd__conv,axiom,
    ! [X1: t,X22: set_a] :
      ( ( product_snd_t_set_a @ ( product_Pair_t_set_a @ X1 @ X22 ) )
      = X22 ) ).

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

% snd_conv
thf(fact_288_snd__eqD,axiom,
    ! [X: h,Y: t,A2: t] :
      ( ( ( product_snd_h_t @ ( product_Pair_h_t @ X @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_289_snd__eqD,axiom,
    ! [X: option2110264179601050681od_h_t,Y: t,A2: t] :
      ( ( ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ X @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_290_snd__eqD,axiom,
    ! [X: h,Y: product_prod_t_set_a,A2: product_prod_t_set_a] :
      ( ( ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ X @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_291_snd__eqD,axiom,
    ! [X: t,Y: set_a,A2: set_a] :
      ( ( ( product_snd_t_set_a @ ( product_Pair_t_set_a @ X @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_292_snd__eqD,axiom,
    ! [X: nat,Y: nat,A2: nat] :
      ( ( ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X @ Y ) )
        = A2 )
     => ( Y = A2 ) ) ).

% snd_eqD
thf(fact_293_eq__snd__iff,axiom,
    ! [B: t,P2: product_prod_h_t] :
      ( ( B
        = ( product_snd_h_t @ P2 ) )
      = ( ? [A: h] :
            ( P2
            = ( product_Pair_h_t @ A @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_294_eq__snd__iff,axiom,
    ! [B: t,P2: produc2796182059459404991_h_t_t] :
      ( ( B
        = ( produc4382304763178309853_h_t_t @ P2 ) )
      = ( ? [A: option2110264179601050681od_h_t] :
            ( P2
            = ( produc770200333395398319_h_t_t @ A @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_295_eq__snd__iff,axiom,
    ! [B: product_prod_t_set_a,P2: produc8090089739038349590_set_a] :
      ( ( B
        = ( produc5260167487839082036_set_a @ P2 ) )
      = ( ? [A: h] :
            ( P2
            = ( produc3432067189782488838_set_a @ A @ B ) ) ) ) ).

% eq_snd_iff
thf(fact_296_eq__snd__iff,axiom,
    ! [B: set_a,P2: product_prod_t_set_a] :
      ( ( B
        = ( product_snd_t_set_a @ P2 ) )
      = ( ? [A: t] :
            ( P2
            = ( product_Pair_t_set_a @ A @ B ) ) ) ) ).

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

% eq_snd_iff
thf(fact_298_sndI,axiom,
    ! [X: product_prod_h_t,Y: h,Z4: t] :
      ( ( X
        = ( product_Pair_h_t @ Y @ Z4 ) )
     => ( ( product_snd_h_t @ X )
        = Z4 ) ) ).

% sndI
thf(fact_299_sndI,axiom,
    ! [X: produc2796182059459404991_h_t_t,Y: option2110264179601050681od_h_t,Z4: t] :
      ( ( X
        = ( produc770200333395398319_h_t_t @ Y @ Z4 ) )
     => ( ( produc4382304763178309853_h_t_t @ X )
        = Z4 ) ) ).

% sndI
thf(fact_300_sndI,axiom,
    ! [X: produc8090089739038349590_set_a,Y: h,Z4: product_prod_t_set_a] :
      ( ( X
        = ( produc3432067189782488838_set_a @ Y @ Z4 ) )
     => ( ( produc5260167487839082036_set_a @ X )
        = Z4 ) ) ).

% sndI
thf(fact_301_sndI,axiom,
    ! [X: product_prod_t_set_a,Y: t,Z4: set_a] :
      ( ( X
        = ( product_Pair_t_set_a @ Y @ Z4 ) )
     => ( ( product_snd_t_set_a @ X )
        = Z4 ) ) ).

% sndI
thf(fact_302_sndI,axiom,
    ! [X: product_prod_nat_nat,Y: nat,Z4: nat] :
      ( ( X
        = ( product_Pair_nat_nat @ Y @ Z4 ) )
     => ( ( product_snd_nat_nat @ X )
        = Z4 ) ) ).

% sndI
thf(fact_303_add_Ocomm__neutral,axiom,
    ! [A2: nat] :
      ( ( plus_plus_nat @ A2 @ zero_zero_nat )
      = A2 ) ).

% add.comm_neutral
thf(fact_304_comm__monoid__add__class_Oadd__0,axiom,
    ! [A2: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A2 )
      = A2 ) ).

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

% plus_nat.add_0
thf(fact_306_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_307_nat__arith_Osuc1,axiom,
    ! [A5: nat,K: nat,A2: nat] :
      ( ( A5
        = ( plus_plus_nat @ K @ A2 ) )
     => ( ( suc @ A5 )
        = ( plus_plus_nat @ K @ ( suc @ A2 ) ) ) ) ).

% nat_arith.suc1
thf(fact_308_add__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc
thf(fact_309_add__Suc__shift,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_310_surjective__pairing,axiom,
    ! [T3: product_prod_h_t] :
      ( T3
      = ( product_Pair_h_t @ ( product_fst_h_t @ T3 ) @ ( product_snd_h_t @ T3 ) ) ) ).

% surjective_pairing
thf(fact_311_surjective__pairing,axiom,
    ! [T3: produc2796182059459404991_h_t_t] :
      ( T3
      = ( produc770200333395398319_h_t_t @ ( produc4004510029700249243_h_t_t @ T3 ) @ ( produc4382304763178309853_h_t_t @ T3 ) ) ) ).

% surjective_pairing
thf(fact_312_surjective__pairing,axiom,
    ! [T3: produc8090089739038349590_set_a] :
      ( T3
      = ( produc3432067189782488838_set_a @ ( produc6892702156181598450_set_a @ T3 ) @ ( produc5260167487839082036_set_a @ T3 ) ) ) ).

% surjective_pairing
thf(fact_313_surjective__pairing,axiom,
    ! [T3: product_prod_t_set_a] :
      ( T3
      = ( product_Pair_t_set_a @ ( product_fst_t_set_a @ T3 ) @ ( product_snd_t_set_a @ T3 ) ) ) ).

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

% surjective_pairing
thf(fact_315_prod_Oexhaust__sel,axiom,
    ! [Prod: product_prod_h_t] :
      ( Prod
      = ( product_Pair_h_t @ ( product_fst_h_t @ Prod ) @ ( product_snd_h_t @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_316_prod_Oexhaust__sel,axiom,
    ! [Prod: produc2796182059459404991_h_t_t] :
      ( Prod
      = ( produc770200333395398319_h_t_t @ ( produc4004510029700249243_h_t_t @ Prod ) @ ( produc4382304763178309853_h_t_t @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_317_prod_Oexhaust__sel,axiom,
    ! [Prod: produc8090089739038349590_set_a] :
      ( Prod
      = ( produc3432067189782488838_set_a @ ( produc6892702156181598450_set_a @ Prod ) @ ( produc5260167487839082036_set_a @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_318_prod_Oexhaust__sel,axiom,
    ! [Prod: product_prod_t_set_a] :
      ( Prod
      = ( product_Pair_t_set_a @ ( product_fst_t_set_a @ Prod ) @ ( product_snd_t_set_a @ Prod ) ) ) ).

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

% prod.exhaust_sel
thf(fact_320_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: h > t > $o,X: h,Y: t,A2: product_prod_h_t] :
      ( ( P @ X @ Y )
     => ( ( A2
          = ( product_Pair_h_t @ X @ Y ) )
       => ( P @ ( product_fst_h_t @ A2 ) @ ( product_snd_h_t @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_321_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: option2110264179601050681od_h_t > t > $o,X: option2110264179601050681od_h_t,Y: t,A2: produc2796182059459404991_h_t_t] :
      ( ( P @ X @ Y )
     => ( ( A2
          = ( produc770200333395398319_h_t_t @ X @ Y ) )
       => ( P @ ( produc4004510029700249243_h_t_t @ A2 ) @ ( produc4382304763178309853_h_t_t @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_322_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: h > product_prod_t_set_a > $o,X: h,Y: product_prod_t_set_a,A2: produc8090089739038349590_set_a] :
      ( ( P @ X @ Y )
     => ( ( A2
          = ( produc3432067189782488838_set_a @ X @ Y ) )
       => ( P @ ( produc6892702156181598450_set_a @ A2 ) @ ( produc5260167487839082036_set_a @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_323_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: t > set_a > $o,X: t,Y: set_a,A2: product_prod_t_set_a] :
      ( ( P @ X @ Y )
     => ( ( A2
          = ( product_Pair_t_set_a @ X @ Y ) )
       => ( P @ ( product_fst_t_set_a @ A2 ) @ ( product_snd_t_set_a @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_324_BNF__Greatest__Fixpoint_Osubst__Pair,axiom,
    ! [P: nat > nat > $o,X: nat,Y: nat,A2: product_prod_nat_nat] :
      ( ( P @ X @ Y )
     => ( ( A2
          = ( product_Pair_nat_nat @ X @ Y ) )
       => ( P @ ( product_fst_nat_nat @ A2 ) @ ( product_snd_nat_nat @ A2 ) ) ) ) ).

% BNF_Greatest_Fixpoint.subst_Pair
thf(fact_325_add__is__1,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_326_one__is__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M @ N ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_327_list_Osize_I4_J,axiom,
    ! [X21: t,X222: list_t] :
      ( ( size_size_list_t @ ( cons_t @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_size_list_t @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_328_list_Osize_I4_J,axiom,
    ! [X21: product_prod_t_set_a,X222: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( cons_P6565363215658504938_set_a @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_s5362121731612881446_set_a @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_329_list_Osize_I4_J,axiom,
    ! [X21: produc3416767791517006041_set_a,X222: list_P6739568432217944425_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( cons_P4636835598303252387_set_a @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_s6950157911653109757_set_a @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_330_list_Osize_I4_J,axiom,
    ! [X21: product_prod_nat_t,X222: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( cons_P8443330349171532544_nat_t @ X21 @ X222 ) )
      = ( plus_plus_nat @ ( size_s1593550824562968538_nat_t @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% list.size(4)
thf(fact_331_formula_Osize_I13_J,axiom,
    ! [X13: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( neg_a_t @ X13 ) )
      = ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X13 ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(13)
thf(fact_332_exI__realizer,axiom,
    ! [P: t > h > $o,Y: t,X: h] :
      ( ( P @ Y @ X )
     => ( P @ ( product_snd_h_t @ ( product_Pair_h_t @ X @ Y ) ) @ ( product_fst_h_t @ ( product_Pair_h_t @ X @ Y ) ) ) ) ).

% exI_realizer
thf(fact_333_exI__realizer,axiom,
    ! [P: t > option2110264179601050681od_h_t > $o,Y: t,X: option2110264179601050681od_h_t] :
      ( ( P @ Y @ X )
     => ( P @ ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ X @ Y ) ) @ ( produc4004510029700249243_h_t_t @ ( produc770200333395398319_h_t_t @ X @ Y ) ) ) ) ).

% exI_realizer
thf(fact_334_exI__realizer,axiom,
    ! [P: product_prod_t_set_a > h > $o,Y: product_prod_t_set_a,X: h] :
      ( ( P @ Y @ X )
     => ( P @ ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ X @ Y ) ) @ ( produc6892702156181598450_set_a @ ( produc3432067189782488838_set_a @ X @ Y ) ) ) ) ).

% exI_realizer
thf(fact_335_exI__realizer,axiom,
    ! [P: set_a > t > $o,Y: set_a,X: t] :
      ( ( P @ Y @ X )
     => ( P @ ( product_snd_t_set_a @ ( product_Pair_t_set_a @ X @ Y ) ) @ ( product_fst_t_set_a @ ( product_Pair_t_set_a @ X @ Y ) ) ) ) ).

% exI_realizer
thf(fact_336_exI__realizer,axiom,
    ! [P: nat > nat > $o,Y: nat,X: nat] :
      ( ( P @ Y @ X )
     => ( P @ ( product_snd_nat_nat @ ( product_Pair_nat_nat @ X @ Y ) ) @ ( product_fst_nat_nat @ ( product_Pair_nat_nat @ X @ Y ) ) ) ) ).

% exI_realizer
thf(fact_337_conjI__realizer,axiom,
    ! [P: h > $o,P2: h,Q4: t > $o,Q: t] :
      ( ( P @ P2 )
     => ( ( Q4 @ Q )
       => ( ( P @ ( product_fst_h_t @ ( product_Pair_h_t @ P2 @ Q ) ) )
          & ( Q4 @ ( product_snd_h_t @ ( product_Pair_h_t @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_338_conjI__realizer,axiom,
    ! [P: option2110264179601050681od_h_t > $o,P2: option2110264179601050681od_h_t,Q4: t > $o,Q: t] :
      ( ( P @ P2 )
     => ( ( Q4 @ Q )
       => ( ( P @ ( produc4004510029700249243_h_t_t @ ( produc770200333395398319_h_t_t @ P2 @ Q ) ) )
          & ( Q4 @ ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_339_conjI__realizer,axiom,
    ! [P: h > $o,P2: h,Q4: product_prod_t_set_a > $o,Q: product_prod_t_set_a] :
      ( ( P @ P2 )
     => ( ( Q4 @ Q )
       => ( ( P @ ( produc6892702156181598450_set_a @ ( produc3432067189782488838_set_a @ P2 @ Q ) ) )
          & ( Q4 @ ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_340_conjI__realizer,axiom,
    ! [P: t > $o,P2: t,Q4: set_a > $o,Q: set_a] :
      ( ( P @ P2 )
     => ( ( Q4 @ Q )
       => ( ( P @ ( product_fst_t_set_a @ ( product_Pair_t_set_a @ P2 @ Q ) ) )
          & ( Q4 @ ( product_snd_t_set_a @ ( product_Pair_t_set_a @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_341_conjI__realizer,axiom,
    ! [P: nat > $o,P2: nat,Q4: nat > $o,Q: nat] :
      ( ( P @ P2 )
     => ( ( Q4 @ Q )
       => ( ( P @ ( product_fst_nat_nat @ ( product_Pair_nat_nat @ P2 @ Q ) ) )
          & ( Q4 @ ( product_snd_nat_nat @ ( product_Pair_nat_nat @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_342_option_Osize__gen_I2_J,axiom,
    ! [X: product_prod_h_t > nat,X22: product_prod_h_t] :
      ( ( size_o5333920154352007446od_h_t @ X @ ( some_P2526622376857543512od_h_t @ X22 ) )
      = ( plus_plus_nat @ ( X @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% option.size_gen(2)
thf(fact_343_option_Osize__gen_I2_J,axiom,
    ! [X: produc2796182059459404991_h_t_t > nat,X22: produc2796182059459404991_h_t_t] :
      ( ( size_o8489950193150799586_h_t_t @ X @ ( some_P8406129549712030756_h_t_t @ X22 ) )
      = ( plus_plus_nat @ ( X @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% option.size_gen(2)
thf(fact_344_option_Osize__gen_I2_J,axiom,
    ! [X: produc8090089739038349590_set_a > nat,X22: produc8090089739038349590_set_a] :
      ( ( size_o6599886792432175033_set_a @ X @ ( some_P2245991037696317435_set_a @ X22 ) )
      = ( plus_plus_nat @ ( X @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% option.size_gen(2)
thf(fact_345_le__zero__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

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

% not_gr_zero
thf(fact_347_add__le__cancel__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
      = ( ord_less_eq_nat @ A2 @ B ) ) ).

% add_le_cancel_right
thf(fact_348_add__le__cancel__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
      = ( ord_less_eq_nat @ A2 @ B ) ) ).

% add_le_cancel_left
thf(fact_349_add__less__cancel__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
      = ( ord_less_nat @ A2 @ B ) ) ).

% add_less_cancel_right
thf(fact_350_add__less__cancel__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
      = ( ord_less_nat @ A2 @ B ) ) ).

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

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

% neq0_conv
thf(fact_353_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A2: nat] :
      ( ( A2 != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A2 ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_354_Suc__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_less_eq
thf(fact_355_Suc__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_356_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

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

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

% bot_nat_0.extremum
thf(fact_359_Suc__le__mono,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M ) )
      = ( ord_less_eq_nat @ N @ M ) ) ).

% Suc_le_mono
thf(fact_360_nat__add__left__cancel__less,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_361_nat__add__left__cancel__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_362_add__le__same__cancel1,axiom,
    ! [B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B @ A2 ) @ B )
      = ( ord_less_eq_nat @ A2 @ zero_zero_nat ) ) ).

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

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

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

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

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

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

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

% less_add_same_cancel2
thf(fact_370_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_371_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_372_add__gr__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_373_take__all,axiom,
    ! [Xs2: list_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ N )
     => ( ( take_t @ N @ Xs2 )
        = Xs2 ) ) ).

% take_all
thf(fact_374_take__all,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ N )
     => ( ( take_P2822414627813279522_set_a @ N @ Xs2 )
        = Xs2 ) ) ).

% take_all
thf(fact_375_take__all,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ N )
     => ( ( take_P1723439655008974187_set_a @ N @ Xs2 )
        = Xs2 ) ) ).

% take_all
thf(fact_376_take__all,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ N )
     => ( ( take_P1264513708533117128_nat_t @ N @ Xs2 )
        = Xs2 ) ) ).

% take_all
thf(fact_377_take__all__iff,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( ( take_t @ N @ Xs2 )
        = Xs2 )
      = ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ N ) ) ).

% take_all_iff
thf(fact_378_take__all__iff,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ( take_P2822414627813279522_set_a @ N @ Xs2 )
        = Xs2 )
      = ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ N ) ) ).

% take_all_iff
thf(fact_379_take__all__iff,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ( take_P1723439655008974187_set_a @ N @ Xs2 )
        = Xs2 )
      = ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ N ) ) ).

% take_all_iff
thf(fact_380_take__all__iff,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ( take_P1264513708533117128_nat_t @ N @ Xs2 )
        = Xs2 )
      = ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ N ) ) ).

% take_all_iff
thf(fact_381_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_382_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_383_add__le__less__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_nat @ C3 @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

% add_le_less_mono
thf(fact_384_add__less__le__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D2: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

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

% mono_nat_linear_lb
thf(fact_386_timestamp__total,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
      | ( ord_less_eq_nat @ B @ A2 ) ) ).

% timestamp_total
thf(fact_387_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N4 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_388_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_389_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_390_lift__Suc__antimono__le,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_391_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_392_Suc__le__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_le_eq
thf(fact_393_dec__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ I )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P @ N2 )
                 => ( P @ ( suc @ N2 ) ) ) ) )
         => ( P @ J ) ) ) ) ).

% dec_induct
thf(fact_394_inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ J )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P @ ( suc @ N2 ) )
                 => ( P @ N2 ) ) ) )
         => ( P @ I ) ) ) ) ).

% inc_induct
thf(fact_395_Suc__le__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_le_lessD
thf(fact_396_le__less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% le_less_Suc_eq
thf(fact_397_less__Suc__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% less_Suc_eq_le
thf(fact_398_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N3: nat] : ( ord_less_eq_nat @ ( suc @ N3 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_399_le__imp__less__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% le_imp_less_Suc
thf(fact_400_nat__descend__induct,axiom,
    ! [N: nat,P: nat > $o,M: nat] :
      ( ! [K2: nat] :
          ( ( ord_less_nat @ N @ K2 )
         => ( P @ K2 ) )
     => ( ! [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
           => ( ! [I2: nat] :
                  ( ( ord_less_nat @ K2 @ I2 )
                 => ( P @ I2 ) )
             => ( P @ K2 ) ) )
       => ( P @ M ) ) ) ).

% nat_descend_induct
thf(fact_401_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J: nat] :
      ( ! [I3: nat,J2: nat] :
          ( ( ord_less_nat @ I3 @ J2 )
         => ( ord_less_nat @ ( F @ I3 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_402_le__neq__implies__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( M != N )
       => ( ord_less_nat @ M @ N ) ) ) ).

% le_neq_implies_less
thf(fact_403_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y4: nat] :
            ( ( P @ Y4 )
           => ( ord_less_eq_nat @ Y4 @ B ) )
       => ? [X4: nat] :
            ( ( P @ X4 )
            & ! [Y6: nat] :
                ( ( P @ Y6 )
               => ( ord_less_eq_nat @ Y6 @ X4 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_404_linorder__neqE__nat,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
     => ( ~ ( ord_less_nat @ X @ Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_neqE_nat
thf(fact_405_less__or__eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_nat @ M @ N )
        | ( M = N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_or_eq_imp_le
thf(fact_406_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M3: nat,N3: nat] :
          ( ( ord_less_nat @ M3 @ N3 )
          | ( M3 = N3 ) ) ) ) ).

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

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

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

% less_irrefl_nat
thf(fact_410_less__imp__le__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_imp_le_nat
thf(fact_411_less__not__refl3,axiom,
    ! [S: nat,T3: nat] :
      ( ( ord_less_nat @ S @ T3 )
     => ( S != T3 ) ) ).

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

% less_not_refl2
thf(fact_413_nat__le__linear,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
      | ( ord_less_eq_nat @ N @ M ) ) ).

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

% less_not_refl
thf(fact_415_nat__neq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( M != N )
      = ( ( ord_less_nat @ M @ N )
        | ( ord_less_nat @ N @ M ) ) ) ).

% nat_neq_iff
thf(fact_416_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M3: nat,N3: nat] :
          ( ( ord_less_eq_nat @ M3 @ N3 )
          & ( M3 != N3 ) ) ) ) ).

% nat_less_le
thf(fact_417_le__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( M = N ) ) ) ).

% le_antisym
thf(fact_418_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

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

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

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

% ex_least_nat_le
thf(fact_422_add__neg__nonpos,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_nonpos
thf(fact_423_add__nonneg__pos,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_424_add__nonpos__neg,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_neg
thf(fact_425_add__pos__nonneg,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A2 @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_426_add__strict__increasing,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) ) ) ) ).

% add_strict_increasing
thf(fact_427_add__strict__increasing2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_nat @ B @ C3 )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) ) ) ) ).

% add_strict_increasing2
thf(fact_428_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I2: nat] :
                ( ( ord_less_eq_nat @ I2 @ K2 )
               => ~ ( P @ I2 ) )
            & ( P @ ( suc @ K2 ) ) ) ) ) ).

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

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

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

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

% zero_less_iff_neq_zero
thf(fact_433_zero__le,axiom,
    ! [X: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X ) ).

% zero_le
thf(fact_434_add__mono__strict,axiom,
    ! [C3: nat,D2: nat,A2: nat] :
      ( ( ord_less_nat @ C3 @ D2 )
     => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ A2 @ D2 ) ) ) ).

% add_mono_strict
thf(fact_435_add__less__imp__less__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
     => ( ord_less_nat @ A2 @ B ) ) ).

% add_less_imp_less_right
thf(fact_436_add__less__imp__less__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
     => ( ord_less_nat @ A2 @ B ) ) ).

% add_less_imp_less_left
thf(fact_437_add__strict__right__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add_strict_right_mono
thf(fact_438_add__strict__left__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) ) ) ).

% add_strict_left_mono
thf(fact_439_add__strict__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D2: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_nat @ C3 @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

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

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

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

% add_mono_thms_linordered_field(5)
thf(fact_443_add__mono__comm,axiom,
    ! [C3: nat,D2: nat,A2: nat] :
      ( ( ord_less_eq_nat @ C3 @ D2 )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ D2 @ A2 ) ) ) ).

% add_mono_comm
thf(fact_444_timestamp__class_Oadd__mono,axiom,
    ! [C3: nat,D2: nat,A2: nat] :
      ( ( ord_less_eq_nat @ C3 @ D2 )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ A2 @ D2 ) ) ) ).

% timestamp_class.add_mono
thf(fact_445_add__le__imp__le__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
     => ( ord_less_eq_nat @ A2 @ B ) ) ).

% add_le_imp_le_right
thf(fact_446_add__le__imp__le__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
     => ( ord_less_eq_nat @ A2 @ B ) ) ).

% add_le_imp_le_left
thf(fact_447_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A: nat,B4: nat] :
        ? [C2: nat] :
          ( B4
          = ( plus_plus_nat @ A @ C2 ) ) ) ) ).

% le_iff_add
thf(fact_448_add__right__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% add_right_mono
thf(fact_449_less__eqE,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ~ ! [C: nat] :
            ( B
           != ( plus_plus_nat @ A2 @ C ) ) ) ).

% less_eqE
thf(fact_450_add__left__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) ) ) ).

% add_left_mono
thf(fact_451_ordered__ab__semigroup__add__class_Oadd__mono,axiom,
    ! [A2: nat,B: nat,C3: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ D2 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

% ordered_ab_semigroup_add_class.add_mono
thf(fact_452_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_453_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

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

% add_mono_thms_linordered_semiring(3)
thf(fact_455_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ~ ( P @ N2 )
             => ? [M4: nat] :
                  ( ( ord_less_nat @ M4 @ N2 )
                  & ~ ( P @ M4 ) ) ) )
       => ( P @ N ) ) ) ).

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

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

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

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

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

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

% bot_nat_0.extremum_strict
thf(fact_462_not__less__less__Suc__eq,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% not_less_less_Suc_eq
thf(fact_463_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I3: nat] :
            ( ( J
              = ( suc @ I3 ) )
           => ( P @ I3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ J )
             => ( ( P @ ( suc @ I3 ) )
               => ( P @ I3 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_464_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
       => ( ! [I3: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I3 @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P @ I3 @ J2 )
                 => ( ( P @ J2 @ K2 )
                   => ( P @ I3 @ K2 ) ) ) ) )
         => ( P @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_465_less__trans__Suc,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ J @ K )
       => ( ord_less_nat @ ( suc @ I ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_466_Suc__less__SucD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_less_SucD
thf(fact_467_less__antisym,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
       => ( M = N ) ) ) ).

% less_antisym
thf(fact_468_Suc__less__eq2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M )
      = ( ? [M5: nat] :
            ( ( M
              = ( suc @ M5 ) )
            & ( ord_less_nat @ N @ M5 ) ) ) ) ).

% Suc_less_eq2
thf(fact_469_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P @ I4 ) ) )
      = ( ( P @ N )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P @ I4 ) ) ) ) ).

% All_less_Suc
thf(fact_470_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_471_less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( M = N ) ) ) ).

% less_Suc_eq
thf(fact_472_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P @ I4 ) ) )
      = ( ( P @ N )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P @ I4 ) ) ) ) ).

% Ex_less_Suc
thf(fact_473_less__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_474_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

% less_SucE
thf(fact_475_Suc__lessI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ( suc @ M )
         != N )
       => ( ord_less_nat @ ( suc @ M ) @ N ) ) ) ).

% Suc_lessI
thf(fact_476_Suc__lessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_477_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_478_Nat_OlessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ I @ K )
     => ( ( K
         != ( suc @ I ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_479_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_480_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A2: nat] :
      ( ( ord_less_eq_nat @ A2 @ zero_zero_nat )
     => ( A2 = zero_zero_nat ) ) ).

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

% bot_nat_0.extremum_unique
thf(fact_482_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_483_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R2: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X4: nat] : ( R2 @ X4 @ X4 )
       => ( ! [X4: nat,Y4: nat,Z2: nat] :
              ( ( R2 @ X4 @ Y4 )
             => ( ( R2 @ Y4 @ Z2 )
               => ( R2 @ X4 @ Z2 ) ) )
         => ( ! [N2: nat] : ( R2 @ N2 @ ( suc @ N2 ) )
           => ( R2 @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_484_nat__induct__at__least,axiom,
    ! [M: nat,N: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( P @ M )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ M @ N2 )
             => ( ( P @ N2 )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_485_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M4: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M4 ) @ N2 )
             => ( P @ M4 ) )
         => ( P @ N2 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_486_not__less__eq__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_eq_nat @ M @ N ) )
      = ( ord_less_eq_nat @ ( suc @ N ) @ M ) ) ).

% not_less_eq_eq
thf(fact_487_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_488_le__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_eq_nat @ M @ N )
        | ( M
          = ( suc @ N ) ) ) ) ).

% le_Suc_eq
thf(fact_489_Suc__le__D,axiom,
    ! [N: nat,M6: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M6 )
     => ? [M2: nat] :
          ( M6
          = ( suc @ M2 ) ) ) ).

% Suc_le_D
thf(fact_490_le__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_491_le__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_eq_nat @ M @ N )
       => ( M
          = ( suc @ N ) ) ) ) ).

% le_SucE
thf(fact_492_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_leD
thf(fact_493_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M @ L )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% less_add_eq_less
thf(fact_494_trans__less__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_less_add2
thf(fact_495_trans__less__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_496_add__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_497_not__add__less2,axiom,
    ! [J: nat,I: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I ) @ I ) ).

% not_add_less2
thf(fact_498_not__add__less1,axiom,
    ! [I: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ I ) ).

% not_add_less1
thf(fact_499_add__less__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_less_mono
thf(fact_500_add__lessD1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

% add_lessD1
thf(fact_501_length__induct,axiom,
    ! [P: list_t > $o,Xs2: list_t] :
      ( ! [Xs: list_t] :
          ( ! [Ys3: list_t] :
              ( ( ord_less_nat @ ( size_size_list_t @ Ys3 ) @ ( size_size_list_t @ Xs ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs ) )
     => ( P @ Xs2 ) ) ).

% length_induct
thf(fact_502_length__induct,axiom,
    ! [P: list_P1095827921439705018_set_a > $o,Xs2: list_P1095827921439705018_set_a] :
      ( ! [Xs: list_P1095827921439705018_set_a] :
          ( ! [Ys3: list_P1095827921439705018_set_a] :
              ( ( ord_less_nat @ ( size_s5362121731612881446_set_a @ Ys3 ) @ ( size_s5362121731612881446_set_a @ Xs ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs ) )
     => ( P @ Xs2 ) ) ).

% length_induct
thf(fact_503_length__induct,axiom,
    ! [P: list_P6739568432217944425_set_a > $o,Xs2: list_P6739568432217944425_set_a] :
      ( ! [Xs: list_P6739568432217944425_set_a] :
          ( ! [Ys3: list_P6739568432217944425_set_a] :
              ( ( ord_less_nat @ ( size_s6950157911653109757_set_a @ Ys3 ) @ ( size_s6950157911653109757_set_a @ Xs ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs ) )
     => ( P @ Xs2 ) ) ).

% length_induct
thf(fact_504_length__induct,axiom,
    ! [P: list_P4201438511612060998_nat_t > $o,Xs2: list_P4201438511612060998_nat_t] :
      ( ! [Xs: list_P4201438511612060998_nat_t] :
          ( ! [Ys3: list_P4201438511612060998_nat_t] :
              ( ( ord_less_nat @ ( size_s1593550824562968538_nat_t @ Ys3 ) @ ( size_s1593550824562968538_nat_t @ Xs ) )
             => ( P @ Ys3 ) )
         => ( P @ Xs ) )
     => ( P @ Xs2 ) ) ).

% length_induct
thf(fact_505_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M3: nat,N3: nat] :
        ? [K3: nat] :
          ( N3
          = ( plus_plus_nat @ M3 @ K3 ) ) ) ) ).

% nat_le_iff_add
thf(fact_506_trans__le__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_le_add2
thf(fact_507_trans__le__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_le_add1
thf(fact_508_add__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_le_mono1
thf(fact_509_add__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_le_mono
thf(fact_510_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N2: nat] :
          ( L
          = ( plus_plus_nat @ K @ N2 ) ) ) ).

% le_Suc_ex
thf(fact_511_add__leD2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_512_add__leD1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% add_leD1
thf(fact_513_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

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

% le_add1
thf(fact_515_add__leE,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_516_add__neg__neg,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A2 @ B ) @ zero_zero_nat ) ) ) ).

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

% add_pos_pos
thf(fact_518_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ~ ! [C: nat] :
            ( ( B
              = ( plus_plus_nat @ A2 @ C ) )
           => ( C = zero_zero_nat ) ) ) ).

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

% pos_add_strict
thf(fact_520_add__decreasing,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ C3 @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ B ) ) ) ).

% add_decreasing
thf(fact_521_add__increasing,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A2 )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) ) ) ) ).

% add_increasing
thf(fact_522_add__decreasing2,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ C3 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ A2 @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ C3 ) @ B ) ) ) ).

% add_decreasing2
thf(fact_523_add__increasing2,axiom,
    ! [C3: nat,B: nat,A2: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
     => ( ( ord_less_eq_nat @ B @ A2 )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A2 @ C3 ) ) ) ) ).

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

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

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

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

% add_nonpos_eq_0_iff
thf(fact_528_less__Suc__eq__0__disj,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( M = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M
              = ( suc @ J3 ) )
            & ( ord_less_nat @ J3 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_529_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M2: nat] :
          ( N
          = ( suc @ M2 ) ) ) ).

% gr0_implies_Suc
thf(fact_530_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
           => ( P @ I4 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
           => ( P @ ( suc @ I4 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_531_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M3: nat] :
            ( N
            = ( suc @ M3 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_532_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( suc @ N ) )
            & ( P @ I4 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ N )
            & ( P @ ( suc @ I4 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_533_less__imp__add__positive,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ? [K2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K2 )
          & ( ( plus_plus_nat @ I @ K2 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_534_less__natE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ~ ! [Q5: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M @ Q5 ) ) ) ) ).

% less_natE
thf(fact_535_less__add__Suc1,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M ) ) ) ).

% less_add_Suc1
thf(fact_536_less__add__Suc2,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M @ I ) ) ) ).

% less_add_Suc2
thf(fact_537_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M3: nat,N3: nat] :
        ? [K3: nat] :
          ( N3
          = ( suc @ ( plus_plus_nat @ M3 @ K3 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_538_less__imp__Suc__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ? [K2: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M @ K2 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_539_impossible__Cons,axiom,
    ! [Xs2: list_t,Ys: list_t,X: t] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ ( size_size_list_t @ Ys ) )
     => ( Xs2
       != ( cons_t @ X @ Ys ) ) ) ).

% impossible_Cons
thf(fact_540_impossible__Cons,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,X: product_prod_t_set_a] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ ( size_s5362121731612881446_set_a @ Ys ) )
     => ( Xs2
       != ( cons_P6565363215658504938_set_a @ X @ Ys ) ) ) ).

% impossible_Cons
thf(fact_541_impossible__Cons,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a] :
      ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ ( size_s6950157911653109757_set_a @ Ys ) )
     => ( Xs2
       != ( cons_P4636835598303252387_set_a @ X @ Ys ) ) ) ).

% impossible_Cons
thf(fact_542_impossible__Cons,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,X: product_prod_nat_t] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( Xs2
       != ( cons_P8443330349171532544_nat_t @ X @ Ys ) ) ) ).

% impossible_Cons
thf(fact_543_Suc__le__length__iff,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_size_list_t @ Xs2 ) )
      = ( ? [X5: t,Ys2: list_t] :
            ( ( Xs2
              = ( cons_t @ X5 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_size_list_t @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_544_Suc__le__length__iff,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_s5362121731612881446_set_a @ Xs2 ) )
      = ( ? [X5: product_prod_t_set_a,Ys2: list_P1095827921439705018_set_a] :
            ( ( Xs2
              = ( cons_P6565363215658504938_set_a @ X5 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_s5362121731612881446_set_a @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_545_Suc__le__length__iff,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_s6950157911653109757_set_a @ Xs2 ) )
      = ( ? [X5: produc3416767791517006041_set_a,Ys2: list_P6739568432217944425_set_a] :
            ( ( Xs2
              = ( cons_P4636835598303252387_set_a @ X5 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_s6950157911653109757_set_a @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_546_Suc__le__length__iff,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
      = ( ? [X5: product_prod_nat_t,Ys2: list_P4201438511612060998_nat_t] :
            ( ( Xs2
              = ( cons_P8443330349171532544_nat_t @ X5 @ Ys2 ) )
            & ( ord_less_eq_nat @ N @ ( size_s1593550824562968538_nat_t @ Ys2 ) ) ) ) ) ).

% Suc_le_length_iff
thf(fact_547_less__prod__simp,axiom,
    ! [X1: t,Y1: set_a,X22: t,Y22: set_a] :
      ( ( ord_le7650071679307129824_set_a @ ( product_Pair_t_set_a @ X1 @ Y1 ) @ ( product_Pair_t_set_a @ X22 @ Y22 ) )
      = ( ( ord_less_t @ X1 @ X22 )
        | ( ( ord_less_eq_t @ X1 @ X22 )
          & ( ord_less_set_a @ Y1 @ Y22 ) ) ) ) ).

% less_prod_simp
thf(fact_548_less__prod__simp,axiom,
    ! [X1: nat,Y1: nat,X22: nat,Y22: nat] :
      ( ( ord_le1203424502768444845at_nat @ ( product_Pair_nat_nat @ X1 @ Y1 ) @ ( product_Pair_nat_nat @ X22 @ Y22 ) )
      = ( ( ord_less_nat @ X1 @ X22 )
        | ( ( ord_less_eq_nat @ X1 @ X22 )
          & ( ord_less_nat @ Y1 @ Y22 ) ) ) ) ).

% less_prod_simp
thf(fact_549_less__eq__prod__simp,axiom,
    ! [X1: t,Y1: set_a,X22: t,Y22: set_a] :
      ( ( ord_le1576776917030837460_set_a @ ( product_Pair_t_set_a @ X1 @ Y1 ) @ ( product_Pair_t_set_a @ X22 @ Y22 ) )
      = ( ( ord_less_t @ X1 @ X22 )
        | ( ( ord_less_eq_t @ X1 @ X22 )
          & ( ord_less_eq_set_a @ Y1 @ Y22 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_550_less__eq__prod__simp,axiom,
    ! [X1: nat,Y1: nat,X22: nat,Y22: nat] :
      ( ( ord_le8460144461188290721at_nat @ ( product_Pair_nat_nat @ X1 @ Y1 ) @ ( product_Pair_nat_nat @ X22 @ Y22 ) )
      = ( ( ord_less_nat @ X1 @ X22 )
        | ( ( ord_less_eq_nat @ X1 @ X22 )
          & ( ord_less_eq_nat @ Y1 @ Y22 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_551_less__eq__prod__def,axiom,
    ( ord_le8460144461188290721at_nat
    = ( ^ [X5: product_prod_nat_nat,Y5: product_prod_nat_nat] :
          ( ( ord_less_nat @ ( product_fst_nat_nat @ X5 ) @ ( product_fst_nat_nat @ Y5 ) )
          | ( ( ord_less_eq_nat @ ( product_fst_nat_nat @ X5 ) @ ( product_fst_nat_nat @ Y5 ) )
            & ( ord_less_eq_nat @ ( product_snd_nat_nat @ X5 ) @ ( product_snd_nat_nat @ Y5 ) ) ) ) ) ) ).

% less_eq_prod_def
thf(fact_552_reaches__on__split_H,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,S2: option2110264179601050681od_h_t,I: nat] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S2 )
     => ( ( ord_less_eq_nat @ I @ ( size_size_list_t @ Vs ) )
       => ? [S4: option2110264179601050681od_h_t] :
            ( ( reache645946503560514460_h_t_t @ Run @ S @ ( take_t @ I @ Vs ) @ S4 )
            & ( reache645946503560514460_h_t_t @ Run @ S4 @ ( drop_t @ I @ Vs ) @ S2 ) ) ) ) ).

% reaches_on_split'
thf(fact_553_reaches__on__split_H,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,I: nat] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S2 )
     => ( ( ord_less_eq_nat @ I @ ( size_s5362121731612881446_set_a @ Vs ) )
       => ? [S4: h] :
            ( ( reache3397181163414509427_set_a @ Run @ S @ ( take_P2822414627813279522_set_a @ I @ Vs ) @ S4 )
            & ( reache3397181163414509427_set_a @ Run @ S4 @ ( drop_P283403782220237946_set_a @ I @ Vs ) @ S2 ) ) ) ) ).

% reaches_on_split'
thf(fact_554_less__prod__def_H,axiom,
    ( ord_le1203424502768444845at_nat
    = ( ^ [X5: product_prod_nat_nat,Y5: product_prod_nat_nat] :
          ( ( ord_less_nat @ ( product_fst_nat_nat @ X5 ) @ ( product_fst_nat_nat @ Y5 ) )
          | ( ( ( product_fst_nat_nat @ X5 )
              = ( product_fst_nat_nat @ Y5 ) )
            & ( ord_less_nat @ ( product_snd_nat_nat @ X5 ) @ ( product_snd_nat_nat @ Y5 ) ) ) ) ) ) ).

% less_prod_def'
thf(fact_555_prod__less__def,axiom,
    ( ord_le1203424502768444845at_nat
    = ( ^ [X5: product_prod_nat_nat,Y5: product_prod_nat_nat] :
          ( ( ord_less_nat @ ( product_fst_nat_nat @ X5 ) @ ( product_fst_nat_nat @ Y5 ) )
          | ( ( ord_less_eq_nat @ ( product_fst_nat_nat @ X5 ) @ ( product_fst_nat_nat @ Y5 ) )
            & ( ord_less_nat @ ( product_snd_nat_nat @ X5 ) @ ( product_snd_nat_nat @ Y5 ) ) ) ) ) ) ).

% prod_less_def
thf(fact_556_less___092_060tau_062D,axiom,
    ! [Sigma: trace_a_t,I: nat,J: nat] :
      ( ( ord_less_t @ ( tau_a_t @ Sigma @ I ) @ ( tau_a_t @ Sigma @ J ) )
     => ( ord_less_nat @ I @ J ) ) ).

% less_\<tau>D
thf(fact_557__092_060tau_062__mono,axiom,
    ! [I: nat,J: nat,S: trace_a_t] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_t @ ( tau_a_t @ S @ I ) @ ( tau_a_t @ S @ J ) ) ) ).

% \<tau>_mono
thf(fact_558_le___092_060tau_062__less,axiom,
    ! [Sigma: trace_a_t,I: nat,J: nat] :
      ( ( ord_less_eq_t @ ( tau_a_t @ Sigma @ I ) @ ( tau_a_t @ Sigma @ J ) )
     => ( ( ord_less_nat @ J @ I )
       => ( ( tau_a_t @ Sigma @ I )
          = ( tau_a_t @ Sigma @ J ) ) ) ) ).

% le_\<tau>_less
thf(fact_559_reaches__on__split,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,I: nat] :
      ( ( reaches_on_t_set_a @ Run @ S @ Vs @ S2 )
     => ( ( ord_less_nat @ I @ ( size_size_list_set_a @ Vs ) )
       => ? [S4: t,S10: t] :
            ( ( reaches_on_t_set_a @ Run @ S @ ( take_set_a @ I @ Vs ) @ S4 )
            & ( ( Run @ S4 )
              = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S10 @ ( nth_set_a @ Vs @ I ) ) ) )
            & ( reaches_on_t_set_a @ Run @ S10 @ ( drop_set_a @ ( suc @ I ) @ Vs ) @ S2 ) ) ) ) ).

% reaches_on_split
thf(fact_560_reaches__on__split,axiom,
    ! [Run: nat > option4927543243414619207at_nat,S: nat,Vs: list_nat,S2: nat,I: nat] :
      ( ( reaches_on_nat_nat @ Run @ S @ Vs @ S2 )
     => ( ( ord_less_nat @ I @ ( size_size_list_nat @ Vs ) )
       => ? [S4: nat,S10: nat] :
            ( ( reaches_on_nat_nat @ Run @ S @ ( take_nat @ I @ Vs ) @ S4 )
            & ( ( Run @ S4 )
              = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S10 @ ( nth_nat @ Vs @ I ) ) ) )
            & ( reaches_on_nat_nat @ Run @ S10 @ ( drop_nat @ ( suc @ I ) @ Vs ) @ S2 ) ) ) ) ).

% reaches_on_split
thf(fact_561_reaches__on__split,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,I: nat] :
      ( ( reaches_on_h_t @ Run @ S @ Vs @ S2 )
     => ( ( ord_less_nat @ I @ ( size_size_list_t @ Vs ) )
       => ? [S4: h,S10: h] :
            ( ( reaches_on_h_t @ Run @ S @ ( take_t @ I @ Vs ) @ S4 )
            & ( ( Run @ S4 )
              = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S10 @ ( nth_t @ Vs @ I ) ) ) )
            & ( reaches_on_h_t @ Run @ S10 @ ( drop_t @ ( suc @ I ) @ Vs ) @ S2 ) ) ) ) ).

% reaches_on_split
thf(fact_562_reaches__on__split,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,S2: option2110264179601050681od_h_t,I: nat] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S2 )
     => ( ( ord_less_nat @ I @ ( size_size_list_t @ Vs ) )
       => ? [S4: option2110264179601050681od_h_t,S10: option2110264179601050681od_h_t] :
            ( ( reache645946503560514460_h_t_t @ Run @ S @ ( take_t @ I @ Vs ) @ S4 )
            & ( ( Run @ S4 )
              = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S10 @ ( nth_t @ Vs @ I ) ) ) )
            & ( reache645946503560514460_h_t_t @ Run @ S10 @ ( drop_t @ ( suc @ I ) @ Vs ) @ S2 ) ) ) ) ).

% reaches_on_split
thf(fact_563_reaches__on__split,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,I: nat] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S2 )
     => ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Vs ) )
       => ? [S4: h,S10: h] :
            ( ( reache3397181163414509427_set_a @ Run @ S @ ( take_P2822414627813279522_set_a @ I @ Vs ) @ S4 )
            & ( ( Run @ S4 )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S10 @ ( nth_Pr633927046780761275_set_a @ Vs @ I ) ) ) )
            & ( reache3397181163414509427_set_a @ Run @ S10 @ ( drop_P283403782220237946_set_a @ ( suc @ I ) @ Vs ) @ S2 ) ) ) ) ).

% reaches_on_split
thf(fact_564_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_565_Cons__lenlex__iff,axiom,
    ! [M: t,Ms: list_t,N: t,Ns: list_t,R: set_Product_prod_t_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ ( cons_t @ M @ Ms ) @ ( cons_t @ N @ Ns ) ) @ ( lenlex_t @ R ) )
      = ( ( ord_less_nat @ ( size_size_list_t @ Ms ) @ ( size_size_list_t @ Ns ) )
        | ( ( ( size_size_list_t @ Ms )
            = ( size_size_list_t @ Ns ) )
          & ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ M @ N ) @ R ) )
        | ( ( M = N )
          & ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Ms @ Ns ) @ ( lenlex_t @ R ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_566_Cons__lenlex__iff,axiom,
    ! [M: product_prod_t_set_a,Ms: list_P1095827921439705018_set_a,N: product_prod_t_set_a,Ns: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ ( cons_P6565363215658504938_set_a @ M @ Ms ) @ ( cons_P6565363215658504938_set_a @ N @ Ns ) ) @ ( lenlex9172771710577580863_set_a @ R ) )
      = ( ( ord_less_nat @ ( size_s5362121731612881446_set_a @ Ms ) @ ( size_s5362121731612881446_set_a @ Ns ) )
        | ( ( ( size_s5362121731612881446_set_a @ Ms )
            = ( size_s5362121731612881446_set_a @ Ns ) )
          & ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ M @ N ) @ R ) )
        | ( ( M = N )
          & ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Ms @ Ns ) @ ( lenlex9172771710577580863_set_a @ R ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_567_Cons__lenlex__iff,axiom,
    ! [M: produc3416767791517006041_set_a,Ms: list_P6739568432217944425_set_a,N: produc3416767791517006041_set_a,Ns: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ ( cons_P4636835598303252387_set_a @ M @ Ms ) @ ( cons_P4636835598303252387_set_a @ N @ Ns ) ) @ ( lenlex700694733380053262_set_a @ R ) )
      = ( ( ord_less_nat @ ( size_s6950157911653109757_set_a @ Ms ) @ ( size_s6950157911653109757_set_a @ Ns ) )
        | ( ( ( size_s6950157911653109757_set_a @ Ms )
            = ( size_s6950157911653109757_set_a @ Ns ) )
          & ( member8640275492606135612_set_a @ ( produc5532101387244520523_set_a @ M @ N ) @ R ) )
        | ( ( M = N )
          & ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Ms @ Ns ) @ ( lenlex700694733380053262_set_a @ R ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_568_Cons__lenlex__iff,axiom,
    ! [M: product_prod_nat_t,Ms: list_P4201438511612060998_nat_t,N: product_prod_nat_t,Ns: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ ( cons_P8443330349171532544_nat_t @ M @ Ms ) @ ( cons_P8443330349171532544_nat_t @ N @ Ns ) ) @ ( lenlex548651899613956971_nat_t @ R ) )
      = ( ( ord_less_nat @ ( size_s1593550824562968538_nat_t @ Ms ) @ ( size_s1593550824562968538_nat_t @ Ns ) )
        | ( ( ( size_s1593550824562968538_nat_t @ Ms )
            = ( size_s1593550824562968538_nat_t @ Ns ) )
          & ( member7182942125143788150_nat_t @ ( produc2776648103937650693_nat_t @ M @ N ) @ R ) )
        | ( ( M = N )
          & ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Ms @ Ns ) @ ( lenlex548651899613956971_nat_t @ R ) ) ) ) ) ).

% Cons_lenlex_iff
thf(fact_569_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A2: nat,B: nat] :
      ( ! [A4: nat,B3: nat] :
          ( ( P @ A4 @ B3 )
          = ( P @ B3 @ A4 ) )
     => ( ! [A4: nat] : ( P @ A4 @ zero_zero_nat )
       => ( ! [A4: nat,B3: nat] :
              ( ( P @ A4 @ B3 )
             => ( P @ A4 @ ( plus_plus_nat @ A4 @ B3 ) ) )
         => ( P @ A2 @ B ) ) ) ) ).

% Euclid_induct
thf(fact_570_nth__drop,axiom,
    ! [N: nat,Xs2: list_t,I: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_size_list_t @ Xs2 ) )
     => ( ( nth_t @ ( drop_t @ N @ Xs2 ) @ I )
        = ( nth_t @ Xs2 @ ( plus_plus_nat @ N @ I ) ) ) ) ).

% nth_drop
thf(fact_571_nth__drop,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a,I: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( nth_Pr633927046780761275_set_a @ ( drop_P283403782220237946_set_a @ N @ Xs2 ) @ I )
        = ( nth_Pr633927046780761275_set_a @ Xs2 @ ( plus_plus_nat @ N @ I ) ) ) ) ).

% nth_drop
thf(fact_572_nth__drop,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a,I: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( nth_Pr1324953721505055890_set_a @ ( drop_P8422428636864094739_set_a @ N @ Xs2 ) @ I )
        = ( nth_Pr1324953721505055890_set_a @ Xs2 @ ( plus_plus_nat @ N @ I ) ) ) ) ).

% nth_drop
thf(fact_573_nth__drop,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t,I: nat] :
      ( ( ord_less_eq_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( nth_Pr2476257163150662383_nat_t @ ( drop_P6121829286696379760_nat_t @ N @ Xs2 ) @ I )
        = ( nth_Pr2476257163150662383_nat_t @ Xs2 @ ( plus_plus_nat @ N @ I ) ) ) ) ).

% nth_drop
thf(fact_574_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y2: list_t,Z: list_t] : ( Y2 = Z ) )
    = ( ^ [Xs3: list_t,Ys2: list_t] :
          ( ( ( size_size_list_t @ Xs3 )
            = ( size_size_list_t @ Ys2 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_size_list_t @ Xs3 ) )
             => ( ( nth_t @ Xs3 @ I4 )
                = ( nth_t @ Ys2 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_575_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y2: list_P1095827921439705018_set_a,Z: list_P1095827921439705018_set_a] : ( Y2 = Z ) )
    = ( ^ [Xs3: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
          ( ( ( size_s5362121731612881446_set_a @ Xs3 )
            = ( size_s5362121731612881446_set_a @ Ys2 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_s5362121731612881446_set_a @ Xs3 ) )
             => ( ( nth_Pr633927046780761275_set_a @ Xs3 @ I4 )
                = ( nth_Pr633927046780761275_set_a @ Ys2 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_576_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y2: list_P6739568432217944425_set_a,Z: list_P6739568432217944425_set_a] : ( Y2 = Z ) )
    = ( ^ [Xs3: list_P6739568432217944425_set_a,Ys2: list_P6739568432217944425_set_a] :
          ( ( ( size_s6950157911653109757_set_a @ Xs3 )
            = ( size_s6950157911653109757_set_a @ Ys2 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_s6950157911653109757_set_a @ Xs3 ) )
             => ( ( nth_Pr1324953721505055890_set_a @ Xs3 @ I4 )
                = ( nth_Pr1324953721505055890_set_a @ Ys2 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_577_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y2: list_P4201438511612060998_nat_t,Z: list_P4201438511612060998_nat_t] : ( Y2 = Z ) )
    = ( ^ [Xs3: list_P4201438511612060998_nat_t,Ys2: list_P4201438511612060998_nat_t] :
          ( ( ( size_s1593550824562968538_nat_t @ Xs3 )
            = ( size_s1593550824562968538_nat_t @ Ys2 ) )
          & ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ ( size_s1593550824562968538_nat_t @ Xs3 ) )
             => ( ( nth_Pr2476257163150662383_nat_t @ Xs3 @ I4 )
                = ( nth_Pr2476257163150662383_nat_t @ Ys2 @ I4 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_578_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > t > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X2: t] : ( P @ I4 @ X2 ) ) )
      = ( ? [Xs3: list_t] :
            ( ( ( size_size_list_t @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P @ I4 @ ( nth_t @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_579_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > product_prod_t_set_a > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X2: product_prod_t_set_a] : ( P @ I4 @ X2 ) ) )
      = ( ? [Xs3: list_P1095827921439705018_set_a] :
            ( ( ( size_s5362121731612881446_set_a @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P @ I4 @ ( nth_Pr633927046780761275_set_a @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_580_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > produc3416767791517006041_set_a > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X2: produc3416767791517006041_set_a] : ( P @ I4 @ X2 ) ) )
      = ( ? [Xs3: list_P6739568432217944425_set_a] :
            ( ( ( size_s6950157911653109757_set_a @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P @ I4 @ ( nth_Pr1324953721505055890_set_a @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_581_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > product_prod_nat_t > $o] :
      ( ( ! [I4: nat] :
            ( ( ord_less_nat @ I4 @ K )
           => ? [X2: product_prod_nat_t] : ( P @ I4 @ X2 ) ) )
      = ( ? [Xs3: list_P4201438511612060998_nat_t] :
            ( ( ( size_s1593550824562968538_nat_t @ Xs3 )
              = K )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K )
               => ( P @ I4 @ ( nth_Pr2476257163150662383_nat_t @ Xs3 @ I4 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_582_nth__equalityI,axiom,
    ! [Xs2: list_t,Ys: list_t] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Xs2 ) )
           => ( ( nth_t @ Xs2 @ I3 )
              = ( nth_t @ Ys @ I3 ) ) )
       => ( Xs2 = Ys ) ) ) ).

% nth_equalityI
thf(fact_583_nth__equalityI,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5362121731612881446_set_a @ Xs2 ) )
           => ( ( nth_Pr633927046780761275_set_a @ Xs2 @ I3 )
              = ( nth_Pr633927046780761275_set_a @ Ys @ I3 ) ) )
       => ( Xs2 = Ys ) ) ) ).

% nth_equalityI
thf(fact_584_nth__equalityI,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
        = ( size_s6950157911653109757_set_a @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6950157911653109757_set_a @ Xs2 ) )
           => ( ( nth_Pr1324953721505055890_set_a @ Xs2 @ I3 )
              = ( nth_Pr1324953721505055890_set_a @ Ys @ I3 ) ) )
       => ( Xs2 = Ys ) ) ) ).

% nth_equalityI
thf(fact_585_nth__equalityI,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
           => ( ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I3 )
              = ( nth_Pr2476257163150662383_nat_t @ Ys @ I3 ) ) )
       => ( Xs2 = Ys ) ) ) ).

% nth_equalityI
thf(fact_586_nth__enumerate__eq,axiom,
    ! [M: nat,Xs2: list_nat,N: nat] :
      ( ( ord_less_nat @ M @ ( size_size_list_nat @ Xs2 ) )
     => ( ( nth_Pr7617993195940197384at_nat @ ( enumerate_nat @ N @ Xs2 ) @ M )
        = ( product_Pair_nat_nat @ ( plus_plus_nat @ N @ M ) @ ( nth_nat @ Xs2 @ M ) ) ) ) ).

% nth_enumerate_eq
thf(fact_587_nth__enumerate__eq,axiom,
    ! [M: nat,Xs2: list_t,N: nat] :
      ( ( ord_less_nat @ M @ ( size_size_list_t @ Xs2 ) )
     => ( ( nth_Pr2476257163150662383_nat_t @ ( enumerate_t @ N @ Xs2 ) @ M )
        = ( product_Pair_nat_t @ ( plus_plus_nat @ N @ M ) @ ( nth_t @ Xs2 @ M ) ) ) ) ).

% nth_enumerate_eq
thf(fact_588_nth__enumerate__eq,axiom,
    ! [M: nat,Xs2: list_P1095827921439705018_set_a,N: nat] :
      ( ( ord_less_nat @ M @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( nth_Pr1324953721505055890_set_a @ ( enumer4564034045956179481_set_a @ N @ Xs2 ) @ M )
        = ( produc1331735522928163851_set_a @ ( plus_plus_nat @ N @ M ) @ ( nth_Pr633927046780761275_set_a @ Xs2 @ M ) ) ) ) ).

% nth_enumerate_eq
thf(fact_589_nth__enumerate__eq,axiom,
    ! [M: nat,Xs2: list_P6739568432217944425_set_a,N: nat] :
      ( ( ord_less_nat @ M @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( nth_Pr8284457900147689105_set_a @ ( enumer7763302717704308148_set_a @ N @ Xs2 ) @ M )
        = ( produc6363918193147894082_set_a @ ( plus_plus_nat @ N @ M ) @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ M ) ) ) ) ).

% nth_enumerate_eq
thf(fact_590_nth__enumerate__eq,axiom,
    ! [M: nat,Xs2: list_P4201438511612060998_nat_t,N: nat] :
      ( ( ord_less_nat @ M @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( nth_Pr8123890867510592110_nat_t @ ( enumer6477790069082461713_nat_t @ N @ Xs2 ) @ M )
        = ( produc3386237057313890207_nat_t @ ( plus_plus_nat @ N @ M ) @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ M ) ) ) ) ).

% nth_enumerate_eq
thf(fact_591_lenlex__irreflexive,axiom,
    ! [R: set_Pr1261947904930325089at_nat,Xs2: list_nat] :
      ( ! [X4: nat] :
          ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ X4 ) @ R )
     => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Xs2 ) @ ( lenlex_nat @ R ) ) ) ).

% lenlex_irreflexive
thf(fact_592_nth__take__lemma,axiom,
    ! [K: nat,Xs2: list_t,Ys: list_t] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_t @ Xs2 ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_t @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ K )
             => ( ( nth_t @ Xs2 @ I3 )
                = ( nth_t @ Ys @ I3 ) ) )
         => ( ( take_t @ K @ Xs2 )
            = ( take_t @ K @ Ys ) ) ) ) ) ).

% nth_take_lemma
thf(fact_593_nth__take__lemma,axiom,
    ! [K: nat,Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( ord_less_eq_nat @ K @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s5362121731612881446_set_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ K )
             => ( ( nth_Pr633927046780761275_set_a @ Xs2 @ I3 )
                = ( nth_Pr633927046780761275_set_a @ Ys @ I3 ) ) )
         => ( ( take_P2822414627813279522_set_a @ K @ Xs2 )
            = ( take_P2822414627813279522_set_a @ K @ Ys ) ) ) ) ) ).

% nth_take_lemma
thf(fact_594_nth__take__lemma,axiom,
    ! [K: nat,Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( ord_less_eq_nat @ K @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s6950157911653109757_set_a @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ K )
             => ( ( nth_Pr1324953721505055890_set_a @ Xs2 @ I3 )
                = ( nth_Pr1324953721505055890_set_a @ Ys @ I3 ) ) )
         => ( ( take_P1723439655008974187_set_a @ K @ Xs2 )
            = ( take_P1723439655008974187_set_a @ K @ Ys ) ) ) ) ) ).

% nth_take_lemma
thf(fact_595_nth__take__lemma,axiom,
    ! [K: nat,Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( ord_less_eq_nat @ K @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s1593550824562968538_nat_t @ Ys ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ K )
             => ( ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I3 )
                = ( nth_Pr2476257163150662383_nat_t @ Ys @ I3 ) ) )
         => ( ( take_P1264513708533117128_nat_t @ K @ Xs2 )
            = ( take_P1264513708533117128_nat_t @ K @ Ys ) ) ) ) ) ).

% nth_take_lemma
thf(fact_596_lenlex__length,axiom,
    ! [Ms: list_t,Ns: list_t,R: set_Product_prod_t_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Ms @ Ns ) @ ( lenlex_t @ R ) )
     => ( ord_less_eq_nat @ ( size_size_list_t @ Ms ) @ ( size_size_list_t @ Ns ) ) ) ).

% lenlex_length
thf(fact_597_lenlex__length,axiom,
    ! [Ms: list_P1095827921439705018_set_a,Ns: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Ms @ Ns ) @ ( lenlex9172771710577580863_set_a @ R ) )
     => ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Ms ) @ ( size_s5362121731612881446_set_a @ Ns ) ) ) ).

% lenlex_length
thf(fact_598_lenlex__length,axiom,
    ! [Ms: list_P6739568432217944425_set_a,Ns: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Ms @ Ns ) @ ( lenlex700694733380053262_set_a @ R ) )
     => ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Ms ) @ ( size_s6950157911653109757_set_a @ Ns ) ) ) ).

% lenlex_length
thf(fact_599_lenlex__length,axiom,
    ! [Ms: list_P4201438511612060998_nat_t,Ns: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Ms @ Ns ) @ ( lenlex548651899613956971_nat_t @ R ) )
     => ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Ms ) @ ( size_s1593550824562968538_nat_t @ Ns ) ) ) ).

% lenlex_length
thf(fact_600_Cons__nth__drop__Suc,axiom,
    ! [I: nat,Xs2: list_t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( ( cons_t @ ( nth_t @ Xs2 @ I ) @ ( drop_t @ ( suc @ I ) @ Xs2 ) )
        = ( drop_t @ I @ Xs2 ) ) ) ).

% Cons_nth_drop_Suc
thf(fact_601_Cons__nth__drop__Suc,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( cons_P6565363215658504938_set_a @ ( nth_Pr633927046780761275_set_a @ Xs2 @ I ) @ ( drop_P283403782220237946_set_a @ ( suc @ I ) @ Xs2 ) )
        = ( drop_P283403782220237946_set_a @ I @ Xs2 ) ) ) ).

% Cons_nth_drop_Suc
thf(fact_602_Cons__nth__drop__Suc,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( cons_P4636835598303252387_set_a @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ I ) @ ( drop_P8422428636864094739_set_a @ ( suc @ I ) @ Xs2 ) )
        = ( drop_P8422428636864094739_set_a @ I @ Xs2 ) ) ) ).

% Cons_nth_drop_Suc
thf(fact_603_Cons__nth__drop__Suc,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( cons_P8443330349171532544_nat_t @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I ) @ ( drop_P6121829286696379760_nat_t @ ( suc @ I ) @ Xs2 ) )
        = ( drop_P6121829286696379760_nat_t @ I @ Xs2 ) ) ) ).

% Cons_nth_drop_Suc
thf(fact_604_lex__take__index,axiom,
    ! [Xs2: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( lex_nat @ R ) )
     => ~ ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs2 ) )
           => ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ys ) )
             => ( ( ( take_nat @ I3 @ Xs2 )
                  = ( take_nat @ I3 @ Ys ) )
               => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Xs2 @ I3 ) @ ( nth_nat @ Ys @ I3 ) ) @ R ) ) ) ) ) ).

% lex_take_index
thf(fact_605_lex__take__index,axiom,
    ! [Xs2: list_t,Ys: list_t,R: set_Product_prod_t_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Xs2 @ Ys ) @ ( lex_t @ R ) )
     => ~ ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Xs2 ) )
           => ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Ys ) )
             => ( ( ( take_t @ I3 @ Xs2 )
                  = ( take_t @ I3 @ Ys ) )
               => ~ ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ ( nth_t @ Xs2 @ I3 ) @ ( nth_t @ Ys @ I3 ) ) @ R ) ) ) ) ) ).

% lex_take_index
thf(fact_606_lex__take__index,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Xs2 @ Ys ) @ ( lex_Pr3546421067709956510_set_a @ R ) )
     => ~ ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5362121731612881446_set_a @ Xs2 ) )
           => ( ( ord_less_nat @ I3 @ ( size_s5362121731612881446_set_a @ Ys ) )
             => ( ( ( take_P2822414627813279522_set_a @ I3 @ Xs2 )
                  = ( take_P2822414627813279522_set_a @ I3 @ Ys ) )
               => ~ ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( nth_Pr633927046780761275_set_a @ Xs2 @ I3 ) @ ( nth_Pr633927046780761275_set_a @ Ys @ I3 ) ) @ R ) ) ) ) ) ).

% lex_take_index
thf(fact_607_lex__take__index,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Xs2 @ Ys ) @ ( lex_Pr6838511504502894575_set_a @ R ) )
     => ~ ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s6950157911653109757_set_a @ Xs2 ) )
           => ( ( ord_less_nat @ I3 @ ( size_s6950157911653109757_set_a @ Ys ) )
             => ( ( ( take_P1723439655008974187_set_a @ I3 @ Xs2 )
                  = ( take_P1723439655008974187_set_a @ I3 @ Ys ) )
               => ~ ( member8640275492606135612_set_a @ ( produc5532101387244520523_set_a @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ I3 ) @ ( nth_Pr1324953721505055890_set_a @ Ys @ I3 ) ) @ R ) ) ) ) ) ).

% lex_take_index
thf(fact_608_lex__take__index,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Xs2 @ Ys ) @ ( lex_Pr4364183600902119244_nat_t @ R ) )
     => ~ ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
           => ( ( ord_less_nat @ I3 @ ( size_s1593550824562968538_nat_t @ Ys ) )
             => ( ( ( take_P1264513708533117128_nat_t @ I3 @ Xs2 )
                  = ( take_P1264513708533117128_nat_t @ I3 @ Ys ) )
               => ~ ( member7182942125143788150_nat_t @ ( produc2776648103937650693_nat_t @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I3 ) @ ( nth_Pr2476257163150662383_nat_t @ Ys @ I3 ) ) @ R ) ) ) ) ) ).

% lex_take_index
thf(fact_609_chain__le,axiom,
    ! [Xs2: list_t,I: nat,J: nat] :
      ( ( chain_le_t @ Xs2 )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_t @ Xs2 ) )
         => ( ord_less_eq_t @ ( nth_t @ Xs2 @ I ) @ ( nth_t @ Xs2 @ J ) ) ) ) ) ).

% chain_le
thf(fact_610_chain__le,axiom,
    ! [Xs2: list_nat,I: nat,J: nat] :
      ( ( chain_le_nat @ Xs2 )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs2 ) )
         => ( ord_less_eq_nat @ ( nth_nat @ Xs2 @ I ) @ ( nth_nat @ Xs2 @ J ) ) ) ) ) ).

% chain_le
thf(fact_611_run__subs__vD,axiom,
    ! [Run: t > option5775791656947114332_set_a,Vs: list_t,Vs2: list_h,Bs: iarray_set_a,J: nat] :
      ( ( ( run_subs_t_h_t_set_a @ Run @ Vs )
        = ( some_P7355459033391471877_set_a @ ( produc2489086116771085328_set_a @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_t @ Vs ) )
       => ? [Vj: h,Tj: t,Bj: set_a] :
            ( ( ( Run @ ( nth_t @ Vs @ J ) )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ Vj @ ( product_Pair_t_set_a @ Tj @ Bj ) ) ) )
            & ( ( nth_h @ Vs2 @ J )
              = Vj )
            & ( ( sub_set_a @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_612_run__subs__vD,axiom,
    ! [Run: product_prod_t_set_a > option5775791656947114332_set_a,Vs: list_P1095827921439705018_set_a,Vs2: list_h,Bs: iarray_set_a,J: nat] :
      ( ( ( run_su8365392467984265486_set_a @ Run @ Vs )
        = ( some_P7355459033391471877_set_a @ ( produc2489086116771085328_set_a @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_s5362121731612881446_set_a @ Vs ) )
       => ? [Vj: h,Tj: t,Bj: set_a] :
            ( ( ( Run @ ( nth_Pr633927046780761275_set_a @ Vs @ J ) )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ Vj @ ( product_Pair_t_set_a @ Tj @ Bj ) ) ) )
            & ( ( nth_h @ Vs2 @ J )
              = Vj )
            & ( ( sub_set_a @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_613_run__subs__vD,axiom,
    ! [Run: produc3416767791517006041_set_a > option5775791656947114332_set_a,Vs: list_P6739568432217944425_set_a,Vs2: list_h,Bs: iarray_set_a,J: nat] :
      ( ( ( run_su6538576578939915079_set_a @ Run @ Vs )
        = ( some_P7355459033391471877_set_a @ ( produc2489086116771085328_set_a @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_s6950157911653109757_set_a @ Vs ) )
       => ? [Vj: h,Tj: t,Bj: set_a] :
            ( ( ( Run @ ( nth_Pr1324953721505055890_set_a @ Vs @ J ) )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ Vj @ ( product_Pair_t_set_a @ Tj @ Bj ) ) ) )
            & ( ( nth_h @ Vs2 @ J )
              = Vj )
            & ( ( sub_set_a @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_614_run__subs__vD,axiom,
    ! [Run: product_prod_nat_t > option5775791656947114332_set_a,Vs: list_P4201438511612060998_nat_t,Vs2: list_h,Bs: iarray_set_a,J: nat] :
      ( ( ( run_su4854328543928480938_set_a @ Run @ Vs )
        = ( some_P7355459033391471877_set_a @ ( produc2489086116771085328_set_a @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_s1593550824562968538_nat_t @ Vs ) )
       => ? [Vj: h,Tj: t,Bj: set_a] :
            ( ( ( Run @ ( nth_Pr2476257163150662383_nat_t @ Vs @ J ) )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ Vj @ ( product_Pair_t_set_a @ Tj @ Bj ) ) ) )
            & ( ( nth_h @ Vs2 @ J )
              = Vj )
            & ( ( sub_set_a @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_615_sorted__list__atD,axiom,
    ! [Xs2: list_t,I: nat,J: nat] :
      ( ( sorted_list_t @ Xs2 )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_t @ Xs2 ) )
         => ( ord_less_eq_t @ ( nth_t @ Xs2 @ I ) @ ( nth_t @ Xs2 @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_616_sorted__list__atD,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,I: nat,J: nat] :
      ( ( sorted5003863949113869663_set_a @ Xs2 )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s5362121731612881446_set_a @ Xs2 ) )
         => ( ord_le1576776917030837460_set_a @ ( nth_Pr633927046780761275_set_a @ Xs2 @ I ) @ ( nth_Pr633927046780761275_set_a @ Xs2 @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_617_sorted__list__atD,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,I: nat,J: nat] :
      ( ( sorted4478976867109148398_set_a @ Xs2 )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s6950157911653109757_set_a @ Xs2 ) )
         => ( ord_le282975657701390649_set_a @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ I ) @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_618_sorted__list__atD,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,I: nat,J: nat] :
      ( ( sorted1655624744600754507_nat_t @ Xs2 )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
         => ( ord_le8519243152518785686_nat_t @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I ) @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_619_sorted__list__atD,axiom,
    ! [Xs2: list_nat,I: nat,J: nat] :
      ( ( sorted_list_nat @ Xs2 )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs2 ) )
         => ( ord_less_eq_nat @ ( nth_nat @ Xs2 @ I ) @ ( nth_nat @ Xs2 @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_620_sorted__list__Cons__nth,axiom,
    ! [X: t,Xs2: list_t,J: nat] :
      ( ( sorted_list_t @ ( cons_t @ X @ Xs2 ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_t @ Xs2 ) )
       => ( ord_less_eq_t @ X @ ( nth_t @ Xs2 @ J ) ) ) ) ).

% sorted_list_Cons_nth
thf(fact_621_sorted__list__Cons__nth,axiom,
    ! [X: product_prod_t_set_a,Xs2: list_P1095827921439705018_set_a,J: nat] :
      ( ( sorted5003863949113869663_set_a @ ( cons_P6565363215658504938_set_a @ X @ Xs2 ) )
     => ( ( ord_less_nat @ J @ ( size_s5362121731612881446_set_a @ Xs2 ) )
       => ( ord_le1576776917030837460_set_a @ X @ ( nth_Pr633927046780761275_set_a @ Xs2 @ J ) ) ) ) ).

% sorted_list_Cons_nth
thf(fact_622_sorted__list__Cons__nth,axiom,
    ! [X: produc3416767791517006041_set_a,Xs2: list_P6739568432217944425_set_a,J: nat] :
      ( ( sorted4478976867109148398_set_a @ ( cons_P4636835598303252387_set_a @ X @ Xs2 ) )
     => ( ( ord_less_nat @ J @ ( size_s6950157911653109757_set_a @ Xs2 ) )
       => ( ord_le282975657701390649_set_a @ X @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ J ) ) ) ) ).

% sorted_list_Cons_nth
thf(fact_623_sorted__list__Cons__nth,axiom,
    ! [X: product_prod_nat_t,Xs2: list_P4201438511612060998_nat_t,J: nat] :
      ( ( sorted1655624744600754507_nat_t @ ( cons_P8443330349171532544_nat_t @ X @ Xs2 ) )
     => ( ( ord_less_nat @ J @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
       => ( ord_le8519243152518785686_nat_t @ X @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ J ) ) ) ) ).

% sorted_list_Cons_nth
thf(fact_624_sorted__list__Cons__nth,axiom,
    ! [X: nat,Xs2: list_nat,J: nat] :
      ( ( sorted_list_nat @ ( cons_nat @ X @ Xs2 ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs2 ) )
       => ( ord_less_eq_nat @ X @ ( nth_nat @ Xs2 @ J ) ) ) ) ).

% sorted_list_Cons_nth
thf(fact_625_sorted__list_Ointros_I3_J,axiom,
    ! [X: nat,Y: nat,Ys: list_nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( sorted_list_nat @ ( cons_nat @ Y @ Ys ) )
       => ( sorted_list_nat @ ( cons_nat @ X @ ( cons_nat @ Y @ Ys ) ) ) ) ) ).

% sorted_list.intros(3)
thf(fact_626_chain__le__cons,axiom,
    ! [Y: nat,Xs2: list_nat,X: nat] :
      ( ( chain_le_nat @ ( cons_nat @ Y @ Xs2 ) )
     => ( ( ord_less_eq_nat @ X @ Y )
       => ( chain_le_nat @ ( cons_nat @ X @ ( cons_nat @ Y @ Xs2 ) ) ) ) ) ).

% chain_le_cons
thf(fact_627_id__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( Xs2
        = ( append_t @ ( take_t @ I @ Xs2 ) @ ( cons_t @ ( nth_t @ Xs2 @ I ) @ ( drop_t @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% id_take_nth_drop
thf(fact_628_id__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( Xs2
        = ( append8768163766229313743_set_a @ ( take_P2822414627813279522_set_a @ I @ Xs2 ) @ ( cons_P6565363215658504938_set_a @ ( nth_Pr633927046780761275_set_a @ Xs2 @ I ) @ ( drop_P283403782220237946_set_a @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% id_take_nth_drop
thf(fact_629_id__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( Xs2
        = ( append7235343099912497022_set_a @ ( take_P1723439655008974187_set_a @ I @ Xs2 ) @ ( cons_P4636835598303252387_set_a @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ I ) @ ( drop_P8422428636864094739_set_a @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% id_take_nth_drop
thf(fact_630_id__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( Xs2
        = ( append1694031088188373467_nat_t @ ( take_P1264513708533117128_nat_t @ I @ Xs2 ) @ ( cons_P8443330349171532544_nat_t @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I ) @ ( drop_P6121829286696379760_nat_t @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% id_take_nth_drop
thf(fact_631_append__eq__append__conv,axiom,
    ! [Xs2: list_t,Ys: list_t,Us: list_t,Vs: list_t] :
      ( ( ( ( size_size_list_t @ Xs2 )
          = ( size_size_list_t @ Ys ) )
        | ( ( size_size_list_t @ Us )
          = ( size_size_list_t @ Vs ) ) )
     => ( ( ( append_t @ Xs2 @ Us )
          = ( append_t @ Ys @ Vs ) )
        = ( ( Xs2 = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_632_append__eq__append__conv,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,Us: list_P1095827921439705018_set_a,Vs: list_P1095827921439705018_set_a] :
      ( ( ( ( size_s5362121731612881446_set_a @ Xs2 )
          = ( size_s5362121731612881446_set_a @ Ys ) )
        | ( ( size_s5362121731612881446_set_a @ Us )
          = ( size_s5362121731612881446_set_a @ Vs ) ) )
     => ( ( ( append8768163766229313743_set_a @ Xs2 @ Us )
          = ( append8768163766229313743_set_a @ Ys @ Vs ) )
        = ( ( Xs2 = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_633_append__eq__append__conv,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,Us: list_P6739568432217944425_set_a,Vs: list_P6739568432217944425_set_a] :
      ( ( ( ( size_s6950157911653109757_set_a @ Xs2 )
          = ( size_s6950157911653109757_set_a @ Ys ) )
        | ( ( size_s6950157911653109757_set_a @ Us )
          = ( size_s6950157911653109757_set_a @ Vs ) ) )
     => ( ( ( append7235343099912497022_set_a @ Xs2 @ Us )
          = ( append7235343099912497022_set_a @ Ys @ Vs ) )
        = ( ( Xs2 = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_634_append__eq__append__conv,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,Us: list_P4201438511612060998_nat_t,Vs: list_P4201438511612060998_nat_t] :
      ( ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
          = ( size_s1593550824562968538_nat_t @ Ys ) )
        | ( ( size_s1593550824562968538_nat_t @ Us )
          = ( size_s1593550824562968538_nat_t @ Vs ) ) )
     => ( ( ( append1694031088188373467_nat_t @ Xs2 @ Us )
          = ( append1694031088188373467_nat_t @ Ys @ Vs ) )
        = ( ( Xs2 = Ys )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_635_length__append,axiom,
    ! [Xs2: list_t,Ys: list_t] :
      ( ( size_size_list_t @ ( append_t @ Xs2 @ Ys ) )
      = ( plus_plus_nat @ ( size_size_list_t @ Xs2 ) @ ( size_size_list_t @ Ys ) ) ) ).

% length_append
thf(fact_636_length__append,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) )
      = ( plus_plus_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ ( size_s5362121731612881446_set_a @ Ys ) ) ) ).

% length_append
thf(fact_637_length__append,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) )
      = ( plus_plus_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ ( size_s6950157911653109757_set_a @ Ys ) ) ) ).

% length_append
thf(fact_638_length__append,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) )
      = ( plus_plus_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ ( size_s1593550824562968538_nat_t @ Ys ) ) ) ).

% length_append
thf(fact_639_nth__append__length,axiom,
    ! [Xs2: list_t,X: t,Ys: list_t] :
      ( ( nth_t @ ( append_t @ Xs2 @ ( cons_t @ X @ Ys ) ) @ ( size_size_list_t @ Xs2 ) )
      = X ) ).

% nth_append_length
thf(fact_640_nth__append__length,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,X: product_prod_t_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( nth_Pr633927046780761275_set_a @ ( append8768163766229313743_set_a @ Xs2 @ ( cons_P6565363215658504938_set_a @ X @ Ys ) ) @ ( size_s5362121731612881446_set_a @ Xs2 ) )
      = X ) ).

% nth_append_length
thf(fact_641_nth__append__length,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( nth_Pr1324953721505055890_set_a @ ( append7235343099912497022_set_a @ Xs2 @ ( cons_P4636835598303252387_set_a @ X @ Ys ) ) @ ( size_s6950157911653109757_set_a @ Xs2 ) )
      = X ) ).

% nth_append_length
thf(fact_642_nth__append__length,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,X: product_prod_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( nth_Pr2476257163150662383_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ ( cons_P8443330349171532544_nat_t @ X @ Ys ) ) @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
      = X ) ).

% nth_append_length
thf(fact_643_nth__append__length__plus,axiom,
    ! [Xs2: list_t,Ys: list_t,N: nat] :
      ( ( nth_t @ ( append_t @ Xs2 @ Ys ) @ ( plus_plus_nat @ ( size_size_list_t @ Xs2 ) @ N ) )
      = ( nth_t @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_644_nth__append__length__plus,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,N: nat] :
      ( ( nth_Pr633927046780761275_set_a @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) @ ( plus_plus_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ N ) )
      = ( nth_Pr633927046780761275_set_a @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_645_nth__append__length__plus,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,N: nat] :
      ( ( nth_Pr1324953721505055890_set_a @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) @ ( plus_plus_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ N ) )
      = ( nth_Pr1324953721505055890_set_a @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_646_nth__append__length__plus,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,N: nat] :
      ( ( nth_Pr2476257163150662383_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) @ ( plus_plus_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ N ) )
      = ( nth_Pr2476257163150662383_nat_t @ Ys @ N ) ) ).

% nth_append_length_plus
thf(fact_647_reaches__on__split__app,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,Vs2: list_t,S2: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ ( append_t @ Vs @ Vs2 ) @ S2 )
     => ? [S4: option2110264179601050681od_h_t] :
          ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S4 )
          & ( reache645946503560514460_h_t_t @ Run @ S4 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_648_reaches__on__split__app,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,Vs2: list_P1095827921439705018_set_a,S2: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ ( append8768163766229313743_set_a @ Vs @ Vs2 ) @ S2 )
     => ? [S4: h] :
          ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S4 )
          & ( reache3397181163414509427_set_a @ Run @ S4 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_649_reaches__on__trans,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,S2: option2110264179601050681od_h_t,Vs2: list_t,S3: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S2 )
     => ( ( reache645946503560514460_h_t_t @ Run @ S2 @ Vs2 @ S3 )
       => ( reache645946503560514460_h_t_t @ Run @ S @ ( append_t @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_650_reaches__on__trans,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,Vs2: list_P1095827921439705018_set_a,S3: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S2 )
     => ( ( reache3397181163414509427_set_a @ Run @ S2 @ Vs2 @ S3 )
       => ( reache3397181163414509427_set_a @ Run @ S @ ( append8768163766229313743_set_a @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_651_enumerate__append__eq,axiom,
    ! [N: nat,Xs2: list_t,Ys: list_t] :
      ( ( enumerate_t @ N @ ( append_t @ Xs2 @ Ys ) )
      = ( append1694031088188373467_nat_t @ ( enumerate_t @ N @ Xs2 ) @ ( enumerate_t @ ( plus_plus_nat @ N @ ( size_size_list_t @ Xs2 ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_652_enumerate__append__eq,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( enumer4564034045956179481_set_a @ N @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) )
      = ( append7235343099912497022_set_a @ ( enumer4564034045956179481_set_a @ N @ Xs2 ) @ ( enumer4564034045956179481_set_a @ ( plus_plus_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_653_enumerate__append__eq,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( enumer7763302717704308148_set_a @ N @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) )
      = ( append7877908342654880933_set_a @ ( enumer7763302717704308148_set_a @ N @ Xs2 ) @ ( enumer7763302717704308148_set_a @ ( plus_plus_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_654_enumerate__append__eq,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( enumer6477790069082461713_nat_t @ N @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) )
      = ( append8177913269955611778_nat_t @ ( enumer6477790069082461713_nat_t @ N @ Xs2 ) @ ( enumer6477790069082461713_nat_t @ ( plus_plus_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) ) @ Ys ) ) ) ).

% enumerate_append_eq
thf(fact_655_rotate__append,axiom,
    ! [L: list_t,Q: list_t] :
      ( ( rotate_t @ ( size_size_list_t @ L ) @ ( append_t @ L @ Q ) )
      = ( append_t @ Q @ L ) ) ).

% rotate_append
thf(fact_656_rotate__append,axiom,
    ! [L: list_P1095827921439705018_set_a,Q: list_P1095827921439705018_set_a] :
      ( ( rotate4948212982839034734_set_a @ ( size_s5362121731612881446_set_a @ L ) @ ( append8768163766229313743_set_a @ L @ Q ) )
      = ( append8768163766229313743_set_a @ Q @ L ) ) ).

% rotate_append
thf(fact_657_rotate__append,axiom,
    ! [L: list_P6739568432217944425_set_a,Q: list_P6739568432217944425_set_a] :
      ( ( rotate3591195261073959455_set_a @ ( size_s6950157911653109757_set_a @ L ) @ ( append7235343099912497022_set_a @ L @ Q ) )
      = ( append7235343099912497022_set_a @ Q @ L ) ) ).

% rotate_append
thf(fact_658_rotate__append,axiom,
    ! [L: list_P4201438511612060998_nat_t,Q: list_P4201438511612060998_nat_t] :
      ( ( rotate7455341356463262076_nat_t @ ( size_s1593550824562968538_nat_t @ L ) @ ( append1694031088188373467_nat_t @ L @ Q ) )
      = ( append1694031088188373467_nat_t @ Q @ L ) ) ).

% rotate_append
thf(fact_659_append__eq__conv__conj,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_t] :
      ( ( ( append_t @ Xs2 @ Ys )
        = Zs )
      = ( ( Xs2
          = ( take_t @ ( size_size_list_t @ Xs2 ) @ Zs ) )
        & ( Ys
          = ( drop_t @ ( size_size_list_t @ Xs2 ) @ Zs ) ) ) ) ).

% append_eq_conv_conj
thf(fact_660_append__eq__conv__conj,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,Zs: list_P1095827921439705018_set_a] :
      ( ( ( append8768163766229313743_set_a @ Xs2 @ Ys )
        = Zs )
      = ( ( Xs2
          = ( take_P2822414627813279522_set_a @ ( size_s5362121731612881446_set_a @ Xs2 ) @ Zs ) )
        & ( Ys
          = ( drop_P283403782220237946_set_a @ ( size_s5362121731612881446_set_a @ Xs2 ) @ Zs ) ) ) ) ).

% append_eq_conv_conj
thf(fact_661_append__eq__conv__conj,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,Zs: list_P6739568432217944425_set_a] :
      ( ( ( append7235343099912497022_set_a @ Xs2 @ Ys )
        = Zs )
      = ( ( Xs2
          = ( take_P1723439655008974187_set_a @ ( size_s6950157911653109757_set_a @ Xs2 ) @ Zs ) )
        & ( Ys
          = ( drop_P8422428636864094739_set_a @ ( size_s6950157911653109757_set_a @ Xs2 ) @ Zs ) ) ) ) ).

% append_eq_conv_conj
thf(fact_662_append__eq__conv__conj,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,Zs: list_P4201438511612060998_nat_t] :
      ( ( ( append1694031088188373467_nat_t @ Xs2 @ Ys )
        = Zs )
      = ( ( Xs2
          = ( take_P1264513708533117128_nat_t @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ Zs ) )
        & ( Ys
          = ( drop_P6121829286696379760_nat_t @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ Zs ) ) ) ) ).

% append_eq_conv_conj
thf(fact_663_lex__append__left__iff,axiom,
    ! [R: set_Pr1261947904930325089at_nat,Xs2: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ! [X4: nat] :
          ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ X4 ) @ R )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs2 @ Ys ) @ ( append_nat @ Xs2 @ Zs ) ) @ ( lex_nat @ R ) )
        = ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ys @ Zs ) @ ( lex_nat @ R ) ) ) ) ).

% lex_append_left_iff
thf(fact_664_lex__append__leftD,axiom,
    ! [R: set_Pr1261947904930325089at_nat,Xs2: list_nat,Ys: list_nat,Zs: list_nat] :
      ( ! [X4: nat] :
          ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ X4 ) @ R )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs2 @ Ys ) @ ( append_nat @ Xs2 @ Zs ) ) @ ( lex_nat @ R ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ys @ Zs ) @ ( lex_nat @ R ) ) ) ) ).

% lex_append_leftD
thf(fact_665_lex__append__rightI,axiom,
    ! [Xs2: list_t,Ys: list_t,R: set_Product_prod_t_t,Vs: list_t,Us: list_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Xs2 @ Ys ) @ ( lex_t @ R ) )
     => ( ( ( size_size_list_t @ Vs )
          = ( size_size_list_t @ Us ) )
       => ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ ( append_t @ Xs2 @ Us ) @ ( append_t @ Ys @ Vs ) ) @ ( lex_t @ R ) ) ) ) ).

% lex_append_rightI
thf(fact_666_lex__append__rightI,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a,Vs: list_P1095827921439705018_set_a,Us: list_P1095827921439705018_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Xs2 @ Ys ) @ ( lex_Pr3546421067709956510_set_a @ R ) )
     => ( ( ( size_s5362121731612881446_set_a @ Vs )
          = ( size_s5362121731612881446_set_a @ Us ) )
       => ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ ( append8768163766229313743_set_a @ Xs2 @ Us ) @ ( append8768163766229313743_set_a @ Ys @ Vs ) ) @ ( lex_Pr3546421067709956510_set_a @ R ) ) ) ) ).

% lex_append_rightI
thf(fact_667_lex__append__rightI,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a,Vs: list_P6739568432217944425_set_a,Us: list_P6739568432217944425_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Xs2 @ Ys ) @ ( lex_Pr6838511504502894575_set_a @ R ) )
     => ( ( ( size_s6950157911653109757_set_a @ Vs )
          = ( size_s6950157911653109757_set_a @ Us ) )
       => ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ ( append7235343099912497022_set_a @ Xs2 @ Us ) @ ( append7235343099912497022_set_a @ Ys @ Vs ) ) @ ( lex_Pr6838511504502894575_set_a @ R ) ) ) ) ).

% lex_append_rightI
thf(fact_668_lex__append__rightI,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t,Vs: list_P4201438511612060998_nat_t,Us: list_P4201438511612060998_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Xs2 @ Ys ) @ ( lex_Pr4364183600902119244_nat_t @ R ) )
     => ( ( ( size_s1593550824562968538_nat_t @ Vs )
          = ( size_s1593550824562968538_nat_t @ Us ) )
       => ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ Us ) @ ( append1694031088188373467_nat_t @ Ys @ Vs ) ) @ ( lex_Pr4364183600902119244_nat_t @ R ) ) ) ) ).

% lex_append_rightI
thf(fact_669_lenlex__append1,axiom,
    ! [Us: list_t,Xs2: list_t,R2: set_Product_prod_t_t,Vs: list_t,Ys: list_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Us @ Xs2 ) @ ( lenlex_t @ R2 ) )
     => ( ( ( size_size_list_t @ Vs )
          = ( size_size_list_t @ Ys ) )
       => ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ ( append_t @ Us @ Vs ) @ ( append_t @ Xs2 @ Ys ) ) @ ( lenlex_t @ R2 ) ) ) ) ).

% lenlex_append1
thf(fact_670_lenlex__append1,axiom,
    ! [Us: list_P1095827921439705018_set_a,Xs2: list_P1095827921439705018_set_a,R2: set_Pr2751536223740281991_set_a,Vs: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Us @ Xs2 ) @ ( lenlex9172771710577580863_set_a @ R2 ) )
     => ( ( ( size_s5362121731612881446_set_a @ Vs )
          = ( size_s5362121731612881446_set_a @ Ys ) )
       => ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ ( append8768163766229313743_set_a @ Us @ Vs ) @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) ) @ ( lenlex9172771710577580863_set_a @ R2 ) ) ) ) ).

% lenlex_append1
thf(fact_671_lenlex__append1,axiom,
    ! [Us: list_P6739568432217944425_set_a,Xs2: list_P6739568432217944425_set_a,R2: set_Pr6980190999441956595_set_a,Vs: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Us @ Xs2 ) @ ( lenlex700694733380053262_set_a @ R2 ) )
     => ( ( ( size_s6950157911653109757_set_a @ Vs )
          = ( size_s6950157911653109757_set_a @ Ys ) )
       => ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ ( append7235343099912497022_set_a @ Us @ Vs ) @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) ) @ ( lenlex700694733380053262_set_a @ R2 ) ) ) ) ).

% lenlex_append1
thf(fact_672_lenlex__append1,axiom,
    ! [Us: list_P4201438511612060998_nat_t,Xs2: list_P4201438511612060998_nat_t,R2: set_Pr3075641135855851309_nat_t,Vs: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Us @ Xs2 ) @ ( lenlex548651899613956971_nat_t @ R2 ) )
     => ( ( ( size_s1593550824562968538_nat_t @ Vs )
          = ( size_s1593550824562968538_nat_t @ Ys ) )
       => ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ ( append1694031088188373467_nat_t @ Us @ Vs ) @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) ) @ ( lenlex548651899613956971_nat_t @ R2 ) ) ) ) ).

% lenlex_append1
thf(fact_673_append__eq__append__conv__if,axiom,
    ! [Xs_1: list_t,Xs_2: list_t,Ys_1: list_t,Ys_2: list_t] :
      ( ( ( append_t @ Xs_1 @ Xs_2 )
        = ( append_t @ Ys_1 @ Ys_2 ) )
      = ( ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs_1 ) @ ( size_size_list_t @ Ys_1 ) )
         => ( ( Xs_1
              = ( take_t @ ( size_size_list_t @ Xs_1 ) @ Ys_1 ) )
            & ( Xs_2
              = ( append_t @ ( drop_t @ ( size_size_list_t @ Xs_1 ) @ Ys_1 ) @ Ys_2 ) ) ) )
        & ( ~ ( ord_less_eq_nat @ ( size_size_list_t @ Xs_1 ) @ ( size_size_list_t @ Ys_1 ) )
         => ( ( ( take_t @ ( size_size_list_t @ Ys_1 ) @ Xs_1 )
              = Ys_1 )
            & ( ( append_t @ ( drop_t @ ( size_size_list_t @ Ys_1 ) @ Xs_1 ) @ Xs_2 )
              = Ys_2 ) ) ) ) ) ).

% append_eq_append_conv_if
thf(fact_674_append__eq__append__conv__if,axiom,
    ! [Xs_1: list_P1095827921439705018_set_a,Xs_2: list_P1095827921439705018_set_a,Ys_1: list_P1095827921439705018_set_a,Ys_2: list_P1095827921439705018_set_a] :
      ( ( ( append8768163766229313743_set_a @ Xs_1 @ Xs_2 )
        = ( append8768163766229313743_set_a @ Ys_1 @ Ys_2 ) )
      = ( ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs_1 ) @ ( size_s5362121731612881446_set_a @ Ys_1 ) )
         => ( ( Xs_1
              = ( take_P2822414627813279522_set_a @ ( size_s5362121731612881446_set_a @ Xs_1 ) @ Ys_1 ) )
            & ( Xs_2
              = ( append8768163766229313743_set_a @ ( drop_P283403782220237946_set_a @ ( size_s5362121731612881446_set_a @ Xs_1 ) @ Ys_1 ) @ Ys_2 ) ) ) )
        & ( ~ ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs_1 ) @ ( size_s5362121731612881446_set_a @ Ys_1 ) )
         => ( ( ( take_P2822414627813279522_set_a @ ( size_s5362121731612881446_set_a @ Ys_1 ) @ Xs_1 )
              = Ys_1 )
            & ( ( append8768163766229313743_set_a @ ( drop_P283403782220237946_set_a @ ( size_s5362121731612881446_set_a @ Ys_1 ) @ Xs_1 ) @ Xs_2 )
              = Ys_2 ) ) ) ) ) ).

% append_eq_append_conv_if
thf(fact_675_append__eq__append__conv__if,axiom,
    ! [Xs_1: list_P6739568432217944425_set_a,Xs_2: list_P6739568432217944425_set_a,Ys_1: list_P6739568432217944425_set_a,Ys_2: list_P6739568432217944425_set_a] :
      ( ( ( append7235343099912497022_set_a @ Xs_1 @ Xs_2 )
        = ( append7235343099912497022_set_a @ Ys_1 @ Ys_2 ) )
      = ( ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs_1 ) @ ( size_s6950157911653109757_set_a @ Ys_1 ) )
         => ( ( Xs_1
              = ( take_P1723439655008974187_set_a @ ( size_s6950157911653109757_set_a @ Xs_1 ) @ Ys_1 ) )
            & ( Xs_2
              = ( append7235343099912497022_set_a @ ( drop_P8422428636864094739_set_a @ ( size_s6950157911653109757_set_a @ Xs_1 ) @ Ys_1 ) @ Ys_2 ) ) ) )
        & ( ~ ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs_1 ) @ ( size_s6950157911653109757_set_a @ Ys_1 ) )
         => ( ( ( take_P1723439655008974187_set_a @ ( size_s6950157911653109757_set_a @ Ys_1 ) @ Xs_1 )
              = Ys_1 )
            & ( ( append7235343099912497022_set_a @ ( drop_P8422428636864094739_set_a @ ( size_s6950157911653109757_set_a @ Ys_1 ) @ Xs_1 ) @ Xs_2 )
              = Ys_2 ) ) ) ) ) ).

% append_eq_append_conv_if
thf(fact_676_append__eq__append__conv__if,axiom,
    ! [Xs_1: list_P4201438511612060998_nat_t,Xs_2: list_P4201438511612060998_nat_t,Ys_1: list_P4201438511612060998_nat_t,Ys_2: list_P4201438511612060998_nat_t] :
      ( ( ( append1694031088188373467_nat_t @ Xs_1 @ Xs_2 )
        = ( append1694031088188373467_nat_t @ Ys_1 @ Ys_2 ) )
      = ( ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs_1 ) @ ( size_s1593550824562968538_nat_t @ Ys_1 ) )
         => ( ( Xs_1
              = ( take_P1264513708533117128_nat_t @ ( size_s1593550824562968538_nat_t @ Xs_1 ) @ Ys_1 ) )
            & ( Xs_2
              = ( append1694031088188373467_nat_t @ ( drop_P6121829286696379760_nat_t @ ( size_s1593550824562968538_nat_t @ Xs_1 ) @ Ys_1 ) @ Ys_2 ) ) ) )
        & ( ~ ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs_1 ) @ ( size_s1593550824562968538_nat_t @ Ys_1 ) )
         => ( ( ( take_P1264513708533117128_nat_t @ ( size_s1593550824562968538_nat_t @ Ys_1 ) @ Xs_1 )
              = Ys_1 )
            & ( ( append1694031088188373467_nat_t @ ( drop_P6121829286696379760_nat_t @ ( size_s1593550824562968538_nat_t @ Ys_1 ) @ Xs_1 ) @ Xs_2 )
              = Ys_2 ) ) ) ) ) ).

% append_eq_append_conv_if
thf(fact_677_take__Suc__conv__app__nth,axiom,
    ! [I: nat,Xs2: list_t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( ( take_t @ ( suc @ I ) @ Xs2 )
        = ( append_t @ ( take_t @ I @ Xs2 ) @ ( cons_t @ ( nth_t @ Xs2 @ I ) @ nil_t ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_678_take__Suc__conv__app__nth,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( take_P2822414627813279522_set_a @ ( suc @ I ) @ Xs2 )
        = ( append8768163766229313743_set_a @ ( take_P2822414627813279522_set_a @ I @ Xs2 ) @ ( cons_P6565363215658504938_set_a @ ( nth_Pr633927046780761275_set_a @ Xs2 @ I ) @ nil_Pr7982011819685168954_set_a ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_679_take__Suc__conv__app__nth,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( take_P1723439655008974187_set_a @ ( suc @ I ) @ Xs2 )
        = ( append7235343099912497022_set_a @ ( take_P1723439655008974187_set_a @ I @ Xs2 ) @ ( cons_P4636835598303252387_set_a @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ I ) @ nil_Pr3375152174953641811_set_a ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_680_take__Suc__conv__app__nth,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( take_P1264513708533117128_nat_t @ ( suc @ I ) @ Xs2 )
        = ( append1694031088188373467_nat_t @ ( take_P1264513708533117128_nat_t @ I @ Xs2 ) @ ( cons_P8443330349171532544_nat_t @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I ) @ nil_Pr1417316752131242672_nat_t ) ) ) ) ).

% take_Suc_conv_app_nth
thf(fact_681_upd__conv__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_t,A2: t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( ( list_update_t @ Xs2 @ I @ A2 )
        = ( append_t @ ( take_t @ I @ Xs2 ) @ ( cons_t @ A2 @ ( drop_t @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% upd_conv_take_nth_drop
thf(fact_682_upd__conv__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a,A2: product_prod_t_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( list_u6938334460439117218_set_a @ Xs2 @ I @ A2 )
        = ( append8768163766229313743_set_a @ ( take_P2822414627813279522_set_a @ I @ Xs2 ) @ ( cons_P6565363215658504938_set_a @ A2 @ ( drop_P283403782220237946_set_a @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% upd_conv_take_nth_drop
thf(fact_683_upd__conv__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a,A2: produc3416767791517006041_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( list_u4984865194623475435_set_a @ Xs2 @ I @ A2 )
        = ( append7235343099912497022_set_a @ ( take_P1723439655008974187_set_a @ I @ Xs2 ) @ ( cons_P4636835598303252387_set_a @ A2 @ ( drop_P8422428636864094739_set_a @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% upd_conv_take_nth_drop
thf(fact_684_upd__conv__take__nth__drop,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t,A2: product_prod_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( list_u7556474282317044296_nat_t @ Xs2 @ I @ A2 )
        = ( append1694031088188373467_nat_t @ ( take_P1264513708533117128_nat_t @ I @ Xs2 ) @ ( cons_P8443330349171532544_nat_t @ A2 @ ( drop_P6121829286696379760_nat_t @ ( suc @ I ) @ Xs2 ) ) ) ) ) ).

% upd_conv_take_nth_drop
thf(fact_685_triangle__Suc,axiom,
    ! [N: nat] :
      ( ( nat_triangle @ ( suc @ N ) )
      = ( plus_plus_nat @ ( nat_triangle @ N ) @ ( suc @ N ) ) ) ).

% triangle_Suc
thf(fact_686_length__list__update,axiom,
    ! [Xs2: list_t,I: nat,X: t] :
      ( ( size_size_list_t @ ( list_update_t @ Xs2 @ I @ X ) )
      = ( size_size_list_t @ Xs2 ) ) ).

% length_list_update
thf(fact_687_length__list__update,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,I: nat,X: product_prod_t_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( list_u6938334460439117218_set_a @ Xs2 @ I @ X ) )
      = ( size_s5362121731612881446_set_a @ Xs2 ) ) ).

% length_list_update
thf(fact_688_length__list__update,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,I: nat,X: produc3416767791517006041_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( list_u4984865194623475435_set_a @ Xs2 @ I @ X ) )
      = ( size_s6950157911653109757_set_a @ Xs2 ) ) ).

% length_list_update
thf(fact_689_length__list__update,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,I: nat,X: product_prod_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( list_u7556474282317044296_nat_t @ Xs2 @ I @ X ) )
      = ( size_s1593550824562968538_nat_t @ Xs2 ) ) ).

% length_list_update
thf(fact_690_enumerate__simps_I1_J,axiom,
    ! [N: nat] :
      ( ( enumer4564034045956179481_set_a @ N @ nil_Pr7982011819685168954_set_a )
      = nil_Pr3375152174953641811_set_a ) ).

% enumerate_simps(1)
thf(fact_691_enumerate__simps_I1_J,axiom,
    ! [N: nat] :
      ( ( enumerate_t @ N @ nil_t )
      = nil_Pr1417316752131242672_nat_t ) ).

% enumerate_simps(1)
thf(fact_692_triangle__0,axiom,
    ( ( nat_triangle @ zero_zero_nat )
    = zero_zero_nat ) ).

% triangle_0
thf(fact_693_length__0__conv,axiom,
    ! [Xs2: list_t] :
      ( ( ( size_size_list_t @ Xs2 )
        = zero_zero_nat )
      = ( Xs2 = nil_t ) ) ).

% length_0_conv
thf(fact_694_length__0__conv,axiom,
    ! [Xs2: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = zero_zero_nat )
      = ( Xs2 = nil_Pr7982011819685168954_set_a ) ) ).

% length_0_conv
thf(fact_695_length__0__conv,axiom,
    ! [Xs2: list_P6739568432217944425_set_a] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
        = zero_zero_nat )
      = ( Xs2 = nil_Pr3375152174953641811_set_a ) ) ).

% length_0_conv
thf(fact_696_length__0__conv,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = zero_zero_nat )
      = ( Xs2 = nil_Pr1417316752131242672_nat_t ) ) ).

% length_0_conv
thf(fact_697_list__update__beyond,axiom,
    ! [Xs2: list_t,I: nat,X: t] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ I )
     => ( ( list_update_t @ Xs2 @ I @ X )
        = Xs2 ) ) ).

% list_update_beyond
thf(fact_698_list__update__beyond,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,I: nat,X: product_prod_t_set_a] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ I )
     => ( ( list_u6938334460439117218_set_a @ Xs2 @ I @ X )
        = Xs2 ) ) ).

% list_update_beyond
thf(fact_699_list__update__beyond,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,I: nat,X: produc3416767791517006041_set_a] :
      ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ I )
     => ( ( list_u4984865194623475435_set_a @ Xs2 @ I @ X )
        = Xs2 ) ) ).

% list_update_beyond
thf(fact_700_list__update__beyond,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,I: nat,X: product_prod_nat_t] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ I )
     => ( ( list_u7556474282317044296_nat_t @ Xs2 @ I @ X )
        = Xs2 ) ) ).

% list_update_beyond
thf(fact_701_length__greater__0__conv,axiom,
    ! [Xs2: list_t] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_t @ Xs2 ) )
      = ( Xs2 != nil_t ) ) ).

% length_greater_0_conv
thf(fact_702_length__greater__0__conv,axiom,
    ! [Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) )
      = ( Xs2 != nil_Pr7982011819685168954_set_a ) ) ).

% length_greater_0_conv
thf(fact_703_length__greater__0__conv,axiom,
    ! [Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) )
      = ( Xs2 != nil_Pr3375152174953641811_set_a ) ) ).

% length_greater_0_conv
thf(fact_704_length__greater__0__conv,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
      = ( Xs2 != nil_Pr1417316752131242672_nat_t ) ) ).

% length_greater_0_conv
thf(fact_705_drop__eq__Nil2,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( nil_t
        = ( drop_t @ N @ Xs2 ) )
      = ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_706_drop__eq__Nil2,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( nil_Pr7982011819685168954_set_a
        = ( drop_P283403782220237946_set_a @ N @ Xs2 ) )
      = ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_707_drop__eq__Nil2,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( nil_Pr3375152174953641811_set_a
        = ( drop_P8422428636864094739_set_a @ N @ Xs2 ) )
      = ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_708_drop__eq__Nil2,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( nil_Pr1417316752131242672_nat_t
        = ( drop_P6121829286696379760_nat_t @ N @ Xs2 ) )
      = ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_709_drop__eq__Nil,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( ( drop_t @ N @ Xs2 )
        = nil_t )
      = ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ N ) ) ).

% drop_eq_Nil
thf(fact_710_drop__eq__Nil,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ( drop_P283403782220237946_set_a @ N @ Xs2 )
        = nil_Pr7982011819685168954_set_a )
      = ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ N ) ) ).

% drop_eq_Nil
thf(fact_711_drop__eq__Nil,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ( drop_P8422428636864094739_set_a @ N @ Xs2 )
        = nil_Pr3375152174953641811_set_a )
      = ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ N ) ) ).

% drop_eq_Nil
thf(fact_712_drop__eq__Nil,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ( drop_P6121829286696379760_nat_t @ N @ Xs2 )
        = nil_Pr1417316752131242672_nat_t )
      = ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ N ) ) ).

% drop_eq_Nil
thf(fact_713_drop__all,axiom,
    ! [Xs2: list_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ N )
     => ( ( drop_t @ N @ Xs2 )
        = nil_t ) ) ).

% drop_all
thf(fact_714_drop__all,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ N )
     => ( ( drop_P283403782220237946_set_a @ N @ Xs2 )
        = nil_Pr7982011819685168954_set_a ) ) ).

% drop_all
thf(fact_715_drop__all,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ N )
     => ( ( drop_P8422428636864094739_set_a @ N @ Xs2 )
        = nil_Pr3375152174953641811_set_a ) ) ).

% drop_all
thf(fact_716_drop__all,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ N )
     => ( ( drop_P6121829286696379760_nat_t @ N @ Xs2 )
        = nil_Pr1417316752131242672_nat_t ) ) ).

% drop_all
thf(fact_717_list__update__length,axiom,
    ! [Xs2: list_t,X: t,Ys: list_t,Y: t] :
      ( ( list_update_t @ ( append_t @ Xs2 @ ( cons_t @ X @ Ys ) ) @ ( size_size_list_t @ Xs2 ) @ Y )
      = ( append_t @ Xs2 @ ( cons_t @ Y @ Ys ) ) ) ).

% list_update_length
thf(fact_718_list__update__length,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,X: product_prod_t_set_a,Ys: list_P1095827921439705018_set_a,Y: product_prod_t_set_a] :
      ( ( list_u6938334460439117218_set_a @ ( append8768163766229313743_set_a @ Xs2 @ ( cons_P6565363215658504938_set_a @ X @ Ys ) ) @ ( size_s5362121731612881446_set_a @ Xs2 ) @ Y )
      = ( append8768163766229313743_set_a @ Xs2 @ ( cons_P6565363215658504938_set_a @ Y @ Ys ) ) ) ).

% list_update_length
thf(fact_719_list__update__length,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a,Ys: list_P6739568432217944425_set_a,Y: produc3416767791517006041_set_a] :
      ( ( list_u4984865194623475435_set_a @ ( append7235343099912497022_set_a @ Xs2 @ ( cons_P4636835598303252387_set_a @ X @ Ys ) ) @ ( size_s6950157911653109757_set_a @ Xs2 ) @ Y )
      = ( append7235343099912497022_set_a @ Xs2 @ ( cons_P4636835598303252387_set_a @ Y @ Ys ) ) ) ).

% list_update_length
thf(fact_720_list__update__length,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,X: product_prod_nat_t,Ys: list_P4201438511612060998_nat_t,Y: product_prod_nat_t] :
      ( ( list_u7556474282317044296_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ ( cons_P8443330349171532544_nat_t @ X @ Ys ) ) @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ Y )
      = ( append1694031088188373467_nat_t @ Xs2 @ ( cons_P8443330349171532544_nat_t @ Y @ Ys ) ) ) ).

% list_update_length
thf(fact_721_nth__list__update__eq,axiom,
    ! [I: nat,Xs2: list_t,X: t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( ( nth_t @ ( list_update_t @ Xs2 @ I @ X ) @ I )
        = X ) ) ).

% nth_list_update_eq
thf(fact_722_nth__list__update__eq,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a,X: product_prod_t_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( nth_Pr633927046780761275_set_a @ ( list_u6938334460439117218_set_a @ Xs2 @ I @ X ) @ I )
        = X ) ) ).

% nth_list_update_eq
thf(fact_723_nth__list__update__eq,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( nth_Pr1324953721505055890_set_a @ ( list_u4984865194623475435_set_a @ Xs2 @ I @ X ) @ I )
        = X ) ) ).

% nth_list_update_eq
thf(fact_724_nth__list__update__eq,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t,X: product_prod_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( nth_Pr2476257163150662383_nat_t @ ( list_u7556474282317044296_nat_t @ Xs2 @ I @ X ) @ I )
        = X ) ) ).

% nth_list_update_eq
thf(fact_725_reaches__on_Ointros_I1_J,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t] : ( reache645946503560514460_h_t_t @ Run @ S @ nil_t @ S ) ).

% reaches_on.intros(1)
thf(fact_726_reaches__on_Ointros_I1_J,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h] : ( reache3397181163414509427_set_a @ Run @ S @ nil_Pr7982011819685168954_set_a @ S ) ).

% reaches_on.intros(1)
thf(fact_727_reaches__on__NilD,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,Q: option2110264179601050681od_h_t,Q2: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ Q @ nil_t @ Q2 )
     => ( Q = Q2 ) ) ).

% reaches_on_NilD
thf(fact_728_reaches__on__NilD,axiom,
    ! [Run: h > option5775791656947114332_set_a,Q: h,Q2: h] :
      ( ( reache3397181163414509427_set_a @ Run @ Q @ nil_Pr7982011819685168954_set_a @ Q2 )
     => ( Q = Q2 ) ) ).

% reaches_on_NilD
thf(fact_729_list_Osize_I3_J,axiom,
    ( ( size_size_list_t @ nil_t )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_730_list_Osize_I3_J,axiom,
    ( ( size_s5362121731612881446_set_a @ nil_Pr7982011819685168954_set_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_731_list_Osize_I3_J,axiom,
    ( ( size_s6950157911653109757_set_a @ nil_Pr3375152174953641811_set_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_732_list_Osize_I3_J,axiom,
    ( ( size_s1593550824562968538_nat_t @ nil_Pr1417316752131242672_nat_t )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_733_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_t,Ws: list_t,P: list_t > list_t > list_t > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( ( size_size_list_t @ Zs )
            = ( size_size_list_t @ Ws ) )
         => ( ( P @ nil_t @ nil_t @ nil_t @ nil_t )
           => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t,W: t,Ws2: list_t] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_size_list_t @ Zs2 ) )
                   => ( ( ( size_size_list_t @ Zs2 )
                        = ( size_size_list_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) @ ( cons_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_734_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_t,Ws: list_P4201438511612060998_nat_t,P: list_t > list_t > list_t > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( ( size_size_list_t @ Zs )
            = ( size_s1593550824562968538_nat_t @ Ws ) )
         => ( ( P @ nil_t @ nil_t @ nil_t @ nil_Pr1417316752131242672_nat_t )
           => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t,W: product_prod_nat_t,Ws2: list_P4201438511612060998_nat_t] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_size_list_t @ Zs2 ) )
                   => ( ( ( size_size_list_t @ Zs2 )
                        = ( size_s1593550824562968538_nat_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) @ ( cons_P8443330349171532544_nat_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_735_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_P4201438511612060998_nat_t,Ws: list_t,P: list_t > list_t > list_P4201438511612060998_nat_t > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_s1593550824562968538_nat_t @ Zs ) )
       => ( ( ( size_s1593550824562968538_nat_t @ Zs )
            = ( size_size_list_t @ Ws ) )
         => ( ( P @ nil_t @ nil_t @ nil_Pr1417316752131242672_nat_t @ nil_t )
           => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: product_prod_nat_t,Zs2: list_P4201438511612060998_nat_t,W: t,Ws2: list_t] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_s1593550824562968538_nat_t @ Zs2 ) )
                   => ( ( ( size_s1593550824562968538_nat_t @ Zs2 )
                        = ( size_size_list_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_P8443330349171532544_nat_t @ Z2 @ Zs2 ) @ ( cons_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_736_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_P4201438511612060998_nat_t,Zs: list_t,Ws: list_t,P: list_t > list_P4201438511612060998_nat_t > list_t > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( ( size_s1593550824562968538_nat_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( ( size_size_list_t @ Zs )
            = ( size_size_list_t @ Ws ) )
         => ( ( P @ nil_t @ nil_Pr1417316752131242672_nat_t @ nil_t @ nil_t )
           => ( ! [X4: t,Xs: list_t,Y4: product_prod_nat_t,Ys4: list_P4201438511612060998_nat_t,Z2: t,Zs2: list_t,W: t,Ws2: list_t] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_s1593550824562968538_nat_t @ Ys4 ) )
                 => ( ( ( size_s1593550824562968538_nat_t @ Ys4 )
                      = ( size_size_list_t @ Zs2 ) )
                   => ( ( ( size_size_list_t @ Zs2 )
                        = ( size_size_list_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P8443330349171532544_nat_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) @ ( cons_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_737_list__induct4,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_t,Zs: list_t,Ws: list_t,P: list_P4201438511612060998_nat_t > list_t > list_t > list_t > $o] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( ( size_size_list_t @ Zs )
            = ( size_size_list_t @ Ws ) )
         => ( ( P @ nil_Pr1417316752131242672_nat_t @ nil_t @ nil_t @ nil_t )
           => ( ! [X4: product_prod_nat_t,Xs: list_P4201438511612060998_nat_t,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t,W: t,Ws2: list_t] :
                  ( ( ( size_s1593550824562968538_nat_t @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_size_list_t @ Zs2 ) )
                   => ( ( ( size_size_list_t @ Zs2 )
                        = ( size_size_list_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_P8443330349171532544_nat_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) @ ( cons_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_738_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_t,Ws: list_P1095827921439705018_set_a,P: list_t > list_t > list_t > list_P1095827921439705018_set_a > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( ( size_size_list_t @ Zs )
            = ( size_s5362121731612881446_set_a @ Ws ) )
         => ( ( P @ nil_t @ nil_t @ nil_t @ nil_Pr7982011819685168954_set_a )
           => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t,W: product_prod_t_set_a,Ws2: list_P1095827921439705018_set_a] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_size_list_t @ Zs2 ) )
                   => ( ( ( size_size_list_t @ Zs2 )
                        = ( size_s5362121731612881446_set_a @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) @ ( cons_P6565363215658504938_set_a @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_739_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_P1095827921439705018_set_a,Ws: list_t,P: list_t > list_t > list_P1095827921439705018_set_a > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_s5362121731612881446_set_a @ Zs ) )
       => ( ( ( size_s5362121731612881446_set_a @ Zs )
            = ( size_size_list_t @ Ws ) )
         => ( ( P @ nil_t @ nil_t @ nil_Pr7982011819685168954_set_a @ nil_t )
           => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: product_prod_t_set_a,Zs2: list_P1095827921439705018_set_a,W: t,Ws2: list_t] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_s5362121731612881446_set_a @ Zs2 ) )
                   => ( ( ( size_s5362121731612881446_set_a @ Zs2 )
                        = ( size_size_list_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_P6565363215658504938_set_a @ Z2 @ Zs2 ) @ ( cons_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_740_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_P1095827921439705018_set_a,Zs: list_t,Ws: list_t,P: list_t > list_P1095827921439705018_set_a > list_t > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( ( size_s5362121731612881446_set_a @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( ( size_size_list_t @ Zs )
            = ( size_size_list_t @ Ws ) )
         => ( ( P @ nil_t @ nil_Pr7982011819685168954_set_a @ nil_t @ nil_t )
           => ( ! [X4: t,Xs: list_t,Y4: product_prod_t_set_a,Ys4: list_P1095827921439705018_set_a,Z2: t,Zs2: list_t,W: t,Ws2: list_t] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_s5362121731612881446_set_a @ Ys4 ) )
                 => ( ( ( size_s5362121731612881446_set_a @ Ys4 )
                      = ( size_size_list_t @ Zs2 ) )
                   => ( ( ( size_size_list_t @ Zs2 )
                        = ( size_size_list_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P6565363215658504938_set_a @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) @ ( cons_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_741_list__induct4,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_t,Zs: list_t,Ws: list_t,P: list_P1095827921439705018_set_a > list_t > list_t > list_t > $o] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( ( size_size_list_t @ Zs )
            = ( size_size_list_t @ Ws ) )
         => ( ( P @ nil_Pr7982011819685168954_set_a @ nil_t @ nil_t @ nil_t )
           => ( ! [X4: product_prod_t_set_a,Xs: list_P1095827921439705018_set_a,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t,W: t,Ws2: list_t] :
                  ( ( ( size_s5362121731612881446_set_a @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_size_list_t @ Zs2 ) )
                   => ( ( ( size_size_list_t @ Zs2 )
                        = ( size_size_list_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_P6565363215658504938_set_a @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) @ ( cons_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_742_list__induct4,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_P4201438511612060998_nat_t,Ws: list_P4201438511612060998_nat_t,P: list_t > list_t > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_s1593550824562968538_nat_t @ Zs ) )
       => ( ( ( size_s1593550824562968538_nat_t @ Zs )
            = ( size_s1593550824562968538_nat_t @ Ws ) )
         => ( ( P @ nil_t @ nil_t @ nil_Pr1417316752131242672_nat_t @ nil_Pr1417316752131242672_nat_t )
           => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: product_prod_nat_t,Zs2: list_P4201438511612060998_nat_t,W: product_prod_nat_t,Ws2: list_P4201438511612060998_nat_t] :
                  ( ( ( size_size_list_t @ Xs )
                    = ( size_size_list_t @ Ys4 ) )
                 => ( ( ( size_size_list_t @ Ys4 )
                      = ( size_s1593550824562968538_nat_t @ Zs2 ) )
                   => ( ( ( size_s1593550824562968538_nat_t @ Zs2 )
                        = ( size_s1593550824562968538_nat_t @ Ws2 ) )
                     => ( ( P @ Xs @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_P8443330349171532544_nat_t @ Z2 @ Zs2 ) @ ( cons_P8443330349171532544_nat_t @ W @ Ws2 ) ) ) ) ) )
             => ( P @ Xs2 @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_743_list__induct3,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_t,P: list_t > list_t > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( P @ nil_t @ nil_t @ nil_t )
         => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t] :
                ( ( ( size_size_list_t @ Xs )
                  = ( size_size_list_t @ Ys4 ) )
               => ( ( ( size_size_list_t @ Ys4 )
                    = ( size_size_list_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_744_list__induct3,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_P4201438511612060998_nat_t,P: list_t > list_t > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_s1593550824562968538_nat_t @ Zs ) )
       => ( ( P @ nil_t @ nil_t @ nil_Pr1417316752131242672_nat_t )
         => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: product_prod_nat_t,Zs2: list_P4201438511612060998_nat_t] :
                ( ( ( size_size_list_t @ Xs )
                  = ( size_size_list_t @ Ys4 ) )
               => ( ( ( size_size_list_t @ Ys4 )
                    = ( size_s1593550824562968538_nat_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_P8443330349171532544_nat_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_745_list__induct3,axiom,
    ! [Xs2: list_t,Ys: list_P4201438511612060998_nat_t,Zs: list_t,P: list_t > list_P4201438511612060998_nat_t > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( ( size_s1593550824562968538_nat_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( P @ nil_t @ nil_Pr1417316752131242672_nat_t @ nil_t )
         => ( ! [X4: t,Xs: list_t,Y4: product_prod_nat_t,Ys4: list_P4201438511612060998_nat_t,Z2: t,Zs2: list_t] :
                ( ( ( size_size_list_t @ Xs )
                  = ( size_s1593550824562968538_nat_t @ Ys4 ) )
               => ( ( ( size_s1593550824562968538_nat_t @ Ys4 )
                    = ( size_size_list_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P8443330349171532544_nat_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_746_list__induct3,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_t,Zs: list_t,P: list_P4201438511612060998_nat_t > list_t > list_t > $o] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( P @ nil_Pr1417316752131242672_nat_t @ nil_t @ nil_t )
         => ( ! [X4: product_prod_nat_t,Xs: list_P4201438511612060998_nat_t,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t] :
                ( ( ( size_s1593550824562968538_nat_t @ Xs )
                  = ( size_size_list_t @ Ys4 ) )
               => ( ( ( size_size_list_t @ Ys4 )
                    = ( size_size_list_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_P8443330349171532544_nat_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_747_list__induct3,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_P1095827921439705018_set_a,P: list_t > list_t > list_P1095827921439705018_set_a > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_s5362121731612881446_set_a @ Zs ) )
       => ( ( P @ nil_t @ nil_t @ nil_Pr7982011819685168954_set_a )
         => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t,Z2: product_prod_t_set_a,Zs2: list_P1095827921439705018_set_a] :
                ( ( ( size_size_list_t @ Xs )
                  = ( size_size_list_t @ Ys4 ) )
               => ( ( ( size_size_list_t @ Ys4 )
                    = ( size_s5362121731612881446_set_a @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_P6565363215658504938_set_a @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_748_list__induct3,axiom,
    ! [Xs2: list_t,Ys: list_P1095827921439705018_set_a,Zs: list_t,P: list_t > list_P1095827921439705018_set_a > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( ( size_s5362121731612881446_set_a @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( P @ nil_t @ nil_Pr7982011819685168954_set_a @ nil_t )
         => ( ! [X4: t,Xs: list_t,Y4: product_prod_t_set_a,Ys4: list_P1095827921439705018_set_a,Z2: t,Zs2: list_t] :
                ( ( ( size_size_list_t @ Xs )
                  = ( size_s5362121731612881446_set_a @ Ys4 ) )
               => ( ( ( size_s5362121731612881446_set_a @ Ys4 )
                    = ( size_size_list_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P6565363215658504938_set_a @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_749_list__induct3,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_t,Zs: list_t,P: list_P1095827921439705018_set_a > list_t > list_t > $o] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( P @ nil_Pr7982011819685168954_set_a @ nil_t @ nil_t )
         => ( ! [X4: product_prod_t_set_a,Xs: list_P1095827921439705018_set_a,Y4: t,Ys4: list_t,Z2: t,Zs2: list_t] :
                ( ( ( size_s5362121731612881446_set_a @ Xs )
                  = ( size_size_list_t @ Ys4 ) )
               => ( ( ( size_size_list_t @ Ys4 )
                    = ( size_size_list_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_P6565363215658504938_set_a @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_750_list__induct3,axiom,
    ! [Xs2: list_t,Ys: list_P4201438511612060998_nat_t,Zs: list_P4201438511612060998_nat_t,P: list_t > list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( ( size_s1593550824562968538_nat_t @ Ys )
          = ( size_s1593550824562968538_nat_t @ Zs ) )
       => ( ( P @ nil_t @ nil_Pr1417316752131242672_nat_t @ nil_Pr1417316752131242672_nat_t )
         => ( ! [X4: t,Xs: list_t,Y4: product_prod_nat_t,Ys4: list_P4201438511612060998_nat_t,Z2: product_prod_nat_t,Zs2: list_P4201438511612060998_nat_t] :
                ( ( ( size_size_list_t @ Xs )
                  = ( size_s1593550824562968538_nat_t @ Ys4 ) )
               => ( ( ( size_s1593550824562968538_nat_t @ Ys4 )
                    = ( size_s1593550824562968538_nat_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P8443330349171532544_nat_t @ Y4 @ Ys4 ) @ ( cons_P8443330349171532544_nat_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_751_list__induct3,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_t,Zs: list_P4201438511612060998_nat_t,P: list_P4201438511612060998_nat_t > list_t > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( ( size_size_list_t @ Ys )
          = ( size_s1593550824562968538_nat_t @ Zs ) )
       => ( ( P @ nil_Pr1417316752131242672_nat_t @ nil_t @ nil_Pr1417316752131242672_nat_t )
         => ( ! [X4: product_prod_nat_t,Xs: list_P4201438511612060998_nat_t,Y4: t,Ys4: list_t,Z2: product_prod_nat_t,Zs2: list_P4201438511612060998_nat_t] :
                ( ( ( size_s1593550824562968538_nat_t @ Xs )
                  = ( size_size_list_t @ Ys4 ) )
               => ( ( ( size_size_list_t @ Ys4 )
                    = ( size_s1593550824562968538_nat_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_P8443330349171532544_nat_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) @ ( cons_P8443330349171532544_nat_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_752_list__induct3,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,Zs: list_t,P: list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t > list_t > $o] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( ( size_s1593550824562968538_nat_t @ Ys )
          = ( size_size_list_t @ Zs ) )
       => ( ( P @ nil_Pr1417316752131242672_nat_t @ nil_Pr1417316752131242672_nat_t @ nil_t )
         => ( ! [X4: product_prod_nat_t,Xs: list_P4201438511612060998_nat_t,Y4: product_prod_nat_t,Ys4: list_P4201438511612060998_nat_t,Z2: t,Zs2: list_t] :
                ( ( ( size_s1593550824562968538_nat_t @ Xs )
                  = ( size_s1593550824562968538_nat_t @ Ys4 ) )
               => ( ( ( size_s1593550824562968538_nat_t @ Ys4 )
                    = ( size_size_list_t @ Zs2 ) )
                 => ( ( P @ Xs @ Ys4 @ Zs2 )
                   => ( P @ ( cons_P8443330349171532544_nat_t @ X4 @ Xs ) @ ( cons_P8443330349171532544_nat_t @ Y4 @ Ys4 ) @ ( cons_t @ Z2 @ Zs2 ) ) ) ) )
           => ( P @ Xs2 @ Ys @ Zs ) ) ) ) ) ).

% list_induct3
thf(fact_753_list__induct2,axiom,
    ! [Xs2: list_t,Ys: list_t,P: list_t > list_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( P @ nil_t @ nil_t )
       => ( ! [X4: t,Xs: list_t,Y4: t,Ys4: list_t] :
              ( ( ( size_size_list_t @ Xs )
                = ( size_size_list_t @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_754_list__induct2,axiom,
    ! [Xs2: list_t,Ys: list_P4201438511612060998_nat_t,P: list_t > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( P @ nil_t @ nil_Pr1417316752131242672_nat_t )
       => ( ! [X4: t,Xs: list_t,Y4: product_prod_nat_t,Ys4: list_P4201438511612060998_nat_t] :
              ( ( ( size_size_list_t @ Xs )
                = ( size_s1593550824562968538_nat_t @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P8443330349171532544_nat_t @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_755_list__induct2,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_t,P: list_P4201438511612060998_nat_t > list_t > $o] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( P @ nil_Pr1417316752131242672_nat_t @ nil_t )
       => ( ! [X4: product_prod_nat_t,Xs: list_P4201438511612060998_nat_t,Y4: t,Ys4: list_t] :
              ( ( ( size_s1593550824562968538_nat_t @ Xs )
                = ( size_size_list_t @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_P8443330349171532544_nat_t @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_756_list__induct2,axiom,
    ! [Xs2: list_t,Ys: list_P1095827921439705018_set_a,P: list_t > list_P1095827921439705018_set_a > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( P @ nil_t @ nil_Pr7982011819685168954_set_a )
       => ( ! [X4: t,Xs: list_t,Y4: product_prod_t_set_a,Ys4: list_P1095827921439705018_set_a] :
              ( ( ( size_size_list_t @ Xs )
                = ( size_s5362121731612881446_set_a @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P6565363215658504938_set_a @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_757_list__induct2,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_t,P: list_P1095827921439705018_set_a > list_t > $o] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( P @ nil_Pr7982011819685168954_set_a @ nil_t )
       => ( ! [X4: product_prod_t_set_a,Xs: list_P1095827921439705018_set_a,Y4: t,Ys4: list_t] :
              ( ( ( size_s5362121731612881446_set_a @ Xs )
                = ( size_size_list_t @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_P6565363215658504938_set_a @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_758_list__induct2,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,P: list_P4201438511612060998_nat_t > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( P @ nil_Pr1417316752131242672_nat_t @ nil_Pr1417316752131242672_nat_t )
       => ( ! [X4: product_prod_nat_t,Xs: list_P4201438511612060998_nat_t,Y4: product_prod_nat_t,Ys4: list_P4201438511612060998_nat_t] :
              ( ( ( size_s1593550824562968538_nat_t @ Xs )
                = ( size_s1593550824562968538_nat_t @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_P8443330349171532544_nat_t @ X4 @ Xs ) @ ( cons_P8443330349171532544_nat_t @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_759_list__induct2,axiom,
    ! [Xs2: list_t,Ys: list_P6739568432217944425_set_a,P: list_t > list_P6739568432217944425_set_a > $o] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s6950157911653109757_set_a @ Ys ) )
     => ( ( P @ nil_t @ nil_Pr3375152174953641811_set_a )
       => ( ! [X4: t,Xs: list_t,Y4: produc3416767791517006041_set_a,Ys4: list_P6739568432217944425_set_a] :
              ( ( ( size_size_list_t @ Xs )
                = ( size_s6950157911653109757_set_a @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_t @ X4 @ Xs ) @ ( cons_P4636835598303252387_set_a @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_760_list__induct2,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P4201438511612060998_nat_t,P: list_P1095827921439705018_set_a > list_P4201438511612060998_nat_t > $o] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( P @ nil_Pr7982011819685168954_set_a @ nil_Pr1417316752131242672_nat_t )
       => ( ! [X4: product_prod_t_set_a,Xs: list_P1095827921439705018_set_a,Y4: product_prod_nat_t,Ys4: list_P4201438511612060998_nat_t] :
              ( ( ( size_s5362121731612881446_set_a @ Xs )
                = ( size_s1593550824562968538_nat_t @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_P6565363215658504938_set_a @ X4 @ Xs ) @ ( cons_P8443330349171532544_nat_t @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_761_list__induct2,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_t,P: list_P6739568432217944425_set_a > list_t > $o] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( P @ nil_Pr3375152174953641811_set_a @ nil_t )
       => ( ! [X4: produc3416767791517006041_set_a,Xs: list_P6739568432217944425_set_a,Y4: t,Ys4: list_t] :
              ( ( ( size_s6950157911653109757_set_a @ Xs )
                = ( size_size_list_t @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_P4636835598303252387_set_a @ X4 @ Xs ) @ ( cons_t @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_762_list__induct2,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P1095827921439705018_set_a,P: list_P4201438511612060998_nat_t > list_P1095827921439705018_set_a > $o] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( P @ nil_Pr1417316752131242672_nat_t @ nil_Pr7982011819685168954_set_a )
       => ( ! [X4: product_prod_nat_t,Xs: list_P4201438511612060998_nat_t,Y4: product_prod_t_set_a,Ys4: list_P1095827921439705018_set_a] :
              ( ( ( size_s1593550824562968538_nat_t @ Xs )
                = ( size_s5362121731612881446_set_a @ Ys4 ) )
             => ( ( P @ Xs @ Ys4 )
               => ( P @ ( cons_P8443330349171532544_nat_t @ X4 @ Xs ) @ ( cons_P6565363215658504938_set_a @ Y4 @ Ys4 ) ) ) )
         => ( P @ Xs2 @ Ys ) ) ) ) ).

% list_induct2
thf(fact_763_ex__key_Ocases,axiom,
    ! [X: produc7507468038271248494ng_h_o] :
      ( ! [Time: t > $o,Accept: h > $o,Ac: mapping_h_o] :
          ( X
         != ( produc1771462706825532648ng_h_o @ nil_Product_prod_h_t @ ( produc7514823755972731768ng_h_o @ Time @ ( produc1980689136670736053ng_h_o @ Accept @ Ac ) ) ) )
     => ~ ! [Q5: h,T4: t,Qts: list_P7520416276666729081od_h_t,Time: t > $o,Accept: h > $o,Ac: mapping_h_o] :
            ( X
           != ( produc1771462706825532648ng_h_o @ ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ Q5 @ T4 ) @ Qts ) @ ( produc7514823755972731768ng_h_o @ Time @ ( produc1980689136670736053ng_h_o @ Accept @ Ac ) ) ) ) ) ).

% ex_key.cases
thf(fact_764_ex__key_Ocases,axiom,
    ! [X: produc7746120839355144914_h_t_o] :
      ( ! [Time: t > $o,Accept: option2110264179601050681od_h_t > $o,Ac: mappin3084283847901878192_h_t_o] :
          ( X
         != ( produc5988617653040243660_h_t_o @ nil_Pr8838988226997446597_h_t_t @ ( produc7651783672790414224_h_t_o @ Time @ ( produc6881441380283963085_h_t_o @ Accept @ Ac ) ) ) )
     => ~ ! [Q5: option2110264179601050681od_h_t,T4: t,Qts: list_P6951459944542807621_h_t_t,Time: t > $o,Accept: option2110264179601050681od_h_t > $o,Ac: mappin3084283847901878192_h_t_o] :
            ( X
           != ( produc5988617653040243660_h_t_o @ ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ Q5 @ T4 ) @ Qts ) @ ( produc7651783672790414224_h_t_o @ Time @ ( produc6881441380283963085_h_t_o @ Accept @ Ac ) ) ) ) ) ).

% ex_key.cases
thf(fact_765_ex__key_Ocases,axiom,
    ! [X: produc1783361409637995907_nat_o] :
      ( ! [Time: nat > $o,Accept: nat > $o,Ac: mapping_nat_o] :
          ( X
         != ( produc5654405827127464947_nat_o @ nil_Pr5478986624290739719at_nat @ ( produc4390676519605123987_nat_o @ Time @ ( produc1708576699232315691_nat_o @ Accept @ Ac ) ) ) )
     => ~ ! [Q5: nat,T4: nat,Qts: list_P6011104703257516679at_nat,Time: nat > $o,Accept: nat > $o,Ac: mapping_nat_o] :
            ( X
           != ( produc5654405827127464947_nat_o @ ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ Q5 @ T4 ) @ Qts ) @ ( produc4390676519605123987_nat_o @ Time @ ( produc1708576699232315691_nat_o @ Accept @ Ac ) ) ) ) ) ).

% ex_key.cases
thf(fact_766_list__update__append1,axiom,
    ! [I: nat,Xs2: list_t,Ys: list_t,X: t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( ( list_update_t @ ( append_t @ Xs2 @ Ys ) @ I @ X )
        = ( append_t @ ( list_update_t @ Xs2 @ I @ X ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_767_list__update__append1,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,X: product_prod_t_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( list_u6938334460439117218_set_a @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) @ I @ X )
        = ( append8768163766229313743_set_a @ ( list_u6938334460439117218_set_a @ Xs2 @ I @ X ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_768_list__update__append1,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( list_u4984865194623475435_set_a @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) @ I @ X )
        = ( append7235343099912497022_set_a @ ( list_u4984865194623475435_set_a @ Xs2 @ I @ X ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_769_list__update__append1,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,X: product_prod_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( list_u7556474282317044296_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) @ I @ X )
        = ( append1694031088188373467_nat_t @ ( list_u7556474282317044296_nat_t @ Xs2 @ I @ X ) @ Ys ) ) ) ).

% list_update_append1
thf(fact_770_nth__list__update,axiom,
    ! [I: nat,Xs2: list_t,J: nat,X: t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( ( ( I = J )
         => ( ( nth_t @ ( list_update_t @ Xs2 @ I @ X ) @ J )
            = X ) )
        & ( ( I != J )
         => ( ( nth_t @ ( list_update_t @ Xs2 @ I @ X ) @ J )
            = ( nth_t @ Xs2 @ J ) ) ) ) ) ).

% nth_list_update
thf(fact_771_nth__list__update,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a,J: nat,X: product_prod_t_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( ( I = J )
         => ( ( nth_Pr633927046780761275_set_a @ ( list_u6938334460439117218_set_a @ Xs2 @ I @ X ) @ J )
            = X ) )
        & ( ( I != J )
         => ( ( nth_Pr633927046780761275_set_a @ ( list_u6938334460439117218_set_a @ Xs2 @ I @ X ) @ J )
            = ( nth_Pr633927046780761275_set_a @ Xs2 @ J ) ) ) ) ) ).

% nth_list_update
thf(fact_772_nth__list__update,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a,J: nat,X: produc3416767791517006041_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( ( I = J )
         => ( ( nth_Pr1324953721505055890_set_a @ ( list_u4984865194623475435_set_a @ Xs2 @ I @ X ) @ J )
            = X ) )
        & ( ( I != J )
         => ( ( nth_Pr1324953721505055890_set_a @ ( list_u4984865194623475435_set_a @ Xs2 @ I @ X ) @ J )
            = ( nth_Pr1324953721505055890_set_a @ Xs2 @ J ) ) ) ) ) ).

% nth_list_update
thf(fact_773_nth__list__update,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t,J: nat,X: product_prod_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( ( I = J )
         => ( ( nth_Pr2476257163150662383_nat_t @ ( list_u7556474282317044296_nat_t @ Xs2 @ I @ X ) @ J )
            = X ) )
        & ( ( I != J )
         => ( ( nth_Pr2476257163150662383_nat_t @ ( list_u7556474282317044296_nat_t @ Xs2 @ I @ X ) @ J )
            = ( nth_Pr2476257163150662383_nat_t @ Xs2 @ J ) ) ) ) ) ).

% nth_list_update
thf(fact_774_list__update__same__conv,axiom,
    ! [I: nat,Xs2: list_t,X: t] :
      ( ( ord_less_nat @ I @ ( size_size_list_t @ Xs2 ) )
     => ( ( ( list_update_t @ Xs2 @ I @ X )
          = Xs2 )
        = ( ( nth_t @ Xs2 @ I )
          = X ) ) ) ).

% list_update_same_conv
thf(fact_775_list__update__same__conv,axiom,
    ! [I: nat,Xs2: list_P1095827921439705018_set_a,X: product_prod_t_set_a] :
      ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( ( list_u6938334460439117218_set_a @ Xs2 @ I @ X )
          = Xs2 )
        = ( ( nth_Pr633927046780761275_set_a @ Xs2 @ I )
          = X ) ) ) ).

% list_update_same_conv
thf(fact_776_list__update__same__conv,axiom,
    ! [I: nat,Xs2: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a] :
      ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( ( list_u4984865194623475435_set_a @ Xs2 @ I @ X )
          = Xs2 )
        = ( ( nth_Pr1324953721505055890_set_a @ Xs2 @ I )
          = X ) ) ) ).

% list_update_same_conv
thf(fact_777_list__update__same__conv,axiom,
    ! [I: nat,Xs2: list_P4201438511612060998_nat_t,X: product_prod_nat_t] :
      ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( ( list_u7556474282317044296_nat_t @ Xs2 @ I @ X )
          = Xs2 )
        = ( ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I )
          = X ) ) ) ).

% list_update_same_conv
thf(fact_778_same__length__different,axiom,
    ! [Xs2: list_t,Ys: list_t] :
      ( ( Xs2 != Ys )
     => ( ( ( size_size_list_t @ Xs2 )
          = ( size_size_list_t @ Ys ) )
       => ? [Pre: list_t,X4: t,Xs4: list_t,Y4: t,Ys5: list_t] :
            ( ( X4 != Y4 )
            & ( Xs2
              = ( append_t @ Pre @ ( append_t @ ( cons_t @ X4 @ nil_t ) @ Xs4 ) ) )
            & ( Ys
              = ( append_t @ Pre @ ( append_t @ ( cons_t @ Y4 @ nil_t ) @ Ys5 ) ) ) ) ) ) ).

% same_length_different
thf(fact_779_same__length__different,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( Xs2 != Ys )
     => ( ( ( size_s5362121731612881446_set_a @ Xs2 )
          = ( size_s5362121731612881446_set_a @ Ys ) )
       => ? [Pre: list_P1095827921439705018_set_a,X4: product_prod_t_set_a,Xs4: list_P1095827921439705018_set_a,Y4: product_prod_t_set_a,Ys5: list_P1095827921439705018_set_a] :
            ( ( X4 != Y4 )
            & ( Xs2
              = ( append8768163766229313743_set_a @ Pre @ ( append8768163766229313743_set_a @ ( cons_P6565363215658504938_set_a @ X4 @ nil_Pr7982011819685168954_set_a ) @ Xs4 ) ) )
            & ( Ys
              = ( append8768163766229313743_set_a @ Pre @ ( append8768163766229313743_set_a @ ( cons_P6565363215658504938_set_a @ Y4 @ nil_Pr7982011819685168954_set_a ) @ Ys5 ) ) ) ) ) ) ).

% same_length_different
thf(fact_780_same__length__different,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( Xs2 != Ys )
     => ( ( ( size_s6950157911653109757_set_a @ Xs2 )
          = ( size_s6950157911653109757_set_a @ Ys ) )
       => ? [Pre: list_P6739568432217944425_set_a,X4: produc3416767791517006041_set_a,Xs4: list_P6739568432217944425_set_a,Y4: produc3416767791517006041_set_a,Ys5: list_P6739568432217944425_set_a] :
            ( ( X4 != Y4 )
            & ( Xs2
              = ( append7235343099912497022_set_a @ Pre @ ( append7235343099912497022_set_a @ ( cons_P4636835598303252387_set_a @ X4 @ nil_Pr3375152174953641811_set_a ) @ Xs4 ) ) )
            & ( Ys
              = ( append7235343099912497022_set_a @ Pre @ ( append7235343099912497022_set_a @ ( cons_P4636835598303252387_set_a @ Y4 @ nil_Pr3375152174953641811_set_a ) @ Ys5 ) ) ) ) ) ) ).

% same_length_different
thf(fact_781_same__length__different,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( Xs2 != Ys )
     => ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
          = ( size_s1593550824562968538_nat_t @ Ys ) )
       => ? [Pre: list_P4201438511612060998_nat_t,X4: product_prod_nat_t,Xs4: list_P4201438511612060998_nat_t,Y4: product_prod_nat_t,Ys5: list_P4201438511612060998_nat_t] :
            ( ( X4 != Y4 )
            & ( Xs2
              = ( append1694031088188373467_nat_t @ Pre @ ( append1694031088188373467_nat_t @ ( cons_P8443330349171532544_nat_t @ X4 @ nil_Pr1417316752131242672_nat_t ) @ Xs4 ) ) )
            & ( Ys
              = ( append1694031088188373467_nat_t @ Pre @ ( append1694031088188373467_nat_t @ ( cons_P8443330349171532544_nat_t @ Y4 @ nil_Pr1417316752131242672_nat_t ) @ Ys5 ) ) ) ) ) ) ).

% same_length_different
thf(fact_782_sorted__list_Osimps,axiom,
    ( sorted_list_nat
    = ( ^ [A: list_nat] :
          ( ( A = nil_nat )
          | ? [X5: nat] :
              ( A
              = ( cons_nat @ X5 @ nil_nat ) )
          | ? [X5: nat,Y5: nat,Ys2: list_nat] :
              ( ( A
                = ( cons_nat @ X5 @ ( cons_nat @ Y5 @ Ys2 ) ) )
              & ( ord_less_eq_nat @ X5 @ Y5 )
              & ( sorted_list_nat @ ( cons_nat @ Y5 @ Ys2 ) ) ) ) ) ) ).

% sorted_list.simps
thf(fact_783_sorted__list_Ocases,axiom,
    ! [A2: list_nat] :
      ( ( sorted_list_nat @ A2 )
     => ( ( A2 != nil_nat )
       => ( ! [X4: nat] :
              ( A2
             != ( cons_nat @ X4 @ nil_nat ) )
         => ~ ! [X4: nat,Y4: nat,Ys4: list_nat] :
                ( ( A2
                  = ( cons_nat @ X4 @ ( cons_nat @ Y4 @ Ys4 ) ) )
               => ( ( ord_less_eq_nat @ X4 @ Y4 )
                 => ~ ( sorted_list_nat @ ( cons_nat @ Y4 @ Ys4 ) ) ) ) ) ) ) ).

% sorted_list.cases
thf(fact_784_chain__le_Osimps,axiom,
    ( chain_le_nat
    = ( ^ [A: list_nat] :
          ( ( A = nil_nat )
          | ? [X5: nat] :
              ( A
              = ( cons_nat @ X5 @ nil_nat ) )
          | ? [Y5: nat,Xs3: list_nat,X5: nat] :
              ( ( A
                = ( cons_nat @ X5 @ ( cons_nat @ Y5 @ Xs3 ) ) )
              & ( chain_le_nat @ ( cons_nat @ Y5 @ Xs3 ) )
              & ( ord_less_eq_nat @ X5 @ Y5 ) ) ) ) ) ).

% chain_le.simps
thf(fact_785_chain__le_Ocases,axiom,
    ! [A2: list_nat] :
      ( ( chain_le_nat @ A2 )
     => ( ( A2 != nil_nat )
       => ( ! [X4: nat] :
              ( A2
             != ( cons_nat @ X4 @ nil_nat ) )
         => ~ ! [Y4: nat,Xs: list_nat,X4: nat] :
                ( ( A2
                  = ( cons_nat @ X4 @ ( cons_nat @ Y4 @ Xs ) ) )
               => ( ( chain_le_nat @ ( cons_nat @ Y4 @ Xs ) )
                 => ~ ( ord_less_eq_nat @ X4 @ Y4 ) ) ) ) ) ) ).

% chain_le.cases
thf(fact_786_length__Suc__conv__rev,axiom,
    ! [Xs2: list_t,N: nat] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: t,Ys2: list_t] :
            ( ( Xs2
              = ( append_t @ Ys2 @ ( cons_t @ Y5 @ nil_t ) ) )
            & ( ( size_size_list_t @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_787_length__Suc__conv__rev,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,N: nat] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: product_prod_t_set_a,Ys2: list_P1095827921439705018_set_a] :
            ( ( Xs2
              = ( append8768163766229313743_set_a @ Ys2 @ ( cons_P6565363215658504938_set_a @ Y5 @ nil_Pr7982011819685168954_set_a ) ) )
            & ( ( size_s5362121731612881446_set_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_788_length__Suc__conv__rev,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,N: nat] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: produc3416767791517006041_set_a,Ys2: list_P6739568432217944425_set_a] :
            ( ( Xs2
              = ( append7235343099912497022_set_a @ Ys2 @ ( cons_P4636835598303252387_set_a @ Y5 @ nil_Pr3375152174953641811_set_a ) ) )
            & ( ( size_s6950157911653109757_set_a @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_789_length__Suc__conv__rev,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,N: nat] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( suc @ N ) )
      = ( ? [Y5: product_prod_nat_t,Ys2: list_P4201438511612060998_nat_t] :
            ( ( Xs2
              = ( append1694031088188373467_nat_t @ Ys2 @ ( cons_P8443330349171532544_nat_t @ Y5 @ nil_Pr1417316752131242672_nat_t ) ) )
            & ( ( size_s1593550824562968538_nat_t @ Ys2 )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_790_length__append__singleton,axiom,
    ! [Xs2: list_t,X: t] :
      ( ( size_size_list_t @ ( append_t @ Xs2 @ ( cons_t @ X @ nil_t ) ) )
      = ( suc @ ( size_size_list_t @ Xs2 ) ) ) ).

% length_append_singleton
thf(fact_791_length__append__singleton,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,X: product_prod_t_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( append8768163766229313743_set_a @ Xs2 @ ( cons_P6565363215658504938_set_a @ X @ nil_Pr7982011819685168954_set_a ) ) )
      = ( suc @ ( size_s5362121731612881446_set_a @ Xs2 ) ) ) ).

% length_append_singleton
thf(fact_792_length__append__singleton,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( append7235343099912497022_set_a @ Xs2 @ ( cons_P4636835598303252387_set_a @ X @ nil_Pr3375152174953641811_set_a ) ) )
      = ( suc @ ( size_s6950157911653109757_set_a @ Xs2 ) ) ) ).

% length_append_singleton
thf(fact_793_length__append__singleton,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,X: product_prod_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ ( cons_P8443330349171532544_nat_t @ X @ nil_Pr1417316752131242672_nat_t ) ) )
      = ( suc @ ( size_s1593550824562968538_nat_t @ Xs2 ) ) ) ).

% length_append_singleton
thf(fact_794_reaches__on_Osimps,axiom,
    ( reaches_on_t_set_a
    = ( ^ [Run2: t > option4621139365931258234_set_a,A12: t,A23: list_set_a,A33: t] :
          ( ? [S7: t] :
              ( ( A12 = S7 )
              & ( A23 = nil_set_a )
              & ( A33 = S7 ) )
          | ? [S7: t,S8: t,V3: set_a,Vs4: list_set_a,S9: t] :
              ( ( A12 = S7 )
              & ( A23
                = ( cons_set_a @ V3 @ Vs4 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S8 @ V3 ) ) )
              & ( reaches_on_t_set_a @ Run2 @ S8 @ Vs4 @ S9 ) ) ) ) ) ).

% reaches_on.simps
thf(fact_795_reaches__on_Osimps,axiom,
    ( reaches_on_nat_nat
    = ( ^ [Run2: nat > option4927543243414619207at_nat,A12: nat,A23: list_nat,A33: nat] :
          ( ? [S7: nat] :
              ( ( A12 = S7 )
              & ( A23 = nil_nat )
              & ( A33 = S7 ) )
          | ? [S7: nat,S8: nat,V3: nat,Vs4: list_nat,S9: nat] :
              ( ( A12 = S7 )
              & ( A23
                = ( cons_nat @ V3 @ Vs4 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S8 @ V3 ) ) )
              & ( reaches_on_nat_nat @ Run2 @ S8 @ Vs4 @ S9 ) ) ) ) ) ).

% reaches_on.simps
thf(fact_796_reaches__on_Osimps,axiom,
    ( reaches_on_h_t
    = ( ^ [Run2: h > option2110264179601050681od_h_t,A12: h,A23: list_t,A33: h] :
          ( ? [S7: h] :
              ( ( A12 = S7 )
              & ( A23 = nil_t )
              & ( A33 = S7 ) )
          | ? [S7: h,S8: h,V3: t,Vs4: list_t,S9: h] :
              ( ( A12 = S7 )
              & ( A23
                = ( cons_t @ V3 @ Vs4 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S8 @ V3 ) ) )
              & ( reaches_on_h_t @ Run2 @ S8 @ Vs4 @ S9 ) ) ) ) ) ).

% reaches_on.simps
thf(fact_797_reaches__on_Osimps,axiom,
    ( reache645946503560514460_h_t_t
    = ( ^ [Run2: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,A12: option2110264179601050681od_h_t,A23: list_t,A33: option2110264179601050681od_h_t] :
          ( ? [S7: option2110264179601050681od_h_t] :
              ( ( A12 = S7 )
              & ( A23 = nil_t )
              & ( A33 = S7 ) )
          | ? [S7: option2110264179601050681od_h_t,S8: option2110264179601050681od_h_t,V3: t,Vs4: list_t,S9: option2110264179601050681od_h_t] :
              ( ( A12 = S7 )
              & ( A23
                = ( cons_t @ V3 @ Vs4 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S8 @ V3 ) ) )
              & ( reache645946503560514460_h_t_t @ Run2 @ S8 @ Vs4 @ S9 ) ) ) ) ) ).

% reaches_on.simps
thf(fact_798_reaches__on_Osimps,axiom,
    ( reache3397181163414509427_set_a
    = ( ^ [Run2: h > option5775791656947114332_set_a,A12: h,A23: list_P1095827921439705018_set_a,A33: h] :
          ( ? [S7: h] :
              ( ( A12 = S7 )
              & ( A23 = nil_Pr7982011819685168954_set_a )
              & ( A33 = S7 ) )
          | ? [S7: h,S8: h,V3: product_prod_t_set_a,Vs4: list_P1095827921439705018_set_a,S9: h] :
              ( ( A12 = S7 )
              & ( A23
                = ( cons_P6565363215658504938_set_a @ V3 @ Vs4 ) )
              & ( A33 = S9 )
              & ( ( Run2 @ S7 )
                = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S8 @ V3 ) ) )
              & ( reache3397181163414509427_set_a @ Run2 @ S8 @ Vs4 @ S9 ) ) ) ) ) ).

% reaches_on.simps
thf(fact_799_reaches__on_Ocases,axiom,
    ! [Run: t > option4621139365931258234_set_a,A1: t,A22: list_set_a,A32: t] :
      ( ( reaches_on_t_set_a @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = nil_set_a )
         => ( A32 != A1 ) )
       => ~ ! [S6: t,V2: set_a,Vs3: list_set_a] :
              ( ( A22
                = ( cons_set_a @ V2 @ Vs3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S6 @ V2 ) ) )
               => ~ ( reaches_on_t_set_a @ Run @ S6 @ Vs3 @ A32 ) ) ) ) ) ).

% reaches_on.cases
thf(fact_800_reaches__on_Ocases,axiom,
    ! [Run: nat > option4927543243414619207at_nat,A1: nat,A22: list_nat,A32: nat] :
      ( ( reaches_on_nat_nat @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = nil_nat )
         => ( A32 != A1 ) )
       => ~ ! [S6: nat,V2: nat,Vs3: list_nat] :
              ( ( A22
                = ( cons_nat @ V2 @ Vs3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S6 @ V2 ) ) )
               => ~ ( reaches_on_nat_nat @ Run @ S6 @ Vs3 @ A32 ) ) ) ) ) ).

% reaches_on.cases
thf(fact_801_reaches__on_Ocases,axiom,
    ! [Run: h > option2110264179601050681od_h_t,A1: h,A22: list_t,A32: h] :
      ( ( reaches_on_h_t @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = nil_t )
         => ( A32 != A1 ) )
       => ~ ! [S6: h,V2: t,Vs3: list_t] :
              ( ( A22
                = ( cons_t @ V2 @ Vs3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S6 @ V2 ) ) )
               => ~ ( reaches_on_h_t @ Run @ S6 @ Vs3 @ A32 ) ) ) ) ) ).

% reaches_on.cases
thf(fact_802_reaches__on_Ocases,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,A1: option2110264179601050681od_h_t,A22: list_t,A32: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = nil_t )
         => ( A32 != A1 ) )
       => ~ ! [S6: option2110264179601050681od_h_t,V2: t,Vs3: list_t] :
              ( ( A22
                = ( cons_t @ V2 @ Vs3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S6 @ V2 ) ) )
               => ~ ( reache645946503560514460_h_t_t @ Run @ S6 @ Vs3 @ A32 ) ) ) ) ) ).

% reaches_on.cases
thf(fact_803_reaches__on_Ocases,axiom,
    ! [Run: h > option5775791656947114332_set_a,A1: h,A22: list_P1095827921439705018_set_a,A32: h] :
      ( ( reache3397181163414509427_set_a @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = nil_Pr7982011819685168954_set_a )
         => ( A32 != A1 ) )
       => ~ ! [S6: h,V2: product_prod_t_set_a,Vs3: list_P1095827921439705018_set_a] :
              ( ( A22
                = ( cons_P6565363215658504938_set_a @ V2 @ Vs3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S6 @ V2 ) ) )
               => ~ ( reache3397181163414509427_set_a @ Run @ S6 @ Vs3 @ A32 ) ) ) ) ) ).

% reaches_on.cases
thf(fact_804_chain__le__app,axiom,
    ! [Zs: list_nat,Z4: nat,W2: nat] :
      ( ( chain_le_nat @ ( append_nat @ Zs @ ( cons_nat @ Z4 @ nil_nat ) ) )
     => ( ( ord_less_eq_nat @ Z4 @ W2 )
       => ( chain_le_nat @ ( append_nat @ ( append_nat @ Zs @ ( cons_nat @ Z4 @ nil_nat ) ) @ ( cons_nat @ W2 @ nil_nat ) ) ) ) ) ).

% chain_le_app
thf(fact_805_reaches__on__split__last,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Xs2: list_set_a,X: set_a,S3: t] :
      ( ( reaches_on_t_set_a @ Run @ S @ ( append_set_a @ Xs2 @ ( cons_set_a @ X @ nil_set_a ) ) @ S3 )
     => ? [S6: t] :
          ( ( reaches_on_t_set_a @ Run @ S @ Xs2 @ S6 )
          & ( ( Run @ S6 )
            = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S3 @ X ) ) ) ) ) ).

% reaches_on_split_last
thf(fact_806_reaches__on__split__last,axiom,
    ! [Run: nat > option4927543243414619207at_nat,S: nat,Xs2: list_nat,X: nat,S3: nat] :
      ( ( reaches_on_nat_nat @ Run @ S @ ( append_nat @ Xs2 @ ( cons_nat @ X @ nil_nat ) ) @ S3 )
     => ? [S6: nat] :
          ( ( reaches_on_nat_nat @ Run @ S @ Xs2 @ S6 )
          & ( ( Run @ S6 )
            = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S3 @ X ) ) ) ) ) ).

% reaches_on_split_last
thf(fact_807_reaches__on__split__last,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Xs2: list_t,X: t,S3: h] :
      ( ( reaches_on_h_t @ Run @ S @ ( append_t @ Xs2 @ ( cons_t @ X @ nil_t ) ) @ S3 )
     => ? [S6: h] :
          ( ( reaches_on_h_t @ Run @ S @ Xs2 @ S6 )
          & ( ( Run @ S6 )
            = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S3 @ X ) ) ) ) ) ).

% reaches_on_split_last
thf(fact_808_reaches__on__split__last,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Xs2: list_t,X: t,S3: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ ( append_t @ Xs2 @ ( cons_t @ X @ nil_t ) ) @ S3 )
     => ? [S6: option2110264179601050681od_h_t] :
          ( ( reache645946503560514460_h_t_t @ Run @ S @ Xs2 @ S6 )
          & ( ( Run @ S6 )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S3 @ X ) ) ) ) ) ).

% reaches_on_split_last
thf(fact_809_reaches__on__split__last,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Xs2: list_P1095827921439705018_set_a,X: product_prod_t_set_a,S3: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ ( append8768163766229313743_set_a @ Xs2 @ ( cons_P6565363215658504938_set_a @ X @ nil_Pr7982011819685168954_set_a ) ) @ S3 )
     => ? [S6: h] :
          ( ( reache3397181163414509427_set_a @ Run @ S @ Xs2 @ S6 )
          & ( ( Run @ S6 )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S3 @ X ) ) ) ) ) ).

% reaches_on_split_last
thf(fact_810_reaches__on__rev__induct,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,P: t > list_set_a > t > $o] :
      ( ( reaches_on_t_set_a @ Run @ S @ Vs @ S2 )
     => ( ! [S5: t] : ( P @ S5 @ nil_set_a @ S5 )
       => ( ! [S5: t,S6: t,V2: set_a,Vs3: list_set_a,S4: t] :
              ( ( reaches_on_t_set_a @ Run @ S5 @ Vs3 @ S6 )
             => ( ( P @ S5 @ Vs3 @ S6 )
               => ( ( ( Run @ S6 )
                    = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S4 @ V2 ) ) )
                 => ( P @ S5 @ ( append_set_a @ Vs3 @ ( cons_set_a @ V2 @ nil_set_a ) ) @ S4 ) ) ) )
         => ( P @ S @ Vs @ S2 ) ) ) ) ).

% reaches_on_rev_induct
thf(fact_811_reaches__on__rev__induct,axiom,
    ! [Run: nat > option4927543243414619207at_nat,S: nat,Vs: list_nat,S2: nat,P: nat > list_nat > nat > $o] :
      ( ( reaches_on_nat_nat @ Run @ S @ Vs @ S2 )
     => ( ! [S5: nat] : ( P @ S5 @ nil_nat @ S5 )
       => ( ! [S5: nat,S6: nat,V2: nat,Vs3: list_nat,S4: nat] :
              ( ( reaches_on_nat_nat @ Run @ S5 @ Vs3 @ S6 )
             => ( ( P @ S5 @ Vs3 @ S6 )
               => ( ( ( Run @ S6 )
                    = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S4 @ V2 ) ) )
                 => ( P @ S5 @ ( append_nat @ Vs3 @ ( cons_nat @ V2 @ nil_nat ) ) @ S4 ) ) ) )
         => ( P @ S @ Vs @ S2 ) ) ) ) ).

% reaches_on_rev_induct
thf(fact_812_reaches__on__rev__induct,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,P: h > list_t > h > $o] :
      ( ( reaches_on_h_t @ Run @ S @ Vs @ S2 )
     => ( ! [S5: h] : ( P @ S5 @ nil_t @ S5 )
       => ( ! [S5: h,S6: h,V2: t,Vs3: list_t,S4: h] :
              ( ( reaches_on_h_t @ Run @ S5 @ Vs3 @ S6 )
             => ( ( P @ S5 @ Vs3 @ S6 )
               => ( ( ( Run @ S6 )
                    = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S4 @ V2 ) ) )
                 => ( P @ S5 @ ( append_t @ Vs3 @ ( cons_t @ V2 @ nil_t ) ) @ S4 ) ) ) )
         => ( P @ S @ Vs @ S2 ) ) ) ) ).

% reaches_on_rev_induct
thf(fact_813_reaches__on__rev__induct,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,S2: option2110264179601050681od_h_t,P: option2110264179601050681od_h_t > list_t > option2110264179601050681od_h_t > $o] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S2 )
     => ( ! [S5: option2110264179601050681od_h_t] : ( P @ S5 @ nil_t @ S5 )
       => ( ! [S5: option2110264179601050681od_h_t,S6: option2110264179601050681od_h_t,V2: t,Vs3: list_t,S4: option2110264179601050681od_h_t] :
              ( ( reache645946503560514460_h_t_t @ Run @ S5 @ Vs3 @ S6 )
             => ( ( P @ S5 @ Vs3 @ S6 )
               => ( ( ( Run @ S6 )
                    = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S4 @ V2 ) ) )
                 => ( P @ S5 @ ( append_t @ Vs3 @ ( cons_t @ V2 @ nil_t ) ) @ S4 ) ) ) )
         => ( P @ S @ Vs @ S2 ) ) ) ) ).

% reaches_on_rev_induct
thf(fact_814_reaches__on__rev__induct,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,P: h > list_P1095827921439705018_set_a > h > $o] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S2 )
     => ( ! [S5: h] : ( P @ S5 @ nil_Pr7982011819685168954_set_a @ S5 )
       => ( ! [S5: h,S6: h,V2: product_prod_t_set_a,Vs3: list_P1095827921439705018_set_a,S4: h] :
              ( ( reache3397181163414509427_set_a @ Run @ S5 @ Vs3 @ S6 )
             => ( ( P @ S5 @ Vs3 @ S6 )
               => ( ( ( Run @ S6 )
                    = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S4 @ V2 ) ) )
                 => ( P @ S5 @ ( append8768163766229313743_set_a @ Vs3 @ ( cons_P6565363215658504938_set_a @ V2 @ nil_Pr7982011819685168954_set_a ) ) @ S4 ) ) ) )
         => ( P @ S @ Vs @ S2 ) ) ) ) ).

% reaches_on_rev_induct
thf(fact_815_reaches__on__app,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,S3: t,V: set_a] :
      ( ( reaches_on_t_set_a @ Run @ S @ Vs @ S2 )
     => ( ( ( Run @ S2 )
          = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S3 @ V ) ) )
       => ( reaches_on_t_set_a @ Run @ S @ ( append_set_a @ Vs @ ( cons_set_a @ V @ nil_set_a ) ) @ S3 ) ) ) ).

% reaches_on_app
thf(fact_816_reaches__on__app,axiom,
    ! [Run: nat > option4927543243414619207at_nat,S: nat,Vs: list_nat,S2: nat,S3: nat,V: nat] :
      ( ( reaches_on_nat_nat @ Run @ S @ Vs @ S2 )
     => ( ( ( Run @ S2 )
          = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ S3 @ V ) ) )
       => ( reaches_on_nat_nat @ Run @ S @ ( append_nat @ Vs @ ( cons_nat @ V @ nil_nat ) ) @ S3 ) ) ) ).

% reaches_on_app
thf(fact_817_reaches__on__app,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,S3: h,V: t] :
      ( ( reaches_on_h_t @ Run @ S @ Vs @ S2 )
     => ( ( ( Run @ S2 )
          = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S3 @ V ) ) )
       => ( reaches_on_h_t @ Run @ S @ ( append_t @ Vs @ ( cons_t @ V @ nil_t ) ) @ S3 ) ) ) ).

% reaches_on_app
thf(fact_818_reaches__on__app,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Vs: list_t,S2: option2110264179601050681od_h_t,S3: option2110264179601050681od_h_t,V: t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S2 )
     => ( ( ( Run @ S2 )
          = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S3 @ V ) ) )
       => ( reache645946503560514460_h_t_t @ Run @ S @ ( append_t @ Vs @ ( cons_t @ V @ nil_t ) ) @ S3 ) ) ) ).

% reaches_on_app
thf(fact_819_reaches__on__app,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,S3: h,V: product_prod_t_set_a] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S2 )
     => ( ( ( Run @ S2 )
          = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S3 @ V ) ) )
       => ( reache3397181163414509427_set_a @ Run @ S @ ( append8768163766229313743_set_a @ Vs @ ( cons_P6565363215658504938_set_a @ V @ nil_Pr7982011819685168954_set_a ) ) @ S3 ) ) ) ).

% reaches_on_app
thf(fact_820_delete__aux_Ocases,axiom,
    ! [X: produc1757852559615113307od_h_t] :
      ( ! [K2: h] :
          ( X
         != ( produc1747536959180979019od_h_t @ K2 @ nil_Product_prod_h_t ) )
     => ~ ! [K2: h,K4: h,V2: t,Xs: list_P7520416276666729081od_h_t] :
            ( X
           != ( produc1747536959180979019od_h_t @ K2 @ ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K4 @ V2 ) @ Xs ) ) ) ) ).

% delete_aux.cases
thf(fact_821_delete__aux_Ocases,axiom,
    ! [X: produc8467556406643898867_h_t_t] :
      ( ! [K2: option2110264179601050681od_h_t] :
          ( X
         != ( produc8237491370697050595_h_t_t @ K2 @ nil_Pr8838988226997446597_h_t_t ) )
     => ~ ! [K2: option2110264179601050681od_h_t,K4: option2110264179601050681od_h_t,V2: t,Xs: list_P6951459944542807621_h_t_t] :
            ( X
           != ( produc8237491370697050595_h_t_t @ K2 @ ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K4 @ V2 ) @ Xs ) ) ) ) ).

% delete_aux.cases
thf(fact_822_delete__aux_Ocases,axiom,
    ! [X: produc5512707594232479998_set_a] :
      ( ! [K2: h] :
          ( X
         != ( produc8663000205161293422_set_a @ K2 @ nil_Pr4294158543271970076_set_a ) )
     => ~ ! [K2: h,K4: h,V2: product_prod_t_set_a,Xs: list_P2035273040109328284_set_a] :
            ( X
           != ( produc8663000205161293422_set_a @ K2 @ ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K4 @ V2 ) @ Xs ) ) ) ) ).

% delete_aux.cases
thf(fact_823_delete__aux_Ocases,axiom,
    ! [X: produc9219478359178935824_set_a] :
      ( ! [K2: t] :
          ( X
         != ( produc8373274609231865216_set_a @ K2 @ nil_Pr7982011819685168954_set_a ) )
     => ~ ! [K2: t,K4: t,V2: set_a,Xs: list_P1095827921439705018_set_a] :
            ( X
           != ( produc8373274609231865216_set_a @ K2 @ ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K4 @ V2 ) @ Xs ) ) ) ) ).

% delete_aux.cases
thf(fact_824_delete__aux_Ocases,axiom,
    ! [X: produc8472197452120411308at_nat] :
      ( ! [K2: nat] :
          ( X
         != ( produc6109913384486294878at_nat @ K2 @ nil_Pr5478986624290739719at_nat ) )
     => ~ ! [K2: nat,K4: nat,V2: nat,Xs: list_P6011104703257516679at_nat] :
            ( X
           != ( produc6109913384486294878at_nat @ K2 @ ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K4 @ V2 ) @ Xs ) ) ) ) ).

% delete_aux.cases
thf(fact_825_prod__decode__aux_Ocases,axiom,
    ! [X: product_prod_nat_nat] :
      ~ ! [K2: nat,M2: nat] :
          ( X
         != ( product_Pair_nat_nat @ K2 @ M2 ) ) ).

% prod_decode_aux.cases
thf(fact_826_map__entry_Oelims,axiom,
    ! [X: h,Xa: t > t,Xb: list_P7520416276666729081od_h_t,Y: list_P7520416276666729081od_h_t] :
      ( ( ( map_entry_h_t @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Product_prod_h_t )
         => ( Y != nil_Product_prod_h_t ) )
       => ~ ! [P3: product_prod_h_t,Ps: list_P7520416276666729081od_h_t] :
              ( ( Xb
                = ( cons_P6251494208368732457od_h_t @ P3 @ Ps ) )
             => ~ ( ( ( ( product_fst_h_t @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ X @ ( Xa @ ( product_snd_h_t @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( product_fst_h_t @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6251494208368732457od_h_t @ P3 @ ( map_entry_h_t @ X @ Xa @ Ps ) ) ) ) ) ) ) ) ).

% map_entry.elims
thf(fact_827_map__entry_Oelims,axiom,
    ! [X: option2110264179601050681od_h_t,Xa: t > t,Xb: list_P6951459944542807621_h_t_t,Y: list_P6951459944542807621_h_t_t] :
      ( ( ( map_en3518867738813299809_h_t_t @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Pr8838988226997446597_h_t_t )
         => ( Y != nil_Pr8838988226997446597_h_t_t ) )
       => ~ ! [P3: produc2796182059459404991_h_t_t,Ps: list_P6951459944542807621_h_t_t] :
              ( ( Xb
                = ( cons_P6082639445353249653_h_t_t @ P3 @ Ps ) )
             => ~ ( ( ( ( produc4004510029700249243_h_t_t @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ X @ ( Xa @ ( produc4382304763178309853_h_t_t @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( produc4004510029700249243_h_t_t @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6082639445353249653_h_t_t @ P3 @ ( map_en3518867738813299809_h_t_t @ X @ Xa @ Ps ) ) ) ) ) ) ) ) ).

% map_entry.elims
thf(fact_828_map__entry_Oelims,axiom,
    ! [X: h,Xa: product_prod_t_set_a > product_prod_t_set_a,Xb: list_P2035273040109328284_set_a,Y: list_P2035273040109328284_set_a] :
      ( ( ( map_en2515006764104892344_set_a @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Pr4294158543271970076_set_a )
         => ( Y != nil_Pr4294158543271970076_set_a ) )
       => ~ ! [P3: produc8090089739038349590_set_a,Ps: list_P2035273040109328284_set_a] :
              ( ( Xb
                = ( cons_P8657861537117511884_set_a @ P3 @ Ps ) )
             => ~ ( ( ( ( produc6892702156181598450_set_a @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ X @ ( Xa @ ( produc5260167487839082036_set_a @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( produc6892702156181598450_set_a @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P8657861537117511884_set_a @ P3 @ ( map_en2515006764104892344_set_a @ X @ Xa @ Ps ) ) ) ) ) ) ) ) ).

% map_entry.elims
thf(fact_829_map__entry_Oelims,axiom,
    ! [X: t,Xa: set_a > set_a,Xb: list_P1095827921439705018_set_a,Y: list_P1095827921439705018_set_a] :
      ( ( ( map_entry_t_set_a @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Pr7982011819685168954_set_a )
         => ( Y != nil_Pr7982011819685168954_set_a ) )
       => ~ ! [P3: product_prod_t_set_a,Ps: list_P1095827921439705018_set_a] :
              ( ( Xb
                = ( cons_P6565363215658504938_set_a @ P3 @ Ps ) )
             => ~ ( ( ( ( product_fst_t_set_a @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ X @ ( Xa @ ( product_snd_t_set_a @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( product_fst_t_set_a @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6565363215658504938_set_a @ P3 @ ( map_entry_t_set_a @ X @ Xa @ Ps ) ) ) ) ) ) ) ) ).

% map_entry.elims
thf(fact_830_map__entry_Oelims,axiom,
    ! [X: nat,Xa: nat > nat,Xb: list_P6011104703257516679at_nat,Y: list_P6011104703257516679at_nat] :
      ( ( ( map_entry_nat_nat @ X @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Pr5478986624290739719at_nat )
         => ( Y != nil_Pr5478986624290739719at_nat ) )
       => ~ ! [P3: product_prod_nat_nat,Ps: list_P6011104703257516679at_nat] :
              ( ( Xb
                = ( cons_P6512896166579812791at_nat @ P3 @ Ps ) )
             => ~ ( ( ( ( product_fst_nat_nat @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ ( Xa @ ( product_snd_nat_nat @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( product_fst_nat_nat @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6512896166579812791at_nat @ P3 @ ( map_entry_nat_nat @ X @ Xa @ Ps ) ) ) ) ) ) ) ) ).

% map_entry.elims
thf(fact_831_map__default_Oelims,axiom,
    ! [X: h,Xa: t,Xb: t > t,Xc: list_P7520416276666729081od_h_t,Y: list_P7520416276666729081od_h_t] :
      ( ( ( map_default_h_t @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xc = nil_Product_prod_h_t )
         => ( Y
           != ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ X @ Xa ) @ nil_Product_prod_h_t ) ) )
       => ~ ! [P3: product_prod_h_t,Ps: list_P7520416276666729081od_h_t] :
              ( ( Xc
                = ( cons_P6251494208368732457od_h_t @ P3 @ Ps ) )
             => ~ ( ( ( ( product_fst_h_t @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ X @ ( Xb @ ( product_snd_h_t @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( product_fst_h_t @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6251494208368732457od_h_t @ P3 @ ( map_default_h_t @ X @ Xa @ Xb @ Ps ) ) ) ) ) ) ) ) ).

% map_default.elims
thf(fact_832_map__default_Oelims,axiom,
    ! [X: option2110264179601050681od_h_t,Xa: t,Xb: t > t,Xc: list_P6951459944542807621_h_t_t,Y: list_P6951459944542807621_h_t_t] :
      ( ( ( map_de319322384750460784_h_t_t @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xc = nil_Pr8838988226997446597_h_t_t )
         => ( Y
           != ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ X @ Xa ) @ nil_Pr8838988226997446597_h_t_t ) ) )
       => ~ ! [P3: produc2796182059459404991_h_t_t,Ps: list_P6951459944542807621_h_t_t] :
              ( ( Xc
                = ( cons_P6082639445353249653_h_t_t @ P3 @ Ps ) )
             => ~ ( ( ( ( produc4004510029700249243_h_t_t @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ X @ ( Xb @ ( produc4382304763178309853_h_t_t @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( produc4004510029700249243_h_t_t @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6082639445353249653_h_t_t @ P3 @ ( map_de319322384750460784_h_t_t @ X @ Xa @ Xb @ Ps ) ) ) ) ) ) ) ) ).

% map_default.elims
thf(fact_833_map__default_Oelims,axiom,
    ! [X: h,Xa: product_prod_t_set_a,Xb: product_prod_t_set_a > product_prod_t_set_a,Xc: list_P2035273040109328284_set_a,Y: list_P2035273040109328284_set_a] :
      ( ( ( map_de6535475216089663815_set_a @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xc = nil_Pr4294158543271970076_set_a )
         => ( Y
           != ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ X @ Xa ) @ nil_Pr4294158543271970076_set_a ) ) )
       => ~ ! [P3: produc8090089739038349590_set_a,Ps: list_P2035273040109328284_set_a] :
              ( ( Xc
                = ( cons_P8657861537117511884_set_a @ P3 @ Ps ) )
             => ~ ( ( ( ( produc6892702156181598450_set_a @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ X @ ( Xb @ ( produc5260167487839082036_set_a @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( produc6892702156181598450_set_a @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P8657861537117511884_set_a @ P3 @ ( map_de6535475216089663815_set_a @ X @ Xa @ Xb @ Ps ) ) ) ) ) ) ) ) ).

% map_default.elims
thf(fact_834_map__default_Oelims,axiom,
    ! [X: t,Xa: set_a,Xb: set_a > set_a,Xc: list_P1095827921439705018_set_a,Y: list_P1095827921439705018_set_a] :
      ( ( ( map_default_t_set_a @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xc = nil_Pr7982011819685168954_set_a )
         => ( Y
           != ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ X @ Xa ) @ nil_Pr7982011819685168954_set_a ) ) )
       => ~ ! [P3: product_prod_t_set_a,Ps: list_P1095827921439705018_set_a] :
              ( ( Xc
                = ( cons_P6565363215658504938_set_a @ P3 @ Ps ) )
             => ~ ( ( ( ( product_fst_t_set_a @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ X @ ( Xb @ ( product_snd_t_set_a @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( product_fst_t_set_a @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6565363215658504938_set_a @ P3 @ ( map_default_t_set_a @ X @ Xa @ Xb @ Ps ) ) ) ) ) ) ) ) ).

% map_default.elims
thf(fact_835_map__default_Oelims,axiom,
    ! [X: nat,Xa: nat,Xb: nat > nat,Xc: list_P6011104703257516679at_nat,Y: list_P6011104703257516679at_nat] :
      ( ( ( map_default_nat_nat @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xc = nil_Pr5478986624290739719at_nat )
         => ( Y
           != ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ Xa ) @ nil_Pr5478986624290739719at_nat ) ) )
       => ~ ! [P3: product_prod_nat_nat,Ps: list_P6011104703257516679at_nat] :
              ( ( Xc
                = ( cons_P6512896166579812791at_nat @ P3 @ Ps ) )
             => ~ ( ( ( ( product_fst_nat_nat @ P3 )
                      = X )
                   => ( Y
                      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ ( Xb @ ( product_snd_nat_nat @ P3 ) ) ) @ Ps ) ) )
                  & ( ( ( product_fst_nat_nat @ P3 )
                     != X )
                   => ( Y
                      = ( cons_P6512896166579812791at_nat @ P3 @ ( map_default_nat_nat @ X @ Xa @ Xb @ Ps ) ) ) ) ) ) ) ) ).

% map_default.elims
thf(fact_836_map__default_Osimps_I1_J,axiom,
    ! [K: h,V: t,F: t > t] :
      ( ( map_default_h_t @ K @ V @ F @ nil_Product_prod_h_t )
      = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K @ V ) @ nil_Product_prod_h_t ) ) ).

% map_default.simps(1)
thf(fact_837_map__default_Osimps_I1_J,axiom,
    ! [K: option2110264179601050681od_h_t,V: t,F: t > t] :
      ( ( map_de319322384750460784_h_t_t @ K @ V @ F @ nil_Pr8838988226997446597_h_t_t )
      = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K @ V ) @ nil_Pr8838988226997446597_h_t_t ) ) ).

% map_default.simps(1)
thf(fact_838_map__default_Osimps_I1_J,axiom,
    ! [K: h,V: product_prod_t_set_a,F: product_prod_t_set_a > product_prod_t_set_a] :
      ( ( map_de6535475216089663815_set_a @ K @ V @ F @ nil_Pr4294158543271970076_set_a )
      = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K @ V ) @ nil_Pr4294158543271970076_set_a ) ) ).

% map_default.simps(1)
thf(fact_839_map__default_Osimps_I1_J,axiom,
    ! [K: t,V: set_a,F: set_a > set_a] :
      ( ( map_default_t_set_a @ K @ V @ F @ nil_Pr7982011819685168954_set_a )
      = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K @ V ) @ nil_Pr7982011819685168954_set_a ) ) ).

% map_default.simps(1)
thf(fact_840_map__default_Osimps_I1_J,axiom,
    ! [K: nat,V: nat,F: nat > nat] :
      ( ( map_default_nat_nat @ K @ V @ F @ nil_Pr5478986624290739719at_nat )
      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K @ V ) @ nil_Pr5478986624290739719at_nat ) ) ).

% map_default.simps(1)
thf(fact_841_map__default_Osimps_I2_J,axiom,
    ! [P2: product_prod_h_t,K: h,V: t,F: t > t,Ps2: list_P7520416276666729081od_h_t] :
      ( ( ( ( product_fst_h_t @ P2 )
          = K )
       => ( ( map_default_h_t @ K @ V @ F @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K @ ( F @ ( product_snd_h_t @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_h_t @ P2 )
         != K )
       => ( ( map_default_h_t @ K @ V @ F @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ P2 @ ( map_default_h_t @ K @ V @ F @ Ps2 ) ) ) ) ) ).

% map_default.simps(2)
thf(fact_842_map__default_Osimps_I2_J,axiom,
    ! [P2: produc2796182059459404991_h_t_t,K: option2110264179601050681od_h_t,V: t,F: t > t,Ps2: list_P6951459944542807621_h_t_t] :
      ( ( ( ( produc4004510029700249243_h_t_t @ P2 )
          = K )
       => ( ( map_de319322384750460784_h_t_t @ K @ V @ F @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K @ ( F @ ( produc4382304763178309853_h_t_t @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( produc4004510029700249243_h_t_t @ P2 )
         != K )
       => ( ( map_de319322384750460784_h_t_t @ K @ V @ F @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ P2 @ ( map_de319322384750460784_h_t_t @ K @ V @ F @ Ps2 ) ) ) ) ) ).

% map_default.simps(2)
thf(fact_843_map__default_Osimps_I2_J,axiom,
    ! [P2: produc8090089739038349590_set_a,K: h,V: product_prod_t_set_a,F: product_prod_t_set_a > product_prod_t_set_a,Ps2: list_P2035273040109328284_set_a] :
      ( ( ( ( produc6892702156181598450_set_a @ P2 )
          = K )
       => ( ( map_de6535475216089663815_set_a @ K @ V @ F @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K @ ( F @ ( produc5260167487839082036_set_a @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( produc6892702156181598450_set_a @ P2 )
         != K )
       => ( ( map_de6535475216089663815_set_a @ K @ V @ F @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ P2 @ ( map_de6535475216089663815_set_a @ K @ V @ F @ Ps2 ) ) ) ) ) ).

% map_default.simps(2)
thf(fact_844_map__default_Osimps_I2_J,axiom,
    ! [P2: product_prod_t_set_a,K: t,V: set_a,F: set_a > set_a,Ps2: list_P1095827921439705018_set_a] :
      ( ( ( ( product_fst_t_set_a @ P2 )
          = K )
       => ( ( map_default_t_set_a @ K @ V @ F @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K @ ( F @ ( product_snd_t_set_a @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_t_set_a @ P2 )
         != K )
       => ( ( map_default_t_set_a @ K @ V @ F @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ P2 @ ( map_default_t_set_a @ K @ V @ F @ Ps2 ) ) ) ) ) ).

% map_default.simps(2)
thf(fact_845_map__default_Osimps_I2_J,axiom,
    ! [P2: product_prod_nat_nat,K: nat,V: nat,F: nat > nat,Ps2: list_P6011104703257516679at_nat] :
      ( ( ( ( product_fst_nat_nat @ P2 )
          = K )
       => ( ( map_default_nat_nat @ K @ V @ F @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K @ ( F @ ( product_snd_nat_nat @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_nat_nat @ P2 )
         != K )
       => ( ( map_default_nat_nat @ K @ V @ F @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ P2 @ ( map_default_nat_nat @ K @ V @ F @ Ps2 ) ) ) ) ) ).

% map_default.simps(2)
thf(fact_846_map__entry_Osimps_I2_J,axiom,
    ! [P2: product_prod_h_t,K: h,F: t > t,Ps2: list_P7520416276666729081od_h_t] :
      ( ( ( ( product_fst_h_t @ P2 )
          = K )
       => ( ( map_entry_h_t @ K @ F @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K @ ( F @ ( product_snd_h_t @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_h_t @ P2 )
         != K )
       => ( ( map_entry_h_t @ K @ F @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ P2 @ ( map_entry_h_t @ K @ F @ Ps2 ) ) ) ) ) ).

% map_entry.simps(2)
thf(fact_847_map__entry_Osimps_I2_J,axiom,
    ! [P2: produc2796182059459404991_h_t_t,K: option2110264179601050681od_h_t,F: t > t,Ps2: list_P6951459944542807621_h_t_t] :
      ( ( ( ( produc4004510029700249243_h_t_t @ P2 )
          = K )
       => ( ( map_en3518867738813299809_h_t_t @ K @ F @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K @ ( F @ ( produc4382304763178309853_h_t_t @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( produc4004510029700249243_h_t_t @ P2 )
         != K )
       => ( ( map_en3518867738813299809_h_t_t @ K @ F @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ P2 @ ( map_en3518867738813299809_h_t_t @ K @ F @ Ps2 ) ) ) ) ) ).

% map_entry.simps(2)
thf(fact_848_map__entry_Osimps_I2_J,axiom,
    ! [P2: produc8090089739038349590_set_a,K: h,F: product_prod_t_set_a > product_prod_t_set_a,Ps2: list_P2035273040109328284_set_a] :
      ( ( ( ( produc6892702156181598450_set_a @ P2 )
          = K )
       => ( ( map_en2515006764104892344_set_a @ K @ F @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K @ ( F @ ( produc5260167487839082036_set_a @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( produc6892702156181598450_set_a @ P2 )
         != K )
       => ( ( map_en2515006764104892344_set_a @ K @ F @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ P2 @ ( map_en2515006764104892344_set_a @ K @ F @ Ps2 ) ) ) ) ) ).

% map_entry.simps(2)
thf(fact_849_map__entry_Osimps_I2_J,axiom,
    ! [P2: product_prod_t_set_a,K: t,F: set_a > set_a,Ps2: list_P1095827921439705018_set_a] :
      ( ( ( ( product_fst_t_set_a @ P2 )
          = K )
       => ( ( map_entry_t_set_a @ K @ F @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K @ ( F @ ( product_snd_t_set_a @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_t_set_a @ P2 )
         != K )
       => ( ( map_entry_t_set_a @ K @ F @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ P2 @ ( map_entry_t_set_a @ K @ F @ Ps2 ) ) ) ) ) ).

% map_entry.simps(2)
thf(fact_850_map__entry_Osimps_I2_J,axiom,
    ! [P2: product_prod_nat_nat,K: nat,F: nat > nat,Ps2: list_P6011104703257516679at_nat] :
      ( ( ( ( product_fst_nat_nat @ P2 )
          = K )
       => ( ( map_entry_nat_nat @ K @ F @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K @ ( F @ ( product_snd_nat_nat @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_nat_nat @ P2 )
         != K )
       => ( ( map_entry_nat_nat @ K @ F @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ P2 @ ( map_entry_nat_nat @ K @ F @ Ps2 ) ) ) ) ) ).

% map_entry.simps(2)
thf(fact_851_map__default_Opelims,axiom,
    ! [X: h,Xa: t,Xb: t > t,Xc: list_P7520416276666729081od_h_t,Y: list_P7520416276666729081od_h_t] :
      ( ( ( map_default_h_t @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( accp_P4377544425418686004od_h_t @ map_default_rel_h_t @ ( produc2899723240397946359od_h_t @ X @ ( produc4122255162991801923od_h_t @ Xa @ ( produc1198824894057669819od_h_t @ Xb @ Xc ) ) ) )
       => ( ( ( Xc = nil_Product_prod_h_t )
           => ( ( Y
                = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ X @ Xa ) @ nil_Product_prod_h_t ) )
             => ~ ( accp_P4377544425418686004od_h_t @ map_default_rel_h_t @ ( produc2899723240397946359od_h_t @ X @ ( produc4122255162991801923od_h_t @ Xa @ ( produc1198824894057669819od_h_t @ Xb @ nil_Product_prod_h_t ) ) ) ) ) )
         => ~ ! [P3: product_prod_h_t,Ps: list_P7520416276666729081od_h_t] :
                ( ( Xc
                  = ( cons_P6251494208368732457od_h_t @ P3 @ Ps ) )
               => ( ( ( ( ( product_fst_h_t @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ X @ ( Xb @ ( product_snd_h_t @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( product_fst_h_t @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6251494208368732457od_h_t @ P3 @ ( map_default_h_t @ X @ Xa @ Xb @ Ps ) ) ) ) )
                 => ~ ( accp_P4377544425418686004od_h_t @ map_default_rel_h_t @ ( produc2899723240397946359od_h_t @ X @ ( produc4122255162991801923od_h_t @ Xa @ ( produc1198824894057669819od_h_t @ Xb @ ( cons_P6251494208368732457od_h_t @ P3 @ Ps ) ) ) ) ) ) ) ) ) ) ).

% map_default.pelims
thf(fact_852_map__default_Opelims,axiom,
    ! [X: option2110264179601050681od_h_t,Xa: t,Xb: t > t,Xc: list_P6951459944542807621_h_t_t,Y: list_P6951459944542807621_h_t_t] :
      ( ( ( map_de319322384750460784_h_t_t @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( accp_P6726631513323756852_h_t_t @ map_de2727128406196902201_h_t_t @ ( produc4856507016996140791_h_t_t @ X @ ( produc7172541847997997711_h_t_t @ Xa @ ( produc6657849915346856839_h_t_t @ Xb @ Xc ) ) ) )
       => ( ( ( Xc = nil_Pr8838988226997446597_h_t_t )
           => ( ( Y
                = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ X @ Xa ) @ nil_Pr8838988226997446597_h_t_t ) )
             => ~ ( accp_P6726631513323756852_h_t_t @ map_de2727128406196902201_h_t_t @ ( produc4856507016996140791_h_t_t @ X @ ( produc7172541847997997711_h_t_t @ Xa @ ( produc6657849915346856839_h_t_t @ Xb @ nil_Pr8838988226997446597_h_t_t ) ) ) ) ) )
         => ~ ! [P3: produc2796182059459404991_h_t_t,Ps: list_P6951459944542807621_h_t_t] :
                ( ( Xc
                  = ( cons_P6082639445353249653_h_t_t @ P3 @ Ps ) )
               => ( ( ( ( ( produc4004510029700249243_h_t_t @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ X @ ( Xb @ ( produc4382304763178309853_h_t_t @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( produc4004510029700249243_h_t_t @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6082639445353249653_h_t_t @ P3 @ ( map_de319322384750460784_h_t_t @ X @ Xa @ Xb @ Ps ) ) ) ) )
                 => ~ ( accp_P6726631513323756852_h_t_t @ map_de2727128406196902201_h_t_t @ ( produc4856507016996140791_h_t_t @ X @ ( produc7172541847997997711_h_t_t @ Xa @ ( produc6657849915346856839_h_t_t @ Xb @ ( cons_P6082639445353249653_h_t_t @ P3 @ Ps ) ) ) ) ) ) ) ) ) ) ).

% map_default.pelims
thf(fact_853_map__default_Opelims,axiom,
    ! [X: h,Xa: product_prod_t_set_a,Xb: product_prod_t_set_a > product_prod_t_set_a,Xc: list_P2035273040109328284_set_a,Y: list_P2035273040109328284_set_a] :
      ( ( ( map_de6535475216089663815_set_a @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( accp_P4247297568117447610_set_a @ map_de7666120435537666192_set_a @ ( produc1553154368631514749_set_a @ X @ ( produc1519467037424502857_set_a @ Xa @ ( produc6108346596544203678_set_a @ Xb @ Xc ) ) ) )
       => ( ( ( Xc = nil_Pr4294158543271970076_set_a )
           => ( ( Y
                = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ X @ Xa ) @ nil_Pr4294158543271970076_set_a ) )
             => ~ ( accp_P4247297568117447610_set_a @ map_de7666120435537666192_set_a @ ( produc1553154368631514749_set_a @ X @ ( produc1519467037424502857_set_a @ Xa @ ( produc6108346596544203678_set_a @ Xb @ nil_Pr4294158543271970076_set_a ) ) ) ) ) )
         => ~ ! [P3: produc8090089739038349590_set_a,Ps: list_P2035273040109328284_set_a] :
                ( ( Xc
                  = ( cons_P8657861537117511884_set_a @ P3 @ Ps ) )
               => ( ( ( ( ( produc6892702156181598450_set_a @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ X @ ( Xb @ ( produc5260167487839082036_set_a @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( produc6892702156181598450_set_a @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P8657861537117511884_set_a @ P3 @ ( map_de6535475216089663815_set_a @ X @ Xa @ Xb @ Ps ) ) ) ) )
                 => ~ ( accp_P4247297568117447610_set_a @ map_de7666120435537666192_set_a @ ( produc1553154368631514749_set_a @ X @ ( produc1519467037424502857_set_a @ Xa @ ( produc6108346596544203678_set_a @ Xb @ ( cons_P8657861537117511884_set_a @ P3 @ Ps ) ) ) ) ) ) ) ) ) ) ).

% map_default.pelims
thf(fact_854_map__default_Opelims,axiom,
    ! [X: t,Xa: set_a,Xb: set_a > set_a,Xc: list_P1095827921439705018_set_a,Y: list_P1095827921439705018_set_a] :
      ( ( ( map_default_t_set_a @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( accp_P2364535113857967502_set_a @ map_de3190415642291457710_set_a @ ( produc4219576724249136209_set_a @ X @ ( produc5228937807858423569_set_a @ Xa @ ( produc1477228808185177916_set_a @ Xb @ Xc ) ) ) )
       => ( ( ( Xc = nil_Pr7982011819685168954_set_a )
           => ( ( Y
                = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ X @ Xa ) @ nil_Pr7982011819685168954_set_a ) )
             => ~ ( accp_P2364535113857967502_set_a @ map_de3190415642291457710_set_a @ ( produc4219576724249136209_set_a @ X @ ( produc5228937807858423569_set_a @ Xa @ ( produc1477228808185177916_set_a @ Xb @ nil_Pr7982011819685168954_set_a ) ) ) ) ) )
         => ~ ! [P3: product_prod_t_set_a,Ps: list_P1095827921439705018_set_a] :
                ( ( Xc
                  = ( cons_P6565363215658504938_set_a @ P3 @ Ps ) )
               => ( ( ( ( ( product_fst_t_set_a @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ X @ ( Xb @ ( product_snd_t_set_a @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( product_fst_t_set_a @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6565363215658504938_set_a @ P3 @ ( map_default_t_set_a @ X @ Xa @ Xb @ Ps ) ) ) ) )
                 => ~ ( accp_P2364535113857967502_set_a @ map_de3190415642291457710_set_a @ ( produc4219576724249136209_set_a @ X @ ( produc5228937807858423569_set_a @ Xa @ ( produc1477228808185177916_set_a @ Xb @ ( cons_P6565363215658504938_set_a @ P3 @ Ps ) ) ) ) ) ) ) ) ) ) ).

% map_default.pelims
thf(fact_855_map__default_Opelims,axiom,
    ! [X: nat,Xa: nat,Xb: nat > nat,Xc: list_P6011104703257516679at_nat,Y: list_P6011104703257516679at_nat] :
      ( ( ( map_default_nat_nat @ X @ Xa @ Xb @ Xc )
        = Y )
     => ( ( accp_P8262604802235901066at_nat @ map_de1546328871509799619at_nat @ ( produc2291548248119593221at_nat @ X @ ( produc1709345877921393766at_nat @ Xa @ ( produc1236331799044183215at_nat @ Xb @ Xc ) ) ) )
       => ( ( ( Xc = nil_Pr5478986624290739719at_nat )
           => ( ( Y
                = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ Xa ) @ nil_Pr5478986624290739719at_nat ) )
             => ~ ( accp_P8262604802235901066at_nat @ map_de1546328871509799619at_nat @ ( produc2291548248119593221at_nat @ X @ ( produc1709345877921393766at_nat @ Xa @ ( produc1236331799044183215at_nat @ Xb @ nil_Pr5478986624290739719at_nat ) ) ) ) ) )
         => ~ ! [P3: product_prod_nat_nat,Ps: list_P6011104703257516679at_nat] :
                ( ( Xc
                  = ( cons_P6512896166579812791at_nat @ P3 @ Ps ) )
               => ( ( ( ( ( product_fst_nat_nat @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ ( Xb @ ( product_snd_nat_nat @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( product_fst_nat_nat @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6512896166579812791at_nat @ P3 @ ( map_default_nat_nat @ X @ Xa @ Xb @ Ps ) ) ) ) )
                 => ~ ( accp_P8262604802235901066at_nat @ map_de1546328871509799619at_nat @ ( produc2291548248119593221at_nat @ X @ ( produc1709345877921393766at_nat @ Xa @ ( produc1236331799044183215at_nat @ Xb @ ( cons_P6512896166579812791at_nat @ P3 @ Ps ) ) ) ) ) ) ) ) ) ) ).

% map_default.pelims
thf(fact_856_match__le,axiom,
    ! [I: nat,J: nat,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ sigma @ R ) )
     => ( ord_less_eq_nat @ I @ J ) ) ).

% match_le
thf(fact_857_take__hd__drop,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs2 ) )
     => ( ( append_t @ ( take_t @ N @ Xs2 ) @ ( cons_t @ ( hd_t @ ( drop_t @ N @ Xs2 ) ) @ nil_t ) )
        = ( take_t @ ( suc @ N ) @ Xs2 ) ) ) ).

% take_hd_drop
thf(fact_858_take__hd__drop,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( append8768163766229313743_set_a @ ( take_P2822414627813279522_set_a @ N @ Xs2 ) @ ( cons_P6565363215658504938_set_a @ ( hd_Pro7269572941766900511_set_a @ ( drop_P283403782220237946_set_a @ N @ Xs2 ) ) @ nil_Pr7982011819685168954_set_a ) )
        = ( take_P2822414627813279522_set_a @ ( suc @ N ) @ Xs2 ) ) ) ).

% take_hd_drop
thf(fact_859_take__hd__drop,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( append7235343099912497022_set_a @ ( take_P1723439655008974187_set_a @ N @ Xs2 ) @ ( cons_P4636835598303252387_set_a @ ( hd_Pro7027854469447250222_set_a @ ( drop_P8422428636864094739_set_a @ N @ Xs2 ) ) @ nil_Pr3375152174953641811_set_a ) )
        = ( take_P1723439655008974187_set_a @ ( suc @ N ) @ Xs2 ) ) ) ).

% take_hd_drop
thf(fact_860_take__hd__drop,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( append1694031088188373467_nat_t @ ( take_P1264513708533117128_nat_t @ N @ Xs2 ) @ ( cons_P8443330349171532544_nat_t @ ( hd_Pro2949996766343426955_nat_t @ ( drop_P6121829286696379760_nat_t @ N @ Xs2 ) ) @ nil_Pr1417316752131242672_nat_t ) )
        = ( take_P1264513708533117128_nat_t @ ( suc @ N ) @ Xs2 ) ) ) ).

% take_hd_drop
thf(fact_861_MDL_Omatch_Ocong,axiom,
    match_a_t = match_a_t ).

% MDL.match.cong
thf(fact_862_MDL_Omatch__le,axiom,
    ! [I: nat,J: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ Sigma @ R ) )
     => ( ord_less_eq_nat @ I @ J ) ) ).

% MDL.match_le
thf(fact_863_hd__drop__conv__nth,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs2 ) )
     => ( ( hd_t @ ( drop_t @ N @ Xs2 ) )
        = ( nth_t @ Xs2 @ N ) ) ) ).

% hd_drop_conv_nth
thf(fact_864_hd__drop__conv__nth,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) )
     => ( ( hd_Pro7269572941766900511_set_a @ ( drop_P283403782220237946_set_a @ N @ Xs2 ) )
        = ( nth_Pr633927046780761275_set_a @ Xs2 @ N ) ) ) ).

% hd_drop_conv_nth
thf(fact_865_hd__drop__conv__nth,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) )
     => ( ( hd_Pro7027854469447250222_set_a @ ( drop_P8422428636864094739_set_a @ N @ Xs2 ) )
        = ( nth_Pr1324953721505055890_set_a @ Xs2 @ N ) ) ) ).

% hd_drop_conv_nth
thf(fact_866_hd__drop__conv__nth,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
     => ( ( hd_Pro2949996766343426955_nat_t @ ( drop_P6121829286696379760_nat_t @ N @ Xs2 ) )
        = ( nth_Pr2476257163150662383_nat_t @ Xs2 @ N ) ) ) ).

% hd_drop_conv_nth
thf(fact_867_match__Times,axiom,
    ! [I: nat,N: nat,R: regex_a_t,S: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ sigma @ ( times_a_t @ R @ S ) ) )
      = ( ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ K3 ) ) @ ( match_a_t @ sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ I @ K3 ) @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ sigma @ S ) ) ) ) ) ).

% match_Times
thf(fact_868_match__refl__eps,axiom,
    ! [I: nat,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ I ) @ ( match_a_t @ sigma @ R ) )
     => ( eps_a_t @ R ) ) ).

% match_refl_eps
thf(fact_869_update__with__aux_Osimps_I2_J,axiom,
    ! [P2: product_prod_h_t,K: h,V: t,F: t > t,Ps2: list_P7520416276666729081od_h_t] :
      ( ( ( ( product_fst_h_t @ P2 )
          = K )
       => ( ( update_with_aux_t_h @ V @ K @ F @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K @ ( F @ ( product_snd_h_t @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_h_t @ P2 )
         != K )
       => ( ( update_with_aux_t_h @ V @ K @ F @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ P2 @ ( update_with_aux_t_h @ V @ K @ F @ Ps2 ) ) ) ) ) ).

% update_with_aux.simps(2)
thf(fact_870_update__with__aux_Osimps_I2_J,axiom,
    ! [P2: produc2796182059459404991_h_t_t,K: option2110264179601050681od_h_t,V: t,F: t > t,Ps2: list_P6951459944542807621_h_t_t] :
      ( ( ( ( produc4004510029700249243_h_t_t @ P2 )
          = K )
       => ( ( update5296690350059339754od_h_t @ V @ K @ F @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K @ ( F @ ( produc4382304763178309853_h_t_t @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( produc4004510029700249243_h_t_t @ P2 )
         != K )
       => ( ( update5296690350059339754od_h_t @ V @ K @ F @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ P2 @ ( update5296690350059339754od_h_t @ V @ K @ F @ Ps2 ) ) ) ) ) ).

% update_with_aux.simps(2)
thf(fact_871_update__with__aux_Osimps_I2_J,axiom,
    ! [P2: produc8090089739038349590_set_a,K: h,V: product_prod_t_set_a,F: product_prod_t_set_a > product_prod_t_set_a,Ps2: list_P2035273040109328284_set_a] :
      ( ( ( ( produc6892702156181598450_set_a @ P2 )
          = K )
       => ( ( update7483552193390621395et_a_h @ V @ K @ F @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K @ ( F @ ( produc5260167487839082036_set_a @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( produc6892702156181598450_set_a @ P2 )
         != K )
       => ( ( update7483552193390621395et_a_h @ V @ K @ F @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ P2 @ ( update7483552193390621395et_a_h @ V @ K @ F @ Ps2 ) ) ) ) ) ).

% update_with_aux.simps(2)
thf(fact_872_update__with__aux_Osimps_I2_J,axiom,
    ! [P2: product_prod_t_set_a,K: t,V: set_a,F: set_a > set_a,Ps2: list_P1095827921439705018_set_a] :
      ( ( ( ( product_fst_t_set_a @ P2 )
          = K )
       => ( ( update3874308102259066165et_a_t @ V @ K @ F @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K @ ( F @ ( product_snd_t_set_a @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_t_set_a @ P2 )
         != K )
       => ( ( update3874308102259066165et_a_t @ V @ K @ F @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ P2 @ ( update3874308102259066165et_a_t @ V @ K @ F @ Ps2 ) ) ) ) ) ).

% update_with_aux.simps(2)
thf(fact_873_update__with__aux_Osimps_I2_J,axiom,
    ! [P2: product_prod_nat_nat,K: nat,V: nat,F: nat > nat,Ps2: list_P6011104703257516679at_nat] :
      ( ( ( ( product_fst_nat_nat @ P2 )
          = K )
       => ( ( update528237659335440164at_nat @ V @ K @ F @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K @ ( F @ ( product_snd_nat_nat @ P2 ) ) ) @ Ps2 ) ) )
      & ( ( ( product_fst_nat_nat @ P2 )
         != K )
       => ( ( update528237659335440164at_nat @ V @ K @ F @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ P2 @ ( update528237659335440164at_nat @ V @ K @ F @ Ps2 ) ) ) ) ) ).

% update_with_aux.simps(2)
thf(fact_874_regex_Oinject_I4_J,axiom,
    ! [X41: regex_a_t,X42: regex_a_t,Y41: regex_a_t,Y42: regex_a_t] :
      ( ( ( times_a_t @ X41 @ X42 )
        = ( times_a_t @ Y41 @ Y42 ) )
      = ( ( X41 = Y41 )
        & ( X42 = Y42 ) ) ) ).

% regex.inject(4)
thf(fact_875_eps_Osimps_I4_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( eps_a_t @ ( times_a_t @ R @ S ) )
      = ( ( eps_a_t @ R )
        & ( eps_a_t @ S ) ) ) ).

% eps.simps(4)
thf(fact_876_MDL_Omatch__refl__eps,axiom,
    ! [I: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ I ) @ ( match_a_t @ Sigma @ R ) )
     => ( eps_a_t @ R ) ) ).

% MDL.match_refl_eps
thf(fact_877_MDL_Omatch__Times,axiom,
    ! [I: nat,N: nat,Sigma: trace_a_t,R: regex_a_t,S: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ Sigma @ ( times_a_t @ R @ S ) ) )
      = ( ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ K3 ) ) @ ( match_a_t @ Sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ I @ K3 ) @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ Sigma @ S ) ) ) ) ) ).

% MDL.match_Times
thf(fact_878_regex_Osize_I9_J,axiom,
    ! [X241: regex_a_t,X242: regex_a_t] :
      ( ( size_size_regex_a_t @ ( times_a_t @ X241 @ X242 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_size_regex_a_t @ X241 ) @ ( size_size_regex_a_t @ X242 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% regex.size(9)
thf(fact_879_update__with__aux_Osimps_I1_J,axiom,
    ! [V: t,K: h,F: t > t] :
      ( ( update_with_aux_t_h @ V @ K @ F @ nil_Product_prod_h_t )
      = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K @ ( F @ V ) ) @ nil_Product_prod_h_t ) ) ).

% update_with_aux.simps(1)
thf(fact_880_update__with__aux_Osimps_I1_J,axiom,
    ! [V: t,K: option2110264179601050681od_h_t,F: t > t] :
      ( ( update5296690350059339754od_h_t @ V @ K @ F @ nil_Pr8838988226997446597_h_t_t )
      = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K @ ( F @ V ) ) @ nil_Pr8838988226997446597_h_t_t ) ) ).

% update_with_aux.simps(1)
thf(fact_881_update__with__aux_Osimps_I1_J,axiom,
    ! [V: product_prod_t_set_a,K: h,F: product_prod_t_set_a > product_prod_t_set_a] :
      ( ( update7483552193390621395et_a_h @ V @ K @ F @ nil_Pr4294158543271970076_set_a )
      = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K @ ( F @ V ) ) @ nil_Pr4294158543271970076_set_a ) ) ).

% update_with_aux.simps(1)
thf(fact_882_update__with__aux_Osimps_I1_J,axiom,
    ! [V: set_a,K: t,F: set_a > set_a] :
      ( ( update3874308102259066165et_a_t @ V @ K @ F @ nil_Pr7982011819685168954_set_a )
      = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K @ ( F @ V ) ) @ nil_Pr7982011819685168954_set_a ) ) ).

% update_with_aux.simps(1)
thf(fact_883_update__with__aux_Osimps_I1_J,axiom,
    ! [V: nat,K: nat,F: nat > nat] :
      ( ( update528237659335440164at_nat @ V @ K @ F @ nil_Pr5478986624290739719at_nat )
      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K @ ( F @ V ) ) @ nil_Pr5478986624290739719at_nat ) ) ).

% update_with_aux.simps(1)
thf(fact_884_wf__regex__eps__match,axiom,
    ! [R: regex_a_t,I: nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( eps_a_t @ R )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ I ) @ ( match_a_t @ sigma @ R ) ) ) ) ).

% wf_regex_eps_match
thf(fact_885_match_Osimps_I4_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( match_a_t @ sigma @ ( times_a_t @ R @ S ) )
      = ( relcomp_nat_nat_nat @ ( match_a_t @ sigma @ R ) @ ( match_a_t @ sigma @ S ) ) ) ).

% match.simps(4)
thf(fact_886_MDL_Omatch_Osimps_I4_J,axiom,
    ! [Sigma: trace_a_t,R: regex_a_t,S: regex_a_t] :
      ( ( match_a_t @ Sigma @ ( times_a_t @ R @ S ) )
      = ( relcomp_nat_nat_nat @ ( match_a_t @ Sigma @ R ) @ ( match_a_t @ Sigma @ S ) ) ) ).

% MDL.match.simps(4)
thf(fact_887_wf__regex_Osimps_I4_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( wf_regex_a_t @ ( times_a_t @ R @ S ) )
      = ( ( wf_regex_a_t @ S )
        & ( ~ ( eps_a_t @ S )
          | ( wf_regex_a_t @ R ) ) ) ) ).

% wf_regex.simps(4)
thf(fact_888_MDL_Owf__regex__eps__match,axiom,
    ! [R: regex_a_t,I: nat,Sigma: trace_a_t] :
      ( ( wf_regex_a_t @ R )
     => ( ( eps_a_t @ R )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ I ) @ ( match_a_t @ Sigma @ R ) ) ) ) ).

% MDL.wf_regex_eps_match
thf(fact_889_match__rderive,axiom,
    ! [R: regex_a_t,I: nat,J: nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( suc @ J ) ) @ ( match_a_t @ sigma @ R ) )
          = ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ sigma @ ( rderive_a_t @ R ) ) ) ) ) ) ).

% match_rderive
thf(fact_890_map__entry_Opelims,axiom,
    ! [X: h,Xa: t > t,Xb: list_P7520416276666729081od_h_t,Y: list_P7520416276666729081od_h_t] :
      ( ( ( map_entry_h_t @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P5826603396118613620od_h_t @ map_entry_rel_h_t @ ( produc8329345787630718007od_h_t @ X @ ( produc1198824894057669819od_h_t @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Product_prod_h_t )
           => ( ( Y = nil_Product_prod_h_t )
             => ~ ( accp_P5826603396118613620od_h_t @ map_entry_rel_h_t @ ( produc8329345787630718007od_h_t @ X @ ( produc1198824894057669819od_h_t @ Xa @ nil_Product_prod_h_t ) ) ) ) )
         => ~ ! [P3: product_prod_h_t,Ps: list_P7520416276666729081od_h_t] :
                ( ( Xb
                  = ( cons_P6251494208368732457od_h_t @ P3 @ Ps ) )
               => ( ( ( ( ( product_fst_h_t @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ X @ ( Xa @ ( product_snd_h_t @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( product_fst_h_t @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6251494208368732457od_h_t @ P3 @ ( map_entry_h_t @ X @ Xa @ Ps ) ) ) ) )
                 => ~ ( accp_P5826603396118613620od_h_t @ map_entry_rel_h_t @ ( produc8329345787630718007od_h_t @ X @ ( produc1198824894057669819od_h_t @ Xa @ ( cons_P6251494208368732457od_h_t @ P3 @ Ps ) ) ) ) ) ) ) ) ) ).

% map_entry.pelims
thf(fact_891_map__entry_Opelims,axiom,
    ! [X: option2110264179601050681od_h_t,Xa: t > t,Xb: list_P6951459944542807621_h_t_t,Y: list_P6951459944542807621_h_t_t] :
      ( ( ( map_en3518867738813299809_h_t_t @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P8782983773687629812_h_t_t @ map_en6080971802216376712_h_t_t @ ( produc6798967726795071415_h_t_t @ X @ ( produc6657849915346856839_h_t_t @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Pr8838988226997446597_h_t_t )
           => ( ( Y = nil_Pr8838988226997446597_h_t_t )
             => ~ ( accp_P8782983773687629812_h_t_t @ map_en6080971802216376712_h_t_t @ ( produc6798967726795071415_h_t_t @ X @ ( produc6657849915346856839_h_t_t @ Xa @ nil_Pr8838988226997446597_h_t_t ) ) ) ) )
         => ~ ! [P3: produc2796182059459404991_h_t_t,Ps: list_P6951459944542807621_h_t_t] :
                ( ( Xb
                  = ( cons_P6082639445353249653_h_t_t @ P3 @ Ps ) )
               => ( ( ( ( ( produc4004510029700249243_h_t_t @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ X @ ( Xa @ ( produc4382304763178309853_h_t_t @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( produc4004510029700249243_h_t_t @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6082639445353249653_h_t_t @ P3 @ ( map_en3518867738813299809_h_t_t @ X @ Xa @ Ps ) ) ) ) )
                 => ~ ( accp_P8782983773687629812_h_t_t @ map_en6080971802216376712_h_t_t @ ( produc6798967726795071415_h_t_t @ X @ ( produc6657849915346856839_h_t_t @ Xa @ ( cons_P6082639445353249653_h_t_t @ P3 @ Ps ) ) ) ) ) ) ) ) ) ).

% map_entry.pelims
thf(fact_892_map__entry_Opelims,axiom,
    ! [X: h,Xa: product_prod_t_set_a > product_prod_t_set_a,Xb: list_P2035273040109328284_set_a,Y: list_P2035273040109328284_set_a] :
      ( ( ( map_en2515006764104892344_set_a @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P8904481692493317463_set_a @ map_en2814123513717708639_set_a @ ( produc6767557719958946458_set_a @ X @ ( produc6108346596544203678_set_a @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Pr4294158543271970076_set_a )
           => ( ( Y = nil_Pr4294158543271970076_set_a )
             => ~ ( accp_P8904481692493317463_set_a @ map_en2814123513717708639_set_a @ ( produc6767557719958946458_set_a @ X @ ( produc6108346596544203678_set_a @ Xa @ nil_Pr4294158543271970076_set_a ) ) ) ) )
         => ~ ! [P3: produc8090089739038349590_set_a,Ps: list_P2035273040109328284_set_a] :
                ( ( Xb
                  = ( cons_P8657861537117511884_set_a @ P3 @ Ps ) )
               => ( ( ( ( ( produc6892702156181598450_set_a @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ X @ ( Xa @ ( produc5260167487839082036_set_a @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( produc6892702156181598450_set_a @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P8657861537117511884_set_a @ P3 @ ( map_en2515006764104892344_set_a @ X @ Xa @ Ps ) ) ) ) )
                 => ~ ( accp_P8904481692493317463_set_a @ map_en2814123513717708639_set_a @ ( produc6767557719958946458_set_a @ X @ ( produc6108346596544203678_set_a @ Xa @ ( cons_P8657861537117511884_set_a @ P3 @ Ps ) ) ) ) ) ) ) ) ) ).

% map_entry.pelims
thf(fact_893_map__entry_Opelims,axiom,
    ! [X: t,Xa: set_a > set_a,Xb: list_P1095827921439705018_set_a,Y: list_P1095827921439705018_set_a] :
      ( ( ( map_entry_t_set_a @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P507257802297271809_set_a @ map_en3227980828384783485_set_a @ ( produc1804414786580393028_set_a @ X @ ( produc1477228808185177916_set_a @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Pr7982011819685168954_set_a )
           => ( ( Y = nil_Pr7982011819685168954_set_a )
             => ~ ( accp_P507257802297271809_set_a @ map_en3227980828384783485_set_a @ ( produc1804414786580393028_set_a @ X @ ( produc1477228808185177916_set_a @ Xa @ nil_Pr7982011819685168954_set_a ) ) ) ) )
         => ~ ! [P3: product_prod_t_set_a,Ps: list_P1095827921439705018_set_a] :
                ( ( Xb
                  = ( cons_P6565363215658504938_set_a @ P3 @ Ps ) )
               => ( ( ( ( ( product_fst_t_set_a @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ X @ ( Xa @ ( product_snd_t_set_a @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( product_fst_t_set_a @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6565363215658504938_set_a @ P3 @ ( map_entry_t_set_a @ X @ Xa @ Ps ) ) ) ) )
                 => ~ ( accp_P507257802297271809_set_a @ map_en3227980828384783485_set_a @ ( produc1804414786580393028_set_a @ X @ ( produc1477228808185177916_set_a @ Xa @ ( cons_P6565363215658504938_set_a @ P3 @ Ps ) ) ) ) ) ) ) ) ) ).

% map_entry.pelims
thf(fact_894_map__entry_Opelims,axiom,
    ! [X: nat,Xa: nat > nat,Xb: list_P6011104703257516679at_nat,Y: list_P6011104703257516679at_nat] :
      ( ( ( map_entry_nat_nat @ X @ Xa @ Xb )
        = Y )
     => ( ( accp_P9053349721105380151at_nat @ map_en6292189407319230482at_nat @ ( produc1709345877921393766at_nat @ X @ ( produc1236331799044183215at_nat @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Pr5478986624290739719at_nat )
           => ( ( Y = nil_Pr5478986624290739719at_nat )
             => ~ ( accp_P9053349721105380151at_nat @ map_en6292189407319230482at_nat @ ( produc1709345877921393766at_nat @ X @ ( produc1236331799044183215at_nat @ Xa @ nil_Pr5478986624290739719at_nat ) ) ) ) )
         => ~ ! [P3: product_prod_nat_nat,Ps: list_P6011104703257516679at_nat] :
                ( ( Xb
                  = ( cons_P6512896166579812791at_nat @ P3 @ Ps ) )
               => ( ( ( ( ( product_fst_nat_nat @ P3 )
                        = X )
                     => ( Y
                        = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ ( Xa @ ( product_snd_nat_nat @ P3 ) ) ) @ Ps ) ) )
                    & ( ( ( product_fst_nat_nat @ P3 )
                       != X )
                     => ( Y
                        = ( cons_P6512896166579812791at_nat @ P3 @ ( map_entry_nat_nat @ X @ Xa @ Ps ) ) ) ) )
                 => ~ ( accp_P9053349721105380151at_nat @ map_en6292189407319230482at_nat @ ( produc1709345877921393766at_nat @ X @ ( produc1236331799044183215at_nat @ Xa @ ( cons_P6512896166579812791at_nat @ P3 @ Ps ) ) ) ) ) ) ) ) ) ).

% map_entry.pelims
thf(fact_895_ex__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M3: nat] :
            ( ( ord_less_nat @ M3 @ N )
            & ( P @ M3 ) ) )
      = ( ? [X5: nat] :
            ( ( member_nat @ X5 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
            & ( P @ X5 ) ) ) ) ).

% ex_nat_less_eq
thf(fact_896_all__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M3: nat] :
            ( ( ord_less_nat @ M3 @ N )
           => ( P @ M3 ) ) )
      = ( ! [X5: nat] :
            ( ( member_nat @ X5 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
           => ( P @ X5 ) ) ) ) ).

% all_nat_less_eq
thf(fact_897_MDL_Omatch__rderive,axiom,
    ! [R: regex_a_t,I: nat,J: nat,Sigma: trace_a_t] :
      ( ( wf_regex_a_t @ R )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( suc @ J ) ) @ ( match_a_t @ Sigma @ R ) )
          = ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ Sigma @ ( rderive_a_t @ R ) ) ) ) ) ) ).

% MDL.match_rderive
thf(fact_898_match__Star__unfold,axiom,
    ! [I: nat,J: nat,R: regex_a_t] :
      ( ( ord_less_nat @ I @ J )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ sigma @ ( star_a_t @ R ) ) )
       => ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or4665077453230672383an_nat @ I @ J ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ X4 ) @ ( match_a_t @ sigma @ ( star_a_t @ R ) ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ J ) @ ( match_a_t @ sigma @ R ) ) ) ) ) ).

% match_Star_unfold
thf(fact_899_relcompEpair,axiom,
    ! [A2: h,C3: t,R: set_Product_prod_h_h,S: set_Product_prod_h_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ C3 ) @ ( relcomp_h_h_t @ R @ S ) )
     => ~ ! [B3: h] :
            ( ( member361086507548856208od_h_h @ ( product_Pair_h_h @ A2 @ B3 ) @ R )
           => ~ ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_900_relcompEpair,axiom,
    ! [A2: h,C3: t,R: set_Product_prod_h_t,S: set_Product_prod_t_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ C3 ) @ ( relcomp_h_t_t @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ B3 ) @ R )
           => ~ ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_901_relcompEpair,axiom,
    ! [A2: nat,C3: nat,R: set_Pr1261947904930325089at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ C3 ) @ ( relcomp_nat_nat_nat @ R @ S ) )
     => ~ ! [B3: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ B3 ) @ R )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_902_relcompEpair,axiom,
    ! [A2: h,C3: set_a,R: set_Product_prod_h_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member4959854103333166185_set_a @ ( product_Pair_h_set_a @ A2 @ C3 ) @ ( relcomp_h_t_set_a @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ B3 ) @ R )
           => ~ ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_903_relcompEpair,axiom,
    ! [A2: t,C3: set_a,R: set_Product_prod_t_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A2 @ C3 ) @ ( relcomp_t_t_set_a @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ A2 @ B3 ) @ R )
           => ~ ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_904_relcompEpair,axiom,
    ! [A2: t,C3: set_a,R: set_Pr6994796776334525076_set_a,S: set_Pr5845495582615845127_set_a] :
      ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A2 @ C3 ) @ ( relcom3934421791305656016_set_a @ R @ S ) )
     => ~ ! [B3: set_a] :
            ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A2 @ B3 ) @ R )
           => ~ ( member7983343339038529360_set_a @ ( produc9088192753505129239_set_a @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_905_relcompEpair,axiom,
    ! [A2: h,C3: t,R: set_Pr4622222292976158843od_h_t,S: set_Pr2919416885666844703_h_t_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ C3 ) @ ( relcom776841177565963228_h_t_t @ R @ S ) )
     => ~ ! [B3: option2110264179601050681od_h_t] :
            ( ( member5044129860427116228od_h_t @ ( produc3780965960682828555od_h_t @ A2 @ B3 ) @ R )
           => ~ ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_906_relcompEpair,axiom,
    ! [A2: h,C3: t,R: set_Pr4350348695907903606_set_a,S: set_Pr9005033546302094948et_a_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ C3 ) @ ( relcom6838666584484513569et_a_t @ R @ S ) )
     => ~ ! [B3: product_prod_t_set_a] :
            ( ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ A2 @ B3 ) @ R )
           => ~ ( member8171993688707725101et_a_t @ ( produc1642816347796938356et_a_t @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_907_relcompEpair,axiom,
    ! [A2: option2110264179601050681od_h_t,C3: t,R: set_Pr2067008405110692883_h_t_h,S: set_Product_prod_h_t] :
      ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A2 @ C3 ) @ ( relcom4290436867423444548_t_h_t @ R @ S ) )
     => ~ ! [B3: h] :
            ( ( member1960274552866704988_h_t_h @ ( produc770200333395398307_h_t_h @ A2 @ B3 ) @ R )
           => ~ ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_908_relcompEpair,axiom,
    ! [A2: option2110264179601050681od_h_t,C3: t,R: set_Pr2919416885666844703_h_t_t,S: set_Product_prod_t_t] :
      ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A2 @ C3 ) @ ( relcom7734458031170435384_t_t_t @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A2 @ B3 ) @ R )
           => ~ ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ B3 @ C3 ) @ S ) ) ) ).

% relcompEpair
thf(fact_909_relcompE,axiom,
    ! [Xz: product_prod_h_t,R: set_Product_prod_h_h,S: set_Product_prod_h_t] :
      ( ( member361086559187601820od_h_t @ Xz @ ( relcomp_h_h_t @ R @ S ) )
     => ~ ! [X4: h,Y4: h,Z2: t] :
            ( ( Xz
              = ( product_Pair_h_t @ X4 @ Z2 ) )
           => ( ( member361086507548856208od_h_h @ ( product_Pair_h_h @ X4 @ Y4 ) @ R )
             => ~ ( member361086559187601820od_h_t @ ( product_Pair_h_t @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_910_relcompE,axiom,
    ! [Xz: product_prod_h_t,R: set_Product_prod_h_t,S: set_Product_prod_t_t] :
      ( ( member361086559187601820od_h_t @ Xz @ ( relcomp_h_t_t @ R @ S ) )
     => ~ ! [X4: h,Y4: t,Z2: t] :
            ( ( Xz
              = ( product_Pair_h_t @ X4 @ Z2 ) )
           => ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ X4 @ Y4 ) @ R )
             => ~ ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_911_relcompE,axiom,
    ! [Xz: product_prod_nat_nat,R: set_Pr1261947904930325089at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ Xz @ ( relcomp_nat_nat_nat @ R @ S ) )
     => ~ ! [X4: nat,Y4: nat,Z2: nat] :
            ( ( Xz
              = ( product_Pair_nat_nat @ X4 @ Z2 ) )
           => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ Y4 ) @ R )
             => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_912_relcompE,axiom,
    ! [Xz: product_prod_h_set_a,R: set_Product_prod_h_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member4959854103333166185_set_a @ Xz @ ( relcomp_h_t_set_a @ R @ S ) )
     => ~ ! [X4: h,Y4: t,Z2: set_a] :
            ( ( Xz
              = ( product_Pair_h_set_a @ X4 @ Z2 ) )
           => ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ X4 @ Y4 ) @ R )
             => ~ ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_913_relcompE,axiom,
    ! [Xz: product_prod_t_set_a,R: set_Product_prod_t_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member2646690471337469789_set_a @ Xz @ ( relcomp_t_t_set_a @ R @ S ) )
     => ~ ! [X4: t,Y4: t,Z2: set_a] :
            ( ( Xz
              = ( product_Pair_t_set_a @ X4 @ Z2 ) )
           => ( ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ X4 @ Y4 ) @ R )
             => ~ ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_914_relcompE,axiom,
    ! [Xz: product_prod_t_set_a,R: set_Pr6994796776334525076_set_a,S: set_Pr5845495582615845127_set_a] :
      ( ( member2646690471337469789_set_a @ Xz @ ( relcom3934421791305656016_set_a @ R @ S ) )
     => ~ ! [X4: t,Y4: set_a,Z2: set_a] :
            ( ( Xz
              = ( product_Pair_t_set_a @ X4 @ Z2 ) )
           => ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ X4 @ Y4 ) @ R )
             => ~ ( member7983343339038529360_set_a @ ( produc9088192753505129239_set_a @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_915_relcompE,axiom,
    ! [Xz: product_prod_h_t,R: set_Pr4622222292976158843od_h_t,S: set_Pr2919416885666844703_h_t_t] :
      ( ( member361086559187601820od_h_t @ Xz @ ( relcom776841177565963228_h_t_t @ R @ S ) )
     => ~ ! [X4: h,Y4: option2110264179601050681od_h_t,Z2: t] :
            ( ( Xz
              = ( product_Pair_h_t @ X4 @ Z2 ) )
           => ( ( member5044129860427116228od_h_t @ ( produc3780965960682828555od_h_t @ X4 @ Y4 ) @ R )
             => ~ ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_916_relcompE,axiom,
    ! [Xz: product_prod_h_t,R: set_Pr4350348695907903606_set_a,S: set_Pr9005033546302094948et_a_t] :
      ( ( member361086559187601820od_h_t @ Xz @ ( relcom6838666584484513569et_a_t @ R @ S ) )
     => ~ ! [X4: h,Y4: product_prod_t_set_a,Z2: t] :
            ( ( Xz
              = ( product_Pair_h_t @ X4 @ Z2 ) )
           => ( ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ X4 @ Y4 ) @ R )
             => ~ ( member8171993688707725101et_a_t @ ( produc1642816347796938356et_a_t @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_917_relcompE,axiom,
    ! [Xz: produc2796182059459404991_h_t_t,R: set_Pr2067008405110692883_h_t_h,S: set_Product_prod_h_t] :
      ( ( member1960274604505450600_h_t_t @ Xz @ ( relcom4290436867423444548_t_h_t @ R @ S ) )
     => ~ ! [X4: option2110264179601050681od_h_t,Y4: h,Z2: t] :
            ( ( Xz
              = ( produc770200333395398319_h_t_t @ X4 @ Z2 ) )
           => ( ( member1960274552866704988_h_t_h @ ( produc770200333395398307_h_t_h @ X4 @ Y4 ) @ R )
             => ~ ( member361086559187601820od_h_t @ ( product_Pair_h_t @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_918_relcompE,axiom,
    ! [Xz: produc2796182059459404991_h_t_t,R: set_Pr2919416885666844703_h_t_t,S: set_Product_prod_t_t] :
      ( ( member1960274604505450600_h_t_t @ Xz @ ( relcom7734458031170435384_t_t_t @ R @ S ) )
     => ~ ! [X4: option2110264179601050681od_h_t,Y4: t,Z2: t] :
            ( ( Xz
              = ( produc770200333395398319_h_t_t @ X4 @ Z2 ) )
           => ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ X4 @ Y4 ) @ R )
             => ~ ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ Y4 @ Z2 ) @ S ) ) ) ) ).

% relcompE
thf(fact_919_regex_Oinject_I5_J,axiom,
    ! [X52: regex_a_t,Y52: regex_a_t] :
      ( ( ( star_a_t @ X52 )
        = ( star_a_t @ Y52 ) )
      = ( X52 = Y52 ) ) ).

% regex.inject(5)
thf(fact_920_wf__regex_Osimps_I5_J,axiom,
    ! [R: regex_a_t] :
      ( ( wf_regex_a_t @ ( star_a_t @ R ) )
      = ( wf_regex_a_t @ R ) ) ).

% wf_regex.simps(5)
thf(fact_921_eps_Osimps_I5_J,axiom,
    ! [R: regex_a_t] : ( eps_a_t @ ( star_a_t @ R ) ) ).

% eps.simps(5)
thf(fact_922_regex_Odistinct_I19_J,axiom,
    ! [X41: regex_a_t,X42: regex_a_t,X52: regex_a_t] :
      ( ( times_a_t @ X41 @ X42 )
     != ( star_a_t @ X52 ) ) ).

% regex.distinct(19)
thf(fact_923_rderive_Osimps_I5_J,axiom,
    ! [R: regex_a_t] :
      ( ( rderive_a_t @ ( star_a_t @ R ) )
      = ( times_a_t @ ( star_a_t @ R ) @ ( rderive_a_t @ R ) ) ) ).

% rderive.simps(5)
thf(fact_924_subrelI,axiom,
    ! [R: set_Product_prod_h_t,S: set_Product_prod_h_t] :
      ( ! [X4: h,Y4: t] :
          ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ X4 @ Y4 ) @ R )
         => ( member361086559187601820od_h_t @ ( product_Pair_h_t @ X4 @ Y4 ) @ S ) )
     => ( ord_le6870178751910059251od_h_t @ R @ S ) ) ).

% subrelI
thf(fact_925_subrelI,axiom,
    ! [R: set_Pr2919416885666844703_h_t_t,S: set_Pr2919416885666844703_h_t_t] :
      ( ! [X4: option2110264179601050681od_h_t,Y4: t] :
          ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ X4 @ Y4 ) @ R )
         => ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ X4 @ Y4 ) @ S ) )
     => ( ord_le2737813103468918719_h_t_t @ R @ S ) ) ).

% subrelI
thf(fact_926_subrelI,axiom,
    ! [R: set_Pr4350348695907903606_set_a,S: set_Pr4350348695907903606_set_a] :
      ( ! [X4: h,Y4: product_prod_t_set_a] :
          ( ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ X4 @ Y4 ) @ R )
         => ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ X4 @ Y4 ) @ S ) )
     => ( ord_le919132016096821270_set_a @ R @ S ) ) ).

% subrelI
thf(fact_927_subrelI,axiom,
    ! [R: set_Pr6994796776334525076_set_a,S: set_Pr6994796776334525076_set_a] :
      ( ! [X4: t,Y4: set_a] :
          ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ X4 @ Y4 ) @ R )
         => ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ X4 @ Y4 ) @ S ) )
     => ( ord_le3254057565153606196_set_a @ R @ S ) ) ).

% subrelI
thf(fact_928_subrelI,axiom,
    ! [R: set_Pr1261947904930325089at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ! [X4: nat,Y4: nat] :
          ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ Y4 ) @ R )
         => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ Y4 ) @ S ) )
     => ( ord_le3146513528884898305at_nat @ R @ S ) ) ).

% subrelI
thf(fact_929_MDL_Omatch__Star__unfold,axiom,
    ! [I: nat,J: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( ord_less_nat @ I @ J )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) )
       => ? [X4: nat] :
            ( ( member_nat @ X4 @ ( set_or4665077453230672383an_nat @ I @ J ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ X4 ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ J ) @ ( match_a_t @ Sigma @ R ) ) ) ) ) ).

% MDL.match_Star_unfold
thf(fact_930_regex_Osize_I10_J,axiom,
    ! [X25: regex_a_t] :
      ( ( size_size_regex_a_t @ ( star_a_t @ X25 ) )
      = ( plus_plus_nat @ ( size_size_regex_a_t @ X25 ) @ ( suc @ zero_zero_nat ) ) ) ).

% regex.size(10)
thf(fact_931_relcomp_Ocases,axiom,
    ! [A1: h,A22: t,R: set_Product_prod_h_h,S: set_Product_prod_h_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcomp_h_h_t @ R @ S ) )
     => ~ ! [B3: h] :
            ( ( member361086507548856208od_h_h @ ( product_Pair_h_h @ A1 @ B3 ) @ R )
           => ~ ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_932_relcomp_Ocases,axiom,
    ! [A1: h,A22: t,R: set_Product_prod_h_t,S: set_Product_prod_t_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcomp_h_t_t @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ B3 ) @ R )
           => ~ ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_933_relcomp_Ocases,axiom,
    ! [A1: nat,A22: nat,R: set_Pr1261947904930325089at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A1 @ A22 ) @ ( relcomp_nat_nat_nat @ R @ S ) )
     => ~ ! [B3: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A1 @ B3 ) @ R )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_934_relcomp_Ocases,axiom,
    ! [A1: h,A22: set_a,R: set_Product_prod_h_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member4959854103333166185_set_a @ ( product_Pair_h_set_a @ A1 @ A22 ) @ ( relcomp_h_t_set_a @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ B3 ) @ R )
           => ~ ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_935_relcomp_Ocases,axiom,
    ! [A1: t,A22: set_a,R: set_Product_prod_t_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A1 @ A22 ) @ ( relcomp_t_t_set_a @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ A1 @ B3 ) @ R )
           => ~ ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_936_relcomp_Ocases,axiom,
    ! [A1: t,A22: set_a,R: set_Pr6994796776334525076_set_a,S: set_Pr5845495582615845127_set_a] :
      ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A1 @ A22 ) @ ( relcom3934421791305656016_set_a @ R @ S ) )
     => ~ ! [B3: set_a] :
            ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A1 @ B3 ) @ R )
           => ~ ( member7983343339038529360_set_a @ ( produc9088192753505129239_set_a @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_937_relcomp_Ocases,axiom,
    ! [A1: h,A22: t,R: set_Pr4622222292976158843od_h_t,S: set_Pr2919416885666844703_h_t_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcom776841177565963228_h_t_t @ R @ S ) )
     => ~ ! [B3: option2110264179601050681od_h_t] :
            ( ( member5044129860427116228od_h_t @ ( produc3780965960682828555od_h_t @ A1 @ B3 ) @ R )
           => ~ ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_938_relcomp_Ocases,axiom,
    ! [A1: h,A22: t,R: set_Pr4350348695907903606_set_a,S: set_Pr9005033546302094948et_a_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcom6838666584484513569et_a_t @ R @ S ) )
     => ~ ! [B3: product_prod_t_set_a] :
            ( ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ A1 @ B3 ) @ R )
           => ~ ( member8171993688707725101et_a_t @ ( produc1642816347796938356et_a_t @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_939_relcomp_Ocases,axiom,
    ! [A1: option2110264179601050681od_h_t,A22: t,R: set_Pr2067008405110692883_h_t_h,S: set_Product_prod_h_t] :
      ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A1 @ A22 ) @ ( relcom4290436867423444548_t_h_t @ R @ S ) )
     => ~ ! [B3: h] :
            ( ( member1960274552866704988_h_t_h @ ( produc770200333395398307_h_t_h @ A1 @ B3 ) @ R )
           => ~ ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_940_relcomp_Ocases,axiom,
    ! [A1: option2110264179601050681od_h_t,A22: t,R: set_Pr2919416885666844703_h_t_t,S: set_Product_prod_t_t] :
      ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A1 @ A22 ) @ ( relcom7734458031170435384_t_t_t @ R @ S ) )
     => ~ ! [B3: t] :
            ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A1 @ B3 ) @ R )
           => ~ ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ B3 @ A22 ) @ S ) ) ) ).

% relcomp.cases
thf(fact_941_relcomp_Osimps,axiom,
    ! [A1: h,A22: t,R: set_Product_prod_h_h,S: set_Product_prod_h_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcomp_h_h_t @ R @ S ) )
      = ( ? [A: h,B4: h,C2: t] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member361086507548856208od_h_h @ ( product_Pair_h_h @ A @ B4 ) @ R )
            & ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_942_relcomp_Osimps,axiom,
    ! [A1: h,A22: t,R: set_Product_prod_h_t,S: set_Product_prod_t_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcomp_h_t_t @ R @ S ) )
      = ( ? [A: h,B4: t,C2: t] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A @ B4 ) @ R )
            & ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_943_relcomp_Osimps,axiom,
    ! [A1: nat,A22: nat,R: set_Pr1261947904930325089at_nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A1 @ A22 ) @ ( relcomp_nat_nat_nat @ R @ S ) )
      = ( ? [A: nat,B4: nat,C2: nat] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A @ B4 ) @ R )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_944_relcomp_Osimps,axiom,
    ! [A1: h,A22: set_a,R: set_Product_prod_h_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member4959854103333166185_set_a @ ( product_Pair_h_set_a @ A1 @ A22 ) @ ( relcomp_h_t_set_a @ R @ S ) )
      = ( ? [A: h,B4: t,C2: set_a] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A @ B4 ) @ R )
            & ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_945_relcomp_Osimps,axiom,
    ! [A1: t,A22: set_a,R: set_Product_prod_t_t,S: set_Pr6994796776334525076_set_a] :
      ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A1 @ A22 ) @ ( relcomp_t_t_set_a @ R @ S ) )
      = ( ? [A: t,B4: t,C2: set_a] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ A @ B4 ) @ R )
            & ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_946_relcomp_Osimps,axiom,
    ! [A1: t,A22: set_a,R: set_Pr6994796776334525076_set_a,S: set_Pr5845495582615845127_set_a] :
      ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A1 @ A22 ) @ ( relcom3934421791305656016_set_a @ R @ S ) )
      = ( ? [A: t,B4: set_a,C2: set_a] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A @ B4 ) @ R )
            & ( member7983343339038529360_set_a @ ( produc9088192753505129239_set_a @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_947_relcomp_Osimps,axiom,
    ! [A1: h,A22: t,R: set_Pr4622222292976158843od_h_t,S: set_Pr2919416885666844703_h_t_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcom776841177565963228_h_t_t @ R @ S ) )
      = ( ? [A: h,B4: option2110264179601050681od_h_t,C2: t] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member5044129860427116228od_h_t @ ( produc3780965960682828555od_h_t @ A @ B4 ) @ R )
            & ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_948_relcomp_Osimps,axiom,
    ! [A1: h,A22: t,R: set_Pr4350348695907903606_set_a,S: set_Pr9005033546302094948et_a_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A1 @ A22 ) @ ( relcom6838666584484513569et_a_t @ R @ S ) )
      = ( ? [A: h,B4: product_prod_t_set_a,C2: t] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ A @ B4 ) @ R )
            & ( member8171993688707725101et_a_t @ ( produc1642816347796938356et_a_t @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_949_relcomp_Osimps,axiom,
    ! [A1: option2110264179601050681od_h_t,A22: t,R: set_Pr2067008405110692883_h_t_h,S: set_Product_prod_h_t] :
      ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A1 @ A22 ) @ ( relcom4290436867423444548_t_h_t @ R @ S ) )
      = ( ? [A: option2110264179601050681od_h_t,B4: h,C2: t] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member1960274552866704988_h_t_h @ ( produc770200333395398307_h_t_h @ A @ B4 ) @ R )
            & ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_950_relcomp_Osimps,axiom,
    ! [A1: option2110264179601050681od_h_t,A22: t,R: set_Pr2919416885666844703_h_t_t,S: set_Product_prod_t_t] :
      ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A1 @ A22 ) @ ( relcom7734458031170435384_t_t_t @ R @ S ) )
      = ( ? [A: option2110264179601050681od_h_t,B4: t,C2: t] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A @ B4 ) @ R )
            & ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ B4 @ C2 ) @ S ) ) ) ) ).

% relcomp.simps
thf(fact_951_relcomp_OrelcompI,axiom,
    ! [A2: h,B: h,R: set_Product_prod_h_h,C3: t,S: set_Product_prod_h_t] :
      ( ( member361086507548856208od_h_h @ ( product_Pair_h_h @ A2 @ B ) @ R )
     => ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B @ C3 ) @ S )
       => ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ C3 ) @ ( relcomp_h_h_t @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_952_relcomp_OrelcompI,axiom,
    ! [A2: h,B: t,R: set_Product_prod_h_t,C3: t,S: set_Product_prod_t_t] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ B ) @ R )
     => ( ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ B @ C3 ) @ S )
       => ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ C3 ) @ ( relcomp_h_t_t @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_953_relcomp_OrelcompI,axiom,
    ! [A2: nat,B: nat,R: set_Pr1261947904930325089at_nat,C3: nat,S: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ B ) @ R )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C3 ) @ S )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ C3 ) @ ( relcomp_nat_nat_nat @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_954_relcomp_OrelcompI,axiom,
    ! [A2: t,B: t,R: set_Product_prod_t_t,C3: set_a,S: set_Pr6994796776334525076_set_a] :
      ( ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ A2 @ B ) @ R )
     => ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B @ C3 ) @ S )
       => ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A2 @ C3 ) @ ( relcomp_t_t_set_a @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_955_relcomp_OrelcompI,axiom,
    ! [A2: h,B: t,R: set_Product_prod_h_t,C3: set_a,S: set_Pr6994796776334525076_set_a] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ B ) @ R )
     => ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ B @ C3 ) @ S )
       => ( member4959854103333166185_set_a @ ( product_Pair_h_set_a @ A2 @ C3 ) @ ( relcomp_h_t_set_a @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_956_relcomp_OrelcompI,axiom,
    ! [A2: t,B: set_a,R: set_Pr6994796776334525076_set_a,C3: set_a,S: set_Pr5845495582615845127_set_a] :
      ( ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A2 @ B ) @ R )
     => ( ( member7983343339038529360_set_a @ ( produc9088192753505129239_set_a @ B @ C3 ) @ S )
       => ( member2646690471337469789_set_a @ ( product_Pair_t_set_a @ A2 @ C3 ) @ ( relcom3934421791305656016_set_a @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_957_relcomp_OrelcompI,axiom,
    ! [A2: option2110264179601050681od_h_t,B: h,R: set_Pr2067008405110692883_h_t_h,C3: t,S: set_Product_prod_h_t] :
      ( ( member1960274552866704988_h_t_h @ ( produc770200333395398307_h_t_h @ A2 @ B ) @ R )
     => ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ B @ C3 ) @ S )
       => ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ A2 @ C3 ) @ ( relcom4290436867423444548_t_h_t @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_958_relcomp_OrelcompI,axiom,
    ! [A2: h,B: option2110264179601050681od_h_t,R: set_Pr4622222292976158843od_h_t,C3: t,S: set_Pr2919416885666844703_h_t_t] :
      ( ( member5044129860427116228od_h_t @ ( produc3780965960682828555od_h_t @ A2 @ B ) @ R )
     => ( ( member1960274604505450600_h_t_t @ ( produc770200333395398319_h_t_t @ B @ C3 ) @ S )
       => ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ C3 ) @ ( relcom776841177565963228_h_t_t @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_959_relcomp_OrelcompI,axiom,
    ! [A2: h,B: h,R: set_Product_prod_h_h,C3: product_prod_t_set_a,S: set_Pr4350348695907903606_set_a] :
      ( ( member361086507548856208od_h_h @ ( product_Pair_h_h @ A2 @ B ) @ R )
     => ( ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ B @ C3 ) @ S )
       => ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ A2 @ C3 ) @ ( relcom8627917426470064051_set_a @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_960_relcomp_OrelcompI,axiom,
    ! [A2: h,B: t,R: set_Product_prod_h_t,C3: product_prod_t_set_a,S: set_Pr2711178225231897962_set_a] :
      ( ( member361086559187601820od_h_t @ ( product_Pair_h_t @ A2 @ B ) @ R )
     => ( ( member3217711559457489203_set_a @ ( produc9102197234902130170_set_a @ B @ C3 ) @ S )
       => ( member6770953551192623679_set_a @ ( produc3432067189782488838_set_a @ A2 @ C3 ) @ ( relcom5074675434734929575_set_a @ R @ S ) ) ) ) ).

% relcomp.relcompI
thf(fact_961_match__Star,axiom,
    ! [I: nat,N: nat,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ ( suc @ N ) ) ) @ ( match_a_t @ sigma @ ( star_a_t @ R ) ) )
      = ( ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K3 ) ) @ ( match_a_t @ sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K3 ) @ ( plus_plus_nat @ I @ ( suc @ N ) ) ) @ ( match_a_t @ sigma @ ( star_a_t @ R ) ) ) ) ) ) ).

% match_Star
thf(fact_962_match_Osimps_I5_J,axiom,
    ! [R: regex_a_t] :
      ( ( match_a_t @ sigma @ ( star_a_t @ R ) )
      = ( transi2905341329935302413cl_nat @ ( match_a_t @ sigma @ R ) ) ) ).

% match.simps(5)
thf(fact_963_local_Ortrancl__unfold,axiom,
    ! [X: nat,Z4: nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Z4 ) @ ( transi2905341329935302413cl_nat @ R2 ) )
     => ( ( X = Z4 )
        | ? [Y4: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ R2 )
            & ( X != Y4 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ Z4 ) @ ( transi2905341329935302413cl_nat @ R2 ) ) ) ) ) ).

% local.rtrancl_unfold
thf(fact_964_rtrancl__unfold_H,axiom,
    ! [X: nat,Z4: nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Z4 ) @ ( transi2905341329935302413cl_nat @ R2 ) )
     => ( ( X = Z4 )
        | ? [Y4: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ ( transi2905341329935302413cl_nat @ R2 ) )
            & ( Y4 != Z4 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ Z4 ) @ R2 ) ) ) ) ).

% rtrancl_unfold'
thf(fact_965_not__None__eq,axiom,
    ! [X: option2110264179601050681od_h_t] :
      ( ( X != none_P849260865442546644od_h_t )
      = ( ? [Y5: product_prod_h_t] :
            ( X
            = ( some_P2526622376857543512od_h_t @ Y5 ) ) ) ) ).

% not_None_eq
thf(fact_966_not__None__eq,axiom,
    ! [X: option4241632866121027589_h_t_t] :
      ( ( X != none_P797220180637652640_h_t_t )
      = ( ? [Y5: produc2796182059459404991_h_t_t] :
            ( X
            = ( some_P8406129549712030756_h_t_t @ Y5 ) ) ) ) ).

% not_None_eq
thf(fact_967_not__None__eq,axiom,
    ! [X: option5775791656947114332_set_a] :
      ( ( X != none_P2868508613186038903_set_a )
      = ( ? [Y5: produc8090089739038349590_set_a] :
            ( X
            = ( some_P2245991037696317435_set_a @ Y5 ) ) ) ) ).

% not_None_eq
thf(fact_968_not__Some__eq,axiom,
    ! [X: option2110264179601050681od_h_t] :
      ( ( ! [Y5: product_prod_h_t] :
            ( X
           != ( some_P2526622376857543512od_h_t @ Y5 ) ) )
      = ( X = none_P849260865442546644od_h_t ) ) ).

% not_Some_eq
thf(fact_969_not__Some__eq,axiom,
    ! [X: option4241632866121027589_h_t_t] :
      ( ( ! [Y5: produc2796182059459404991_h_t_t] :
            ( X
           != ( some_P8406129549712030756_h_t_t @ Y5 ) ) )
      = ( X = none_P797220180637652640_h_t_t ) ) ).

% not_Some_eq
thf(fact_970_not__Some__eq,axiom,
    ! [X: option5775791656947114332_set_a] :
      ( ( ! [Y5: produc8090089739038349590_set_a] :
            ( X
           != ( some_P2245991037696317435_set_a @ Y5 ) ) )
      = ( X = none_P2868508613186038903_set_a ) ) ).

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

% less_one
thf(fact_972_rotate__length01,axiom,
    ! [Xs2: list_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ one_one_nat )
     => ( ( rotate_t @ N @ Xs2 )
        = Xs2 ) ) ).

% rotate_length01
thf(fact_973_rotate__length01,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ one_one_nat )
     => ( ( rotate4948212982839034734_set_a @ N @ Xs2 )
        = Xs2 ) ) ).

% rotate_length01
thf(fact_974_rotate__length01,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ one_one_nat )
     => ( ( rotate3591195261073959455_set_a @ N @ Xs2 )
        = Xs2 ) ) ).

% rotate_length01
thf(fact_975_rotate__length01,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ one_one_nat )
     => ( ( rotate7455341356463262076_nat_t @ N @ Xs2 )
        = Xs2 ) ) ).

% rotate_length01
thf(fact_976_rotate1__length01,axiom,
    ! [Xs2: list_t] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs2 ) @ one_one_nat )
     => ( ( rotate1_t @ Xs2 )
        = Xs2 ) ) ).

% rotate1_length01
thf(fact_977_rotate1__length01,axiom,
    ! [Xs2: list_P1095827921439705018_set_a] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ one_one_nat )
     => ( ( rotate2331158137962743303_set_a @ Xs2 )
        = Xs2 ) ) ).

% rotate1_length01
thf(fact_978_rotate1__length01,axiom,
    ! [Xs2: list_P6739568432217944425_set_a] :
      ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ one_one_nat )
     => ( ( rotate4488246661542978630_set_a @ Xs2 )
        = Xs2 ) ) ).

% rotate1_length01
thf(fact_979_rotate1__length01,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ one_one_nat )
     => ( ( rotate8125167659641560739_nat_t @ Xs2 )
        = Xs2 ) ) ).

% rotate1_length01
thf(fact_980_combine__options__cases,axiom,
    ! [X: option2110264179601050681od_h_t,P: option2110264179601050681od_h_t > option2110264179601050681od_h_t > $o,Y: option2110264179601050681od_h_t] :
      ( ( ( X = none_P849260865442546644od_h_t )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P849260865442546644od_h_t )
         => ( P @ X @ Y ) )
       => ( ! [A4: product_prod_h_t,B3: product_prod_h_t] :
              ( ( X
                = ( some_P2526622376857543512od_h_t @ A4 ) )
             => ( ( Y
                  = ( some_P2526622376857543512od_h_t @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_981_combine__options__cases,axiom,
    ! [X: option2110264179601050681od_h_t,P: option2110264179601050681od_h_t > option4241632866121027589_h_t_t > $o,Y: option4241632866121027589_h_t_t] :
      ( ( ( X = none_P849260865442546644od_h_t )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P797220180637652640_h_t_t )
         => ( P @ X @ Y ) )
       => ( ! [A4: product_prod_h_t,B3: produc2796182059459404991_h_t_t] :
              ( ( X
                = ( some_P2526622376857543512od_h_t @ A4 ) )
             => ( ( Y
                  = ( some_P8406129549712030756_h_t_t @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_982_combine__options__cases,axiom,
    ! [X: option2110264179601050681od_h_t,P: option2110264179601050681od_h_t > option5775791656947114332_set_a > $o,Y: option5775791656947114332_set_a] :
      ( ( ( X = none_P849260865442546644od_h_t )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P2868508613186038903_set_a )
         => ( P @ X @ Y ) )
       => ( ! [A4: product_prod_h_t,B3: produc8090089739038349590_set_a] :
              ( ( X
                = ( some_P2526622376857543512od_h_t @ A4 ) )
             => ( ( Y
                  = ( some_P2245991037696317435_set_a @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_983_combine__options__cases,axiom,
    ! [X: option4241632866121027589_h_t_t,P: option4241632866121027589_h_t_t > option2110264179601050681od_h_t > $o,Y: option2110264179601050681od_h_t] :
      ( ( ( X = none_P797220180637652640_h_t_t )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P849260865442546644od_h_t )
         => ( P @ X @ Y ) )
       => ( ! [A4: produc2796182059459404991_h_t_t,B3: product_prod_h_t] :
              ( ( X
                = ( some_P8406129549712030756_h_t_t @ A4 ) )
             => ( ( Y
                  = ( some_P2526622376857543512od_h_t @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_984_combine__options__cases,axiom,
    ! [X: option4241632866121027589_h_t_t,P: option4241632866121027589_h_t_t > option4241632866121027589_h_t_t > $o,Y: option4241632866121027589_h_t_t] :
      ( ( ( X = none_P797220180637652640_h_t_t )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P797220180637652640_h_t_t )
         => ( P @ X @ Y ) )
       => ( ! [A4: produc2796182059459404991_h_t_t,B3: produc2796182059459404991_h_t_t] :
              ( ( X
                = ( some_P8406129549712030756_h_t_t @ A4 ) )
             => ( ( Y
                  = ( some_P8406129549712030756_h_t_t @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_985_combine__options__cases,axiom,
    ! [X: option4241632866121027589_h_t_t,P: option4241632866121027589_h_t_t > option5775791656947114332_set_a > $o,Y: option5775791656947114332_set_a] :
      ( ( ( X = none_P797220180637652640_h_t_t )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P2868508613186038903_set_a )
         => ( P @ X @ Y ) )
       => ( ! [A4: produc2796182059459404991_h_t_t,B3: produc8090089739038349590_set_a] :
              ( ( X
                = ( some_P8406129549712030756_h_t_t @ A4 ) )
             => ( ( Y
                  = ( some_P2245991037696317435_set_a @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_986_combine__options__cases,axiom,
    ! [X: option5775791656947114332_set_a,P: option5775791656947114332_set_a > option2110264179601050681od_h_t > $o,Y: option2110264179601050681od_h_t] :
      ( ( ( X = none_P2868508613186038903_set_a )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P849260865442546644od_h_t )
         => ( P @ X @ Y ) )
       => ( ! [A4: produc8090089739038349590_set_a,B3: product_prod_h_t] :
              ( ( X
                = ( some_P2245991037696317435_set_a @ A4 ) )
             => ( ( Y
                  = ( some_P2526622376857543512od_h_t @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_987_combine__options__cases,axiom,
    ! [X: option5775791656947114332_set_a,P: option5775791656947114332_set_a > option4241632866121027589_h_t_t > $o,Y: option4241632866121027589_h_t_t] :
      ( ( ( X = none_P2868508613186038903_set_a )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P797220180637652640_h_t_t )
         => ( P @ X @ Y ) )
       => ( ! [A4: produc8090089739038349590_set_a,B3: produc2796182059459404991_h_t_t] :
              ( ( X
                = ( some_P2245991037696317435_set_a @ A4 ) )
             => ( ( Y
                  = ( some_P8406129549712030756_h_t_t @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_988_combine__options__cases,axiom,
    ! [X: option5775791656947114332_set_a,P: option5775791656947114332_set_a > option5775791656947114332_set_a > $o,Y: option5775791656947114332_set_a] :
      ( ( ( X = none_P2868508613186038903_set_a )
       => ( P @ X @ Y ) )
     => ( ( ( Y = none_P2868508613186038903_set_a )
         => ( P @ X @ Y ) )
       => ( ! [A4: produc8090089739038349590_set_a,B3: produc8090089739038349590_set_a] :
              ( ( X
                = ( some_P2245991037696317435_set_a @ A4 ) )
             => ( ( Y
                  = ( some_P2245991037696317435_set_a @ B3 ) )
               => ( P @ X @ Y ) ) )
         => ( P @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_989_split__option__all,axiom,
    ( ( ^ [P4: option2110264179601050681od_h_t > $o] :
        ! [X14: option2110264179601050681od_h_t] : ( P4 @ X14 ) )
    = ( ^ [P5: option2110264179601050681od_h_t > $o] :
          ( ( P5 @ none_P849260865442546644od_h_t )
          & ! [X5: product_prod_h_t] : ( P5 @ ( some_P2526622376857543512od_h_t @ X5 ) ) ) ) ) ).

% split_option_all
thf(fact_990_split__option__all,axiom,
    ( ( ^ [P4: option4241632866121027589_h_t_t > $o] :
        ! [X14: option4241632866121027589_h_t_t] : ( P4 @ X14 ) )
    = ( ^ [P5: option4241632866121027589_h_t_t > $o] :
          ( ( P5 @ none_P797220180637652640_h_t_t )
          & ! [X5: produc2796182059459404991_h_t_t] : ( P5 @ ( some_P8406129549712030756_h_t_t @ X5 ) ) ) ) ) ).

% split_option_all
thf(fact_991_split__option__all,axiom,
    ( ( ^ [P4: option5775791656947114332_set_a > $o] :
        ! [X14: option5775791656947114332_set_a] : ( P4 @ X14 ) )
    = ( ^ [P5: option5775791656947114332_set_a > $o] :
          ( ( P5 @ none_P2868508613186038903_set_a )
          & ! [X5: produc8090089739038349590_set_a] : ( P5 @ ( some_P2245991037696317435_set_a @ X5 ) ) ) ) ) ).

% split_option_all
thf(fact_992_split__option__ex,axiom,
    ( ( ^ [P4: option2110264179601050681od_h_t > $o] :
        ? [X14: option2110264179601050681od_h_t] : ( P4 @ X14 ) )
    = ( ^ [P5: option2110264179601050681od_h_t > $o] :
          ( ( P5 @ none_P849260865442546644od_h_t )
          | ? [X5: product_prod_h_t] : ( P5 @ ( some_P2526622376857543512od_h_t @ X5 ) ) ) ) ) ).

% split_option_ex
thf(fact_993_split__option__ex,axiom,
    ( ( ^ [P4: option4241632866121027589_h_t_t > $o] :
        ? [X14: option4241632866121027589_h_t_t] : ( P4 @ X14 ) )
    = ( ^ [P5: option4241632866121027589_h_t_t > $o] :
          ( ( P5 @ none_P797220180637652640_h_t_t )
          | ? [X5: produc2796182059459404991_h_t_t] : ( P5 @ ( some_P8406129549712030756_h_t_t @ X5 ) ) ) ) ) ).

% split_option_ex
thf(fact_994_split__option__ex,axiom,
    ( ( ^ [P4: option5775791656947114332_set_a > $o] :
        ? [X14: option5775791656947114332_set_a] : ( P4 @ X14 ) )
    = ( ^ [P5: option5775791656947114332_set_a > $o] :
          ( ( P5 @ none_P2868508613186038903_set_a )
          | ? [X5: produc8090089739038349590_set_a] : ( P5 @ ( some_P2245991037696317435_set_a @ X5 ) ) ) ) ) ).

% split_option_ex
thf(fact_995_option_Oexhaust,axiom,
    ! [Y: option2110264179601050681od_h_t] :
      ( ( Y != none_P849260865442546644od_h_t )
     => ~ ! [X23: product_prod_h_t] :
            ( Y
           != ( some_P2526622376857543512od_h_t @ X23 ) ) ) ).

% option.exhaust
thf(fact_996_option_Oexhaust,axiom,
    ! [Y: option4241632866121027589_h_t_t] :
      ( ( Y != none_P797220180637652640_h_t_t )
     => ~ ! [X23: produc2796182059459404991_h_t_t] :
            ( Y
           != ( some_P8406129549712030756_h_t_t @ X23 ) ) ) ).

% option.exhaust
thf(fact_997_option_Oexhaust,axiom,
    ! [Y: option5775791656947114332_set_a] :
      ( ( Y != none_P2868508613186038903_set_a )
     => ~ ! [X23: produc8090089739038349590_set_a] :
            ( Y
           != ( some_P2245991037696317435_set_a @ X23 ) ) ) ).

% option.exhaust
thf(fact_998_option_OdiscI,axiom,
    ! [Option: option2110264179601050681od_h_t,X22: product_prod_h_t] :
      ( ( Option
        = ( some_P2526622376857543512od_h_t @ X22 ) )
     => ( Option != none_P849260865442546644od_h_t ) ) ).

% option.discI
thf(fact_999_option_OdiscI,axiom,
    ! [Option: option4241632866121027589_h_t_t,X22: produc2796182059459404991_h_t_t] :
      ( ( Option
        = ( some_P8406129549712030756_h_t_t @ X22 ) )
     => ( Option != none_P797220180637652640_h_t_t ) ) ).

% option.discI
thf(fact_1000_option_OdiscI,axiom,
    ! [Option: option5775791656947114332_set_a,X22: produc8090089739038349590_set_a] :
      ( ( Option
        = ( some_P2245991037696317435_set_a @ X22 ) )
     => ( Option != none_P2868508613186038903_set_a ) ) ).

% option.discI
thf(fact_1001_option_Odistinct_I1_J,axiom,
    ! [X22: product_prod_h_t] :
      ( none_P849260865442546644od_h_t
     != ( some_P2526622376857543512od_h_t @ X22 ) ) ).

% option.distinct(1)
thf(fact_1002_option_Odistinct_I1_J,axiom,
    ! [X22: produc2796182059459404991_h_t_t] :
      ( none_P797220180637652640_h_t_t
     != ( some_P8406129549712030756_h_t_t @ X22 ) ) ).

% option.distinct(1)
thf(fact_1003_option_Odistinct_I1_J,axiom,
    ! [X22: produc8090089739038349590_set_a] :
      ( none_P2868508613186038903_set_a
     != ( some_P2245991037696317435_set_a @ X22 ) ) ).

% option.distinct(1)
thf(fact_1004_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_1005_run__t_Osimps_I1_J,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a] :
      ( ( run_t_h_t_a @ Run_hd @ none_P849260865442546644od_h_t )
      = none_P797220180637652640_h_t_t ) ).

% run_t.simps(1)
thf(fact_1006_one__reorient,axiom,
    ! [X: nat] :
      ( ( one_one_nat = X )
      = ( X = one_one_nat ) ) ).

% one_reorient
thf(fact_1007_reaches__on__init__Some,axiom,
    ! [R: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Xs2: list_t,S2: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ R @ S @ Xs2 @ S2 )
     => ( ( ( R @ S2 )
         != none_P797220180637652640_h_t_t )
       => ( ( R @ S )
         != none_P797220180637652640_h_t_t ) ) ) ).

% reaches_on_init_Some
thf(fact_1008_reaches__on__init__Some,axiom,
    ! [R: h > option5775791656947114332_set_a,S: h,Xs2: list_P1095827921439705018_set_a,S2: h] :
      ( ( reache3397181163414509427_set_a @ R @ S @ Xs2 @ S2 )
     => ( ( ( R @ S2 )
         != none_P2868508613186038903_set_a )
       => ( ( R @ S )
         != none_P2868508613186038903_set_a ) ) ) ).

% reaches_on_init_Some
thf(fact_1009_read__t_Oelims,axiom,
    ! [X: option4927543243414619207at_nat,Y: option_nat] :
      ( ( ( read_t_nat_nat @ X )
        = Y )
     => ( ( ( X = none_P5556105721700978146at_nat )
         => ( Y != none_nat ) )
       => ~ ! [E: nat,T4: nat] :
              ( ( X
                = ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ E @ T4 ) ) )
             => ( Y
               != ( some_nat @ T4 ) ) ) ) ) ).

% read_t.elims
thf(fact_1010_read__t_Oelims,axiom,
    ! [X: option2110264179601050681od_h_t,Y: option_t] :
      ( ( ( read_t_h_t @ X )
        = Y )
     => ( ( ( X = none_P849260865442546644od_h_t )
         => ( Y != none_t ) )
       => ~ ! [E: h,T4: t] :
              ( ( X
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E @ T4 ) ) )
             => ( Y
               != ( some_t @ T4 ) ) ) ) ) ).

% read_t.elims
thf(fact_1011_read__t_Oelims,axiom,
    ! [X: option4241632866121027589_h_t_t,Y: option_t] :
      ( ( ( read_t2092621867719112_h_t_t @ X )
        = Y )
     => ( ( ( X = none_P797220180637652640_h_t_t )
         => ( Y != none_t ) )
       => ~ ! [E: option2110264179601050681od_h_t,T4: t] :
              ( ( X
                = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E @ T4 ) ) )
             => ( Y
               != ( some_t @ T4 ) ) ) ) ) ).

% read_t.elims
thf(fact_1012_MDL_Omatch_Osimps_I5_J,axiom,
    ! [Sigma: trace_a_t,R: regex_a_t] :
      ( ( match_a_t @ Sigma @ ( star_a_t @ R ) )
      = ( transi2905341329935302413cl_nat @ ( match_a_t @ Sigma @ R ) ) ) ).

% MDL.match.simps(5)
thf(fact_1013_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one_class.zero_le_one
thf(fact_1014_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

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

% not_one_le_zero
thf(fact_1016_zero__less__one,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

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

% not_one_less_zero
thf(fact_1018_read__t_Ocases,axiom,
    ! [X: option4927543243414619207at_nat] :
      ( ( X != none_P5556105721700978146at_nat )
     => ~ ! [E: nat,T4: nat] :
            ( X
           != ( some_P7363390416028606310at_nat @ ( product_Pair_nat_nat @ E @ T4 ) ) ) ) ).

% read_t.cases
thf(fact_1019_read__t_Ocases,axiom,
    ! [X: option2110264179601050681od_h_t] :
      ( ( X != none_P849260865442546644od_h_t )
     => ~ ! [E: h,T4: t] :
            ( X
           != ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E @ T4 ) ) ) ) ).

% read_t.cases
thf(fact_1020_read__t_Ocases,axiom,
    ! [X: option4241632866121027589_h_t_t] :
      ( ( X != none_P797220180637652640_h_t_t )
     => ~ ! [E: option2110264179601050681od_h_t,T4: t] :
            ( X
           != ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E @ T4 ) ) ) ) ).

% read_t.cases
thf(fact_1021_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_1022_reaches__on__len,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,N: nat] :
    ? [Vs3: list_t,S6: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs3 @ S6 )
      & ( ( ( size_size_list_t @ Vs3 )
          = N )
        | ( ( Run @ S6 )
          = none_P797220180637652640_h_t_t ) ) ) ).

% reaches_on_len
thf(fact_1023_reaches__on__len,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,N: nat] :
    ? [Vs3: list_P1095827921439705018_set_a,S6: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs3 @ S6 )
      & ( ( ( size_s5362121731612881446_set_a @ Vs3 )
          = N )
        | ( ( Run @ S6 )
          = none_P2868508613186038903_set_a ) ) ) ).

% reaches_on_len
thf(fact_1024_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N3: nat] : ( plus_plus_nat @ N3 @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_1025_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_1026_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_1027_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_1028_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( ( P @ N2 )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_1029_MDL_Omatch__Star,axiom,
    ! [I: nat,N: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ ( suc @ N ) ) ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) )
      = ( ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K3 ) ) @ ( match_a_t @ Sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K3 ) @ ( plus_plus_nat @ I @ ( suc @ N ) ) ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) ) ) ) ) ).

% MDL.match_Star
thf(fact_1030_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% less_numeral_extra(1)
thf(fact_1031_rtrancl_Ocases,axiom,
    ! [A1: nat,A22: nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A1 @ A22 ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( A22 != A1 )
       => ~ ! [B3: nat] :
              ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A1 @ B3 ) @ ( transi2905341329935302413cl_nat @ R ) )
             => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B3 @ A22 ) @ R ) ) ) ) ).

% rtrancl.cases
thf(fact_1032_rtrancl_Osimps,axiom,
    ! [A1: nat,A22: nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A1 @ A22 ) @ ( transi2905341329935302413cl_nat @ R ) )
      = ( ? [A: nat] :
            ( ( A1 = A )
            & ( A22 = A ) )
        | ? [A: nat,B4: nat,C2: nat] :
            ( ( A1 = A )
            & ( A22 = C2 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A @ B4 ) @ ( transi2905341329935302413cl_nat @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B4 @ C2 ) @ R ) ) ) ) ).

% rtrancl.simps
thf(fact_1033_converse__rtrancl__induct2,axiom,
    ! [Ax: h,Ay: t,Bx: h,By: t,R: set_Pr2990887038747690439od_h_t,P: h > t > $o] :
      ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ Ax @ Ay ) @ ( product_Pair_h_t @ Bx @ By ) ) @ ( transi6164259836908458614od_h_t @ R ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: h,B3: t,Aa: h,Ba: t] :
              ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ A4 @ B3 ) @ ( product_Pair_h_t @ Aa @ Ba ) ) @ R )
             => ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ Aa @ Ba ) @ ( product_Pair_h_t @ Bx @ By ) ) @ ( transi6164259836908458614od_h_t @ R ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B3 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1034_converse__rtrancl__induct2,axiom,
    ! [Ax: option2110264179601050681od_h_t,Ay: t,Bx: option2110264179601050681od_h_t,By: t,R: set_Pr4341985475574286023_h_t_t,P: option2110264179601050681od_h_t > t > $o] :
      ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ Ax @ Ay ) @ ( produc770200333395398319_h_t_t @ Bx @ By ) ) @ ( transi8353235497968031810_h_t_t @ R ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: option2110264179601050681od_h_t,B3: t,Aa: option2110264179601050681od_h_t,Ba: t] :
              ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ A4 @ B3 ) @ ( produc770200333395398319_h_t_t @ Aa @ Ba ) ) @ R )
             => ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ Aa @ Ba ) @ ( produc770200333395398319_h_t_t @ Bx @ By ) ) @ ( transi8353235497968031810_h_t_t @ R ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B3 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1035_converse__rtrancl__induct2,axiom,
    ! [Ax: h,Ay: product_prod_t_set_a,Bx: h,By: product_prod_t_set_a,R: set_Pr918899152635689223_set_a,P: h > product_prod_t_set_a > $o] :
      ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ Ax @ Ay ) @ ( produc3432067189782488838_set_a @ Bx @ By ) ) @ ( transi3302872164550607129_set_a @ R ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: h,B3: product_prod_t_set_a,Aa: h,Ba: product_prod_t_set_a] :
              ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ A4 @ B3 ) @ ( produc3432067189782488838_set_a @ Aa @ Ba ) ) @ R )
             => ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ Aa @ Ba ) @ ( produc3432067189782488838_set_a @ Bx @ By ) ) @ ( transi3302872164550607129_set_a @ R ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B3 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1036_converse__rtrancl__induct2,axiom,
    ! [Ax: t,Ay: set_a,Bx: t,By: set_a,R: set_Pr2751536223740281991_set_a,P: t > set_a > $o] :
      ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ Ax @ Ay ) @ ( product_Pair_t_set_a @ Bx @ By ) ) @ ( transi2002986897968859191_set_a @ R ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: t,B3: set_a,Aa: t,Ba: set_a] :
              ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ A4 @ B3 ) @ ( product_Pair_t_set_a @ Aa @ Ba ) ) @ R )
             => ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ Aa @ Ba ) @ ( product_Pair_t_set_a @ Bx @ By ) ) @ ( transi2002986897968859191_set_a @ R ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B3 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1037_converse__rtrancl__induct2,axiom,
    ! [Ax: nat,Ay: nat,Bx: nat,By: nat,R: set_Pr8693737435421807431at_nat,P: nat > nat > $o] :
      ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Ax @ Ay ) @ ( product_Pair_nat_nat @ Bx @ By ) ) @ ( transi8609417484261754244at_nat @ R ) )
     => ( ( P @ Bx @ By )
       => ( ! [A4: nat,B3: nat,Aa: nat,Ba: nat] :
              ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B3 ) @ ( product_Pair_nat_nat @ Aa @ Ba ) ) @ R )
             => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Aa @ Ba ) @ ( product_Pair_nat_nat @ Bx @ By ) ) @ ( transi8609417484261754244at_nat @ R ) )
               => ( ( P @ Aa @ Ba )
                 => ( P @ A4 @ B3 ) ) ) )
         => ( P @ Ax @ Ay ) ) ) ) ).

% converse_rtrancl_induct2
thf(fact_1038_converse__rtranclE2,axiom,
    ! [Xa: h,Xb: t,Za: h,Zb: t,R: set_Pr2990887038747690439od_h_t] :
      ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ Xa @ Xb ) @ ( product_Pair_h_t @ Za @ Zb ) ) @ ( transi6164259836908458614od_h_t @ R ) )
     => ( ( ( product_Pair_h_t @ Xa @ Xb )
         != ( product_Pair_h_t @ Za @ Zb ) )
       => ~ ! [A4: h,B3: t] :
              ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ Xa @ Xb ) @ ( product_Pair_h_t @ A4 @ B3 ) ) @ R )
             => ~ ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ A4 @ B3 ) @ ( product_Pair_h_t @ Za @ Zb ) ) @ ( transi6164259836908458614od_h_t @ R ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1039_converse__rtranclE2,axiom,
    ! [Xa: option2110264179601050681od_h_t,Xb: t,Za: option2110264179601050681od_h_t,Zb: t,R: set_Pr4341985475574286023_h_t_t] :
      ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ Xa @ Xb ) @ ( produc770200333395398319_h_t_t @ Za @ Zb ) ) @ ( transi8353235497968031810_h_t_t @ R ) )
     => ( ( ( produc770200333395398319_h_t_t @ Xa @ Xb )
         != ( produc770200333395398319_h_t_t @ Za @ Zb ) )
       => ~ ! [A4: option2110264179601050681od_h_t,B3: t] :
              ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ Xa @ Xb ) @ ( produc770200333395398319_h_t_t @ A4 @ B3 ) ) @ R )
             => ~ ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ A4 @ B3 ) @ ( produc770200333395398319_h_t_t @ Za @ Zb ) ) @ ( transi8353235497968031810_h_t_t @ R ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1040_converse__rtranclE2,axiom,
    ! [Xa: h,Xb: product_prod_t_set_a,Za: h,Zb: product_prod_t_set_a,R: set_Pr918899152635689223_set_a] :
      ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ Xa @ Xb ) @ ( produc3432067189782488838_set_a @ Za @ Zb ) ) @ ( transi3302872164550607129_set_a @ R ) )
     => ( ( ( produc3432067189782488838_set_a @ Xa @ Xb )
         != ( produc3432067189782488838_set_a @ Za @ Zb ) )
       => ~ ! [A4: h,B3: product_prod_t_set_a] :
              ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ Xa @ Xb ) @ ( produc3432067189782488838_set_a @ A4 @ B3 ) ) @ R )
             => ~ ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ A4 @ B3 ) @ ( produc3432067189782488838_set_a @ Za @ Zb ) ) @ ( transi3302872164550607129_set_a @ R ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1041_converse__rtranclE2,axiom,
    ! [Xa: t,Xb: set_a,Za: t,Zb: set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ Xa @ Xb ) @ ( product_Pair_t_set_a @ Za @ Zb ) ) @ ( transi2002986897968859191_set_a @ R ) )
     => ( ( ( product_Pair_t_set_a @ Xa @ Xb )
         != ( product_Pair_t_set_a @ Za @ Zb ) )
       => ~ ! [A4: t,B3: set_a] :
              ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ Xa @ Xb ) @ ( product_Pair_t_set_a @ A4 @ B3 ) ) @ R )
             => ~ ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ A4 @ B3 ) @ ( product_Pair_t_set_a @ Za @ Zb ) ) @ ( transi2002986897968859191_set_a @ R ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1042_converse__rtranclE2,axiom,
    ! [Xa: nat,Xb: nat,Za: nat,Zb: nat,R: set_Pr8693737435421807431at_nat] :
      ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Xa @ Xb ) @ ( product_Pair_nat_nat @ Za @ Zb ) ) @ ( transi8609417484261754244at_nat @ R ) )
     => ( ( ( product_Pair_nat_nat @ Xa @ Xb )
         != ( product_Pair_nat_nat @ Za @ Zb ) )
       => ~ ! [A4: nat,B3: nat] :
              ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Xa @ Xb ) @ ( product_Pair_nat_nat @ A4 @ B3 ) ) @ R )
             => ~ ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B3 ) @ ( product_Pair_nat_nat @ Za @ Zb ) ) @ ( transi8609417484261754244at_nat @ R ) ) ) ) ) ).

% converse_rtranclE2
thf(fact_1043_rtrancl__induct2,axiom,
    ! [Ax: h,Ay: t,Bx: h,By: t,R: set_Pr2990887038747690439od_h_t,P: h > t > $o] :
      ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ Ax @ Ay ) @ ( product_Pair_h_t @ Bx @ By ) ) @ ( transi6164259836908458614od_h_t @ R ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: h,B3: t,Aa: h,Ba: t] :
              ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ Ax @ Ay ) @ ( product_Pair_h_t @ A4 @ B3 ) ) @ ( transi6164259836908458614od_h_t @ R ) )
             => ( ( member5425237497124928528od_h_t @ ( produc9015743616642157143od_h_t @ ( product_Pair_h_t @ A4 @ B3 ) @ ( product_Pair_h_t @ Aa @ Ba ) ) @ R )
               => ( ( P @ A4 @ B3 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1044_rtrancl__induct2,axiom,
    ! [Ax: option2110264179601050681od_h_t,Ay: t,Bx: option2110264179601050681od_h_t,By: t,R: set_Pr4341985475574286023_h_t_t,P: option2110264179601050681od_h_t > t > $o] :
      ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ Ax @ Ay ) @ ( produc770200333395398319_h_t_t @ Bx @ By ) ) @ ( transi8353235497968031810_h_t_t @ R ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: option2110264179601050681od_h_t,B3: t,Aa: option2110264179601050681od_h_t,Ba: t] :
              ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ Ax @ Ay ) @ ( produc770200333395398319_h_t_t @ A4 @ B3 ) ) @ ( transi8353235497968031810_h_t_t @ R ) )
             => ( ( member1552482442457946384_h_t_t @ ( produc2709429758397217111_h_t_t @ ( produc770200333395398319_h_t_t @ A4 @ B3 ) @ ( produc770200333395398319_h_t_t @ Aa @ Ba ) ) @ R )
               => ( ( P @ A4 @ B3 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1045_rtrancl__induct2,axiom,
    ! [Ax: h,Ay: product_prod_t_set_a,Bx: h,By: product_prod_t_set_a,R: set_Pr918899152635689223_set_a,P: h > product_prod_t_set_a > $o] :
      ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ Ax @ Ay ) @ ( produc3432067189782488838_set_a @ Bx @ By ) ) @ ( transi3302872164550607129_set_a @ R ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: h,B3: product_prod_t_set_a,Aa: h,Ba: product_prod_t_set_a] :
              ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ Ax @ Ay ) @ ( produc3432067189782488838_set_a @ A4 @ B3 ) ) @ ( transi3302872164550607129_set_a @ R ) )
             => ( ( member6311670872353163088_set_a @ ( produc4641403753979154199_set_a @ ( produc3432067189782488838_set_a @ A4 @ B3 ) @ ( produc3432067189782488838_set_a @ Aa @ Ba ) ) @ R )
               => ( ( P @ A4 @ B3 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1046_rtrancl__induct2,axiom,
    ! [Ax: t,Ay: set_a,Bx: t,By: set_a,R: set_Pr2751536223740281991_set_a,P: t > set_a > $o] :
      ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ Ax @ Ay ) @ ( product_Pair_t_set_a @ Bx @ By ) ) @ ( transi2002986897968859191_set_a @ R ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: t,B3: set_a,Aa: t,Ba: set_a] :
              ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ Ax @ Ay ) @ ( product_Pair_t_set_a @ A4 @ B3 ) ) @ ( transi2002986897968859191_set_a @ R ) )
             => ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( product_Pair_t_set_a @ A4 @ B3 ) @ ( product_Pair_t_set_a @ Aa @ Ba ) ) @ R )
               => ( ( P @ A4 @ B3 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1047_rtrancl__induct2,axiom,
    ! [Ax: nat,Ay: nat,Bx: nat,By: nat,R: set_Pr8693737435421807431at_nat,P: nat > nat > $o] :
      ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Ax @ Ay ) @ ( product_Pair_nat_nat @ Bx @ By ) ) @ ( transi8609417484261754244at_nat @ R ) )
     => ( ( P @ Ax @ Ay )
       => ( ! [A4: nat,B3: nat,Aa: nat,Ba: nat] :
              ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ Ax @ Ay ) @ ( product_Pair_nat_nat @ A4 @ B3 ) ) @ ( transi8609417484261754244at_nat @ R ) )
             => ( ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B3 ) @ ( product_Pair_nat_nat @ Aa @ Ba ) ) @ R )
               => ( ( P @ A4 @ B3 )
                 => ( P @ Aa @ Ba ) ) ) )
         => ( P @ Bx @ By ) ) ) ) ).

% rtrancl_induct2
thf(fact_1048_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

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

% less_numeral_extra(3)
thf(fact_1050_converse__rtrancl__into__rtrancl,axiom,
    ! [A2: nat,B: nat,R: set_Pr1261947904930325089at_nat,C3: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ B ) @ R )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C3 ) @ ( transi2905341329935302413cl_nat @ R ) )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ C3 ) @ ( transi2905341329935302413cl_nat @ R ) ) ) ) ).

% converse_rtrancl_into_rtrancl
thf(fact_1051_converse__rtrancl__induct,axiom,
    ! [A2: nat,B: nat,R: set_Pr1261947904930325089at_nat,P: nat > $o] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ B ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( P @ B )
       => ( ! [Y4: nat,Z2: nat] :
              ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ Z2 ) @ R )
             => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Z2 @ B ) @ ( transi2905341329935302413cl_nat @ R ) )
               => ( ( P @ Z2 )
                 => ( P @ Y4 ) ) ) )
         => ( P @ A2 ) ) ) ) ).

% converse_rtrancl_induct
thf(fact_1052_converse__rtranclE,axiom,
    ! [X: nat,Z4: nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Z4 ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( X != Z4 )
       => ~ ! [Y4: nat] :
              ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ R )
             => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ Z4 ) @ ( transi2905341329935302413cl_nat @ R ) ) ) ) ) ).

% converse_rtranclE
thf(fact_1053_rtrancl__induct,axiom,
    ! [A2: nat,B: nat,R: set_Pr1261947904930325089at_nat,P: nat > $o] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ B ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( P @ A2 )
       => ( ! [Y4: nat,Z2: nat] :
              ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ Y4 ) @ ( transi2905341329935302413cl_nat @ R ) )
             => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ Z2 ) @ R )
               => ( ( P @ Y4 )
                 => ( P @ Z2 ) ) ) )
         => ( P @ B ) ) ) ) ).

% rtrancl_induct
thf(fact_1054_rtrancl__trans,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Z4: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y @ Z4 ) @ ( transi2905341329935302413cl_nat @ R ) )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Z4 ) @ ( transi2905341329935302413cl_nat @ R ) ) ) ) ).

% rtrancl_trans
thf(fact_1055_rtranclE,axiom,
    ! [A2: nat,B: nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ B ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( A2 != B )
       => ~ ! [Y4: nat] :
              ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ Y4 ) @ ( transi2905341329935302413cl_nat @ R ) )
             => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y4 @ B ) @ R ) ) ) ) ).

% rtranclE
thf(fact_1056_rtrancl_Ortrancl__into__rtrancl,axiom,
    ! [A2: nat,B: nat,R: set_Pr1261947904930325089at_nat,C3: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ B ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ B @ C3 ) @ R )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ C3 ) @ ( transi2905341329935302413cl_nat @ R ) ) ) ) ).

% rtrancl.rtrancl_into_rtrancl
thf(fact_1057_rtrancl_Ortrancl__refl,axiom,
    ! [A2: nat,R: set_Pr1261947904930325089at_nat] : ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ A2 @ A2 ) @ ( transi2905341329935302413cl_nat @ R ) ) ).

% rtrancl.rtrancl_refl
thf(fact_1058_SuccI,axiom,
    ! [Kl: list_a,K: a,Kl2: set_list_a] :
      ( ( member_list_a @ ( append_a @ Kl @ ( cons_a @ K @ nil_a ) ) @ Kl2 )
     => ( member_a @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_1059_SuccI,axiom,
    ! [Kl: list_P6011104703257516679at_nat,K: product_prod_nat_nat,Kl2: set_li5450038453877631591at_nat] :
      ( ( member3067507820990806192at_nat @ ( append985823374593552924at_nat @ Kl @ ( cons_P6512896166579812791at_nat @ K @ nil_Pr5478986624290739719at_nat ) ) @ Kl2 )
     => ( member8440522571783428010at_nat @ K @ ( bNF_Gr5363859321595349404at_nat @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_1060_SuccI,axiom,
    ! [Kl: list_nat,K: nat,Kl2: set_list_nat] :
      ( ( member_list_nat @ ( append_nat @ Kl @ ( cons_nat @ K @ nil_nat ) ) @ Kl2 )
     => ( member_nat @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ Kl ) ) ) ).

% SuccI
thf(fact_1061_SuccD,axiom,
    ! [K: a,Kl2: set_list_a,Kl: list_a] :
      ( ( member_a @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ Kl ) )
     => ( member_list_a @ ( append_a @ Kl @ ( cons_a @ K @ nil_a ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_1062_SuccD,axiom,
    ! [K: product_prod_nat_nat,Kl2: set_li5450038453877631591at_nat,Kl: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ K @ ( bNF_Gr5363859321595349404at_nat @ Kl2 @ Kl ) )
     => ( member3067507820990806192at_nat @ ( append985823374593552924at_nat @ Kl @ ( cons_P6512896166579812791at_nat @ K @ nil_Pr5478986624290739719at_nat ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_1063_SuccD,axiom,
    ! [K: nat,Kl2: set_list_nat,Kl: list_nat] :
      ( ( member_nat @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ Kl ) )
     => ( member_list_nat @ ( append_nat @ Kl @ ( cons_nat @ K @ nil_nat ) ) @ Kl2 ) ) ).

% SuccD
thf(fact_1064_empty__Shift,axiom,
    ! [Kl2: set_list_a,K: a] :
      ( ( member_list_a @ nil_a @ Kl2 )
     => ( ( member_a @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ nil_a ) )
       => ( member_list_a @ nil_a @ ( bNF_Greatest_Shift_a @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_1065_empty__Shift,axiom,
    ! [Kl2: set_li5450038453877631591at_nat,K: product_prod_nat_nat] :
      ( ( member3067507820990806192at_nat @ nil_Pr5478986624290739719at_nat @ Kl2 )
     => ( ( member8440522571783428010at_nat @ K @ ( bNF_Gr5363859321595349404at_nat @ Kl2 @ nil_Pr5478986624290739719at_nat ) )
       => ( member3067507820990806192at_nat @ nil_Pr5478986624290739719at_nat @ ( bNF_Gr3130287167067265568at_nat @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_1066_empty__Shift,axiom,
    ! [Kl2: set_list_nat,K: nat] :
      ( ( member_list_nat @ nil_nat @ Kl2 )
     => ( ( member_nat @ K @ ( bNF_Gr6352880689984616693cc_nat @ Kl2 @ nil_nat ) )
       => ( member_list_nat @ nil_nat @ ( bNF_Gr1872714664788909425ft_nat @ Kl2 @ K ) ) ) ) ).

% empty_Shift
thf(fact_1067_listrel1__iff__update,axiom,
    ! [Xs2: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( listrel1_nat @ R ) )
      = ( ? [Y5: nat,N3: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Xs2 @ N3 ) @ Y5 ) @ R )
            & ( ord_less_nat @ N3 @ ( size_size_list_nat @ Xs2 ) )
            & ( Ys
              = ( list_update_nat @ Xs2 @ N3 @ Y5 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_1068_listrel1__iff__update,axiom,
    ! [Xs2: list_t,Ys: list_t,R: set_Product_prod_t_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Xs2 @ Ys ) @ ( listrel1_t @ R ) )
      = ( ? [Y5: t,N3: nat] :
            ( ( member3805107722934592656od_t_t @ ( product_Pair_t_t @ ( nth_t @ Xs2 @ N3 ) @ Y5 ) @ R )
            & ( ord_less_nat @ N3 @ ( size_size_list_t @ Xs2 ) )
            & ( Ys
              = ( list_update_t @ Xs2 @ N3 @ Y5 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_1069_listrel1__iff__update,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Xs2 @ Ys ) @ ( listre1572245647505301011_set_a @ R ) )
      = ( ? [Y5: product_prod_t_set_a,N3: nat] :
            ( ( member6953777265722981072_set_a @ ( produc4993190531567155607_set_a @ ( nth_Pr633927046780761275_set_a @ Xs2 @ N3 ) @ Y5 ) @ R )
            & ( ord_less_nat @ N3 @ ( size_s5362121731612881446_set_a @ Xs2 ) )
            & ( Ys
              = ( list_u6938334460439117218_set_a @ Xs2 @ N3 @ Y5 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_1070_listrel1__iff__update,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Xs2 @ Ys ) @ ( listre5239452510186245434_set_a @ R ) )
      = ( ? [Y5: produc3416767791517006041_set_a,N3: nat] :
            ( ( member8640275492606135612_set_a @ ( produc5532101387244520523_set_a @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ N3 ) @ Y5 ) @ R )
            & ( ord_less_nat @ N3 @ ( size_s6950157911653109757_set_a @ Xs2 ) )
            & ( Ys
              = ( list_u4984865194623475435_set_a @ Xs2 @ N3 @ Y5 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_1071_listrel1__iff__update,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Xs2 @ Ys ) @ ( listre7062490390707579799_nat_t @ R ) )
      = ( ? [Y5: product_prod_nat_t,N3: nat] :
            ( ( member7182942125143788150_nat_t @ ( produc2776648103937650693_nat_t @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ N3 ) @ Y5 ) @ R )
            & ( ord_less_nat @ N3 @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
            & ( Ys
              = ( list_u7556474282317044296_nat_t @ Xs2 @ N3 @ Y5 ) ) ) ) ) ).

% listrel1_iff_update
thf(fact_1072_Cons__listrel1__Cons,axiom,
    ! [X: nat,Xs2: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
      = ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
          & ( Xs2 = Ys ) )
        | ( ( X = Y )
          & ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1_Cons
thf(fact_1073_rtrancl__listrel1__eq__len,axiom,
    ! [X: list_t,Y: list_t,R: set_Product_prod_t_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ X @ Y ) @ ( transi7631189048725058202list_t @ ( listrel1_t @ R ) ) )
     => ( ( size_size_list_t @ X )
        = ( size_size_list_t @ Y ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1074_rtrancl__listrel1__eq__len,axiom,
    ! [X: list_P1095827921439705018_set_a,Y: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ X @ Y ) @ ( transi5209167329950108989_set_a @ ( listre1572245647505301011_set_a @ R ) ) )
     => ( ( size_s5362121731612881446_set_a @ X )
        = ( size_s5362121731612881446_set_a @ Y ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1075_rtrancl__listrel1__eq__len,axiom,
    ! [X: list_P6739568432217944425_set_a,Y: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ X @ Y ) @ ( transi6894134243792755750_set_a @ ( listre5239452510186245434_set_a @ R ) ) )
     => ( ( size_s6950157911653109757_set_a @ X )
        = ( size_s6950157911653109757_set_a @ Y ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1076_rtrancl__listrel1__eq__len,axiom,
    ! [X: list_P4201438511612060998_nat_t,Y: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ X @ Y ) @ ( transi8901708931774269699_nat_t @ ( listre7062490390707579799_nat_t @ R ) ) )
     => ( ( size_s1593550824562968538_nat_t @ X )
        = ( size_s1593550824562968538_nat_t @ Y ) ) ) ).

% rtrancl_listrel1_eq_len
thf(fact_1077_listrel1__eq__len,axiom,
    ! [Xs2: list_t,Ys: list_t,R: set_Product_prod_t_t] :
      ( ( member1598007745118852880list_t @ ( produc8116999438917745495list_t @ Xs2 @ Ys ) @ ( listrel1_t @ R ) )
     => ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_1078_listrel1__eq__len,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a,R: set_Pr2751536223740281991_set_a] :
      ( ( member7105239521983867088_set_a @ ( produc3154345580163335831_set_a @ Xs2 @ Ys ) @ ( listre1572245647505301011_set_a @ R ) )
     => ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_1079_listrel1__eq__len,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a,R: set_Pr6980190999441956595_set_a] :
      ( ( member1164773568115972444_set_a @ ( produc5226300575157571691_set_a @ Xs2 @ Ys ) @ ( listre5239452510186245434_set_a @ R ) )
     => ( ( size_s6950157911653109757_set_a @ Xs2 )
        = ( size_s6950157911653109757_set_a @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_1080_listrel1__eq__len,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,R: set_Pr3075641135855851309_nat_t] :
      ( ( member6554284536620456214_nat_t @ ( produc87868410121502373_nat_t @ Xs2 @ Ys ) @ ( listre7062490390707579799_nat_t @ R ) )
     => ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) ) ) ).

% listrel1_eq_len
thf(fact_1081_listrel1__rtrancl__subset__rtrancl__listrel1,axiom,
    ! [R: set_Pr1261947904930325089at_nat] : ( ord_le8406513867147106209st_nat @ ( listrel1_nat @ ( transi2905341329935302413cl_nat @ R ) ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R ) ) ) ).

% listrel1_rtrancl_subset_rtrancl_listrel1
thf(fact_1082_listrel1I1,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs2: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
     => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y @ Xs2 ) ) @ ( listrel1_nat @ R ) ) ) ).

% listrel1I1
thf(fact_1083_Cons__listrel1E1,axiom,
    ! [X: nat,Xs2: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs2 ) @ Ys ) @ ( listrel1_nat @ R ) )
     => ( ! [Y4: nat] :
            ( ( Ys
              = ( cons_nat @ Y4 @ Xs2 ) )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y4 ) @ R ) )
       => ~ ! [Zs2: list_nat] :
              ( ( Ys
                = ( cons_nat @ X @ Zs2 ) )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Zs2 ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1E1
thf(fact_1084_Cons__listrel1E2,axiom,
    ! [Xs2: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
     => ( ! [X4: nat] :
            ( ( Xs2
              = ( cons_nat @ X4 @ Ys ) )
           => ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ Y ) @ R ) )
       => ~ ! [Zs2: list_nat] :
              ( ( Xs2
                = ( cons_nat @ Y @ Zs2 ) )
             => ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Zs2 @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1E2
thf(fact_1085_listrel1I,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs2: list_nat,Us: list_nat,Vs: list_nat,Ys: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
     => ( ( Xs2
          = ( append_nat @ Us @ ( cons_nat @ X @ Vs ) ) )
       => ( ( Ys
            = ( append_nat @ Us @ ( cons_nat @ Y @ Vs ) ) )
         => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% listrel1I
thf(fact_1086_listrel1E,axiom,
    ! [Xs2: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( listrel1_nat @ R ) )
     => ~ ! [X4: nat,Y4: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X4 @ Y4 ) @ R )
           => ! [Us2: list_nat,Vs3: list_nat] :
                ( ( Xs2
                  = ( append_nat @ Us2 @ ( cons_nat @ X4 @ Vs3 ) ) )
               => ( Ys
                 != ( append_nat @ Us2 @ ( cons_nat @ Y4 @ Vs3 ) ) ) ) ) ) ).

% listrel1E
thf(fact_1087_rtrancl__listrel1__ConsI2,axiom,
    ! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs2: list_nat,Ys: list_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( transi2905341329935302413cl_nat @ R ) )
     => ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R ) ) )
       => ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y @ Ys ) ) @ ( transi5285580207609517981st_nat @ ( listrel1_nat @ R ) ) ) ) ) ).

% rtrancl_listrel1_ConsI2
thf(fact_1088_snoc__listrel1__snoc__iff,axiom,
    ! [Xs2: list_nat,X: nat,Ys: list_nat,Y: nat,R: set_Pr1261947904930325089at_nat] :
      ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs2 @ ( cons_nat @ X @ nil_nat ) ) @ ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) ) @ ( listrel1_nat @ R ) )
      = ( ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs2 @ Ys ) @ ( listrel1_nat @ R ) )
          & ( X = Y ) )
        | ( ( Xs2 = Ys )
          & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R ) ) ) ) ).

% snoc_listrel1_snoc_iff
thf(fact_1089_verit__sum__simplify,axiom,
    ! [A2: nat] :
      ( ( plus_plus_nat @ A2 @ zero_zero_nat )
      = A2 ) ).

% verit_sum_simplify
thf(fact_1090_add__0__iff,axiom,
    ! [B: nat,A2: nat] :
      ( ( B
        = ( plus_plus_nat @ B @ A2 ) )
      = ( A2 = zero_zero_nat ) ) ).

% add_0_iff
thf(fact_1091_updates__list__update__drop,axiom,
    ! [Ks: list_t,I: nat,Vs: list_t,V: t,Al: list_P9116000306261664621od_t_t] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_size_list_t @ Vs ) )
       => ( ( updates_t_t @ Ks @ ( list_update_t @ Vs @ I @ V ) @ Al )
          = ( updates_t_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1092_updates__list__update__drop,axiom,
    ! [Ks: list_t,I: nat,Vs: list_P4201438511612060998_nat_t,V: product_prod_nat_t,Al: list_P8233081824612726534_nat_t] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Vs ) )
       => ( ( update5030312641886382096_nat_t @ Ks @ ( list_u7556474282317044296_nat_t @ Vs @ I @ V ) @ Al )
          = ( update5030312641886382096_nat_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1093_updates__list__update__drop,axiom,
    ! [Ks: list_P4201438511612060998_nat_t,I: nat,Vs: list_t,V: t,Al: list_P3501493449842482016at_t_t] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_size_list_t @ Vs ) )
       => ( ( update916233812449959970at_t_t @ Ks @ ( list_update_t @ Vs @ I @ V ) @ Al )
          = ( update916233812449959970at_t_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1094_updates__list__update__drop,axiom,
    ! [Ks: list_t,I: nat,Vs: list_P1095827921439705018_set_a,V: product_prod_t_set_a,Al: list_P396102569433322640_set_a] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Vs ) )
       => ( ( update1832890758952038874_set_a @ Ks @ ( list_u6938334460439117218_set_a @ Vs @ I @ V ) @ Al )
          = ( update1832890758952038874_set_a @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1095_updates__list__update__drop,axiom,
    ! [Ks: list_P1095827921439705018_set_a,I: nat,Vs: list_t,V: t,Al: list_P6689957890503519626et_a_t] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_size_list_t @ Vs ) )
       => ( ( update3596881908701622868et_a_t @ Ks @ ( list_update_t @ Vs @ I @ V ) @ Al )
          = ( update3596881908701622868et_a_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1096_updates__list__update__drop,axiom,
    ! [Ks: list_P4201438511612060998_nat_t,I: nat,Vs: list_P4201438511612060998_nat_t,V: product_prod_nat_t,Al: list_P6109117928404460371_nat_t] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Vs ) )
       => ( ( update6395688813646615525_nat_t @ Ks @ ( list_u7556474282317044296_nat_t @ Vs @ I @ V ) @ Al )
          = ( update6395688813646615525_nat_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1097_updates__list__update__drop,axiom,
    ! [Ks: list_t,I: nat,Vs: list_P6739568432217944425_set_a,V: produc3416767791517006041_set_a,Al: list_P1560699769720516777_set_a] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_s6950157911653109757_set_a @ Vs ) )
       => ( ( update59855107599303859_set_a @ Ks @ ( list_u4984865194623475435_set_a @ Vs @ I @ V ) @ Al )
          = ( update59855107599303859_set_a @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1098_updates__list__update__drop,axiom,
    ! [Ks: list_P1095827921439705018_set_a,I: nat,Vs: list_P4201438511612060998_nat_t,V: product_prod_nat_t,Al: list_P7697742841123615913_nat_t] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_s1593550824562968538_nat_t @ Vs ) )
       => ( ( update2514154232149179187_nat_t @ Ks @ ( list_u7556474282317044296_nat_t @ Vs @ I @ V ) @ Al )
          = ( update2514154232149179187_nat_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1099_updates__list__update__drop,axiom,
    ! [Ks: list_P6739568432217944425_set_a,I: nat,Vs: list_t,V: t,Al: list_P100653400526954749et_a_t] :
      ( ( ord_less_eq_nat @ ( size_s6950157911653109757_set_a @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_size_list_t @ Vs ) )
       => ( ( update1653935275978086463et_a_t @ Ks @ ( list_update_t @ Vs @ I @ V ) @ Al )
          = ( update1653935275978086463et_a_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1100_updates__list__update__drop,axiom,
    ! [Ks: list_P4201438511612060998_nat_t,I: nat,Vs: list_P1095827921439705018_set_a,V: product_prod_t_set_a,Al: list_P1974509249127798147_set_a] :
      ( ( ord_less_eq_nat @ ( size_s1593550824562968538_nat_t @ Ks ) @ I )
     => ( ( ord_less_nat @ I @ ( size_s5362121731612881446_set_a @ Vs ) )
       => ( ( update3729442732451685701_set_a @ Ks @ ( list_u6938334460439117218_set_a @ Vs @ I @ V ) @ Al )
          = ( update3729442732451685701_set_a @ Ks @ Vs @ Al ) ) ) ) ).

% updates_list_update_drop
thf(fact_1101_updates__append__drop,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_t,Al: list_P9116000306261664621od_t_t] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( updates_t_t @ ( append_t @ Xs2 @ Zs ) @ Ys @ Al )
        = ( updates_t_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1102_updates__append__drop,axiom,
    ! [Xs2: list_t,Ys: list_P4201438511612060998_nat_t,Zs: list_t,Al: list_P8233081824612726534_nat_t] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( update5030312641886382096_nat_t @ ( append_t @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update5030312641886382096_nat_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1103_updates__append__drop,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_t,Zs: list_P4201438511612060998_nat_t,Al: list_P3501493449842482016at_t_t] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( update916233812449959970at_t_t @ ( append1694031088188373467_nat_t @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update916233812449959970at_t_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1104_updates__append__drop,axiom,
    ! [Xs2: list_t,Ys: list_P1095827921439705018_set_a,Zs: list_t,Al: list_P396102569433322640_set_a] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( update1832890758952038874_set_a @ ( append_t @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update1832890758952038874_set_a @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1105_updates__append__drop,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_t,Zs: list_P1095827921439705018_set_a,Al: list_P6689957890503519626et_a_t] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( update3596881908701622868et_a_t @ ( append8768163766229313743_set_a @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update3596881908701622868et_a_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1106_updates__append__drop,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,Zs: list_P4201438511612060998_nat_t,Al: list_P6109117928404460371_nat_t] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( update6395688813646615525_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update6395688813646615525_nat_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1107_updates__append__drop,axiom,
    ! [Xs2: list_t,Ys: list_P6739568432217944425_set_a,Zs: list_t,Al: list_P1560699769720516777_set_a] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s6950157911653109757_set_a @ Ys ) )
     => ( ( update59855107599303859_set_a @ ( append_t @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update59855107599303859_set_a @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1108_updates__append__drop,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P4201438511612060998_nat_t,Zs: list_P1095827921439705018_set_a,Al: list_P7697742841123615913_nat_t] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( update2514154232149179187_nat_t @ ( append8768163766229313743_set_a @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update2514154232149179187_nat_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1109_updates__append__drop,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_t,Zs: list_P6739568432217944425_set_a,Al: list_P100653400526954749et_a_t] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( update1653935275978086463et_a_t @ ( append7235343099912497022_set_a @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update1653935275978086463et_a_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1110_updates__append__drop,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P1095827921439705018_set_a,Zs: list_P4201438511612060998_nat_t,Al: list_P1974509249127798147_set_a] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( update3729442732451685701_set_a @ ( append1694031088188373467_nat_t @ Xs2 @ Zs ) @ Ys @ Al )
        = ( update3729442732451685701_set_a @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append_drop
thf(fact_1111_updates__append2__drop,axiom,
    ! [Xs2: list_t,Ys: list_t,Zs: list_t,Al: list_P9116000306261664621od_t_t] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( updates_t_t @ Xs2 @ ( append_t @ Ys @ Zs ) @ Al )
        = ( updates_t_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1112_updates__append2__drop,axiom,
    ! [Xs2: list_t,Ys: list_P4201438511612060998_nat_t,Zs: list_P4201438511612060998_nat_t,Al: list_P8233081824612726534_nat_t] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( update5030312641886382096_nat_t @ Xs2 @ ( append1694031088188373467_nat_t @ Ys @ Zs ) @ Al )
        = ( update5030312641886382096_nat_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1113_updates__append2__drop,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_t,Zs: list_t,Al: list_P3501493449842482016at_t_t] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( update916233812449959970at_t_t @ Xs2 @ ( append_t @ Ys @ Zs ) @ Al )
        = ( update916233812449959970at_t_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1114_updates__append2__drop,axiom,
    ! [Xs2: list_t,Ys: list_P1095827921439705018_set_a,Zs: list_P1095827921439705018_set_a,Al: list_P396102569433322640_set_a] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( update1832890758952038874_set_a @ Xs2 @ ( append8768163766229313743_set_a @ Ys @ Zs ) @ Al )
        = ( update1832890758952038874_set_a @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1115_updates__append2__drop,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_t,Zs: list_t,Al: list_P6689957890503519626et_a_t] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( update3596881908701622868et_a_t @ Xs2 @ ( append_t @ Ys @ Zs ) @ Al )
        = ( update3596881908701622868et_a_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1116_updates__append2__drop,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t,Zs: list_P4201438511612060998_nat_t,Al: list_P6109117928404460371_nat_t] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( update6395688813646615525_nat_t @ Xs2 @ ( append1694031088188373467_nat_t @ Ys @ Zs ) @ Al )
        = ( update6395688813646615525_nat_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1117_updates__append2__drop,axiom,
    ! [Xs2: list_t,Ys: list_P6739568432217944425_set_a,Zs: list_P6739568432217944425_set_a,Al: list_P1560699769720516777_set_a] :
      ( ( ( size_size_list_t @ Xs2 )
        = ( size_s6950157911653109757_set_a @ Ys ) )
     => ( ( update59855107599303859_set_a @ Xs2 @ ( append7235343099912497022_set_a @ Ys @ Zs ) @ Al )
        = ( update59855107599303859_set_a @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1118_updates__append2__drop,axiom,
    ! [Xs2: list_P1095827921439705018_set_a,Ys: list_P4201438511612060998_nat_t,Zs: list_P4201438511612060998_nat_t,Al: list_P7697742841123615913_nat_t] :
      ( ( ( size_s5362121731612881446_set_a @ Xs2 )
        = ( size_s1593550824562968538_nat_t @ Ys ) )
     => ( ( update2514154232149179187_nat_t @ Xs2 @ ( append1694031088188373467_nat_t @ Ys @ Zs ) @ Al )
        = ( update2514154232149179187_nat_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1119_updates__append2__drop,axiom,
    ! [Xs2: list_P6739568432217944425_set_a,Ys: list_t,Zs: list_t,Al: list_P100653400526954749et_a_t] :
      ( ( ( size_s6950157911653109757_set_a @ Xs2 )
        = ( size_size_list_t @ Ys ) )
     => ( ( update1653935275978086463et_a_t @ Xs2 @ ( append_t @ Ys @ Zs ) @ Al )
        = ( update1653935275978086463et_a_t @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1120_updates__append2__drop,axiom,
    ! [Xs2: list_P4201438511612060998_nat_t,Ys: list_P1095827921439705018_set_a,Zs: list_P1095827921439705018_set_a,Al: list_P1974509249127798147_set_a] :
      ( ( ( size_s1593550824562968538_nat_t @ Xs2 )
        = ( size_s5362121731612881446_set_a @ Ys ) )
     => ( ( update3729442732451685701_set_a @ Xs2 @ ( append8768163766229313743_set_a @ Ys @ Zs ) @ Al )
        = ( update3729442732451685701_set_a @ Xs2 @ Ys @ Al ) ) ) ).

% updates_append2_drop
thf(fact_1121_updates__append1,axiom,
    ! [Ks: list_t,Vs: list_t,K: t,Al: list_P9116000306261664621od_t_t] :
      ( ( ord_less_nat @ ( size_size_list_t @ Ks ) @ ( size_size_list_t @ Vs ) )
     => ( ( updates_t_t @ ( append_t @ Ks @ ( cons_t @ K @ nil_t ) ) @ Vs @ Al )
        = ( update_t_t @ K @ ( nth_t @ Vs @ ( size_size_list_t @ Ks ) ) @ ( updates_t_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1122_updates__append1,axiom,
    ! [Ks: list_t,Vs: list_P4201438511612060998_nat_t,K: t,Al: list_P8233081824612726534_nat_t] :
      ( ( ord_less_nat @ ( size_size_list_t @ Ks ) @ ( size_s1593550824562968538_nat_t @ Vs ) )
     => ( ( update5030312641886382096_nat_t @ ( append_t @ Ks @ ( cons_t @ K @ nil_t ) ) @ Vs @ Al )
        = ( update634203635698218827_nat_t @ K @ ( nth_Pr2476257163150662383_nat_t @ Vs @ ( size_size_list_t @ Ks ) ) @ ( update5030312641886382096_nat_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1123_updates__append1,axiom,
    ! [Ks: list_P4201438511612060998_nat_t,Vs: list_t,K: product_prod_nat_t,Al: list_P3501493449842482016at_t_t] :
      ( ( ord_less_nat @ ( size_s1593550824562968538_nat_t @ Ks ) @ ( size_size_list_t @ Vs ) )
     => ( ( update916233812449959970at_t_t @ ( append1694031088188373467_nat_t @ Ks @ ( cons_P8443330349171532544_nat_t @ K @ nil_Pr1417316752131242672_nat_t ) ) @ Vs @ Al )
        = ( update5743496843116572509at_t_t @ K @ ( nth_t @ Vs @ ( size_s1593550824562968538_nat_t @ Ks ) ) @ ( update916233812449959970at_t_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1124_updates__append1,axiom,
    ! [Ks: list_t,Vs: list_P1095827921439705018_set_a,K: t,Al: list_P396102569433322640_set_a] :
      ( ( ord_less_nat @ ( size_size_list_t @ Ks ) @ ( size_s5362121731612881446_set_a @ Vs ) )
     => ( ( update1832890758952038874_set_a @ ( append_t @ Ks @ ( cons_t @ K @ nil_t ) ) @ Vs @ Al )
        = ( update4191782666772473695_set_a @ K @ ( nth_Pr633927046780761275_set_a @ Vs @ ( size_size_list_t @ Ks ) ) @ ( update1832890758952038874_set_a @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1125_updates__append1,axiom,
    ! [Ks: list_P1095827921439705018_set_a,Vs: list_t,K: product_prod_t_set_a,Al: list_P6689957890503519626et_a_t] :
      ( ( ord_less_nat @ ( size_s5362121731612881446_set_a @ Ks ) @ ( size_size_list_t @ Vs ) )
     => ( ( update3596881908701622868et_a_t @ ( append8768163766229313743_set_a @ Ks @ ( cons_P6565363215658504938_set_a @ K @ nil_Pr7982011819685168954_set_a ) ) @ Vs @ Al )
        = ( update5955773816522057689et_a_t @ K @ ( nth_t @ Vs @ ( size_s5362121731612881446_set_a @ Ks ) ) @ ( update3596881908701622868et_a_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1126_updates__append1,axiom,
    ! [Ks: list_P4201438511612060998_nat_t,Vs: list_P4201438511612060998_nat_t,K: product_prod_nat_t,Al: list_P6109117928404460371_nat_t] :
      ( ( ord_less_nat @ ( size_s1593550824562968538_nat_t @ Ks ) @ ( size_s1593550824562968538_nat_t @ Vs ) )
     => ( ( update6395688813646615525_nat_t @ ( append1694031088188373467_nat_t @ Ks @ ( cons_P8443330349171532544_nat_t @ K @ nil_Pr1417316752131242672_nat_t ) ) @ Vs @ Al )
        = ( update4071563448085720810_nat_t @ K @ ( nth_Pr2476257163150662383_nat_t @ Vs @ ( size_s1593550824562968538_nat_t @ Ks ) ) @ ( update6395688813646615525_nat_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1127_updates__append1,axiom,
    ! [Ks: list_t,Vs: list_P6739568432217944425_set_a,K: t,Al: list_P1560699769720516777_set_a] :
      ( ( ord_less_nat @ ( size_size_list_t @ Ks ) @ ( size_s6950157911653109757_set_a @ Vs ) )
     => ( ( update59855107599303859_set_a @ ( append_t @ Ks @ ( cons_t @ K @ nil_t ) ) @ Vs @ Al )
        = ( update2263109191067301102_set_a @ K @ ( nth_Pr1324953721505055890_set_a @ Vs @ ( size_size_list_t @ Ks ) ) @ ( update59855107599303859_set_a @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1128_updates__append1,axiom,
    ! [Ks: list_P1095827921439705018_set_a,Vs: list_P4201438511612060998_nat_t,K: product_prod_t_set_a,Al: list_P7697742841123615913_nat_t] :
      ( ( ord_less_nat @ ( size_s5362121731612881446_set_a @ Ks ) @ ( size_s1593550824562968538_nat_t @ Vs ) )
     => ( ( update2514154232149179187_nat_t @ ( append8768163766229313743_set_a @ Ks @ ( cons_P6565363215658504938_set_a @ K @ nil_Pr7982011819685168954_set_a ) ) @ Vs @ Al )
        = ( update4717408315617176430_nat_t @ K @ ( nth_Pr2476257163150662383_nat_t @ Vs @ ( size_s5362121731612881446_set_a @ Ks ) ) @ ( update2514154232149179187_nat_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1129_updates__append1,axiom,
    ! [Ks: list_P6739568432217944425_set_a,Vs: list_t,K: produc3416767791517006041_set_a,Al: list_P100653400526954749et_a_t] :
      ( ( ord_less_nat @ ( size_s6950157911653109757_set_a @ Ks ) @ ( size_size_list_t @ Vs ) )
     => ( ( update1653935275978086463et_a_t @ ( append7235343099912497022_set_a @ Ks @ ( cons_P4636835598303252387_set_a @ K @ nil_Pr3375152174953641811_set_a ) ) @ Vs @ Al )
        = ( update3857189359446083706et_a_t @ K @ ( nth_t @ Vs @ ( size_s6950157911653109757_set_a @ Ks ) ) @ ( update1653935275978086463et_a_t @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1130_updates__append1,axiom,
    ! [Ks: list_P4201438511612060998_nat_t,Vs: list_P1095827921439705018_set_a,K: product_prod_nat_t,Al: list_P1974509249127798147_set_a] :
      ( ( ord_less_nat @ ( size_s1593550824562968538_nat_t @ Ks ) @ ( size_s5362121731612881446_set_a @ Vs ) )
     => ( ( update3729442732451685701_set_a @ ( append1694031088188373467_nat_t @ Ks @ ( cons_P8443330349171532544_nat_t @ K @ nil_Pr1417316752131242672_nat_t ) ) @ Vs @ Al )
        = ( update5932696815919682944_set_a @ K @ ( nth_Pr633927046780761275_set_a @ Vs @ ( size_s1593550824562968538_nat_t @ Ks ) ) @ ( update3729442732451685701_set_a @ Ks @ Vs @ Al ) ) ) ) ).

% updates_append1
thf(fact_1131_update_Osimps_I2_J,axiom,
    ! [P2: product_prod_h_t,K: h,V: t,Ps2: list_P7520416276666729081od_h_t] :
      ( ( ( ( product_fst_h_t @ P2 )
          = K )
       => ( ( update_h_t @ K @ V @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K @ V ) @ Ps2 ) ) )
      & ( ( ( product_fst_h_t @ P2 )
         != K )
       => ( ( update_h_t @ K @ V @ ( cons_P6251494208368732457od_h_t @ P2 @ Ps2 ) )
          = ( cons_P6251494208368732457od_h_t @ P2 @ ( update_h_t @ K @ V @ Ps2 ) ) ) ) ) ).

% update.simps(2)
thf(fact_1132_update_Osimps_I2_J,axiom,
    ! [P2: produc2796182059459404991_h_t_t,K: option2110264179601050681od_h_t,V: t,Ps2: list_P6951459944542807621_h_t_t] :
      ( ( ( ( produc4004510029700249243_h_t_t @ P2 )
          = K )
       => ( ( update8434369818336473236_h_t_t @ K @ V @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K @ V ) @ Ps2 ) ) )
      & ( ( ( produc4004510029700249243_h_t_t @ P2 )
         != K )
       => ( ( update8434369818336473236_h_t_t @ K @ V @ ( cons_P6082639445353249653_h_t_t @ P2 @ Ps2 ) )
          = ( cons_P6082639445353249653_h_t_t @ P2 @ ( update8434369818336473236_h_t_t @ K @ V @ Ps2 ) ) ) ) ) ).

% update.simps(2)
thf(fact_1133_update_Osimps_I2_J,axiom,
    ! [P2: produc8090089739038349590_set_a,K: h,V: product_prod_t_set_a,Ps2: list_P2035273040109328284_set_a] :
      ( ( ( ( produc6892702156181598450_set_a @ P2 )
          = K )
       => ( ( update7745024658507608171_set_a @ K @ V @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K @ V ) @ Ps2 ) ) )
      & ( ( ( produc6892702156181598450_set_a @ P2 )
         != K )
       => ( ( update7745024658507608171_set_a @ K @ V @ ( cons_P8657861537117511884_set_a @ P2 @ Ps2 ) )
          = ( cons_P8657861537117511884_set_a @ P2 @ ( update7745024658507608171_set_a @ K @ V @ Ps2 ) ) ) ) ) ).

% update.simps(2)
thf(fact_1134_update_Osimps_I2_J,axiom,
    ! [P2: product_prod_t_set_a,K: t,V: set_a,Ps2: list_P1095827921439705018_set_a] :
      ( ( ( ( product_fst_t_set_a @ P2 )
          = K )
       => ( ( update_t_set_a @ K @ V @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K @ V ) @ Ps2 ) ) )
      & ( ( ( product_fst_t_set_a @ P2 )
         != K )
       => ( ( update_t_set_a @ K @ V @ ( cons_P6565363215658504938_set_a @ P2 @ Ps2 ) )
          = ( cons_P6565363215658504938_set_a @ P2 @ ( update_t_set_a @ K @ V @ Ps2 ) ) ) ) ) ).

% update.simps(2)
thf(fact_1135_update_Osimps_I2_J,axiom,
    ! [P2: product_prod_nat_nat,K: nat,V: nat,Ps2: list_P6011104703257516679at_nat] :
      ( ( ( ( product_fst_nat_nat @ P2 )
          = K )
       => ( ( update_nat_nat @ K @ V @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K @ V ) @ Ps2 ) ) )
      & ( ( ( product_fst_nat_nat @ P2 )
         != K )
       => ( ( update_nat_nat @ K @ V @ ( cons_P6512896166579812791at_nat @ P2 @ Ps2 ) )
          = ( cons_P6512896166579812791at_nat @ P2 @ ( update_nat_nat @ K @ V @ Ps2 ) ) ) ) ) ).

% update.simps(2)
thf(fact_1136_update_Osimps_I1_J,axiom,
    ! [K: h,V: t] :
      ( ( update_h_t @ K @ V @ nil_Product_prod_h_t )
      = ( cons_P6251494208368732457od_h_t @ ( product_Pair_h_t @ K @ V ) @ nil_Product_prod_h_t ) ) ).

% update.simps(1)
thf(fact_1137_update_Osimps_I1_J,axiom,
    ! [K: option2110264179601050681od_h_t,V: t] :
      ( ( update8434369818336473236_h_t_t @ K @ V @ nil_Pr8838988226997446597_h_t_t )
      = ( cons_P6082639445353249653_h_t_t @ ( produc770200333395398319_h_t_t @ K @ V ) @ nil_Pr8838988226997446597_h_t_t ) ) ).

% update.simps(1)
thf(fact_1138_update_Osimps_I1_J,axiom,
    ! [K: h,V: product_prod_t_set_a] :
      ( ( update7745024658507608171_set_a @ K @ V @ nil_Pr4294158543271970076_set_a )
      = ( cons_P8657861537117511884_set_a @ ( produc3432067189782488838_set_a @ K @ V ) @ nil_Pr4294158543271970076_set_a ) ) ).

% update.simps(1)
thf(fact_1139_update_Osimps_I1_J,axiom,
    ! [K: t,V: set_a] :
      ( ( update_t_set_a @ K @ V @ nil_Pr7982011819685168954_set_a )
      = ( cons_P6565363215658504938_set_a @ ( product_Pair_t_set_a @ K @ V ) @ nil_Pr7982011819685168954_set_a ) ) ).

% update.simps(1)
thf(fact_1140_update_Osimps_I1_J,axiom,
    ! [K: nat,V: nat] :
      ( ( update_nat_nat @ K @ V @ nil_Pr5478986624290739719at_nat )
      = ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ K @ V ) @ nil_Pr5478986624290739719at_nat ) ) ).

% update.simps(1)
thf(fact_1141_find__Some__iff2,axiom,
    ! [X: product_prod_h_t,P: product_prod_h_t > $o,Xs2: list_P7520416276666729081od_h_t] :
      ( ( ( some_P2526622376857543512od_h_t @ X )
        = ( find_P1183509874644452751od_h_t @ P @ Xs2 ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s785782387481697509od_h_t @ Xs2 ) )
            & ( P @ ( nth_Product_prod_h_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Product_prod_h_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Product_prod_h_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff2
thf(fact_1142_find__Some__iff2,axiom,
    ! [X: produc2796182059459404991_h_t_t,P: produc2796182059459404991_h_t_t > $o,Xs2: list_P6951459944542807621_h_t_t] :
      ( ( ( some_P8406129549712030756_h_t_t @ X )
        = ( find_P8878986506667028699_h_t_t @ P @ Xs2 ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s359041857338270385_h_t_t @ Xs2 ) )
            & ( P @ ( nth_Pr3428157630605187782_h_t_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr3428157630605187782_h_t_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr3428157630605187782_h_t_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff2
thf(fact_1143_find__Some__iff2,axiom,
    ! [X: produc8090089739038349590_set_a,P: produc8090089739038349590_set_a > $o,Xs2: list_P2035273040109328284_set_a] :
      ( ( ( some_P2245991037696317435_set_a @ X )
        = ( find_P6060379126387363634_set_a @ P @ Xs2 ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s2286189404704077320_set_a @ Xs2 ) )
            & ( P @ ( nth_Pr2651153946192415133_set_a @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr2651153946192415133_set_a @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr2651153946192415133_set_a @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff2
thf(fact_1144_find__Some__iff2,axiom,
    ! [X: t,P: t > $o,Xs2: list_t] :
      ( ( ( some_t @ X )
        = ( find_t @ P @ Xs2 ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_t @ Xs2 ) )
            & ( P @ ( nth_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff2
thf(fact_1145_find__Some__iff2,axiom,
    ! [X: product_prod_t_set_a,P: product_prod_t_set_a > $o,Xs2: list_P1095827921439705018_set_a] :
      ( ( ( some_P4667681669429350681_set_a @ X )
        = ( find_P3657267623437522768_set_a @ P @ Xs2 ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s5362121731612881446_set_a @ Xs2 ) )
            & ( P @ ( nth_Pr633927046780761275_set_a @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr633927046780761275_set_a @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr633927046780761275_set_a @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff2
thf(fact_1146_find__Some__iff2,axiom,
    ! [X: produc3416767791517006041_set_a,P: produc3416767791517006041_set_a > $o,Xs2: list_P6739568432217944425_set_a] :
      ( ( ( some_P7041282404814600884_set_a @ X )
        = ( find_P7784641753113621437_set_a @ P @ Xs2 ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s6950157911653109757_set_a @ Xs2 ) )
            & ( P @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr1324953721505055890_set_a @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff2
thf(fact_1147_find__Some__iff2,axiom,
    ! [X: product_prod_nat_t,P: product_prod_nat_t > $o,Xs2: list_P4201438511612060998_nat_t] :
      ( ( ( some_P266144611102051089_nat_t @ X )
        = ( find_P139940598250739994_nat_t @ P @ Xs2 ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
            & ( P @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff2
thf(fact_1148_find_Osimps_I2_J,axiom,
    ! [P: product_prod_h_t > $o,X: product_prod_h_t,Xs2: list_P7520416276666729081od_h_t] :
      ( ( ( P @ X )
       => ( ( find_P1183509874644452751od_h_t @ P @ ( cons_P6251494208368732457od_h_t @ X @ Xs2 ) )
          = ( some_P2526622376857543512od_h_t @ X ) ) )
      & ( ~ ( P @ X )
       => ( ( find_P1183509874644452751od_h_t @ P @ ( cons_P6251494208368732457od_h_t @ X @ Xs2 ) )
          = ( find_P1183509874644452751od_h_t @ P @ Xs2 ) ) ) ) ).

% find.simps(2)
thf(fact_1149_find_Osimps_I2_J,axiom,
    ! [P: produc2796182059459404991_h_t_t > $o,X: produc2796182059459404991_h_t_t,Xs2: list_P6951459944542807621_h_t_t] :
      ( ( ( P @ X )
       => ( ( find_P8878986506667028699_h_t_t @ P @ ( cons_P6082639445353249653_h_t_t @ X @ Xs2 ) )
          = ( some_P8406129549712030756_h_t_t @ X ) ) )
      & ( ~ ( P @ X )
       => ( ( find_P8878986506667028699_h_t_t @ P @ ( cons_P6082639445353249653_h_t_t @ X @ Xs2 ) )
          = ( find_P8878986506667028699_h_t_t @ P @ Xs2 ) ) ) ) ).

% find.simps(2)
thf(fact_1150_find_Osimps_I2_J,axiom,
    ! [P: produc8090089739038349590_set_a > $o,X: produc8090089739038349590_set_a,Xs2: list_P2035273040109328284_set_a] :
      ( ( ( P @ X )
       => ( ( find_P6060379126387363634_set_a @ P @ ( cons_P8657861537117511884_set_a @ X @ Xs2 ) )
          = ( some_P2245991037696317435_set_a @ X ) ) )
      & ( ~ ( P @ X )
       => ( ( find_P6060379126387363634_set_a @ P @ ( cons_P8657861537117511884_set_a @ X @ Xs2 ) )
          = ( find_P6060379126387363634_set_a @ P @ Xs2 ) ) ) ) ).

% find.simps(2)
thf(fact_1151_find__Some__iff,axiom,
    ! [P: product_prod_h_t > $o,Xs2: list_P7520416276666729081od_h_t,X: product_prod_h_t] :
      ( ( ( find_P1183509874644452751od_h_t @ P @ Xs2 )
        = ( some_P2526622376857543512od_h_t @ X ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s785782387481697509od_h_t @ Xs2 ) )
            & ( P @ ( nth_Product_prod_h_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Product_prod_h_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Product_prod_h_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff
thf(fact_1152_find__Some__iff,axiom,
    ! [P: produc2796182059459404991_h_t_t > $o,Xs2: list_P6951459944542807621_h_t_t,X: produc2796182059459404991_h_t_t] :
      ( ( ( find_P8878986506667028699_h_t_t @ P @ Xs2 )
        = ( some_P8406129549712030756_h_t_t @ X ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s359041857338270385_h_t_t @ Xs2 ) )
            & ( P @ ( nth_Pr3428157630605187782_h_t_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr3428157630605187782_h_t_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr3428157630605187782_h_t_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff
thf(fact_1153_find__Some__iff,axiom,
    ! [P: produc8090089739038349590_set_a > $o,Xs2: list_P2035273040109328284_set_a,X: produc8090089739038349590_set_a] :
      ( ( ( find_P6060379126387363634_set_a @ P @ Xs2 )
        = ( some_P2245991037696317435_set_a @ X ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s2286189404704077320_set_a @ Xs2 ) )
            & ( P @ ( nth_Pr2651153946192415133_set_a @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr2651153946192415133_set_a @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr2651153946192415133_set_a @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff
thf(fact_1154_find__Some__iff,axiom,
    ! [P: t > $o,Xs2: list_t,X: t] :
      ( ( ( find_t @ P @ Xs2 )
        = ( some_t @ X ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_size_list_t @ Xs2 ) )
            & ( P @ ( nth_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff
thf(fact_1155_find__Some__iff,axiom,
    ! [P: product_prod_t_set_a > $o,Xs2: list_P1095827921439705018_set_a,X: product_prod_t_set_a] :
      ( ( ( find_P3657267623437522768_set_a @ P @ Xs2 )
        = ( some_P4667681669429350681_set_a @ X ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s5362121731612881446_set_a @ Xs2 ) )
            & ( P @ ( nth_Pr633927046780761275_set_a @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr633927046780761275_set_a @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr633927046780761275_set_a @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff
thf(fact_1156_find__Some__iff,axiom,
    ! [P: produc3416767791517006041_set_a > $o,Xs2: list_P6739568432217944425_set_a,X: produc3416767791517006041_set_a] :
      ( ( ( find_P7784641753113621437_set_a @ P @ Xs2 )
        = ( some_P7041282404814600884_set_a @ X ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s6950157911653109757_set_a @ Xs2 ) )
            & ( P @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr1324953721505055890_set_a @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr1324953721505055890_set_a @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff
thf(fact_1157_find__Some__iff,axiom,
    ! [P: product_prod_nat_t > $o,Xs2: list_P4201438511612060998_nat_t,X: product_prod_nat_t] :
      ( ( ( find_P139940598250739994_nat_t @ P @ Xs2 )
        = ( some_P266144611102051089_nat_t @ X ) )
      = ( ? [I4: nat] :
            ( ( ord_less_nat @ I4 @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
            & ( P @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I4 ) )
            & ( X
              = ( nth_Pr2476257163150662383_nat_t @ Xs2 @ I4 ) )
            & ! [J3: nat] :
                ( ( ord_less_nat @ J3 @ I4 )
               => ~ ( P @ ( nth_Pr2476257163150662383_nat_t @ Xs2 @ J3 ) ) ) ) ) ) ).

% find_Some_iff
thf(fact_1158_zero__diff,axiom,
    ! [A2: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A2 )
      = zero_zero_nat ) ).

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

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

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1161_add__diff__cancel__right_H,axiom,
    ! [A2: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A2 @ B ) @ B )
      = A2 ) ).

% add_diff_cancel_right'
thf(fact_1162_add__diff__cancel__right,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A2 @ C3 ) @ ( plus_plus_nat @ B @ C3 ) )
      = ( minus_minus_nat @ A2 @ B ) ) ).

% add_diff_cancel_right
thf(fact_1163_add__diff__cancel__left_H,axiom,
    ! [A2: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A2 @ B ) @ A2 )
      = B ) ).

% add_diff_cancel_left'
thf(fact_1164_add__diff__cancel__left,axiom,
    ! [C3: nat,A2: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C3 @ A2 ) @ ( plus_plus_nat @ C3 @ B ) )
      = ( minus_minus_nat @ A2 @ B ) ) ).

% add_diff_cancel_left
thf(fact_1165_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

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

% diff_0_eq_0
thf(fact_1167_Suc__diff__diff,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ N ) @ K ) ) ).

% Suc_diff_diff
thf(fact_1168_diff__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_Suc_Suc
thf(fact_1169_diff__diff__cancel,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I ) )
        = I ) ) ).

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

% diff_diff_left
thf(fact_1171_diff__add__zero,axiom,
    ! [A2: nat,B: nat] :
      ( ( minus_minus_nat @ A2 @ ( plus_plus_nat @ A2 @ B ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_1172_zero__less__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
      = ( ord_less_nat @ M @ N ) ) ).

% zero_less_diff
thf(fact_1173_diff__is__0__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% diff_is_0_eq
thf(fact_1174_diff__is__0__eq_H,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_1175_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

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

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

% Nat.add_diff_assoc
thf(fact_1178_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_1179_length__drop,axiom,
    ! [N: nat,Xs2: list_t] :
      ( ( size_size_list_t @ ( drop_t @ N @ Xs2 ) )
      = ( minus_minus_nat @ ( size_size_list_t @ Xs2 ) @ N ) ) ).

% length_drop
thf(fact_1180_length__drop,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( drop_P283403782220237946_set_a @ N @ Xs2 ) )
      = ( minus_minus_nat @ ( size_s5362121731612881446_set_a @ Xs2 ) @ N ) ) ).

% length_drop
thf(fact_1181_length__drop,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a] :
      ( ( size_s6950157911653109757_set_a @ ( drop_P8422428636864094739_set_a @ N @ Xs2 ) )
      = ( minus_minus_nat @ ( size_s6950157911653109757_set_a @ Xs2 ) @ N ) ) ).

% length_drop
thf(fact_1182_length__drop,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t] :
      ( ( size_s1593550824562968538_nat_t @ ( drop_P6121829286696379760_nat_t @ N @ Xs2 ) )
      = ( minus_minus_nat @ ( size_s1593550824562968538_nat_t @ Xs2 ) @ N ) ) ).

% length_drop
thf(fact_1183_Suc__pred,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% Suc_pred
thf(fact_1184_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J @ K ) ) @ I )
        = ( minus_minus_nat @ ( suc @ J ) @ ( plus_plus_nat @ K @ I ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_1185_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( suc @ ( minus_minus_nat @ J @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ ( suc @ J ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_1186_take__append,axiom,
    ! [N: nat,Xs2: list_t,Ys: list_t] :
      ( ( take_t @ N @ ( append_t @ Xs2 @ Ys ) )
      = ( append_t @ ( take_t @ N @ Xs2 ) @ ( take_t @ ( minus_minus_nat @ N @ ( size_size_list_t @ Xs2 ) ) @ Ys ) ) ) ).

% take_append
thf(fact_1187_take__append,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( take_P2822414627813279522_set_a @ N @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) )
      = ( append8768163766229313743_set_a @ ( take_P2822414627813279522_set_a @ N @ Xs2 ) @ ( take_P2822414627813279522_set_a @ ( minus_minus_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) ) @ Ys ) ) ) ).

% take_append
thf(fact_1188_take__append,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( take_P1723439655008974187_set_a @ N @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) )
      = ( append7235343099912497022_set_a @ ( take_P1723439655008974187_set_a @ N @ Xs2 ) @ ( take_P1723439655008974187_set_a @ ( minus_minus_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) ) @ Ys ) ) ) ).

% take_append
thf(fact_1189_take__append,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( take_P1264513708533117128_nat_t @ N @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) )
      = ( append1694031088188373467_nat_t @ ( take_P1264513708533117128_nat_t @ N @ Xs2 ) @ ( take_P1264513708533117128_nat_t @ ( minus_minus_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) ) @ Ys ) ) ) ).

% take_append
thf(fact_1190_drop__append,axiom,
    ! [N: nat,Xs2: list_t,Ys: list_t] :
      ( ( drop_t @ N @ ( append_t @ Xs2 @ Ys ) )
      = ( append_t @ ( drop_t @ N @ Xs2 ) @ ( drop_t @ ( minus_minus_nat @ N @ ( size_size_list_t @ Xs2 ) ) @ Ys ) ) ) ).

% drop_append
thf(fact_1191_drop__append,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( drop_P283403782220237946_set_a @ N @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) )
      = ( append8768163766229313743_set_a @ ( drop_P283403782220237946_set_a @ N @ Xs2 ) @ ( drop_P283403782220237946_set_a @ ( minus_minus_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) ) @ Ys ) ) ) ).

% drop_append
thf(fact_1192_drop__append,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( drop_P8422428636864094739_set_a @ N @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) )
      = ( append7235343099912497022_set_a @ ( drop_P8422428636864094739_set_a @ N @ Xs2 ) @ ( drop_P8422428636864094739_set_a @ ( minus_minus_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) ) @ Ys ) ) ) ).

% drop_append
thf(fact_1193_drop__append,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( drop_P6121829286696379760_nat_t @ N @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) )
      = ( append1694031088188373467_nat_t @ ( drop_P6121829286696379760_nat_t @ N @ Xs2 ) @ ( drop_P6121829286696379760_nat_t @ ( minus_minus_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) ) @ Ys ) ) ) ).

% drop_append
thf(fact_1194_Suc__diff__1,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
        = N ) ) ).

% Suc_diff_1
thf(fact_1195_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_1196_less__diff__conv,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_1197_add__diff__inverse__nat,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
        = M ) ) ).

% add_diff_inverse_nat
thf(fact_1198_diff__right__commute,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A2 @ C3 ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A2 @ B ) @ C3 ) ) ).

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

% diff_commute
thf(fact_1200_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_1201_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_1202_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_1203_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_1204_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_1205_diff__less__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ord_less_nat @ M @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ) ).

% diff_less_mono2
thf(fact_1206_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_1207_diffs0__imp__equal,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M )
          = zero_zero_nat )
       => ( M = N ) ) ) ).

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

% minus_nat.diff_0
thf(fact_1209_diff__diff__eq,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A2 @ B ) @ C3 )
      = ( minus_minus_nat @ A2 @ ( plus_plus_nat @ B @ C3 ) ) ) ).

% diff_diff_eq
thf(fact_1210_add__implies__diff,axiom,
    ! [C3: nat,B: nat,A2: nat] :
      ( ( ( plus_plus_nat @ C3 @ B )
        = A2 )
     => ( C3
        = ( minus_minus_nat @ A2 @ B ) ) ) ).

% add_implies_diff
thf(fact_1211_Suc__diff__Suc,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( ( suc @ ( minus_minus_nat @ M @ ( suc @ N ) ) )
        = ( minus_minus_nat @ M @ N ) ) ) ).

% Suc_diff_Suc
thf(fact_1212_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_1213_diff__less,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).

% diff_less
thf(fact_1214_diff__Suc__eq__diff__pred,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N ) ) ).

% diff_Suc_eq_diff_pred
thf(fact_1215_Nat_Ole__imp__diff__is__add,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( minus_minus_nat @ J @ I )
          = K )
        = ( J
          = ( plus_plus_nat @ K @ I ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_1216_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_1217_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_1218_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_eq_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.le_diff_conv2
thf(fact_1219_le__diff__conv,axiom,
    ! [J: nat,K: nat,I: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J @ K ) @ I )
      = ( ord_less_eq_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ).

% le_diff_conv
thf(fact_1220_less__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M @ N ) ) ) ) ).

% less_diff_iff
thf(fact_1221_diff__less__mono,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ A2 )
       => ( ord_less_nat @ ( minus_minus_nat @ A2 @ C3 ) @ ( minus_minus_nat @ B @ C3 ) ) ) ) ).

% diff_less_mono
thf(fact_1222_diff__le__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ).

% diff_le_mono2
thf(fact_1223_le__diff__iff_H,axiom,
    ! [A2: nat,C3: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ C3 )
     => ( ( ord_less_eq_nat @ B @ C3 )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C3 @ A2 ) @ ( minus_minus_nat @ C3 @ B ) )
          = ( ord_less_eq_nat @ B @ A2 ) ) ) ) ).

% le_diff_iff'
thf(fact_1224_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_1225_diff__le__mono,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ L ) @ ( minus_minus_nat @ N @ L ) ) ) ).

% diff_le_mono
thf(fact_1226_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_1227_le__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% le_diff_iff
thf(fact_1228_eq__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M = N ) ) ) ) ).

% eq_diff_iff
thf(fact_1229_diff__add,axiom,
    ! [A2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A2 ) @ A2 )
        = B ) ) ).

% diff_add
thf(fact_1230_le__add__diff,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ord_less_eq_nat @ C3 @ ( minus_minus_nat @ ( plus_plus_nat @ B @ C3 ) @ A2 ) ) ) ).

% le_add_diff
thf(fact_1231_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A2 ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_1232_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( plus_plus_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C3 @ B ) @ A2 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_1233_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C3 @ B ) @ A2 )
        = ( plus_plus_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_1234_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A2 ) @ C3 )
        = ( minus_minus_nat @ ( plus_plus_nat @ B @ C3 ) @ A2 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_1235_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ B @ C3 ) @ A2 )
        = ( plus_plus_nat @ ( minus_minus_nat @ B @ A2 ) @ C3 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_1236_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( minus_minus_nat @ C3 @ ( minus_minus_nat @ B @ A2 ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C3 @ A2 ) @ B ) ) ) ).

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

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_1238_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A2: nat,B: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A2 @ B )
     => ( ( ord_less_eq_nat @ A2 @ B )
       => ( ( ( minus_minus_nat @ B @ A2 )
            = C3 )
          = ( B
            = ( plus_plus_nat @ C3 @ A2 ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_1239_Suc__diff__le,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( suc @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% Suc_diff_le
thf(fact_1240_diff__Suc__less,axiom,
    ! [N: nat,I: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_1241_nat__diff__split,axiom,
    ! [P: nat > $o,A2: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A2 @ B ) )
      = ( ( ( ord_less_nat @ A2 @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D3: nat] :
            ( ( A2
              = ( plus_plus_nat @ B @ D3 ) )
           => ( P @ D3 ) ) ) ) ).

% nat_diff_split
thf(fact_1242_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A2: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A2 @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A2 @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D3: nat] :
                ( ( A2
                  = ( plus_plus_nat @ B @ D3 ) )
                & ~ ( P @ D3 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_1243_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1244_Suc__diff__eq__diff__pred,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( minus_minus_nat @ M @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_diff_eq_diff_pred
thf(fact_1245_Suc__pred_H,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( N
        = ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_pred'
thf(fact_1246_add__eq__if,axiom,
    ( plus_plus_nat
    = ( ^ [M3: nat,N3: nat] : ( if_nat @ ( M3 = zero_zero_nat ) @ N3 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M3 @ one_one_nat ) @ N3 ) ) ) ) ) ).

% add_eq_if
thf(fact_1247_nth__append,axiom,
    ! [N: nat,Xs2: list_t,Ys: list_t] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs2 ) )
       => ( ( nth_t @ ( append_t @ Xs2 @ Ys ) @ N )
          = ( nth_t @ Xs2 @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_t @ Xs2 ) )
       => ( ( nth_t @ ( append_t @ Xs2 @ Ys ) @ N )
          = ( nth_t @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_t @ Xs2 ) ) ) ) ) ) ).

% nth_append
thf(fact_1248_nth__append,axiom,
    ! [N: nat,Xs2: list_P1095827921439705018_set_a,Ys: list_P1095827921439705018_set_a] :
      ( ( ( ord_less_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) )
       => ( ( nth_Pr633927046780761275_set_a @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) @ N )
          = ( nth_Pr633927046780761275_set_a @ Xs2 @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) )
       => ( ( nth_Pr633927046780761275_set_a @ ( append8768163766229313743_set_a @ Xs2 @ Ys ) @ N )
          = ( nth_Pr633927046780761275_set_a @ Ys @ ( minus_minus_nat @ N @ ( size_s5362121731612881446_set_a @ Xs2 ) ) ) ) ) ) ).

% nth_append
thf(fact_1249_nth__append,axiom,
    ! [N: nat,Xs2: list_P6739568432217944425_set_a,Ys: list_P6739568432217944425_set_a] :
      ( ( ( ord_less_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) )
       => ( ( nth_Pr1324953721505055890_set_a @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) @ N )
          = ( nth_Pr1324953721505055890_set_a @ Xs2 @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) )
       => ( ( nth_Pr1324953721505055890_set_a @ ( append7235343099912497022_set_a @ Xs2 @ Ys ) @ N )
          = ( nth_Pr1324953721505055890_set_a @ Ys @ ( minus_minus_nat @ N @ ( size_s6950157911653109757_set_a @ Xs2 ) ) ) ) ) ) ).

% nth_append
thf(fact_1250_nth__append,axiom,
    ! [N: nat,Xs2: list_P4201438511612060998_nat_t,Ys: list_P4201438511612060998_nat_t] :
      ( ( ( ord_less_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
       => ( ( nth_Pr2476257163150662383_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) @ N )
          = ( nth_Pr2476257163150662383_nat_t @ Xs2 @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) )
       => ( ( nth_Pr2476257163150662383_nat_t @ ( append1694031088188373467_nat_t @ Xs2 @ Ys ) @ N )
          = ( nth_Pr2476257163150662383_nat_t @ Ys @ ( minus_minus_nat @ N @ ( size_s1593550824562968538_nat_t @ Xs2 ) ) ) ) ) ) ).

% nth_append
thf(fact_1251_prod__decode__aux_Osimps,axiom,
    ( nat_prod_decode_aux
    = ( ^ [K3: nat,M3: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ M3 @ K3 ) @ ( product_Pair_nat_nat @ M3 @ ( minus_minus_nat @ K3 @ M3 ) ) @ ( nat_prod_decode_aux @ ( suc @ K3 ) @ ( minus_minus_nat @ M3 @ ( suc @ K3 ) ) ) ) ) ) ).

% prod_decode_aux.simps
thf(fact_1252_prod__decode__aux_Oelims,axiom,
    ! [X: nat,Xa: nat,Y: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X @ Xa )
        = Y )
     => ( ( ( ord_less_eq_nat @ Xa @ X )
         => ( Y
            = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X @ Xa ) ) ) )
        & ( ~ ( ord_less_eq_nat @ Xa @ X )
         => ( Y
            = ( nat_prod_decode_aux @ ( suc @ X ) @ ( minus_minus_nat @ Xa @ ( suc @ X ) ) ) ) ) ) ) ).

% prod_decode_aux.elims
thf(fact_1253_image__Suc__atLeastLessThan,axiom,
    ! [I: nat,J: nat] :
      ( ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ I @ J ) )
      = ( set_or4665077453230672383an_nat @ ( suc @ I ) @ ( suc @ J ) ) ) ).

% image_Suc_atLeastLessThan
thf(fact_1254_zero__notin__Suc__image,axiom,
    ! [A5: set_nat] :
      ~ ( member_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ A5 ) ) ).

% zero_notin_Suc_image
thf(fact_1255_prod__encode__prod__decode__aux,axiom,
    ! [K: nat,M: nat] :
      ( ( nat_prod_encode @ ( nat_prod_decode_aux @ K @ M ) )
      = ( plus_plus_nat @ ( nat_triangle @ K ) @ M ) ) ).

% prod_encode_prod_decode_aux
thf(fact_1256_prod__encode__eq,axiom,
    ! [X: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( ( nat_prod_encode @ X )
        = ( nat_prod_encode @ Y ) )
      = ( X = Y ) ) ).

% prod_encode_eq

% Helper facts (5)
thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $true @ X @ Y )
      = X ) ).

thf(help_If_3_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $true @ X @ Y )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( t2
    = ( tau_a_t @ sigma @ ( size_size_list_t @ ts ) ) ) ).

%------------------------------------------------------------------------------