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

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1697 ( 591 unt; 435 typ;   0 def)
%            Number of atoms       : 3536 (1874 equ;   0 cnn)
%            Maximal formula atoms :   16 (   2 avg)
%            Number of connectives : 12090 ( 341   ~;  74   |; 332   &;9785   @)
%                                         (   0 <=>;1558  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   35 (   7 avg)
%            Number of types       :   80 (  79 usr)
%            Number of type conns  : 1260 (1260   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  359 ( 356 usr;  48 con; 0-7 aty)
%            Number of variables   : 4286 ( 202   ^;3748   !; 336   ?;4286   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 14:55:00.112
%------------------------------------------------------------------------------
% Could-be-implicit typings (79)
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_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__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__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_Mt__IArray__Oiarray_I_Eo_J_J_J,type,
    option8553266494716013595rray_o: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J_J,type,
    option4580262698044125979od_t_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_Mt__IArray__Oiarray_I_Eo_J_J,type,
    produc8228095596854190539rray_o: $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__t_J_Mt__IArray__Oiarray_It__Set__Oset_Itf__a_J_J_J_J,type,
    option325762455365084250_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    produc530307916048688075od_t_o: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J_J,type,
    option4136621186271108688_set_a: $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__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_Itf__t_J_J_J,type,
    option2595117943684164237rray_t: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_I_Eo_J_J_J,type,
    option6074195846726219284rray_o: $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__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__h_Mtf__t_J_J_J,type,
    option6366625828353349007od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_It__Set__Oset_Itf__a_J_J_J,type,
    produc6996287358776931860_set_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J_J,type,
    option5115755630998872842od_t_o: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J_J,type,
    option2536733916571057475od_o_o: $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__Nat__Onat_Mt__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J,type,
    produc5559660867765305033_a_t_h: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_Itf__t_J_J,type,
    produc8327066611190118855rray_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_I_Eo_J_J,type,
    produc7404585733407193934rray_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__IArray__Oiarray_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    iarray1745998091029370010_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    produc7241579710050618057od_h_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    produc8227461351695763524od_t_o: $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__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    produc4127598065228779901od_o_o: $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__IArray__Oiarray_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J,type,
    iarray4851489445666185416_a_t_h: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Nat__Onat_J,type,
    produc3074792404157404414_o_nat: $tType ).

thf(ty_n_t__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J,type,
    list_vydra_aux_a_t_h: $tType ).

thf(ty_n_t__Set__Oset_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J,type,
    set_vydra_aux_a_t_h: $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__Option__Ooption_It__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    option8291060355354214836od_t_o: $tType ).

thf(ty_n_t__IArray__Oiarray_It__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    iarray217416955382142164od_t_o: $tType ).

thf(ty_n_t__IArray__Oiarray_It__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    iarray3609206187914733069od_o_o: $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__List__Olist_It__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    list_P5575445741472356340od_t_o: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    set_Product_prod_t_o: $tType ).

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

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    list_P4002435161011370285od_o_o: $tType ).

thf(ty_n_t__IArray__Oiarray_It__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    iarray_formula_a_t: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    set_Product_prod_o_o: $tType ).

thf(ty_n_t__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    list_formula_a_t: $tType ).

thf(ty_n_t__Set__Oset_It__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    set_formula_a_t: $tType ).

thf(ty_n_t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    vydra_aux_a_t_h: $tType ).

thf(ty_n_t__IArray__Oiarray_It__IArray__Oiarray_I_Eo_J_J,type,
    iarray_iarray_o: $tType ).

thf(ty_n_t__List__Olist_It__IArray__Oiarray_I_Eo_J_J,type,
    list_iarray_o: $tType ).

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

thf(ty_n_t__Set__Oset_It__IArray__Oiarray_I_Eo_J_J,type,
    set_iarray_o: $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__t_M_Eo_J,type,
    product_prod_t_o: $tType ).

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

thf(ty_n_t__Interval__O__092__060I__062_Itf__t_J,type,
    i_t: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    set_set_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    product_prod_o_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__IArray__Oiarray_Itf__t_J,type,
    iarray_t: $tType ).

thf(ty_n_t__IArray__Oiarray_I_Eo_J,type,
    iarray_o: $tType ).

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

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

thf(ty_n_t__Set__Oset_Itf__t_J,type,
    set_t: $tType ).

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

thf(ty_n_t__List__Olist_I_Eo_J,type,
    list_o: $tType ).

thf(ty_n_t__Set__Oset_I_Eo_J,type,
    set_o: $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 (356)
thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

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

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_IArray_Oiarray_OIArray_001_Eo,type,
    iArray_o: list_o > iarray_o ).

thf(sy_c_IArray_Oiarray_OIArray_001t__IArray__Oiarray_I_Eo_J,type,
    iArray_iarray_o: list_iarray_o > iarray_iarray_o ).

thf(sy_c_IArray_Oiarray_OIArray_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    iArray_formula_a_t: list_formula_a_t > iarray_formula_a_t ).

thf(sy_c_IArray_Oiarray_OIArray_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    iArray3337576414570620549_a_t_h: list_vydra_aux_a_t_h > iarray4851489445666185416_a_t_h ).

thf(sy_c_IArray_Oiarray_OIArray_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    iArray900536415543050874od_o_o: list_P4002435161011370285od_o_o > iarray3609206187914733069od_o_o ).

thf(sy_c_IArray_Oiarray_OIArray_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    iArray615630007583135937od_t_o: list_P5575445741472356340od_t_o > iarray217416955382142164od_t_o ).

thf(sy_c_IArray_Oiarray_OIArray_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    iArray8998427052846395271_set_a: list_P1095827921439705018_set_a > iarray1745998091029370010_set_a ).

thf(sy_c_IArray_Oiarray_OIArray_001t__Set__Oset_Itf__a_J,type,
    iArray_set_a: list_set_a > iarray_set_a ).

thf(sy_c_IArray_Oiarray_OIArray_001tf__t,type,
    iArray_t: list_t > iarray_t ).

thf(sy_c_IArray_Olength_001_Eo,type,
    length_o: iarray_o > nat ).

thf(sy_c_IArray_Olength_001t__IArray__Oiarray_I_Eo_J,type,
    length_iarray_o: iarray_iarray_o > nat ).

thf(sy_c_IArray_Olength_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    length_formula_a_t: iarray_formula_a_t > nat ).

thf(sy_c_IArray_Olength_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    length242649669638338715_a_t_h: iarray4851489445666185416_a_t_h > nat ).

thf(sy_c_IArray_Olength_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    length5448591687185871844od_o_o: iarray3609206187914733069od_o_o > nat ).

thf(sy_c_IArray_Olength_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    length1340590818988602667od_t_o: iarray217416955382142164od_t_o > nat ).

thf(sy_c_IArray_Olength_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    length4184113030062493425_set_a: iarray1745998091029370010_set_a > nat ).

thf(sy_c_IArray_Olength_001t__Set__Oset_Itf__a_J,type,
    length_set_a: iarray_set_a > nat ).

thf(sy_c_IArray_Olength_001tf__t,type,
    length_t: iarray_t > nat ).

thf(sy_c_IArray_Osub_001_Eo,type,
    sub_o: iarray_o > nat > $o ).

thf(sy_c_IArray_Osub_001t__IArray__Oiarray_I_Eo_J,type,
    sub_iarray_o: iarray_iarray_o > nat > iarray_o ).

thf(sy_c_IArray_Osub_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    sub_formula_a_t: iarray_formula_a_t > nat > formula_a_t ).

thf(sy_c_IArray_Osub_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    sub_vydra_aux_a_t_h: iarray4851489445666185416_a_t_h > nat > vydra_aux_a_t_h ).

thf(sy_c_IArray_Osub_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    sub_Product_prod_o_o: iarray3609206187914733069od_o_o > nat > product_prod_o_o ).

thf(sy_c_IArray_Osub_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    sub_Product_prod_t_o: iarray217416955382142164od_t_o > nat > product_prod_t_o ).

thf(sy_c_IArray_Osub_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    sub_Pr3630787706679140143_set_a: iarray1745998091029370010_set_a > nat > product_prod_t_set_a ).

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

thf(sy_c_IArray_Osub_001tf__t,type,
    sub_t: iarray_t > nat > t ).

thf(sy_c_Interval_OmemL_001tf__t,type,
    memL_t: t > t > i_t > $o ).

thf(sy_c_Interval_OmemR_001tf__t,type,
    memR_t: t > t > i_t > $o ).

thf(sy_c_Interval_Omem_001tf__t,type,
    mem_t: t > t > i_t > $o ).

thf(sy_c_List_Oappend_001_Eo,type,
    append_o: list_o > list_o > list_o ).

thf(sy_c_List_Oappend_001t__IArray__Oiarray_I_Eo_J,type,
    append_iarray_o: list_iarray_o > list_iarray_o > list_iarray_o ).

thf(sy_c_List_Oappend_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    append_formula_a_t: list_formula_a_t > list_formula_a_t > list_formula_a_t ).

thf(sy_c_List_Oappend_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    append7715335228782332733_a_t_h: list_vydra_aux_a_t_h > list_vydra_aux_a_t_h > list_vydra_aux_a_t_h ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    append2614242729457001410od_o_o: list_P4002435161011370285od_o_o > list_P4002435161011370285od_o_o > list_P4002435161011370285od_o_o ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    append2717171661090821641od_t_o: list_P5575445741472356340od_t_o > list_P5575445741472356340od_t_o > list_P5575445741472356340od_t_o ).

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__t,type,
    append_t: list_t > list_t > list_t ).

thf(sy_c_List_Odrop_001_Eo,type,
    drop_o: nat > list_o > list_o ).

thf(sy_c_List_Odrop_001t__IArray__Oiarray_I_Eo_J,type,
    drop_iarray_o: nat > list_iarray_o > list_iarray_o ).

thf(sy_c_List_Odrop_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    drop_formula_a_t: nat > list_formula_a_t > list_formula_a_t ).

thf(sy_c_List_Odrop_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    drop_vydra_aux_a_t_h: nat > list_vydra_aux_a_t_h > list_vydra_aux_a_t_h ).

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_I_Eo_M_Eo_J,type,
    drop_P1195729285504171629od_o_o: nat > list_P4002435161011370285od_o_o > list_P4002435161011370285od_o_o ).

thf(sy_c_List_Odrop_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    drop_P8868858903918902087at_nat: nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Odrop_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    drop_P3066774390924266292od_t_o: nat > list_P5575445741472356340od_t_o > list_P5575445741472356340od_t_o ).

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__a,type,
    drop_a: nat > list_a > list_a ).

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

thf(sy_c_List_Olist_ONil_001_Eo,type,
    nil_o: list_o ).

thf(sy_c_List_Olist_ONil_001t__IArray__Oiarray_I_Eo_J,type,
    nil_iarray_o: list_iarray_o ).

thf(sy_c_List_Olist_ONil_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    nil_formula_a_t: list_formula_a_t ).

thf(sy_c_List_Olist_ONil_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    nil_vydra_aux_a_t_h: list_vydra_aux_a_t_h ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    nil_Product_prod_o_o: list_P4002435161011370285od_o_o ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    nil_Product_prod_t_o: list_P5575445741472356340od_t_o ).

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__t,type,
    nil_t: list_t ).

thf(sy_c_List_Olist_Omap_001_Eo_001_Eo,type,
    map_o_o: ( $o > $o ) > list_o > list_o ).

thf(sy_c_List_Olist_Omap_001_Eo_001t__IArray__Oiarray_I_Eo_J,type,
    map_o_iarray_o: ( $o > iarray_o ) > list_o > list_iarray_o ).

thf(sy_c_List_Olist_Omap_001_Eo_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    map_o_formula_a_t: ( $o > formula_a_t ) > list_o > list_formula_a_t ).

thf(sy_c_List_Olist_Omap_001_Eo_001tf__t,type,
    map_o_t: ( $o > t ) > list_o > list_t ).

thf(sy_c_List_Olist_Omap_001t__IArray__Oiarray_I_Eo_J_001_Eo,type,
    map_iarray_o_o: ( iarray_o > $o ) > list_iarray_o > list_o ).

thf(sy_c_List_Olist_Omap_001t__IArray__Oiarray_I_Eo_J_001tf__t,type,
    map_iarray_o_t: ( iarray_o > t ) > list_iarray_o > list_t ).

thf(sy_c_List_Olist_Omap_001t__MDL__Oformula_Itf__a_Mtf__t_J_001_Eo,type,
    map_formula_a_t_o: ( formula_a_t > $o ) > list_formula_a_t > list_o ).

thf(sy_c_List_Olist_Omap_001t__MDL__Oformula_Itf__a_Mtf__t_J_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    map_fo8328018262729589004la_a_t: ( formula_a_t > formula_a_t ) > list_formula_a_t > list_formula_a_t ).

thf(sy_c_List_Olist_Omap_001t__MDL__Oformula_Itf__a_Mtf__t_J_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    map_fo5746072578778194433_a_t_h: ( formula_a_t > vydra_aux_a_t_h ) > list_formula_a_t > list_vydra_aux_a_t_h ).

thf(sy_c_List_Olist_Omap_001t__MDL__Oformula_Itf__a_Mtf__t_J_001tf__t,type,
    map_formula_a_t_t: ( formula_a_t > t ) > list_formula_a_t > list_t ).

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

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_I_Eo_M_Eo_J_001tf__t,type,
    map_Pr6440341256526503406_o_o_t: ( product_prod_o_o > t ) > list_P4002435161011370285od_o_o > list_t ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    map_Pr8058819605623181956at_nat: ( product_prod_nat_nat > product_prod_nat_nat ) > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_Itf__t_M_Eo_J_001_Eo,type,
    map_Pr913679237327294190_t_o_o: ( product_prod_t_o > $o ) > list_P5575445741472356340od_t_o > list_o ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_Itf__t_M_Eo_J_001tf__t,type,
    map_Pr4056436085500758887_t_o_t: ( product_prod_t_o > t ) > list_P5575445741472356340od_t_o > list_t ).

thf(sy_c_List_Olist_Omap_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_001t__Set__Oset_Itf__a_J,type,
    map_Pr7710007540447715182_set_a: ( product_prod_t_set_a > set_a ) > list_P1095827921439705018_set_a > list_set_a ).

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_001t__Set__Oset_Itf__a_J_001_Eo,type,
    map_set_a_o: ( set_a > $o ) > list_set_a > list_o ).

thf(sy_c_List_Olist_Omap_001t__Set__Oset_Itf__a_J_001tf__t,type,
    map_set_a_t: ( set_a > t ) > list_set_a > list_t ).

thf(sy_c_List_Olist_Omap_001tf__a_001tf__a,type,
    map_a_a: ( a > a ) > list_a > list_a ).

thf(sy_c_List_Olist_Omap_001tf__t_001_Eo,type,
    map_t_o: ( t > $o ) > list_t > list_o ).

thf(sy_c_List_Olist_Omap_001tf__t_001t__IArray__Oiarray_I_Eo_J,type,
    map_t_iarray_o: ( t > iarray_o ) > list_t > list_iarray_o ).

thf(sy_c_List_Olist_Omap_001tf__t_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    map_t_formula_a_t: ( t > formula_a_t ) > list_t > list_formula_a_t ).

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_Oset_001_Eo,type,
    set_o2: list_o > set_o ).

thf(sy_c_List_Olist_Oset_001t__IArray__Oiarray_I_Eo_J,type,
    set_iarray_o2: list_iarray_o > set_iarray_o ).

thf(sy_c_List_Olist_Oset_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    set_formula_a_t2: list_formula_a_t > set_formula_a_t ).

thf(sy_c_List_Olist_Oset_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    set_vydra_aux_a_t_h2: list_vydra_aux_a_t_h > set_vydra_aux_a_t_h ).

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

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    set_Product_prod_o_o2: list_P4002435161011370285od_o_o > set_Product_prod_o_o ).

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

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    set_Product_prod_t_o2: list_P5575445741472356340od_t_o > set_Product_prod_t_o ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    set_Pr15456023412717001_set_a: list_P1095827921439705018_set_a > set_Pr6994796776334525076_set_a ).

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

thf(sy_c_List_Olist_Oset_001tf__a,type,
    set_a2: list_a > set_a ).

thf(sy_c_List_Olist_Oset_001tf__t,type,
    set_t2: list_t > set_t ).

thf(sy_c_List_Onth_001_Eo,type,
    nth_o: list_o > nat > $o ).

thf(sy_c_List_Onth_001t__IArray__Oiarray_I_Eo_J,type,
    nth_iarray_o: list_iarray_o > nat > iarray_o ).

thf(sy_c_List_Onth_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    nth_formula_a_t: list_formula_a_t > nat > formula_a_t ).

thf(sy_c_List_Onth_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    nth_vydra_aux_a_t_h: list_vydra_aux_a_t_h > nat > vydra_aux_a_t_h ).

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

thf(sy_c_List_Onth_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    nth_Product_prod_o_o: list_P4002435161011370285od_o_o > nat > product_prod_o_o ).

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

thf(sy_c_List_Onth_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    nth_Product_prod_t_o: list_P5575445741472356340od_t_o > nat > product_prod_t_o ).

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__a,type,
    nth_a: list_a > nat > a ).

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

thf(sy_c_List_Otake_001_Eo,type,
    take_o: nat > list_o > list_o ).

thf(sy_c_List_Otake_001t__IArray__Oiarray_I_Eo_J,type,
    take_iarray_o: nat > list_iarray_o > list_iarray_o ).

thf(sy_c_List_Otake_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    take_formula_a_t: nat > list_formula_a_t > list_formula_a_t ).

thf(sy_c_List_Otake_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    take_vydra_aux_a_t_h: nat > list_vydra_aux_a_t_h > list_vydra_aux_a_t_h ).

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_I_Eo_M_Eo_J,type,
    take_P6963594774600499477od_o_o: nat > list_P4002435161011370285od_o_o > list_P4002435161011370285od_o_o ).

thf(sy_c_List_Otake_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    take_P2173866234530122223at_nat: nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Otake_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    take_P7695396673888565724od_t_o: nat > list_P5575445741472356340od_t_o > list_P5575445741472356340od_t_o ).

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__a,type,
    take_a: nat > list_a > list_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_Obounded__future__fmla_001tf__a_001tf__t,type,
    bounde209865433540700070la_a_t: formula_a_t > $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_OMatchF_001tf__t_001tf__a,type,
    matchF_t_a: i_t > regex_a_t > formula_a_t ).

thf(sy_c_MDL_Oformula_OMatchP_001tf__t_001tf__a,type,
    matchP_t_a: i_t > regex_a_t > formula_a_t ).

thf(sy_c_MDL_Oformula_ONext_001tf__t_001tf__a,type,
    next_t_a: i_t > formula_a_t > formula_a_t ).

thf(sy_c_MDL_Oformula_OPrev_001tf__t_001tf__a,type,
    prev_t_a: i_t > formula_a_t > formula_a_t ).

thf(sy_c_MDL_Oformula_OUntil_001tf__a_001tf__t,type,
    until_a_t: formula_a_t > i_t > formula_a_t > formula_a_t ).

thf(sy_c_MDL_Oprogress_001tf__a_001tf__t,type,
    progress_a_t: formula_a_t > list_t > nat ).

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

thf(sy_c_MDL_Owf__fmla_001tf__a_001tf__t,type,
    wf_fmla_a_t: formula_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_OVYDRA__MDL_Owf__vydra_001tf__a_001tf__t_001tf__h,type,
    vYDRA_wf_vydra_a_t_h: trace_a_t > h > ( h > option5775791656947114332_set_a ) > formula_a_t > nat > nat > vydra_aux_a_t_h > $o ).

thf(sy_c_Monitor_Oinit__vydra_001tf__h_001tf__t_001tf__a,type,
    init_vydra_h_t_a: h > ( h > option5775791656947114332_set_a ) > formula_a_t > produc5559660867765305033_a_t_h ).

thf(sy_c_Monitor_Omsize__fmla_001tf__a_001tf__t,type,
    msize_fmla_a_t: formula_a_t > 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_001tf__h_001tf__t_001tf__a,type,
    run_h_t_a: ( h > option5775791656947114332_set_a ) > nat > vydra_aux_a_t_h > option4580262698044125979od_t_o ).

thf(sy_c_Monitor_Orun__subs_001_Eo_001tf__t_001_Eo_001_Eo,type,
    run_subs_o_t_o_o: ( $o > option2536733916571057475od_o_o ) > list_o > option6074195846726219284rray_o ).

thf(sy_c_Monitor_Orun__subs_001_Eo_001tf__t_001tf__h_001tf__t,type,
    run_subs_o_t_h_t: ( $o > option6366625828353349007od_h_t ) > list_o > option2595117943684164237rray_t ).

thf(sy_c_Monitor_Orun__subs_001_Eo_001tf__t_001tf__t_001_Eo,type,
    run_subs_o_t_t_o: ( $o > option5115755630998872842od_t_o ) > list_o > option6074195846726219284rray_o ).

thf(sy_c_Monitor_Orun__subs_001t__IArray__Oiarray_I_Eo_J_001tf__t_001_Eo_001_Eo,type,
    run_su8806722425823548483_t_o_o: ( iarray_o > option2536733916571057475od_o_o ) > list_iarray_o > option6074195846726219284rray_o ).

thf(sy_c_Monitor_Orun__subs_001t__IArray__Oiarray_I_Eo_J_001tf__t_001tf__h_001tf__t,type,
    run_su3655969966392431119_t_h_t: ( iarray_o > option6366625828353349007od_h_t ) > list_iarray_o > option2595117943684164237rray_t ).

thf(sy_c_Monitor_Orun__subs_001t__IArray__Oiarray_I_Eo_J_001tf__t_001tf__t_001_Eo,type,
    run_su98717407436750474_t_t_o: ( iarray_o > option5115755630998872842od_t_o ) > list_iarray_o > option6074195846726219284rray_o ).

thf(sy_c_Monitor_Orun__subs_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_001tf__t_001_Eo,type,
    run_su3116026553151384105_h_t_o: ( vydra_aux_a_t_h > option4580262698044125979od_t_o ) > list_vydra_aux_a_t_h > option8553266494716013595rray_o ).

thf(sy_c_Monitor_Orun__subs_001tf__t_001tf__t_001_Eo_001_Eo,type,
    run_subs_t_t_o_o: ( t > option2536733916571057475od_o_o ) > list_t > option6074195846726219284rray_o ).

thf(sy_c_Monitor_Orun__subs_001tf__t_001tf__t_001tf__h_001tf__t,type,
    run_subs_t_t_h_t: ( t > option6366625828353349007od_h_t ) > list_t > option2595117943684164237rray_t ).

thf(sy_c_Monitor_Orun__subs_001tf__t_001tf__t_001tf__t_001_Eo,type,
    run_subs_t_t_t_o: ( t > option5115755630998872842od_t_o ) > list_t > option6074195846726219284rray_o ).

thf(sy_c_Monitor_Orun__subs_001tf__t_001tf__t_001tf__t_001t__Set__Oset_Itf__a_J,type,
    run_subs_t_t_t_set_a: ( t > option4136621186271108688_set_a ) > list_t > option325762455365084250_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_Osub_001tf__h_001tf__t_001tf__a,type,
    sub_h_t_a: h > ( h > option5775791656947114332_set_a ) > nat > formula_a_t > vydra_aux_a_t_h ).

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_Monitor_Ovydra__aux_OVYDRA__Atom_001tf__a_001tf__h_001tf__t,type,
    vydra_3724560892389469594_a_h_t: a > h > vydra_aux_a_t_h ).

thf(sy_c_Monitor_Ovydra__aux_OVYDRA__Next_001tf__t_001tf__a_001tf__h,type,
    vydra_5146114697169468038_t_a_h: i_t > vydra_aux_a_t_h > h > option_t > vydra_aux_a_t_h ).

thf(sy_c_Monitor_Ovydra__aux_OVYDRA__None_001tf__a_001tf__t_001tf__h,type,
    vydra_4195442553028166619_a_t_h: vydra_aux_a_t_h ).

thf(sy_c_Monitor_Ovydra__aux_OVYDRA__Prev_001tf__t_001tf__a_001tf__h,type,
    vydra_3189297434896079910_t_a_h: i_t > vydra_aux_a_t_h > h > option8291060355354214836od_t_o > vydra_aux_a_t_h ).

thf(sy_c_Monitor_Ovydra__aux_OVYDRA__Until_001tf__t_001tf__h_001tf__a,type,
    vydra_8322945071554601_t_h_a: i_t > option2110264179601050681od_h_t > vydra_aux_a_t_h > vydra_aux_a_t_h > option2110264179601050681od_h_t > nat > option2536733916571057475od_o_o > vydra_aux_a_t_h ).

thf(sy_c_NFA_Oiarray__of__list_001_Eo,type,
    iarray_of_list_o: list_o > iarray_o ).

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

thf(sy_c_Nat_Onat_Ocase__nat_001_Eo,type,
    case_nat_o: $o > ( nat > $o ) > nat > $o ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Nat__Onat,type,
    case_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Option__Ooption_It__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    case_n7548220105206534174od_t_o: option8291060355354214836od_t_o > ( nat > option8291060355354214836od_t_o ) > nat > option8291060355354214836od_t_o ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J_J,type,
    case_n943740417880565421od_o_o: option2536733916571057475od_o_o > ( nat > option2536733916571057475od_o_o ) > nat > option2536733916571057475od_o_o ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Option__Ooption_Itf__t_J,type,
    case_nat_option_t: option_t > ( nat > option_t ) > nat > option_t ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_I_Eo_J,type,
    size_size_list_o: list_o > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__IArray__Oiarray_I_Eo_J_J,type,
    size_s3243743627286111600rray_o: list_iarray_o > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    size_s8846756101701226951la_a_t: list_formula_a_t > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J,type,
    size_s8993897887676352572_a_t_h: list_vydra_aux_a_t_h > 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_I_Eo_M_Eo_J_J,type,
    size_s1515746228057227161od_o_o: list_P4002435161011370285od_o_o > nat ).

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

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    size_s4106575409306904672od_t_o: list_P5575445741472356340od_t_o > 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__a_J,type,
    size_size_list_a: list_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__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_Mt__IArray__Oiarray_I_Eo_J_J_J,type,
    size_s2704686997974730927rray_o: option8553266494716013595rray_o > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J_J,type,
    size_s8621177079540999087od_t_o: option4580262698044125979od_t_o > 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__Option__Ooption_It__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    size_s4900030450070283808od_t_o: option8291060355354214836od_t_o > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J_J,type,
    size_s7159609156297001903od_o_o: option2536733916571057475od_o_o > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    size_s5130308976298692582_set_a: option4621139365931258234_set_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_Itf__t_J,type,
    size_size_option_t: option_t > nat ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_Mt__IArray__Oiarray_I_Eo_J_J,type,
    none_P945442321178488234rray_o: option8553266494716013595rray_o ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    none_P3452577240289636010od_t_o: option4580262698044125979od_t_o ).

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_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    none_P7032077165169035727od_t_o: option8291060355354214836od_t_o ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    none_P2907379280119556574od_o_o: option2536733916571057475od_o_o ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J,type,
    none_P6544562728533672341_set_a: option4621139365931258234_set_a ).

thf(sy_c_Option_Ooption_ONone_001tf__t,type,
    none_t: option_t ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_Mt__IArray__Oiarray_I_Eo_J_J,type,
    some_P7279874174034738982rray_o: produc8228095596854190539rray_o > option8553266494716013595rray_o ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_I_Eo_J_J,type,
    some_P7501796307291990963rray_o: produc7404585733407193934rray_o > option6074195846726219284rray_o ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_It__Set__Oset_Itf__a_J_J_J,type,
    some_P331467869274976249_set_a: produc6996287358776931860_set_a > option325762455365084250_set_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_Itf__t_J_Mt__IArray__Oiarray_Itf__t_J_J,type,
    some_P7066414042217547692rray_t: produc8327066611190118855rray_t > option2595117943684164237rray_t ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    some_P9127227083975130150od_t_o: produc530307916048688075od_t_o > option4580262698044125979od_t_o ).

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_M_Eo_J,type,
    some_P1805796590424124243od_t_o: product_prod_t_o > option8291060355354214836od_t_o ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    some_P6789671444921510242od_o_o: produc4127598065228779901od_o_o > option2536733916571057475od_o_o ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__h_Mtf__t_J_J,type,
    some_P3412453634688163246od_h_t: produc7241579710050618057od_h_t > option6366625828353349007od_h_t ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_M_Eo_J_J,type,
    some_P5782336797119413673od_t_o: produc8227461351695763524od_t_o > option5115755630998872842od_t_o ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_Itf__t_Mt__Set__Oset_Itf__a_J_J_J,type,
    some_P7916121082815958767_set_a: produc4536847747303215114_set_a > option4136621186271108688_set_a ).

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_Orderings_Oord__class_Oless_001_Eo,type,
    ord_less_o: $o > $o > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    ord_le637433070719144915od_o_o: product_prod_o_o > product_prod_o_o > $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_M_Eo_J,type,
    ord_le3945363144663698842od_t_o: product_prod_t_o > product_prod_t_o > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    ord_le5151895322379853865od_o_o: produc4127598065228779901od_o_o > produc4127598065228779901od_o_o > $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_001_Eo,type,
    ord_less_eq_o: $o > $o > $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_I_Eo_M_Eo_J,type,
    ord_le2636248316962427079od_o_o: product_prod_o_o > product_prod_o_o > $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_Itf__t_M_Eo_J,type,
    ord_le1999770283289415822od_t_o: product_prod_t_o > product_prod_t_o > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    ord_le386858854047861021od_o_o: produc4127598065228779901od_o_o > produc4127598065228779901od_o_o > $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__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    ord_le7457455060544393785la_a_t: set_formula_a_t > set_formula_a_t > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Product____Type__Oprod_It__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_Itf__a_J,type,
    ord_less_eq_set_a: set_a > set_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_Itf__t_J,type,
    ord_less_eq_set_t: set_t > set_t > $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__Nat__Onat,type,
    produc7277522915581678840_o_nat: ( nat > $o ) > nat > produc3074792404157404414_o_nat ).

thf(sy_c_Product__Type_OPair_001_Eo_001_Eo,type,
    product_Pair_o_o: $o > $o > product_prod_o_o ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_001t__IArray__Oiarray_I_Eo_J,type,
    produc8472968102330193021rray_o: list_vydra_aux_a_t_h > iarray_o > produc8228095596854190539rray_o ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__t_J_001t__IArray__Oiarray_I_Eo_J,type,
    produc8281831009199921854rray_o: list_t > iarray_o > produc7404585733407193934rray_o ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__t_J_001t__IArray__Oiarray_It__Set__Oset_Itf__a_J_J,type,
    produc4688466989509365508_set_a: list_t > iarray_set_a > produc6996287358776931860_set_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__t_J_001t__IArray__Oiarray_Itf__t_J,type,
    produc4777086648503855159rray_t: list_t > iarray_t > produc8327066611190118855rray_t ).

thf(sy_c_Product__Type_OPair_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    produc5956389175556509053od_t_o: vydra_aux_a_t_h > product_prod_t_o > produc530307916048688075od_t_o ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    produc184169161053073665_a_t_h: nat > vydra_aux_a_t_h > produc5559660867765305033_a_t_h ).

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__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__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__t,type,
    produc770200333395398319_h_t_t: option2110264179601050681od_h_t > t > produc2796182059459404991_h_t_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_001tf__t,type,
    product_Pair_h_t: h > t > product_prod_h_t ).

thf(sy_c_Product__Type_OPair_001tf__t_001_Eo,type,
    product_Pair_t_o: t > $o > product_prod_t_o ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    produc1891450550985068525od_o_o: t > product_prod_o_o > produc4127598065228779901od_o_o ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_Itf__h_Mtf__t_J,type,
    produc5663778790490485817od_h_t: t > product_prod_h_t > produc7241579710050618057od_h_t ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    produc7539267677312392372od_t_o: t > product_prod_t_o > produc8227461351695763524od_t_o ).

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_Oprod_Ofst_001t__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_001t__IArray__Oiarray_I_Eo_J,type,
    produc6595003253218802065rray_o: produc8228095596854190539rray_o > list_vydra_aux_a_t_h ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    produc288163909963368081od_t_o: produc530307916048688075od_t_o > vydra_aux_a_t_h ).

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_001_Eo,type,
    product_fst_t_o: product_prod_t_o > t ).

thf(sy_c_Product__Type_Oprod_Ofst_001tf__t_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    produc1892153463183078873od_o_o: produc4127598065228779901od_o_o > t ).

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__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_001t__IArray__Oiarray_I_Eo_J,type,
    produc8626223991256068815rray_o: produc8228095596854190539rray_o > iarray_o ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    produc5774376458158505423od_t_o: produc530307916048688075od_t_o > product_prod_t_o ).

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__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_001_Eo,type,
    product_snd_t_o: product_prod_t_o > $o ).

thf(sy_c_Product__Type_Oprod_Osnd_001tf__t_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    produc4009737033919571227od_o_o: produc4127598065228779901od_o_o > product_prod_o_o ).

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_Set_OCollect_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    collect_formula_a_t: ( formula_a_t > $o ) > set_formula_a_t ).

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_OCollect_001tf__t,type,
    collect_t: ( t > $o ) > set_t ).

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

thf(sy_c_Temporal_Ocollect__subfmlas_001tf__a_001tf__t,type,
    collect_subfmlas_a_t: regex_a_t > list_formula_a_t > list_formula_a_t ).

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_001_Eo,type,
    sorted_list_o: list_o > $o ).

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_I_Eo_M_Eo_J,type,
    sorted8634893310443622482od_o_o: list_P4002435161011370285od_o_o > $o ).

thf(sy_c_Trace_Osorted__list_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    sorted2640272588785007257od_t_o: list_P5575445741472356340od_t_o > $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_001t__Set__Oset_Itf__a_J,type,
    sorted_list_set_a: list_set_a > $o ).

thf(sy_c_Trace_Osorted__list_001tf__t,type,
    sorted_list_t: list_t > $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__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_001t__IArray__Oiarray_I_Eo_J,type,
    reache2947816147551113615rray_o: ( list_vydra_aux_a_t_h > option8553266494716013595rray_o ) > list_vydra_aux_a_t_h > nat > list_vydra_aux_a_t_h > $o ).

thf(sy_c_Window_Oreaches_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    reache549850244866497679od_t_o: ( vydra_aux_a_t_h > option4580262698044125979od_t_o ) > vydra_aux_a_t_h > nat > vydra_aux_a_t_h > $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_001_Eo,type,
    reaches_t_o: ( t > option8291060355354214836od_t_o ) > t > nat > t > $o ).

thf(sy_c_Window_Oreaches_001tf__t_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    reache739737707335374427od_o_o: ( t > option2536733916571057475od_o_o ) > t > nat > t > $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__List__Olist_It__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_J_001t__IArray__Oiarray_I_Eo_J,type,
    reache2401979074735462992rray_o: ( list_vydra_aux_a_t_h > option8553266494716013595rray_o ) > list_vydra_aux_a_t_h > list_iarray_o > list_vydra_aux_a_t_h > $o ).

thf(sy_c_Window_Oreaches__on_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J_001t__Product____Type__Oprod_Itf__t_M_Eo_J,type,
    reache8691153155344877136od_t_o: ( vydra_aux_a_t_h > option4580262698044125979od_t_o ) > vydra_aux_a_t_h > list_P5575445741472356340od_t_o > vydra_aux_a_t_h > $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_001_Eo,type,
    reaches_on_t_o: ( t > option8291060355354214836od_t_o ) > t > list_o > t > $o ).

thf(sy_c_Window_Oreaches__on_001tf__t_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    reache4453078201178095962od_o_o: ( t > option2536733916571057475od_o_o ) > t > list_P4002435161011370285od_o_o > t > $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_001_Eo,type,
    member_o: $o > set_o > $o ).

thf(sy_c_member_001t__IArray__Oiarray_I_Eo_J,type,
    member_iarray_o: iarray_o > set_iarray_o > $o ).

thf(sy_c_member_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    member_formula_a_t: formula_a_t > set_formula_a_t > $o ).

thf(sy_c_member_001t__Monitor__Ovydra____aux_Itf__a_Mtf__t_Mtf__h_J,type,
    member5760284237610626351_a_t_h: vydra_aux_a_t_h > set_vydra_aux_a_t_h > $o ).

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

thf(sy_c_member_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    member7466972457876170832od_o_o: product_prod_o_o > set_Product_prod_o_o > $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_Itf__t_M_Eo_J,type,
    member3252940038344094615od_t_o: product_prod_t_o > set_Product_prod_t_o > $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__Set__Oset_Itf__a_J,type,
    member_set_a: set_a > set_set_a > $o ).

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

thf(sy_c_member_001tf__t,type,
    member_t: t > set_t > $o ).

thf(sy_v_I____,type,
    i: i_t ).

thf(sy_v__092_060phi_062,type,
    phi: formula_a_t ).

thf(sy_v__092_060sigma_062,type,
    sigma: trace_a_t ).

thf(sy_v_back____,type,
    back: option2110264179601050681od_h_t ).

thf(sy_v_c____,type,
    c: nat ).

thf(sy_v_e,type,
    e: h ).

thf(sy_v_es_H____,type,
    es: list_t ).

thf(sy_v_es____,type,
    es2: list_t ).

thf(sy_v_front____,type,
    front: option2110264179601050681od_h_t ).

thf(sy_v_g____,type,
    g: option2110264179601050681od_h_t ).

thf(sy_v_gs____,type,
    gs: list_t ).

thf(sy_v_i,type,
    i2: nat ).

thf(sy_v_ia____,type,
    ia: nat ).

thf(sy_v_init__hd,type,
    init_hd: h ).

thf(sy_v_j____,type,
    j: nat ).

thf(sy_v_n,type,
    n: nat ).

thf(sy_v_na____,type,
    na: nat ).

thf(sy_v_phi____,type,
    phi2: formula_a_t ).

thf(sy_v_psi____,type,
    psi: formula_a_t ).

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

thf(sy_v_v,type,
    v: vydra_aux_a_t_h ).

thf(sy_v_va____,type,
    va: vydra_aux_a_t_h ).

thf(sy_v_vphi____,type,
    vphi: vydra_aux_a_t_h ).

thf(sy_v_vpsi____,type,
    vpsi: vydra_aux_a_t_h ).

thf(sy_v_vs,type,
    vs: list_P1095827921439705018_set_a ).

thf(sy_v_z____,type,
    z: option2536733916571057475od_o_o ).

% Relevant facts (1259)
thf(fact_0_reaches__on__Some,axiom,
    ! [R: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,Vs2: list_set_a,S3: t] :
      ( ( reaches_on_t_set_a @ R @ S @ Vs @ S2 )
     => ( ( reaches_on_t_set_a @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_size_list_set_a @ Vs ) @ ( size_size_list_set_a @ Vs2 ) )
         => ? [S4: t,X: set_a] :
              ( ( R @ S2 )
              = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_1_reaches__on__Some,axiom,
    ! [R: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h,Vs2: list_P5575445741472356340od_t_o,S3: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ R @ S @ Vs @ S2 )
     => ( ( reache8691153155344877136od_t_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_s4106575409306904672od_t_o @ Vs ) @ ( size_s4106575409306904672od_t_o @ Vs2 ) )
         => ? [S4: vydra_aux_a_t_h,X: product_prod_t_o] :
              ( ( R @ S2 )
              = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_2_reaches__on__Some,axiom,
    ! [R: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,S2: t,Vs2: list_P4002435161011370285od_o_o,S3: t] :
      ( ( reache4453078201178095962od_o_o @ R @ S @ Vs @ S2 )
     => ( ( reache4453078201178095962od_o_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_s1515746228057227161od_o_o @ Vs ) @ ( size_s1515746228057227161od_o_o @ Vs2 ) )
         => ? [S4: t,X: product_prod_o_o] :
              ( ( R @ S2 )
              = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_3_reaches__on__Some,axiom,
    ! [R: t > option8291060355354214836od_t_o,S: t,Vs: list_o,S2: t,Vs2: list_o,S3: t] :
      ( ( reaches_on_t_o @ R @ S @ Vs @ S2 )
     => ( ( reaches_on_t_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_size_list_o @ Vs ) @ ( size_size_list_o @ Vs2 ) )
         => ? [S4: t,X: $o] :
              ( ( R @ S2 )
              = ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_4_reaches__on__Some,axiom,
    ! [R: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,Vs2: list_P1095827921439705018_set_a,S3: h] :
      ( ( reache3397181163414509427_set_a @ R @ S @ Vs @ S2 )
     => ( ( reache3397181163414509427_set_a @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_s5362121731612881446_set_a @ Vs ) @ ( size_s5362121731612881446_set_a @ Vs2 ) )
         => ? [S4: h,X: product_prod_t_set_a] :
              ( ( R @ S2 )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_5_reaches__on__Some,axiom,
    ! [R: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,S2: list_vydra_aux_a_t_h,Vs2: list_iarray_o,S3: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ R @ S @ Vs @ S2 )
     => ( ( reache2401979074735462992rray_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_s3243743627286111600rray_o @ Vs ) @ ( size_s3243743627286111600rray_o @ Vs2 ) )
         => ? [S4: list_vydra_aux_a_t_h,X: iarray_o] :
              ( ( R @ S2 )
              = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_6_reaches__on__Some,axiom,
    ! [R: 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 @ R @ S @ Vs @ S2 )
     => ( ( reache645946503560514460_h_t_t @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_size_list_t @ Vs ) @ ( size_size_list_t @ Vs2 ) )
         => ? [S4: option2110264179601050681od_h_t,X: t] :
              ( ( R @ S2 )
              = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_7_reaches__on__Some,axiom,
    ! [R: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,Vs2: list_t,S3: h] :
      ( ( reaches_on_h_t @ R @ S @ Vs @ S2 )
     => ( ( reaches_on_h_t @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_nat @ ( size_size_list_t @ Vs ) @ ( size_size_list_t @ Vs2 ) )
         => ? [S4: h,X: t] :
              ( ( R @ S2 )
              = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S4 @ X ) ) ) ) ) ) ).

% reaches_on_Some
thf(fact_8_v__def_I5_J,axiom,
    reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ es2 @ back ).

% v_def(5)
thf(fact_9_v__def_I7_J,axiom,
    reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ es @ front ).

% v_def(7)
thf(fact_10_v__def_I8_J,axiom,
    ( ( size_size_list_t @ es )
    = j ) ).

% v_def(8)
thf(fact_11_prefix,axiom,
    reache3397181163414509427_set_a @ run_hd @ init_hd @ vs @ e ).

% prefix
thf(fact_12_v__def_I6_J,axiom,
    ( ( size_size_list_t @ es2 )
    = ia ) ).

% v_def(6)
thf(fact_13_option_Oinject,axiom,
    ! [X2: produc2796182059459404991_h_t_t,Y2: produc2796182059459404991_h_t_t] :
      ( ( ( some_P8406129549712030756_h_t_t @ X2 )
        = ( some_P8406129549712030756_h_t_t @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_14_option_Oinject,axiom,
    ! [X2: produc8228095596854190539rray_o,Y2: produc8228095596854190539rray_o] :
      ( ( ( some_P7279874174034738982rray_o @ X2 )
        = ( some_P7279874174034738982rray_o @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_15_option_Oinject,axiom,
    ! [X2: produc530307916048688075od_t_o,Y2: produc530307916048688075od_t_o] :
      ( ( ( some_P9127227083975130150od_t_o @ X2 )
        = ( some_P9127227083975130150od_t_o @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_16_option_Oinject,axiom,
    ! [X2: product_prod_t_set_a,Y2: product_prod_t_set_a] :
      ( ( ( some_P4667681669429350681_set_a @ X2 )
        = ( some_P4667681669429350681_set_a @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_17_option_Oinject,axiom,
    ! [X2: produc4127598065228779901od_o_o,Y2: produc4127598065228779901od_o_o] :
      ( ( ( some_P6789671444921510242od_o_o @ X2 )
        = ( some_P6789671444921510242od_o_o @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_18_option_Oinject,axiom,
    ! [X2: product_prod_t_o,Y2: product_prod_t_o] :
      ( ( ( some_P1805796590424124243od_t_o @ X2 )
        = ( some_P1805796590424124243od_t_o @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_19_option_Oinject,axiom,
    ! [X2: produc8090089739038349590_set_a,Y2: produc8090089739038349590_set_a] :
      ( ( ( some_P2245991037696317435_set_a @ X2 )
        = ( some_P2245991037696317435_set_a @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_20_option_Oinject,axiom,
    ! [X2: product_prod_h_t,Y2: product_prod_h_t] :
      ( ( ( some_P2526622376857543512od_h_t @ X2 )
        = ( some_P2526622376857543512od_h_t @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_21_option_Oinject,axiom,
    ! [X2: t,Y2: t] :
      ( ( ( some_t @ X2 )
        = ( some_t @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% option.inject
thf(fact_22_prod_Oinject,axiom,
    ! [X1: option2110264179601050681od_h_t,X2: t,Y1: option2110264179601050681od_h_t,Y2: t] :
      ( ( ( produc770200333395398319_h_t_t @ X1 @ X2 )
        = ( produc770200333395398319_h_t_t @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_23_prod_Oinject,axiom,
    ! [X1: list_vydra_aux_a_t_h,X2: iarray_o,Y1: list_vydra_aux_a_t_h,Y2: iarray_o] :
      ( ( ( produc8472968102330193021rray_o @ X1 @ X2 )
        = ( produc8472968102330193021rray_o @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_24_prod_Oinject,axiom,
    ! [X1: vydra_aux_a_t_h,X2: product_prod_t_o,Y1: vydra_aux_a_t_h,Y2: product_prod_t_o] :
      ( ( ( produc5956389175556509053od_t_o @ X1 @ X2 )
        = ( produc5956389175556509053od_t_o @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_25_prod_Oinject,axiom,
    ! [X1: t,X2: product_prod_o_o,Y1: t,Y2: product_prod_o_o] :
      ( ( ( produc1891450550985068525od_o_o @ X1 @ X2 )
        = ( produc1891450550985068525od_o_o @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_26_prod_Oinject,axiom,
    ! [X1: t,X2: $o,Y1: t,Y2: $o] :
      ( ( ( product_Pair_t_o @ X1 @ X2 )
        = ( product_Pair_t_o @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_27_prod_Oinject,axiom,
    ! [X1: t,X2: set_a,Y1: t,Y2: set_a] :
      ( ( ( product_Pair_t_set_a @ X1 @ X2 )
        = ( product_Pair_t_set_a @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_28_prod_Oinject,axiom,
    ! [X1: h,X2: product_prod_t_set_a,Y1: h,Y2: product_prod_t_set_a] :
      ( ( ( produc3432067189782488838_set_a @ X1 @ X2 )
        = ( produc3432067189782488838_set_a @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

% prod.inject
thf(fact_29_prod_Oinject,axiom,
    ! [X1: h,X2: t,Y1: h,Y2: t] :
      ( ( ( product_Pair_h_t @ X1 @ X2 )
        = ( product_Pair_h_t @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y2 ) ) ) ).

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

% old.prod.inject
thf(fact_31_old_Oprod_Oinject,axiom,
    ! [A: list_vydra_aux_a_t_h,B: iarray_o,A2: list_vydra_aux_a_t_h,B2: iarray_o] :
      ( ( ( produc8472968102330193021rray_o @ A @ B )
        = ( produc8472968102330193021rray_o @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_32_old_Oprod_Oinject,axiom,
    ! [A: vydra_aux_a_t_h,B: product_prod_t_o,A2: vydra_aux_a_t_h,B2: product_prod_t_o] :
      ( ( ( produc5956389175556509053od_t_o @ A @ B )
        = ( produc5956389175556509053od_t_o @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_33_old_Oprod_Oinject,axiom,
    ! [A: t,B: product_prod_o_o,A2: t,B2: product_prod_o_o] :
      ( ( ( produc1891450550985068525od_o_o @ A @ B )
        = ( produc1891450550985068525od_o_o @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_34_old_Oprod_Oinject,axiom,
    ! [A: t,B: $o,A2: t,B2: $o] :
      ( ( ( product_Pair_t_o @ A @ B )
        = ( product_Pair_t_o @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

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

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

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

% old.prod.inject
thf(fact_38_reaches__on__inj,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Vs: list_t,T: h,Vs2: list_t,T2: h] :
      ( ( reaches_on_h_t @ Run @ S @ Vs @ T )
     => ( ( reaches_on_h_t @ Run @ S @ Vs2 @ T2 )
       => ( ( ( size_size_list_t @ Vs )
            = ( size_size_list_t @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T = T2 ) ) ) ) ) ).

% reaches_on_inj
thf(fact_39_reaches__on__inj,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,Vs: list_o,T: t,Vs2: list_o,T2: t] :
      ( ( reaches_on_t_o @ Run @ S @ Vs @ T )
     => ( ( reaches_on_t_o @ Run @ S @ Vs2 @ T2 )
       => ( ( ( size_size_list_o @ Vs )
            = ( size_size_list_o @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T = T2 ) ) ) ) ) ).

% reaches_on_inj
thf(fact_40_reaches__on__inj,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,T: t,Vs2: list_P4002435161011370285od_o_o,T2: t] :
      ( ( reache4453078201178095962od_o_o @ Run @ S @ Vs @ T )
     => ( ( reache4453078201178095962od_o_o @ Run @ S @ Vs2 @ T2 )
       => ( ( ( size_s1515746228057227161od_o_o @ Vs )
            = ( size_s1515746228057227161od_o_o @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T = T2 ) ) ) ) ) ).

% reaches_on_inj
thf(fact_41_reaches__on__inj,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,T: t,Vs2: list_set_a,T2: t] :
      ( ( reaches_on_t_set_a @ Run @ S @ Vs @ T )
     => ( ( reaches_on_t_set_a @ Run @ S @ Vs2 @ T2 )
       => ( ( ( size_size_list_set_a @ Vs )
            = ( size_size_list_set_a @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T = T2 ) ) ) ) ) ).

% reaches_on_inj
thf(fact_42_reaches__on__inj,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,T: vydra_aux_a_t_h,Vs2: list_P5575445741472356340od_t_o,T2: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ Run @ S @ Vs @ T )
     => ( ( reache8691153155344877136od_t_o @ Run @ S @ Vs2 @ T2 )
       => ( ( ( size_s4106575409306904672od_t_o @ Vs )
            = ( size_s4106575409306904672od_t_o @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T = T2 ) ) ) ) ) ).

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

% reaches_on_inj
thf(fact_44_reaches__on__inj,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,T: list_vydra_aux_a_t_h,Vs2: list_iarray_o,T2: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ Run @ S @ Vs @ T )
     => ( ( reache2401979074735462992rray_o @ Run @ S @ Vs2 @ T2 )
       => ( ( ( size_s3243743627286111600rray_o @ Vs )
            = ( size_s3243743627286111600rray_o @ Vs2 ) )
         => ( ( Vs = Vs2 )
            & ( T = T2 ) ) ) ) ) ).

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

% reaches_on_inj
thf(fact_46_length__induct,axiom,
    ! [P: list_P1095827921439705018_set_a > $o,Xs: list_P1095827921439705018_set_a] :
      ( ! [Xs2: list_P1095827921439705018_set_a] :
          ( ! [Ys: list_P1095827921439705018_set_a] :
              ( ( ord_less_nat @ ( size_s5362121731612881446_set_a @ Ys ) @ ( size_s5362121731612881446_set_a @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_47_length__induct,axiom,
    ! [P: list_vydra_aux_a_t_h > $o,Xs: list_vydra_aux_a_t_h] :
      ( ! [Xs2: list_vydra_aux_a_t_h] :
          ( ! [Ys: list_vydra_aux_a_t_h] :
              ( ( ord_less_nat @ ( size_s8993897887676352572_a_t_h @ Ys ) @ ( size_s8993897887676352572_a_t_h @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_48_length__induct,axiom,
    ! [P: list_iarray_o > $o,Xs: list_iarray_o] :
      ( ! [Xs2: list_iarray_o] :
          ( ! [Ys: list_iarray_o] :
              ( ( ord_less_nat @ ( size_s3243743627286111600rray_o @ Ys ) @ ( size_s3243743627286111600rray_o @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_49_length__induct,axiom,
    ! [P: list_formula_a_t > $o,Xs: list_formula_a_t] :
      ( ! [Xs2: list_formula_a_t] :
          ( ! [Ys: list_formula_a_t] :
              ( ( ord_less_nat @ ( size_s8846756101701226951la_a_t @ Ys ) @ ( size_s8846756101701226951la_a_t @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_50_length__induct,axiom,
    ! [P: list_t > $o,Xs: list_t] :
      ( ! [Xs2: list_t] :
          ( ! [Ys: list_t] :
              ( ( ord_less_nat @ ( size_size_list_t @ Ys ) @ ( size_size_list_t @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_51_length__induct,axiom,
    ! [P: list_o > $o,Xs: list_o] :
      ( ! [Xs2: list_o] :
          ( ! [Ys: list_o] :
              ( ( ord_less_nat @ ( size_size_list_o @ Ys ) @ ( size_size_list_o @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_52_length__induct,axiom,
    ! [P: list_P4002435161011370285od_o_o > $o,Xs: list_P4002435161011370285od_o_o] :
      ( ! [Xs2: list_P4002435161011370285od_o_o] :
          ( ! [Ys: list_P4002435161011370285od_o_o] :
              ( ( ord_less_nat @ ( size_s1515746228057227161od_o_o @ Ys ) @ ( size_s1515746228057227161od_o_o @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_53_length__induct,axiom,
    ! [P: list_P5575445741472356340od_t_o > $o,Xs: list_P5575445741472356340od_t_o] :
      ( ! [Xs2: list_P5575445741472356340od_t_o] :
          ( ! [Ys: list_P5575445741472356340od_t_o] :
              ( ( ord_less_nat @ ( size_s4106575409306904672od_t_o @ Ys ) @ ( size_s4106575409306904672od_t_o @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_54_length__induct,axiom,
    ! [P: list_set_a > $o,Xs: list_set_a] :
      ( ! [Xs2: list_set_a] :
          ( ! [Ys: list_set_a] :
              ( ( ord_less_nat @ ( size_size_list_set_a @ Ys ) @ ( size_size_list_set_a @ Xs2 ) )
             => ( P @ Ys ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_55_ru__t__tau,axiom,
    ! [Ts: list_t,T2: option2110264179601050681od_h_t,T3: option2110264179601050681od_h_t,X3: t] :
      ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Ts @ T2 )
     => ( ( ( run_t_h_t_a @ run_hd @ T2 )
          = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ T3 @ X3 ) ) )
       => ( X3
          = ( tau_a_t @ sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ).

% ru_t_tau
thf(fact_56_read__t__run,axiom,
    ! [X3: option2110264179601050681od_h_t,T: t,Run_hd: h > option5775791656947114332_set_a] :
      ( ( ( read_t_h_t @ X3 )
        = ( some_t @ T ) )
     => ? [X4: option2110264179601050681od_h_t] :
          ( ( run_t_h_t_a @ Run_hd @ X3 )
          = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ X4 @ T ) ) ) ) ).

% read_t_run
thf(fact_57_run__t__read,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,X3: option2110264179601050681od_h_t,X5: option2110264179601050681od_h_t,T: t] :
      ( ( ( run_t_h_t_a @ Run_hd @ X3 )
        = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ X5 @ T ) ) )
     => ( ( read_t_h_t @ X3 )
        = ( some_t @ T ) ) ) ).

% run_t_read
thf(fact_58_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,Vs2: list_P1095827921439705018_set_a,S3: h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache3397181163414509427_set_a @ R @ S @ Vs @ S2 )
       => ( ( reache3397181163414509427_set_a @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_s5362121731612881446_set_a @ Vs ) @ ( size_s5362121731612881446_set_a @ Vs2 ) )
           => ? [S4: h,X: product_prod_t_set_a] :
                ( ( R @ S2 )
                = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_59_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,S2: list_vydra_aux_a_t_h,Vs2: list_iarray_o,S3: list_vydra_aux_a_t_h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache2401979074735462992rray_o @ R @ S @ Vs @ S2 )
       => ( ( reache2401979074735462992rray_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_s3243743627286111600rray_o @ Vs ) @ ( size_s3243743627286111600rray_o @ Vs2 ) )
           => ? [S4: list_vydra_aux_a_t_h,X: iarray_o] :
                ( ( R @ S2 )
                = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_60_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,Vs2: list_t,S3: h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reaches_on_h_t @ R @ S @ Vs @ S2 )
       => ( ( reaches_on_h_t @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_size_list_t @ Vs ) @ ( size_size_list_t @ Vs2 ) )
           => ? [S4: h,X: t] :
                ( ( R @ S2 )
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_61_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: 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] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache645946503560514460_h_t_t @ R @ S @ Vs @ S2 )
       => ( ( reache645946503560514460_h_t_t @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_size_list_t @ Vs ) @ ( size_size_list_t @ Vs2 ) )
           => ? [S4: option2110264179601050681od_h_t,X: t] :
                ( ( R @ S2 )
                = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_62_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: t > option8291060355354214836od_t_o,S: t,Vs: list_o,S2: t,Vs2: list_o,S3: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reaches_on_t_o @ R @ S @ Vs @ S2 )
       => ( ( reaches_on_t_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_size_list_o @ Vs ) @ ( size_size_list_o @ Vs2 ) )
           => ? [S4: t,X: $o] :
                ( ( R @ S2 )
                = ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_63_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,S2: t,Vs2: list_P4002435161011370285od_o_o,S3: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache4453078201178095962od_o_o @ R @ S @ Vs @ S2 )
       => ( ( reache4453078201178095962od_o_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_s1515746228057227161od_o_o @ Vs ) @ ( size_s1515746228057227161od_o_o @ Vs2 ) )
           => ? [S4: t,X: product_prod_o_o] :
                ( ( R @ S2 )
                = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_64_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h,Vs2: list_P5575445741472356340od_t_o,S3: vydra_aux_a_t_h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache8691153155344877136od_t_o @ R @ S @ Vs @ S2 )
       => ( ( reache8691153155344877136od_t_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_s4106575409306904672od_t_o @ Vs ) @ ( size_s4106575409306904672od_t_o @ Vs2 ) )
           => ? [S4: vydra_aux_a_t_h,X: product_prod_t_o] :
                ( ( R @ S2 )
                = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_65_VYDRA__MDL_Oreaches__on__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,Vs2: list_set_a,S3: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reaches_on_t_set_a @ R @ S @ Vs @ S2 )
       => ( ( reaches_on_t_set_a @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_nat @ ( size_size_list_set_a @ Vs ) @ ( size_size_list_set_a @ Vs2 ) )
           => ? [S4: t,X: set_a] :
                ( ( R @ S2 )
                = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S4 @ X ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_Some
thf(fact_66_VYDRA__MDL__axioms,axiom,
    vYDRA_MDL_a_t_h @ sigma @ init_hd @ run_hd ).

% VYDRA_MDL_axioms
thf(fact_67_ru__t__Some__tau,axiom,
    ! [Ts: list_t,E: h,T: t] :
      ( ( 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 @ T ) ) )
     => ( T
        = ( tau_a_t @ sigma @ ( size_size_list_t @ Ts ) ) ) ) ).

% ru_t_Some_tau
thf(fact_68_v__def_I4_J,axiom,
    ord_less_eq_nat @ ia @ j ).

% v_def(4)
thf(fact_69_VYDRA__MDL_Oru__t__Some__tau,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Ts: list_t,E: h,T: 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 @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E @ T ) ) )
       => ( T
          = ( tau_a_t @ Sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ).

% VYDRA_MDL.ru_t_Some_tau
thf(fact_70_VYDRA__MDL_Oru__t__Some__tau,axiom,
    ! [Sigma: trace_a_t,Init_hd: option2110264179601050681od_h_t,Run_hd: option2110264179601050681od_h_t > option7188603832408115496_set_a,Ts: list_t,E: option2110264179601050681od_h_t,T: t] :
      ( ( vYDRA_3633401052503215442od_h_t @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache4450721910237653584_t_t_t @ ( run_t_6187369673847646894_t_t_a @ Run_hd ) @ ( t0_opt7280579062267883515_t_t_a @ Init_hd @ Run_hd ) @ Ts @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E @ T ) ) )
       => ( T
          = ( tau_a_t @ Sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ).

% VYDRA_MDL.ru_t_Some_tau
thf(fact_71_prod__induct3,axiom,
    ! [P: produc4127598065228779901od_o_o > $o,X3: produc4127598065228779901od_o_o] :
      ( ! [A3: t,B3: $o,C: $o] : ( P @ ( produc1891450550985068525od_o_o @ A3 @ ( product_Pair_o_o @ B3 @ C ) ) )
     => ( P @ X3 ) ) ).

% prod_induct3
thf(fact_72_prod__induct3,axiom,
    ! [P: produc8090089739038349590_set_a > $o,X3: produc8090089739038349590_set_a] :
      ( ! [A3: h,B3: t,C: set_a] : ( P @ ( produc3432067189782488838_set_a @ A3 @ ( product_Pair_t_set_a @ B3 @ C ) ) )
     => ( P @ X3 ) ) ).

% prod_induct3
thf(fact_73_prod__induct3,axiom,
    ! [P: produc530307916048688075od_t_o > $o,X3: produc530307916048688075od_t_o] :
      ( ! [A3: vydra_aux_a_t_h,B3: t,C: $o] : ( P @ ( produc5956389175556509053od_t_o @ A3 @ ( product_Pair_t_o @ B3 @ C ) ) )
     => ( P @ X3 ) ) ).

% prod_induct3
thf(fact_74_prod__cases3,axiom,
    ! [Y: produc4127598065228779901od_o_o] :
      ~ ! [A3: t,B3: $o,C: $o] :
          ( Y
         != ( produc1891450550985068525od_o_o @ A3 @ ( product_Pair_o_o @ B3 @ C ) ) ) ).

% prod_cases3
thf(fact_75_prod__cases3,axiom,
    ! [Y: produc8090089739038349590_set_a] :
      ~ ! [A3: h,B3: t,C: set_a] :
          ( Y
         != ( produc3432067189782488838_set_a @ A3 @ ( product_Pair_t_set_a @ B3 @ C ) ) ) ).

% prod_cases3
thf(fact_76_prod__cases3,axiom,
    ! [Y: produc530307916048688075od_t_o] :
      ~ ! [A3: vydra_aux_a_t_h,B3: t,C: $o] :
          ( Y
         != ( produc5956389175556509053od_t_o @ A3 @ ( product_Pair_t_o @ B3 @ C ) ) ) ).

% prod_cases3
thf(fact_77_Pair__inject,axiom,
    ! [A: t,B: product_prod_o_o,A2: t,B2: product_prod_o_o] :
      ( ( ( produc1891450550985068525od_o_o @ A @ B )
        = ( produc1891450550985068525od_o_o @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_78_Pair__inject,axiom,
    ! [A: t,B: $o,A2: t,B2: $o] :
      ( ( ( product_Pair_t_o @ A @ B )
        = ( product_Pair_t_o @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B = ~ B2 ) ) ) ).

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

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

% Pair_inject
thf(fact_81_Pair__inject,axiom,
    ! [A: h,B: t,A2: h,B2: t] :
      ( ( ( product_Pair_h_t @ A @ B )
        = ( product_Pair_h_t @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

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

% Pair_inject
thf(fact_83_Pair__inject,axiom,
    ! [A: list_vydra_aux_a_t_h,B: iarray_o,A2: list_vydra_aux_a_t_h,B2: iarray_o] :
      ( ( ( produc8472968102330193021rray_o @ A @ B )
        = ( produc8472968102330193021rray_o @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_84_Pair__inject,axiom,
    ! [A: vydra_aux_a_t_h,B: product_prod_t_o,A2: vydra_aux_a_t_h,B2: product_prod_t_o] :
      ( ( ( produc5956389175556509053od_t_o @ A @ B )
        = ( produc5956389175556509053od_t_o @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_85_prod__cases,axiom,
    ! [P: produc4127598065228779901od_o_o > $o,P2: produc4127598065228779901od_o_o] :
      ( ! [A3: t,B3: product_prod_o_o] : ( P @ ( produc1891450550985068525od_o_o @ A3 @ B3 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_86_prod__cases,axiom,
    ! [P: product_prod_t_o > $o,P2: product_prod_t_o] :
      ( ! [A3: t,B3: $o] : ( P @ ( product_Pair_t_o @ A3 @ B3 ) )
     => ( P @ P2 ) ) ).

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

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

% prod_cases
thf(fact_89_prod__cases,axiom,
    ! [P: product_prod_h_t > $o,P2: product_prod_h_t] :
      ( ! [A3: h,B3: t] : ( P @ ( product_Pair_h_t @ A3 @ B3 ) )
     => ( P @ P2 ) ) ).

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

% prod_cases
thf(fact_91_prod__cases,axiom,
    ! [P: produc8228095596854190539rray_o > $o,P2: produc8228095596854190539rray_o] :
      ( ! [A3: list_vydra_aux_a_t_h,B3: iarray_o] : ( P @ ( produc8472968102330193021rray_o @ A3 @ B3 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_92_prod__cases,axiom,
    ! [P: produc530307916048688075od_t_o > $o,P2: produc530307916048688075od_t_o] :
      ( ! [A3: vydra_aux_a_t_h,B3: product_prod_t_o] : ( P @ ( produc5956389175556509053od_t_o @ A3 @ B3 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_93_surj__pair,axiom,
    ! [P2: produc4127598065228779901od_o_o] :
    ? [X: t,Y3: product_prod_o_o] :
      ( P2
      = ( produc1891450550985068525od_o_o @ X @ Y3 ) ) ).

% surj_pair
thf(fact_94_surj__pair,axiom,
    ! [P2: product_prod_t_o] :
    ? [X: t,Y3: $o] :
      ( P2
      = ( product_Pair_t_o @ X @ Y3 ) ) ).

% surj_pair
thf(fact_95_surj__pair,axiom,
    ! [P2: product_prod_t_set_a] :
    ? [X: t,Y3: set_a] :
      ( P2
      = ( product_Pair_t_set_a @ X @ Y3 ) ) ).

% surj_pair
thf(fact_96_surj__pair,axiom,
    ! [P2: produc8090089739038349590_set_a] :
    ? [X: h,Y3: product_prod_t_set_a] :
      ( P2
      = ( produc3432067189782488838_set_a @ X @ Y3 ) ) ).

% surj_pair
thf(fact_97_surj__pair,axiom,
    ! [P2: product_prod_h_t] :
    ? [X: h,Y3: t] :
      ( P2
      = ( product_Pair_h_t @ X @ Y3 ) ) ).

% surj_pair
thf(fact_98_surj__pair,axiom,
    ! [P2: produc2796182059459404991_h_t_t] :
    ? [X: option2110264179601050681od_h_t,Y3: t] :
      ( P2
      = ( produc770200333395398319_h_t_t @ X @ Y3 ) ) ).

% surj_pair
thf(fact_99_surj__pair,axiom,
    ! [P2: produc8228095596854190539rray_o] :
    ? [X: list_vydra_aux_a_t_h,Y3: iarray_o] :
      ( P2
      = ( produc8472968102330193021rray_o @ X @ Y3 ) ) ).

% surj_pair
thf(fact_100_surj__pair,axiom,
    ! [P2: produc530307916048688075od_t_o] :
    ? [X: vydra_aux_a_t_h,Y3: product_prod_t_o] :
      ( P2
      = ( produc5956389175556509053od_t_o @ X @ Y3 ) ) ).

% surj_pair
thf(fact_101_old_Oprod_Oexhaust,axiom,
    ! [Y: produc4127598065228779901od_o_o] :
      ~ ! [A3: t,B3: product_prod_o_o] :
          ( Y
         != ( produc1891450550985068525od_o_o @ A3 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_102_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_t_o] :
      ~ ! [A3: t,B3: $o] :
          ( Y
         != ( product_Pair_t_o @ A3 @ B3 ) ) ).

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

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

% old.prod.exhaust
thf(fact_105_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_h_t] :
      ~ ! [A3: h,B3: t] :
          ( Y
         != ( product_Pair_h_t @ A3 @ B3 ) ) ).

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

% old.prod.exhaust
thf(fact_107_old_Oprod_Oexhaust,axiom,
    ! [Y: produc8228095596854190539rray_o] :
      ~ ! [A3: list_vydra_aux_a_t_h,B3: iarray_o] :
          ( Y
         != ( produc8472968102330193021rray_o @ A3 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_108_old_Oprod_Oexhaust,axiom,
    ! [Y: produc530307916048688075od_t_o] :
      ~ ! [A3: vydra_aux_a_t_h,B3: product_prod_t_o] :
          ( Y
         != ( produc5956389175556509053od_t_o @ A3 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_109_VYDRA__MDL_Oru__t__tau,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Ts: list_t,T2: option2110264179601050681od_h_t,T3: option2110264179601050681od_h_t,X3: 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 @ T2 )
       => ( ( ( run_t_h_t_a @ Run_hd @ T2 )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ T3 @ X3 ) ) )
         => ( X3
            = ( tau_a_t @ Sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ) ).

% VYDRA_MDL.ru_t_tau
thf(fact_110_neq__if__length__neq,axiom,
    ! [Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ Xs )
       != ( size_s5362121731612881446_set_a @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

% neq_if_length_neq
thf(fact_111_neq__if__length__neq,axiom,
    ! [Xs: list_vydra_aux_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( ( size_s8993897887676352572_a_t_h @ Xs )
       != ( size_s8993897887676352572_a_t_h @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

% neq_if_length_neq
thf(fact_112_neq__if__length__neq,axiom,
    ! [Xs: list_iarray_o,Ys2: list_iarray_o] :
      ( ( ( size_s3243743627286111600rray_o @ Xs )
       != ( size_s3243743627286111600rray_o @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

% neq_if_length_neq
thf(fact_113_neq__if__length__neq,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ( size_s8846756101701226951la_a_t @ Xs )
       != ( size_s8846756101701226951la_a_t @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

% neq_if_length_neq
thf(fact_114_neq__if__length__neq,axiom,
    ! [Xs: list_t,Ys2: list_t] :
      ( ( ( size_size_list_t @ Xs )
       != ( size_size_list_t @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

% neq_if_length_neq
thf(fact_115_neq__if__length__neq,axiom,
    ! [Xs: list_o,Ys2: list_o] :
      ( ( ( size_size_list_o @ Xs )
       != ( size_size_list_o @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

% neq_if_length_neq
thf(fact_116_neq__if__length__neq,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( ( size_s1515746228057227161od_o_o @ Xs )
       != ( size_s1515746228057227161od_o_o @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

% neq_if_length_neq
thf(fact_117_neq__if__length__neq,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( ( size_s4106575409306904672od_t_o @ Xs )
       != ( size_s4106575409306904672od_t_o @ Ys2 ) )
     => ( Xs != Ys2 ) ) ).

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

% neq_if_length_neq
thf(fact_119_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_120_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_vydra_aux_a_t_h] :
      ( ( size_s8993897887676352572_a_t_h @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_121_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_iarray_o] :
      ( ( size_s3243743627286111600rray_o @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_122_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_formula_a_t] :
      ( ( size_s8846756101701226951la_a_t @ Xs2 )
      = N ) ).

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

% Ex_list_of_length
thf(fact_124_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_o] :
      ( ( size_size_list_o @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_125_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_P4002435161011370285od_o_o] :
      ( ( size_s1515746228057227161od_o_o @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_126_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_P5575445741472356340od_t_o] :
      ( ( size_s4106575409306904672od_t_o @ Xs2 )
      = N ) ).

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

% Ex_list_of_length
thf(fact_128_read__t_Osimps_I2_J,axiom,
    ! [E: h,T: t] :
      ( ( read_t_h_t @ ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E @ T ) ) )
      = ( some_t @ T ) ) ).

% read_t.simps(2)
thf(fact_129_read__t_Osimps_I2_J,axiom,
    ! [E: option2110264179601050681od_h_t,T: t] :
      ( ( read_t2092621867719112_h_t_t @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E @ T ) ) )
      = ( some_t @ T ) ) ).

% read_t.simps(2)
thf(fact_130_reaches__on__run__hd,axiom,
    ! [Es: list_P1095827921439705018_set_a,S: h,S2: h,T: 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 @ T @ X6 ) ) ) )
       => ( ( T
            = ( 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_131_ru__t__event,axiom,
    ! [T: option2110264179601050681od_h_t,Ts: list_t,T2: option2110264179601050681od_h_t,T3: option2110264179601050681od_h_t,X3: t] :
      ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ T @ Ts @ T2 )
     => ( ( T
          = ( t0_h_t_a @ init_hd @ run_hd ) )
       => ( ( ( run_t_h_t_a @ run_hd @ T2 )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ T3 @ X3 ) ) )
         => ? [Rho: list_P1095827921439705018_set_a,E2: h,Tt: t] :
              ( ( T2
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E2 @ Tt ) ) )
              & ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Rho @ E2 )
              & ( ( size_s5362121731612881446_set_a @ Rho )
                = ( suc @ ( size_size_list_t @ Ts ) ) )
              & ( X3
                = ( tau_a_t @ sigma @ ( size_size_list_t @ Ts ) ) ) ) ) ) ) ).

% ru_t_event
thf(fact_132_ru__t__tau__in,axiom,
    ! [Ts: list_t,T: option2110264179601050681od_h_t,J: nat] :
      ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Ts @ T )
     => ( ( ord_less_nat @ J @ ( size_size_list_t @ Ts ) )
       => ( ( nth_t @ Ts @ J )
          = ( tau_a_t @ sigma @ J ) ) ) ) ).

% ru_t_tau_in
thf(fact_133_v__def_I10_J,axiom,
    ( c
    = ( minus_minus_nat @ j @ ia ) ) ).

% v_def(10)
thf(fact_134_mem__Collect__eq,axiom,
    ! [A: formula_a_t,P: formula_a_t > $o] :
      ( ( member_formula_a_t @ A @ ( collect_formula_a_t @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_135_mem__Collect__eq,axiom,
    ! [A: t,P: t > $o] :
      ( ( member_t @ A @ ( collect_t @ P ) )
      = ( P @ A ) ) ).

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

% mem_Collect_eq
thf(fact_137_mem__Collect__eq,axiom,
    ! [A: a,P: a > $o] :
      ( ( member_a @ A @ ( collect_a @ P ) )
      = ( P @ A ) ) ).

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

% mem_Collect_eq
thf(fact_139_Collect__mem__eq,axiom,
    ! [A4: set_formula_a_t] :
      ( ( collect_formula_a_t
        @ ^ [X7: formula_a_t] : ( member_formula_a_t @ X7 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_140_Collect__mem__eq,axiom,
    ! [A4: set_t] :
      ( ( collect_t
        @ ^ [X7: t] : ( member_t @ X7 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_141_Collect__mem__eq,axiom,
    ! [A4: set_nat] :
      ( ( collect_nat
        @ ^ [X7: nat] : ( member_nat @ X7 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_142_Collect__mem__eq,axiom,
    ! [A4: set_a] :
      ( ( collect_a
        @ ^ [X7: a] : ( member_a @ X7 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_143_Collect__mem__eq,axiom,
    ! [A4: set_Pr1261947904930325089at_nat] :
      ( ( collec3392354462482085612at_nat
        @ ^ [X7: product_prod_nat_nat] : ( member8440522571783428010at_nat @ X7 @ A4 ) )
      = A4 ) ).

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

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

% VYDRA_MDL.ru_t_event
thf(fact_146_ru__t__Some,axiom,
    ! [Fs: list_P1095827921439705018_set_a,F: h,I: nat,Es: list_t,E: option2110264179601050681od_h_t] :
      ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Fs @ F )
     => ( ( ( size_s5362121731612881446_set_a @ Fs )
          = ( suc @ I ) )
       => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Es @ E )
         => ( ( ord_less_eq_nat @ ( size_size_list_t @ Es ) @ I )
           => ? [E3: option2110264179601050681od_h_t,Et: t] :
                ( ( run_t_h_t_a @ run_hd @ E )
                = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E3 @ Et ) ) ) ) ) ) ) ).

% ru_t_Some
thf(fact_147_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_148_VYDRA__MDL_Oru__t__tau__in,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Ts: list_t,T: option2110264179601050681od_h_t,J: nat] :
      ( ( 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 )
       => ( ( ord_less_nat @ J @ ( size_size_list_t @ Ts ) )
         => ( ( nth_t @ Ts @ J )
            = ( tau_a_t @ Sigma @ J ) ) ) ) ) ).

% VYDRA_MDL.ru_t_tau_in
thf(fact_149_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,T: 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 @ T @ X6 ) ) ) )
         => ( ( T
              = ( 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_150_run__hd__sound,axiom,
    ! [N: nat,S: h,S2: h,T: 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 @ T @ X6 ) ) ) )
       => ( ( product_Pair_t_set_a @ T @ X6 )
          = ( product_Pair_t_set_a @ ( tau_a_t @ sigma @ N ) @ ( gamma_a_t @ sigma @ N ) ) ) ) ) ).

% run_hd_sound
thf(fact_151_VYDRA__MDL_Oru__t__Some,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Fs: list_P1095827921439705018_set_a,F: h,I: nat,Es: list_t,E: option2110264179601050681od_h_t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Fs @ F )
       => ( ( ( size_s5362121731612881446_set_a @ Fs )
            = ( suc @ I ) )
         => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ Run_hd ) @ ( t0_h_t_a @ Init_hd @ Run_hd ) @ Es @ E )
           => ( ( ord_less_eq_nat @ ( size_size_list_t @ Es ) @ I )
             => ? [E3: option2110264179601050681od_h_t,Et: t] :
                  ( ( run_t_h_t_a @ Run_hd @ E )
                  = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E3 @ Et ) ) ) ) ) ) ) ) ).

% VYDRA_MDL.ru_t_Some
thf(fact_152__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_153_reaches_Ointros_I2_J,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,S2: t,V: product_prod_o_o,N: nat,S3: t] :
      ( ( ( Run @ S )
        = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ S2 @ V ) ) )
     => ( ( reache739737707335374427od_o_o @ Run @ S2 @ N @ S3 )
       => ( reache739737707335374427od_o_o @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_154_reaches_Ointros_I2_J,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,S2: t,V: $o,N: nat,S3: t] :
      ( ( ( Run @ S )
        = ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ S2 @ V ) ) )
     => ( ( reaches_t_o @ Run @ S2 @ N @ S3 )
       => ( reaches_t_o @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_155_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_156_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_157_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_158_reaches_Ointros_I2_J,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,S2: list_vydra_aux_a_t_h,V: iarray_o,N: nat,S3: list_vydra_aux_a_t_h] :
      ( ( ( Run @ S )
        = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ S2 @ V ) ) )
     => ( ( reache2947816147551113615rray_o @ Run @ S2 @ N @ S3 )
       => ( reache2947816147551113615rray_o @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_159_reaches_Ointros_I2_J,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,S2: vydra_aux_a_t_h,V: product_prod_t_o,N: nat,S3: vydra_aux_a_t_h] :
      ( ( ( Run @ S )
        = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ S2 @ V ) ) )
     => ( ( reache549850244866497679od_t_o @ Run @ S2 @ N @ S3 )
       => ( reache549850244866497679od_t_o @ Run @ S @ ( suc @ N ) @ S3 ) ) ) ).

% reaches.intros(2)
thf(fact_160_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_161_reaches__Suc__split__last,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,N: nat,S2: t] :
      ( ( reache739737707335374427od_o_o @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S5: t,X: product_prod_o_o] :
          ( ( reache739737707335374427od_o_o @ Run @ S @ N @ S5 )
          & ( ( Run @ S5 )
            = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ S2 @ X ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_162_reaches__Suc__split__last,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,N: nat,S2: t] :
      ( ( reaches_t_o @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S5: t,X: $o] :
          ( ( reaches_t_o @ Run @ S @ N @ S5 )
          & ( ( Run @ S5 )
            = ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ S2 @ X ) ) ) ) ) ).

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

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

% reaches_Suc_split_last
thf(fact_165_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 )
     => ? [S5: option2110264179601050681od_h_t,X: t] :
          ( ( reache5944868495896439325_h_t_t @ Run @ S @ N @ S5 )
          & ( ( Run @ S5 )
            = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S2 @ X ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_166_reaches__Suc__split__last,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,N: nat,S2: list_vydra_aux_a_t_h] :
      ( ( reache2947816147551113615rray_o @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S5: list_vydra_aux_a_t_h,X: iarray_o] :
          ( ( reache2947816147551113615rray_o @ Run @ S @ N @ S5 )
          & ( ( Run @ S5 )
            = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ S2 @ X ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_167_reaches__Suc__split__last,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,N: nat,S2: vydra_aux_a_t_h] :
      ( ( reache549850244866497679od_t_o @ Run @ S @ ( suc @ N ) @ S2 )
     => ? [S5: vydra_aux_a_t_h,X: product_prod_t_o] :
          ( ( reache549850244866497679od_t_o @ Run @ S @ N @ S5 )
          & ( ( Run @ S5 )
            = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ S2 @ X ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_168_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 )
     => ? [S5: t,X: set_a] :
          ( ( reaches_t_set_a @ Run @ S @ N @ S5 )
          & ( ( Run @ S5 )
            = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S2 @ X ) ) ) ) ) ).

% reaches_Suc_split_last
thf(fact_169_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_170_VYDRA__MDL__def,axiom,
    ( vYDRA_MDL_a_t_h
    = ( ^ [Sigma2: trace_a_t,Init_hd2: h,Run_hd2: h > option5775791656947114332_set_a] :
        ! [N2: nat,S6: h,S7: h,T4: t,X8: set_a] :
          ( ( reache8480716032150177652_set_a @ Run_hd2 @ Init_hd2 @ N2 @ S6 )
         => ( ( ( Run_hd2 @ S6 )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S7 @ ( product_Pair_t_set_a @ T4 @ X8 ) ) ) )
           => ( ( product_Pair_t_set_a @ T4 @ X8 )
              = ( product_Pair_t_set_a @ ( tau_a_t @ Sigma2 @ N2 ) @ ( gamma_a_t @ Sigma2 @ N2 ) ) ) ) ) ) ) ).

% VYDRA_MDL_def
thf(fact_171_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,T: 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 @ T @ X6 ) ) ) )
         => ( ( product_Pair_t_set_a @ T @ X6 )
            = ( product_Pair_t_set_a @ ( tau_a_t @ Sigma @ N ) @ ( gamma_a_t @ Sigma @ N ) ) ) ) ) ) ).

% VYDRA_MDL.run_hd_sound
thf(fact_172_VYDRA__MDL_Ointro,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,Init_hd: h,Sigma: trace_a_t] :
      ( ! [N3: nat,S8: h,S9: h,T5: t,X9: set_a] :
          ( ( reache8480716032150177652_set_a @ Run_hd @ Init_hd @ N3 @ S8 )
         => ( ( ( Run_hd @ S8 )
              = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S9 @ ( product_Pair_t_set_a @ T5 @ X9 ) ) ) )
           => ( ( product_Pair_t_set_a @ T5 @ X9 )
              = ( product_Pair_t_set_a @ ( tau_a_t @ Sigma @ N3 ) @ ( gamma_a_t @ Sigma @ N3 ) ) ) ) )
     => ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd ) ) ).

% VYDRA_MDL.intro
thf(fact_173_nth__equalityI,axiom,
    ! [Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ Xs )
        = ( size_s5362121731612881446_set_a @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s5362121731612881446_set_a @ Xs ) )
           => ( ( nth_Pr633927046780761275_set_a @ Xs @ I2 )
              = ( nth_Pr633927046780761275_set_a @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_174_nth__equalityI,axiom,
    ! [Xs: list_vydra_aux_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( ( size_s8993897887676352572_a_t_h @ Xs )
        = ( size_s8993897887676352572_a_t_h @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s8993897887676352572_a_t_h @ Xs ) )
           => ( ( nth_vydra_aux_a_t_h @ Xs @ I2 )
              = ( nth_vydra_aux_a_t_h @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_175_nth__equalityI,axiom,
    ! [Xs: list_iarray_o,Ys2: list_iarray_o] :
      ( ( ( size_s3243743627286111600rray_o @ Xs )
        = ( size_s3243743627286111600rray_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s3243743627286111600rray_o @ Xs ) )
           => ( ( nth_iarray_o @ Xs @ I2 )
              = ( nth_iarray_o @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_176_nth__equalityI,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ( size_s8846756101701226951la_a_t @ Xs )
        = ( size_s8846756101701226951la_a_t @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s8846756101701226951la_a_t @ Xs ) )
           => ( ( nth_formula_a_t @ Xs @ I2 )
              = ( nth_formula_a_t @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_177_nth__equalityI,axiom,
    ! [Xs: list_t,Ys2: list_t] :
      ( ( ( size_size_list_t @ Xs )
        = ( size_size_list_t @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_t @ Xs ) )
           => ( ( nth_t @ Xs @ I2 )
              = ( nth_t @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_178_nth__equalityI,axiom,
    ! [Xs: list_o,Ys2: list_o] :
      ( ( ( size_size_list_o @ Xs )
        = ( size_size_list_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_o @ Xs ) )
           => ( ( nth_o @ Xs @ I2 )
              = ( nth_o @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_179_nth__equalityI,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( ( size_s1515746228057227161od_o_o @ Xs )
        = ( size_s1515746228057227161od_o_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s1515746228057227161od_o_o @ Xs ) )
           => ( ( nth_Product_prod_o_o @ Xs @ I2 )
              = ( nth_Product_prod_o_o @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_180_nth__equalityI,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( ( size_s4106575409306904672od_t_o @ Xs )
        = ( size_s4106575409306904672od_t_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_s4106575409306904672od_t_o @ Xs ) )
           => ( ( nth_Product_prod_t_o @ Xs @ I2 )
              = ( nth_Product_prod_t_o @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_181_nth__equalityI,axiom,
    ! [Xs: list_set_a,Ys2: list_set_a] :
      ( ( ( size_size_list_set_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( size_size_list_set_a @ Xs ) )
           => ( ( nth_set_a @ Xs @ I2 )
              = ( nth_set_a @ Ys2 @ I2 ) ) )
       => ( Xs = Ys2 ) ) ) ).

% nth_equalityI
thf(fact_182_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > product_prod_t_set_a > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: product_prod_t_set_a] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_P1095827921439705018_set_a] :
            ( ( ( size_s5362121731612881446_set_a @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_Pr633927046780761275_set_a @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_183_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > vydra_aux_a_t_h > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: vydra_aux_a_t_h] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_vydra_aux_a_t_h] :
            ( ( ( size_s8993897887676352572_a_t_h @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_vydra_aux_a_t_h @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_184_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > iarray_o > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: iarray_o] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_iarray_o] :
            ( ( ( size_s3243743627286111600rray_o @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_iarray_o @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_185_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > formula_a_t > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: formula_a_t] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_formula_a_t] :
            ( ( ( size_s8846756101701226951la_a_t @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_formula_a_t @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_186_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > t > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: t] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_t] :
            ( ( ( size_size_list_t @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_t @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_187_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > $o > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: $o] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_o] :
            ( ( ( size_size_list_o @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_o @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_188_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > product_prod_o_o > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: product_prod_o_o] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_P4002435161011370285od_o_o] :
            ( ( ( size_s1515746228057227161od_o_o @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_Product_prod_o_o @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_189_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > product_prod_t_o > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: product_prod_t_o] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_P5575445741472356340od_t_o] :
            ( ( ( size_s4106575409306904672od_t_o @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_Product_prod_t_o @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_190_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > set_a > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ K )
           => ? [X8: set_a] : ( P @ I3 @ X8 ) ) )
      = ( ? [Xs3: list_set_a] :
            ( ( ( size_size_list_set_a @ Xs3 )
              = K )
            & ! [I3: nat] :
                ( ( ord_less_nat @ I3 @ K )
               => ( P @ I3 @ ( nth_set_a @ Xs3 @ I3 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_191_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_P1095827921439705018_set_a,Z: list_P1095827921439705018_set_a] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_P1095827921439705018_set_a,Ys3: list_P1095827921439705018_set_a] :
          ( ( ( size_s5362121731612881446_set_a @ Xs3 )
            = ( size_s5362121731612881446_set_a @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s5362121731612881446_set_a @ Xs3 ) )
             => ( ( nth_Pr633927046780761275_set_a @ Xs3 @ I3 )
                = ( nth_Pr633927046780761275_set_a @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_192_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_vydra_aux_a_t_h,Z: list_vydra_aux_a_t_h] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_vydra_aux_a_t_h,Ys3: list_vydra_aux_a_t_h] :
          ( ( ( size_s8993897887676352572_a_t_h @ Xs3 )
            = ( size_s8993897887676352572_a_t_h @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s8993897887676352572_a_t_h @ Xs3 ) )
             => ( ( nth_vydra_aux_a_t_h @ Xs3 @ I3 )
                = ( nth_vydra_aux_a_t_h @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_193_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_iarray_o,Z: list_iarray_o] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_iarray_o,Ys3: list_iarray_o] :
          ( ( ( size_s3243743627286111600rray_o @ Xs3 )
            = ( size_s3243743627286111600rray_o @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s3243743627286111600rray_o @ Xs3 ) )
             => ( ( nth_iarray_o @ Xs3 @ I3 )
                = ( nth_iarray_o @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_194_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_formula_a_t,Z: list_formula_a_t] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_formula_a_t,Ys3: list_formula_a_t] :
          ( ( ( size_s8846756101701226951la_a_t @ Xs3 )
            = ( size_s8846756101701226951la_a_t @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s8846756101701226951la_a_t @ Xs3 ) )
             => ( ( nth_formula_a_t @ Xs3 @ I3 )
                = ( nth_formula_a_t @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_195_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_t,Z: list_t] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_t,Ys3: list_t] :
          ( ( ( size_size_list_t @ Xs3 )
            = ( size_size_list_t @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Xs3 ) )
             => ( ( nth_t @ Xs3 @ I3 )
                = ( nth_t @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_196_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_o,Z: list_o] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_o,Ys3: list_o] :
          ( ( ( size_size_list_o @ Xs3 )
            = ( size_size_list_o @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_o @ Xs3 ) )
             => ( ( nth_o @ Xs3 @ I3 )
                = ( nth_o @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_197_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_P4002435161011370285od_o_o,Z: list_P4002435161011370285od_o_o] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_P4002435161011370285od_o_o,Ys3: list_P4002435161011370285od_o_o] :
          ( ( ( size_s1515746228057227161od_o_o @ Xs3 )
            = ( size_s1515746228057227161od_o_o @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s1515746228057227161od_o_o @ Xs3 ) )
             => ( ( nth_Product_prod_o_o @ Xs3 @ I3 )
                = ( nth_Product_prod_o_o @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_198_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_P5575445741472356340od_t_o,Z: list_P5575445741472356340od_t_o] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_P5575445741472356340od_t_o,Ys3: list_P5575445741472356340od_t_o] :
          ( ( ( size_s4106575409306904672od_t_o @ Xs3 )
            = ( size_s4106575409306904672od_t_o @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_s4106575409306904672od_t_o @ Xs3 ) )
             => ( ( nth_Product_prod_t_o @ Xs3 @ I3 )
                = ( nth_Product_prod_t_o @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_199_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y4: list_set_a,Z: list_set_a] : ( Y4 = Z ) )
    = ( ^ [Xs3: list_set_a,Ys3: list_set_a] :
          ( ( ( size_size_list_set_a @ Xs3 )
            = ( size_size_list_set_a @ Ys3 ) )
          & ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ ( size_size_list_set_a @ Xs3 ) )
             => ( ( nth_set_a @ Xs3 @ I3 )
                = ( nth_set_a @ Ys3 @ I3 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_200_reaches__invar,axiom,
    ! [F: t > option2536733916571057475od_o_o,X3: t,N: nat,Y: t,P: t > $o] :
      ( ( reache739737707335374427od_o_o @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [Z2: t,Z3: t,V2: product_prod_o_o] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_201_reaches__invar,axiom,
    ! [F: t > option8291060355354214836od_t_o,X3: t,N: nat,Y: t,P: t > $o] :
      ( ( reaches_t_o @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [Z2: t,Z3: t,V2: $o] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_202_reaches__invar,axiom,
    ! [F: h > option5775791656947114332_set_a,X3: h,N: nat,Y: h,P: h > $o] :
      ( ( reache8480716032150177652_set_a @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [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_203_reaches__invar,axiom,
    ! [F: h > option2110264179601050681od_h_t,X3: h,N: nat,Y: h,P: h > $o] :
      ( ( reaches_h_t @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [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_204_reaches__invar,axiom,
    ! [F: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,X3: option2110264179601050681od_h_t,N: nat,Y: option2110264179601050681od_h_t,P: option2110264179601050681od_h_t > $o] :
      ( ( reache5944868495896439325_h_t_t @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [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_205_reaches__invar,axiom,
    ! [F: list_vydra_aux_a_t_h > option8553266494716013595rray_o,X3: list_vydra_aux_a_t_h,N: nat,Y: list_vydra_aux_a_t_h,P: list_vydra_aux_a_t_h > $o] :
      ( ( reache2947816147551113615rray_o @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [Z2: list_vydra_aux_a_t_h,Z3: list_vydra_aux_a_t_h,V2: iarray_o] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_206_reaches__invar,axiom,
    ! [F: vydra_aux_a_t_h > option4580262698044125979od_t_o,X3: vydra_aux_a_t_h,N: nat,Y: vydra_aux_a_t_h,P: vydra_aux_a_t_h > $o] :
      ( ( reache549850244866497679od_t_o @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [Z2: vydra_aux_a_t_h,Z3: vydra_aux_a_t_h,V2: product_prod_t_o] :
              ( ( P @ Z2 )
             => ( ( ( F @ Z2 )
                  = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ Z3 @ V2 ) ) )
               => ( P @ Z3 ) ) )
         => ( P @ Y ) ) ) ) ).

% reaches_invar
thf(fact_207_reaches__invar,axiom,
    ! [F: t > option4621139365931258234_set_a,X3: t,N: nat,Y: t,P: t > $o] :
      ( ( reaches_t_set_a @ F @ X3 @ N @ Y )
     => ( ( P @ X3 )
       => ( ! [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_208_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_209_reaches__on,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,N: nat,S2: list_vydra_aux_a_t_h] :
      ( ( reache2947816147551113615rray_o @ Run @ S @ N @ S2 )
     => ? [Vs3: list_iarray_o] :
          ( ( reache2401979074735462992rray_o @ Run @ S @ Vs3 @ S2 )
          & ( ( size_s3243743627286111600rray_o @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_210_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_211_reaches__on,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,N: nat,S2: h] :
      ( ( reaches_h_t @ Run @ S @ N @ S2 )
     => ? [Vs3: list_t] :
          ( ( reaches_on_h_t @ Run @ S @ Vs3 @ S2 )
          & ( ( size_size_list_t @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_212_reaches__on,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,N: nat,S2: t] :
      ( ( reaches_t_o @ Run @ S @ N @ S2 )
     => ? [Vs3: list_o] :
          ( ( reaches_on_t_o @ Run @ S @ Vs3 @ S2 )
          & ( ( size_size_list_o @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_213_reaches__on,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,N: nat,S2: t] :
      ( ( reache739737707335374427od_o_o @ Run @ S @ N @ S2 )
     => ? [Vs3: list_P4002435161011370285od_o_o] :
          ( ( reache4453078201178095962od_o_o @ Run @ S @ Vs3 @ S2 )
          & ( ( size_s1515746228057227161od_o_o @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_214_reaches__on,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,N: nat,S2: vydra_aux_a_t_h] :
      ( ( reache549850244866497679od_t_o @ Run @ S @ N @ S2 )
     => ? [Vs3: list_P5575445741472356340od_t_o] :
          ( ( reache8691153155344877136od_t_o @ Run @ S @ Vs3 @ S2 )
          & ( ( size_s4106575409306904672od_t_o @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_215_reaches__on,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,N: nat,S2: t] :
      ( ( reaches_t_set_a @ Run @ S @ N @ S2 )
     => ? [Vs3: list_set_a] :
          ( ( reaches_on_t_set_a @ Run @ S @ Vs3 @ S2 )
          & ( ( size_size_list_set_a @ Vs3 )
            = N ) ) ) ).

% reaches_on
thf(fact_216_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_217_reaches__on__n,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,S2: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ Run @ S @ Vs @ S2 )
     => ( reache2947816147551113615rray_o @ Run @ S @ ( size_s3243743627286111600rray_o @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_218_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_219_reaches__on__n,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h] :
      ( ( reaches_on_h_t @ Run @ S @ Vs @ S2 )
     => ( reaches_h_t @ Run @ S @ ( size_size_list_t @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_220_reaches__on__n,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,Vs: list_o,S2: t] :
      ( ( reaches_on_t_o @ Run @ S @ Vs @ S2 )
     => ( reaches_t_o @ Run @ S @ ( size_size_list_o @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_221_reaches__on__n,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,S2: t] :
      ( ( reache4453078201178095962od_o_o @ Run @ S @ Vs @ S2 )
     => ( reache739737707335374427od_o_o @ Run @ S @ ( size_s1515746228057227161od_o_o @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_222_reaches__on__n,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ Run @ S @ Vs @ S2 )
     => ( reache549850244866497679od_t_o @ Run @ S @ ( size_s4106575409306904672od_t_o @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_223_reaches__on__n,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t] :
      ( ( reaches_on_t_set_a @ Run @ S @ Vs @ S2 )
     => ( reaches_t_set_a @ Run @ S @ ( size_size_list_set_a @ Vs ) @ S2 ) ) ).

% reaches_on_n
thf(fact_224_less__eq__prod__simp,axiom,
    ! [X1: t,Y1: product_prod_o_o,X2: t,Y2: product_prod_o_o] :
      ( ( ord_le386858854047861021od_o_o @ ( produc1891450550985068525od_o_o @ X1 @ Y1 ) @ ( produc1891450550985068525od_o_o @ X2 @ Y2 ) )
      = ( ( ord_less_t @ X1 @ X2 )
        | ( ( ord_less_eq_t @ X1 @ X2 )
          & ( ord_le2636248316962427079od_o_o @ Y1 @ Y2 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_225_less__eq__prod__simp,axiom,
    ! [X1: t,Y1: $o,X2: t,Y2: $o] :
      ( ( ord_le1999770283289415822od_t_o @ ( product_Pair_t_o @ X1 @ Y1 ) @ ( product_Pair_t_o @ X2 @ Y2 ) )
      = ( ( ord_less_t @ X1 @ X2 )
        | ( ( ord_less_eq_t @ X1 @ X2 )
          & ( ord_less_eq_o @ Y1 @ Y2 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_226_less__eq__prod__simp,axiom,
    ! [X1: t,Y1: set_a,X2: t,Y2: set_a] :
      ( ( ord_le1576776917030837460_set_a @ ( product_Pair_t_set_a @ X1 @ Y1 ) @ ( product_Pair_t_set_a @ X2 @ Y2 ) )
      = ( ( ord_less_t @ X1 @ X2 )
        | ( ( ord_less_eq_t @ X1 @ X2 )
          & ( ord_less_eq_set_a @ Y1 @ Y2 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_227_less__eq__prod__simp,axiom,
    ! [X1: nat,Y1: nat,X2: nat,Y2: nat] :
      ( ( ord_le8460144461188290721at_nat @ ( product_Pair_nat_nat @ X1 @ Y1 ) @ ( product_Pair_nat_nat @ X2 @ Y2 ) )
      = ( ( ord_less_nat @ X1 @ X2 )
        | ( ( ord_less_eq_nat @ X1 @ X2 )
          & ( ord_less_eq_nat @ Y1 @ Y2 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_228_less__prod__simp,axiom,
    ! [X1: t,Y1: product_prod_o_o,X2: t,Y2: product_prod_o_o] :
      ( ( ord_le5151895322379853865od_o_o @ ( produc1891450550985068525od_o_o @ X1 @ Y1 ) @ ( produc1891450550985068525od_o_o @ X2 @ Y2 ) )
      = ( ( ord_less_t @ X1 @ X2 )
        | ( ( ord_less_eq_t @ X1 @ X2 )
          & ( ord_le637433070719144915od_o_o @ Y1 @ Y2 ) ) ) ) ).

% less_prod_simp
thf(fact_229_less__prod__simp,axiom,
    ! [X1: t,Y1: $o,X2: t,Y2: $o] :
      ( ( ord_le3945363144663698842od_t_o @ ( product_Pair_t_o @ X1 @ Y1 ) @ ( product_Pair_t_o @ X2 @ Y2 ) )
      = ( ( ord_less_t @ X1 @ X2 )
        | ( ( ord_less_eq_t @ X1 @ X2 )
          & ( ord_less_o @ Y1 @ Y2 ) ) ) ) ).

% less_prod_simp
thf(fact_230_less__prod__simp,axiom,
    ! [X1: t,Y1: set_a,X2: t,Y2: set_a] :
      ( ( ord_le7650071679307129824_set_a @ ( product_Pair_t_set_a @ X1 @ Y1 ) @ ( product_Pair_t_set_a @ X2 @ Y2 ) )
      = ( ( ord_less_t @ X1 @ X2 )
        | ( ( ord_less_eq_t @ X1 @ X2 )
          & ( ord_less_set_a @ Y1 @ Y2 ) ) ) ) ).

% less_prod_simp
thf(fact_231_less__prod__simp,axiom,
    ! [X1: nat,Y1: nat,X2: nat,Y2: nat] :
      ( ( ord_le1203424502768444845at_nat @ ( product_Pair_nat_nat @ X1 @ Y1 ) @ ( product_Pair_nat_nat @ X2 @ Y2 ) )
      = ( ( ord_less_nat @ X1 @ X2 )
        | ( ( ord_less_eq_nat @ X1 @ X2 )
          & ( ord_less_nat @ Y1 @ Y2 ) ) ) ) ).

% less_prod_simp
thf(fact_232_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_233_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_234_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_235_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

% lessI
thf(fact_236_Suc__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_237_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_238_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_239_run__hd__tau__in,axiom,
    ! [Vs: list_P1095827921439705018_set_a,E4: h,E5: h,T2: t,X10: set_a,J: nat] :
      ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Vs @ E4 )
     => ( ( ( run_hd @ E4 )
          = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ E5 @ ( product_Pair_t_set_a @ T2 @ X10 ) ) ) )
       => ( ( ord_less_nat @ J @ ( size_s5362121731612881446_set_a @ Vs ) )
         => ( ( nth_t @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ J )
            = ( tau_a_t @ sigma @ J ) ) ) ) ) ).

% run_hd_tau_in
thf(fact_240_diff__less__mono,axiom,
    ! [A: nat,B: nat,C2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C2 @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C2 ) @ ( minus_minus_nat @ B @ C2 ) ) ) ) ).

% diff_less_mono
thf(fact_241_nat_Oinject,axiom,
    ! [X2: nat,Y2: nat] :
      ( ( ( suc @ X2 )
        = ( suc @ Y2 ) )
      = ( X2 = Y2 ) ) ).

% nat.inject
thf(fact_242_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_243_length__map,axiom,
    ! [F: t > t,Xs: list_t] :
      ( ( size_size_list_t @ ( map_t_t @ F @ Xs ) )
      = ( size_size_list_t @ Xs ) ) ).

% length_map
thf(fact_244_length__map,axiom,
    ! [F: $o > t,Xs: list_o] :
      ( ( size_size_list_t @ ( map_o_t @ F @ Xs ) )
      = ( size_size_list_o @ Xs ) ) ).

% length_map
thf(fact_245_length__map,axiom,
    ! [F: t > $o,Xs: list_t] :
      ( ( size_size_list_o @ ( map_t_o @ F @ Xs ) )
      = ( size_size_list_t @ Xs ) ) ).

% length_map
thf(fact_246_length__map,axiom,
    ! [F: $o > $o,Xs: list_o] :
      ( ( size_size_list_o @ ( map_o_o @ F @ Xs ) )
      = ( size_size_list_o @ Xs ) ) ).

% length_map
thf(fact_247_length__map,axiom,
    ! [F: t > iarray_o,Xs: list_t] :
      ( ( size_s3243743627286111600rray_o @ ( map_t_iarray_o @ F @ Xs ) )
      = ( size_size_list_t @ Xs ) ) ).

% length_map
thf(fact_248_length__map,axiom,
    ! [F: $o > iarray_o,Xs: list_o] :
      ( ( size_s3243743627286111600rray_o @ ( map_o_iarray_o @ F @ Xs ) )
      = ( size_size_list_o @ Xs ) ) ).

% length_map
thf(fact_249_length__map,axiom,
    ! [F: iarray_o > t,Xs: list_iarray_o] :
      ( ( size_size_list_t @ ( map_iarray_o_t @ F @ Xs ) )
      = ( size_s3243743627286111600rray_o @ Xs ) ) ).

% length_map
thf(fact_250_length__map,axiom,
    ! [F: set_a > t,Xs: list_set_a] :
      ( ( size_size_list_t @ ( map_set_a_t @ F @ Xs ) )
      = ( size_size_list_set_a @ Xs ) ) ).

% length_map
thf(fact_251_length__map,axiom,
    ! [F: iarray_o > $o,Xs: list_iarray_o] :
      ( ( size_size_list_o @ ( map_iarray_o_o @ F @ Xs ) )
      = ( size_s3243743627286111600rray_o @ Xs ) ) ).

% length_map
thf(fact_252_length__map,axiom,
    ! [F: set_a > $o,Xs: list_set_a] :
      ( ( size_size_list_o @ ( map_set_a_o @ F @ Xs ) )
      = ( size_size_list_set_a @ Xs ) ) ).

% length_map
thf(fact_253_nth__map,axiom,
    ! [N: nat,Xs: list_t,F: t > t] :
      ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs ) )
     => ( ( nth_t @ ( map_t_t @ F @ Xs ) @ N )
        = ( F @ ( nth_t @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_254_nth__map,axiom,
    ! [N: nat,Xs: list_o,F: $o > t] :
      ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
     => ( ( nth_t @ ( map_o_t @ F @ Xs ) @ N )
        = ( F @ ( nth_o @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_255_nth__map,axiom,
    ! [N: nat,Xs: list_iarray_o,F: iarray_o > t] :
      ( ( ord_less_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) )
     => ( ( nth_t @ ( map_iarray_o_t @ F @ Xs ) @ N )
        = ( F @ ( nth_iarray_o @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_256_nth__map,axiom,
    ! [N: nat,Xs: list_set_a,F: set_a > t] :
      ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
     => ( ( nth_t @ ( map_set_a_t @ F @ Xs ) @ N )
        = ( F @ ( nth_set_a @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_257_nth__map,axiom,
    ! [N: nat,Xs: list_formula_a_t,F: formula_a_t > t] :
      ( ( ord_less_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) )
     => ( ( nth_t @ ( map_formula_a_t_t @ F @ Xs ) @ N )
        = ( F @ ( nth_formula_a_t @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_258_nth__map,axiom,
    ! [N: nat,Xs: list_formula_a_t,F: formula_a_t > $o] :
      ( ( ord_less_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) )
     => ( ( nth_o @ ( map_formula_a_t_o @ F @ Xs ) @ N )
        = ( F @ ( nth_formula_a_t @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_259_nth__map,axiom,
    ! [N: nat,Xs: list_t,F: t > formula_a_t] :
      ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs ) )
     => ( ( nth_formula_a_t @ ( map_t_formula_a_t @ F @ Xs ) @ N )
        = ( F @ ( nth_t @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_260_nth__map,axiom,
    ! [N: nat,Xs: list_o,F: $o > formula_a_t] :
      ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
     => ( ( nth_formula_a_t @ ( map_o_formula_a_t @ F @ Xs ) @ N )
        = ( F @ ( nth_o @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_261_nth__map,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o,F: product_prod_o_o > t] :
      ( ( ord_less_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) )
     => ( ( nth_t @ ( map_Pr6440341256526503406_o_o_t @ F @ Xs ) @ N )
        = ( F @ ( nth_Product_prod_o_o @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_262_nth__map,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o,F: product_prod_t_o > t] :
      ( ( ord_less_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) )
     => ( ( nth_t @ ( map_Pr4056436085500758887_t_o_t @ F @ Xs ) @ N )
        = ( F @ ( nth_Product_prod_t_o @ Xs @ N ) ) ) ) ).

% nth_map
thf(fact_263_map__eq__imp__length__eq,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: t > $o,Ys2: list_t] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_t_o @ G @ Ys2 ) )
     => ( ( size_s8846756101701226951la_a_t @ Xs )
        = ( size_size_list_t @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_264_map__eq__imp__length__eq,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: $o > $o,Ys2: list_o] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_o_o @ G @ Ys2 ) )
     => ( ( size_s8846756101701226951la_a_t @ Xs )
        = ( size_size_list_o @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_265_map__eq__imp__length__eq,axiom,
    ! [F: t > $o,Xs: list_t,G: formula_a_t > $o,Ys2: list_formula_a_t] :
      ( ( ( map_t_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Ys2 ) )
     => ( ( size_size_list_t @ Xs )
        = ( size_s8846756101701226951la_a_t @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_266_map__eq__imp__length__eq,axiom,
    ! [F: $o > $o,Xs: list_o,G: formula_a_t > $o,Ys2: list_formula_a_t] :
      ( ( ( map_o_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Ys2 ) )
     => ( ( size_size_list_o @ Xs )
        = ( size_s8846756101701226951la_a_t @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_267_map__eq__imp__length__eq,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a,G: t > t,Ys2: list_t] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = ( map_t_t @ G @ Ys2 ) )
     => ( ( size_s5362121731612881446_set_a @ Xs )
        = ( size_size_list_t @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_268_map__eq__imp__length__eq,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a,G: $o > t,Ys2: list_o] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = ( map_o_t @ G @ Ys2 ) )
     => ( ( size_s5362121731612881446_set_a @ Xs )
        = ( size_size_list_o @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_269_map__eq__imp__length__eq,axiom,
    ! [F: iarray_o > $o,Xs: list_iarray_o,G: formula_a_t > $o,Ys2: list_formula_a_t] :
      ( ( ( map_iarray_o_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Ys2 ) )
     => ( ( size_s3243743627286111600rray_o @ Xs )
        = ( size_s8846756101701226951la_a_t @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_270_map__eq__imp__length__eq,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: iarray_o > $o,Ys2: list_iarray_o] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_iarray_o_o @ G @ Ys2 ) )
     => ( ( size_s8846756101701226951la_a_t @ Xs )
        = ( size_s3243743627286111600rray_o @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_271_map__eq__imp__length__eq,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: set_a > $o,Ys2: list_set_a] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_set_a_o @ G @ Ys2 ) )
     => ( ( size_s8846756101701226951la_a_t @ Xs )
        = ( size_size_list_set_a @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_272_map__eq__imp__length__eq,axiom,
    ! [F: t > t,Xs: list_t,G: product_prod_t_set_a > t,Ys2: list_P1095827921439705018_set_a] :
      ( ( ( map_t_t @ F @ Xs )
        = ( map_Pr119846518281778721et_a_t @ G @ Ys2 ) )
     => ( ( size_size_list_t @ Xs )
        = ( size_s5362121731612881446_set_a @ Ys2 ) ) ) ).

% map_eq_imp_length_eq
thf(fact_273_fst__conv,axiom,
    ! [X1: t,X2: product_prod_o_o] :
      ( ( produc1892153463183078873od_o_o @ ( produc1891450550985068525od_o_o @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_274_fst__conv,axiom,
    ! [X1: t,X2: $o] :
      ( ( product_fst_t_o @ ( product_Pair_t_o @ X1 @ X2 ) )
      = X1 ) ).

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

% fst_conv
thf(fact_276_fst__conv,axiom,
    ! [X1: h,X2: t] :
      ( ( product_fst_h_t @ ( product_Pair_h_t @ X1 @ X2 ) )
      = X1 ) ).

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

% fst_conv
thf(fact_278_fst__conv,axiom,
    ! [X1: list_vydra_aux_a_t_h,X2: iarray_o] :
      ( ( produc6595003253218802065rray_o @ ( produc8472968102330193021rray_o @ X1 @ X2 ) )
      = X1 ) ).

% fst_conv
thf(fact_279_fst__conv,axiom,
    ! [X1: vydra_aux_a_t_h,X2: product_prod_t_o] :
      ( ( produc288163909963368081od_t_o @ ( produc5956389175556509053od_t_o @ X1 @ X2 ) )
      = X1 ) ).

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

% fst_conv
thf(fact_281_fst__eqD,axiom,
    ! [X3: t,Y: product_prod_o_o,A: t] :
      ( ( ( produc1892153463183078873od_o_o @ ( produc1891450550985068525od_o_o @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_282_fst__eqD,axiom,
    ! [X3: t,Y: $o,A: t] :
      ( ( ( product_fst_t_o @ ( product_Pair_t_o @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_283_fst__eqD,axiom,
    ! [X3: h,Y: product_prod_t_set_a,A: h] :
      ( ( ( produc6892702156181598450_set_a @ ( produc3432067189782488838_set_a @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_284_fst__eqD,axiom,
    ! [X3: h,Y: t,A: h] :
      ( ( ( product_fst_h_t @ ( product_Pair_h_t @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_285_fst__eqD,axiom,
    ! [X3: option2110264179601050681od_h_t,Y: t,A: option2110264179601050681od_h_t] :
      ( ( ( produc4004510029700249243_h_t_t @ ( produc770200333395398319_h_t_t @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_286_fst__eqD,axiom,
    ! [X3: list_vydra_aux_a_t_h,Y: iarray_o,A: list_vydra_aux_a_t_h] :
      ( ( ( produc6595003253218802065rray_o @ ( produc8472968102330193021rray_o @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_287_fst__eqD,axiom,
    ! [X3: vydra_aux_a_t_h,Y: product_prod_t_o,A: vydra_aux_a_t_h] :
      ( ( ( produc288163909963368081od_t_o @ ( produc5956389175556509053od_t_o @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_288_fst__eqD,axiom,
    ! [X3: t,Y: set_a,A: t] :
      ( ( ( product_fst_t_set_a @ ( product_Pair_t_set_a @ X3 @ Y ) )
        = A )
     => ( X3 = A ) ) ).

% fst_eqD
thf(fact_289_reaches__on__run__hd__t,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,Init_hd: h,Vs: list_P1095827921439705018_set_a,E: h] :
      ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Vs @ E )
     => ? [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_290_map__equality__iff,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: t > $o,Ys2: list_t] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_t_o @ G @ Ys2 ) )
      = ( ( ( size_s8846756101701226951la_a_t @ Xs )
          = ( size_size_list_t @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Ys2 ) )
           => ( ( F @ ( nth_formula_a_t @ Xs @ I3 ) )
              = ( G @ ( nth_t @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_291_map__equality__iff,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: $o > $o,Ys2: list_o] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_o_o @ G @ Ys2 ) )
      = ( ( ( size_s8846756101701226951la_a_t @ Xs )
          = ( size_size_list_o @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_o @ Ys2 ) )
           => ( ( F @ ( nth_formula_a_t @ Xs @ I3 ) )
              = ( G @ ( nth_o @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_292_map__equality__iff,axiom,
    ! [F: t > $o,Xs: list_t,G: formula_a_t > $o,Ys2: list_formula_a_t] :
      ( ( ( map_t_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Ys2 ) )
      = ( ( ( size_size_list_t @ Xs )
          = ( size_s8846756101701226951la_a_t @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8846756101701226951la_a_t @ Ys2 ) )
           => ( ( F @ ( nth_t @ Xs @ I3 ) )
              = ( G @ ( nth_formula_a_t @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_293_map__equality__iff,axiom,
    ! [F: $o > $o,Xs: list_o,G: formula_a_t > $o,Ys2: list_formula_a_t] :
      ( ( ( map_o_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Ys2 ) )
      = ( ( ( size_size_list_o @ Xs )
          = ( size_s8846756101701226951la_a_t @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8846756101701226951la_a_t @ Ys2 ) )
           => ( ( F @ ( nth_o @ Xs @ I3 ) )
              = ( G @ ( nth_formula_a_t @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_294_map__equality__iff,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a,G: t > t,Ys2: list_t] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = ( map_t_t @ G @ Ys2 ) )
      = ( ( ( size_s5362121731612881446_set_a @ Xs )
          = ( size_size_list_t @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Ys2 ) )
           => ( ( F @ ( nth_Pr633927046780761275_set_a @ Xs @ I3 ) )
              = ( G @ ( nth_t @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_295_map__equality__iff,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a,G: $o > t,Ys2: list_o] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = ( map_o_t @ G @ Ys2 ) )
      = ( ( ( size_s5362121731612881446_set_a @ Xs )
          = ( size_size_list_o @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_o @ Ys2 ) )
           => ( ( F @ ( nth_Pr633927046780761275_set_a @ Xs @ I3 ) )
              = ( G @ ( nth_o @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_296_map__equality__iff,axiom,
    ! [F: iarray_o > $o,Xs: list_iarray_o,G: formula_a_t > $o,Ys2: list_formula_a_t] :
      ( ( ( map_iarray_o_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Ys2 ) )
      = ( ( ( size_s3243743627286111600rray_o @ Xs )
          = ( size_s8846756101701226951la_a_t @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8846756101701226951la_a_t @ Ys2 ) )
           => ( ( F @ ( nth_iarray_o @ Xs @ I3 ) )
              = ( G @ ( nth_formula_a_t @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_297_map__equality__iff,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: iarray_o > $o,Ys2: list_iarray_o] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_iarray_o_o @ G @ Ys2 ) )
      = ( ( ( size_s8846756101701226951la_a_t @ Xs )
          = ( size_s3243743627286111600rray_o @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3243743627286111600rray_o @ Ys2 ) )
           => ( ( F @ ( nth_formula_a_t @ Xs @ I3 ) )
              = ( G @ ( nth_iarray_o @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_298_map__equality__iff,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: set_a > $o,Ys2: list_set_a] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_set_a_o @ G @ Ys2 ) )
      = ( ( ( size_s8846756101701226951la_a_t @ Xs )
          = ( size_size_list_set_a @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_set_a @ Ys2 ) )
           => ( ( F @ ( nth_formula_a_t @ Xs @ I3 ) )
              = ( G @ ( nth_set_a @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_299_map__equality__iff,axiom,
    ! [F: t > t,Xs: list_t,G: product_prod_t_set_a > t,Ys2: list_P1095827921439705018_set_a] :
      ( ( ( map_t_t @ F @ Xs )
        = ( map_Pr119846518281778721et_a_t @ G @ Ys2 ) )
      = ( ( ( size_size_list_t @ Xs )
          = ( size_s5362121731612881446_set_a @ Ys2 ) )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5362121731612881446_set_a @ Ys2 ) )
           => ( ( F @ ( nth_t @ Xs @ I3 ) )
              = ( G @ ( nth_Pr633927046780761275_set_a @ Ys2 @ I3 ) ) ) ) ) ) ).

% map_equality_iff
thf(fact_300_Suc__inject,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ( suc @ X3 )
        = ( suc @ Y ) )
     => ( X3 = Y ) ) ).

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

% n_not_Suc_n
thf(fact_302_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_303_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_304_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_305_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_306_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_307_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y3: nat] :
            ( ( P @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ? [X: nat] :
            ( ( P @ X )
            & ! [Y5: nat] :
                ( ( P @ Y5 )
               => ( ord_less_eq_nat @ Y5 @ X ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_308_linorder__neqE__nat,axiom,
    ! [X3: nat,Y: nat] :
      ( ( X3 != Y )
     => ( ~ ( ord_less_nat @ X3 @ Y )
       => ( ord_less_nat @ Y @ X3 ) ) ) ).

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

% infinite_descent
thf(fact_310_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M2: nat] :
              ( ( ord_less_nat @ M2 @ N3 )
             => ( P @ M2 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

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

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

% less_not_refl3
thf(fact_313_less__not__refl2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( M != N ) ) ).

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

% less_not_refl
thf(fact_315_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_316_size__neq__size__imp__neq,axiom,
    ! [X3: list_P1095827921439705018_set_a,Y: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ X3 )
       != ( size_s5362121731612881446_set_a @ Y ) )
     => ( X3 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_317_size__neq__size__imp__neq,axiom,
    ! [X3: list_vydra_aux_a_t_h,Y: list_vydra_aux_a_t_h] :
      ( ( ( size_s8993897887676352572_a_t_h @ X3 )
       != ( size_s8993897887676352572_a_t_h @ Y ) )
     => ( X3 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_318_size__neq__size__imp__neq,axiom,
    ! [X3: list_iarray_o,Y: list_iarray_o] :
      ( ( ( size_s3243743627286111600rray_o @ X3 )
       != ( size_s3243743627286111600rray_o @ Y ) )
     => ( X3 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_319_size__neq__size__imp__neq,axiom,
    ! [X3: list_formula_a_t,Y: list_formula_a_t] :
      ( ( ( size_s8846756101701226951la_a_t @ X3 )
       != ( size_s8846756101701226951la_a_t @ Y ) )
     => ( X3 != Y ) ) ).

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

% size_neq_size_imp_neq
thf(fact_321_size__neq__size__imp__neq,axiom,
    ! [X3: list_o,Y: list_o] :
      ( ( ( size_size_list_o @ X3 )
       != ( size_size_list_o @ Y ) )
     => ( X3 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_322_size__neq__size__imp__neq,axiom,
    ! [X3: list_P4002435161011370285od_o_o,Y: list_P4002435161011370285od_o_o] :
      ( ( ( size_s1515746228057227161od_o_o @ X3 )
       != ( size_s1515746228057227161od_o_o @ Y ) )
     => ( X3 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_323_size__neq__size__imp__neq,axiom,
    ! [X3: list_P5575445741472356340od_t_o,Y: list_P5575445741472356340od_t_o] :
      ( ( ( size_s4106575409306904672od_t_o @ X3 )
       != ( size_s4106575409306904672od_t_o @ Y ) )
     => ( X3 != Y ) ) ).

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

% size_neq_size_imp_neq
thf(fact_325_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_326_reach__event__t,axiom,
    ! [Run_hd: option2110264179601050681od_h_t > option7188603832408115496_set_a,E: option2110264179601050681od_h_t,Vs: list_P1095827921439705018_set_a,E4: option2110264179601050681od_h_t,E6: option2110264179601050681od_h_t,T: t,X6: set_a,E5: option2110264179601050681od_h_t,T2: t,X10: set_a] :
      ( ( reache8330399945480511167_set_a @ Run_hd @ E @ Vs @ E4 )
     => ( ( ( Run_hd @ E )
          = ( some_P6376182011896009927_set_a @ ( produc451741411942435538_set_a @ E6 @ ( product_Pair_t_set_a @ T @ X6 ) ) ) )
       => ( ( ( Run_hd @ E4 )
            = ( some_P6376182011896009927_set_a @ ( produc451741411942435538_set_a @ E5 @ ( product_Pair_t_set_a @ T2 @ X10 ) ) ) )
         => ( reache4450721910237653584_t_t_t @ ( run_t_6187369673847646894_t_t_a @ Run_hd ) @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E6 @ T ) ) @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E5 @ T2 ) ) ) ) ) ) ).

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

% reach_event_t
thf(fact_328_VYDRA__MDL_Orun__hd__tau__in,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Vs: list_P1095827921439705018_set_a,E4: h,E5: h,T2: t,X10: set_a,J: nat] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Vs @ E4 )
       => ( ( ( Run_hd @ E4 )
            = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ E5 @ ( product_Pair_t_set_a @ T2 @ X10 ) ) ) )
         => ( ( ord_less_nat @ J @ ( size_s5362121731612881446_set_a @ Vs ) )
           => ( ( nth_t @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) @ J )
              = ( tau_a_t @ Sigma @ J ) ) ) ) ) ) ).

% VYDRA_MDL.run_hd_tau_in
thf(fact_329_reach__event__t0__t,axiom,
    ! [Run_hd: option2110264179601050681od_h_t > option7188603832408115496_set_a,Init_hd: option2110264179601050681od_h_t,Vs: list_P1095827921439705018_set_a,E4: option2110264179601050681od_h_t,E5: option2110264179601050681od_h_t,T2: t,X10: set_a] :
      ( ( reache8330399945480511167_set_a @ Run_hd @ Init_hd @ Vs @ E4 )
     => ( ( ( Run_hd @ E4 )
          = ( some_P6376182011896009927_set_a @ ( produc451741411942435538_set_a @ E5 @ ( product_Pair_t_set_a @ T2 @ 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 @ E5 @ T2 ) ) ) ) ) ).

% reach_event_t0_t
thf(fact_330_reach__event__t0__t,axiom,
    ! [Run_hd: h > option5775791656947114332_set_a,Init_hd: h,Vs: list_P1095827921439705018_set_a,E4: h,E5: h,T2: t,X10: set_a] :
      ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Vs @ E4 )
     => ( ( ( Run_hd @ E4 )
          = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ E5 @ ( product_Pair_t_set_a @ T2 @ 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 @ E5 @ T2 ) ) ) ) ) ).

% reach_event_t0_t
thf(fact_331_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_leD
thf(fact_332_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_333_le__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_334_Suc__le__D,axiom,
    ! [N: nat,M3: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M3 )
     => ? [M4: nat] :
          ( M3
          = ( suc @ M4 ) ) ) ).

% Suc_le_D
thf(fact_335_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_336_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_337_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_338_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M2: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M2 ) @ N3 )
             => ( P @ M2 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_339_nat__induct__at__least,axiom,
    ! [M: nat,N: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( P @ M )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ M @ N3 )
             => ( ( P @ N3 )
               => ( P @ ( suc @ N3 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_340_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R2: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X: nat] : ( R2 @ X @ X )
       => ( ! [X: nat,Y3: nat,Z2: nat] :
              ( ( R2 @ X @ Y3 )
             => ( ( R2 @ Y3 @ Z2 )
               => ( R2 @ X @ Z2 ) ) )
         => ( ! [N3: nat] : ( R2 @ N3 @ ( suc @ N3 ) )
           => ( R2 @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_341_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_342_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I2: nat] :
            ( ( J
              = ( suc @ I2 ) )
           => ( P @ I2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ J )
             => ( ( P @ ( suc @ I2 ) )
               => ( P @ I2 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_343_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I2: nat] : ( P @ I2 @ ( suc @ I2 ) )
       => ( ! [I2: nat,J2: nat,K2: nat] :
              ( ( ord_less_nat @ I2 @ J2 )
             => ( ( ord_less_nat @ J2 @ K2 )
               => ( ( P @ I2 @ J2 )
                 => ( ( P @ J2 @ K2 )
                   => ( P @ I2 @ K2 ) ) ) ) )
         => ( P @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_344_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_345_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_346_less__antisym,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
       => ( M = N ) ) ) ).

% less_antisym
thf(fact_347_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_348_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
           => ( P @ I3 ) ) )
      = ( ( P @ N )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
           => ( P @ I3 ) ) ) ) ).

% All_less_Suc
thf(fact_349_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_350_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_351_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
            & ( P @ I3 ) ) )
      = ( ( P @ N )
        | ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
            & ( P @ I3 ) ) ) ) ).

% Ex_less_Suc
thf(fact_352_less__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_353_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

% less_SucE
thf(fact_354_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_355_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_356_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_357_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_358_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J: nat] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ J2 )
         => ( ord_less_nat @ ( F @ I2 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_359_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_360_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_361_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M6: nat,N2: nat] :
          ( ( ord_less_nat @ M6 @ N2 )
          | ( M6 = N2 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_362_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_363_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M6: nat,N2: nat] :
          ( ( ord_less_eq_nat @ M6 @ N2 )
          & ( M6 != N2 ) ) ) ) ).

% nat_less_le
thf(fact_364_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N3: nat] :
            ( ( P @ ( suc @ N3 ) )
           => ( P @ N3 ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_365_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_366_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_367_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_368_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_369_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_370_le__diff__iff_H,axiom,
    ! [A: nat,C2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C2 )
     => ( ( ord_less_eq_nat @ B @ C2 )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C2 @ A ) @ ( minus_minus_nat @ C2 @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_371_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_372_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_373_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_374_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_375_lift__Suc__antimono__le,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_376_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_377_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ N @ N4 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_378_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_379_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_380_dec__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ I )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P @ N3 )
                 => ( P @ ( suc @ N3 ) ) ) ) )
         => ( P @ J ) ) ) ) ).

% dec_induct
thf(fact_381_inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ J )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P @ ( suc @ N3 ) )
                 => ( P @ N3 ) ) ) )
         => ( P @ I ) ) ) ) ).

% inc_induct
thf(fact_382_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_383_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_384_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_385_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N2: nat] : ( ord_less_eq_nat @ ( suc @ N2 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_386_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_387_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_388_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_389_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_390_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_391_reaches__on__progress,axiom,
    ! [Vs: list_P1095827921439705018_set_a,E: h,Phi: formula_a_t] :
      ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Vs @ E )
     => ( ord_less_eq_nat @ ( progress_a_t @ Phi @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) ) @ ( size_s5362121731612881446_set_a @ Vs ) ) ) ).

% reaches_on_progress
thf(fact_392_run_I3_J,axiom,
    ord_less_nat @ i2 @ ( progress_a_t @ phi @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ vs ) ) ).

% run(3)
thf(fact_393_order__refl,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ X3 @ X3 ) ).

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

% dual_order.refl
thf(fact_395_chain__le,axiom,
    ! [Xs: list_t,I: nat,J: nat] :
      ( ( chain_le_t @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_t @ Xs ) )
         => ( ord_less_eq_t @ ( nth_t @ Xs @ I ) @ ( nth_t @ Xs @ J ) ) ) ) ) ).

% chain_le
thf(fact_396_chain__le,axiom,
    ! [Xs: list_nat,I: nat,J: nat] :
      ( ( chain_le_nat @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
         => ( ord_less_eq_nat @ ( nth_nat @ Xs @ I ) @ ( nth_nat @ Xs @ J ) ) ) ) ) ).

% chain_le
thf(fact_397_VYDRA__MDL_Oreaches__on__progress,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Vs: list_P1095827921439705018_set_a,E: h,Phi: formula_a_t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Vs @ E )
       => ( ord_less_eq_nat @ ( progress_a_t @ Phi @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Vs ) ) @ ( size_s5362121731612881446_set_a @ Vs ) ) ) ) ).

% VYDRA_MDL.reaches_on_progress
thf(fact_398_reaches__on__suffix,axiom,
    ! [R: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,Vs2: list_P1095827921439705018_set_a,S3: h] :
      ( ( reache3397181163414509427_set_a @ R @ S @ Vs @ S2 )
     => ( ( reache3397181163414509427_set_a @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Vs2 ) @ ( size_s5362121731612881446_set_a @ Vs ) )
         => ? [Vs4: list_P1095827921439705018_set_a] :
              ( ( reache3397181163414509427_set_a @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append8768163766229313743_set_a @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_399_reaches__on__suffix,axiom,
    ! [R: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,S2: list_vydra_aux_a_t_h,Vs2: list_iarray_o,S3: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ R @ S @ Vs @ S2 )
     => ( ( reache2401979074735462992rray_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_s3243743627286111600rray_o @ Vs2 ) @ ( size_s3243743627286111600rray_o @ Vs ) )
         => ? [Vs4: list_iarray_o] :
              ( ( reache2401979074735462992rray_o @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append_iarray_o @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_400_reaches__on__suffix,axiom,
    ! [R: 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 @ R @ S @ Vs @ S2 )
     => ( ( reache645946503560514460_h_t_t @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_size_list_t @ Vs2 ) @ ( size_size_list_t @ Vs ) )
         => ? [Vs4: list_t] :
              ( ( reache645946503560514460_h_t_t @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append_t @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_401_reaches__on__suffix,axiom,
    ! [R: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,Vs2: list_t,S3: h] :
      ( ( reaches_on_h_t @ R @ S @ Vs @ S2 )
     => ( ( reaches_on_h_t @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_size_list_t @ Vs2 ) @ ( size_size_list_t @ Vs ) )
         => ? [Vs4: list_t] :
              ( ( reaches_on_h_t @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append_t @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_402_reaches__on__suffix,axiom,
    ! [R: t > option8291060355354214836od_t_o,S: t,Vs: list_o,S2: t,Vs2: list_o,S3: t] :
      ( ( reaches_on_t_o @ R @ S @ Vs @ S2 )
     => ( ( reaches_on_t_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_size_list_o @ Vs2 ) @ ( size_size_list_o @ Vs ) )
         => ? [Vs4: list_o] :
              ( ( reaches_on_t_o @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append_o @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_403_reaches__on__suffix,axiom,
    ! [R: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,S2: t,Vs2: list_P4002435161011370285od_o_o,S3: t] :
      ( ( reache4453078201178095962od_o_o @ R @ S @ Vs @ S2 )
     => ( ( reache4453078201178095962od_o_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_s1515746228057227161od_o_o @ Vs2 ) @ ( size_s1515746228057227161od_o_o @ Vs ) )
         => ? [Vs4: list_P4002435161011370285od_o_o] :
              ( ( reache4453078201178095962od_o_o @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append2614242729457001410od_o_o @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_404_reaches__on__suffix,axiom,
    ! [R: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h,Vs2: list_P5575445741472356340od_t_o,S3: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ R @ S @ Vs @ S2 )
     => ( ( reache8691153155344877136od_t_o @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_s4106575409306904672od_t_o @ Vs2 ) @ ( size_s4106575409306904672od_t_o @ Vs ) )
         => ? [Vs4: list_P5575445741472356340od_t_o] :
              ( ( reache8691153155344877136od_t_o @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append2717171661090821641od_t_o @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_405_reaches__on__suffix,axiom,
    ! [R: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,Vs2: list_set_a,S3: t] :
      ( ( reaches_on_t_set_a @ R @ S @ Vs @ S2 )
     => ( ( reaches_on_t_set_a @ R @ S @ Vs2 @ S3 )
       => ( ( ord_less_eq_nat @ ( size_size_list_set_a @ Vs2 ) @ ( size_size_list_set_a @ Vs ) )
         => ? [Vs4: list_set_a] :
              ( ( reaches_on_t_set_a @ R @ S3 @ Vs4 @ S2 )
              & ( Vs
                = ( append_set_a @ Vs2 @ Vs4 ) ) ) ) ) ) ).

% reaches_on_suffix
thf(fact_406_append__eq__append__conv,axiom,
    ! [Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a,Us: list_P1095827921439705018_set_a,Vs: list_P1095827921439705018_set_a] :
      ( ( ( ( size_s5362121731612881446_set_a @ Xs )
          = ( size_s5362121731612881446_set_a @ Ys2 ) )
        | ( ( size_s5362121731612881446_set_a @ Us )
          = ( size_s5362121731612881446_set_a @ Vs ) ) )
     => ( ( ( append8768163766229313743_set_a @ Xs @ Us )
          = ( append8768163766229313743_set_a @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_407_append__eq__append__conv,axiom,
    ! [Xs: list_vydra_aux_a_t_h,Ys2: list_vydra_aux_a_t_h,Us: list_vydra_aux_a_t_h,Vs: list_vydra_aux_a_t_h] :
      ( ( ( ( size_s8993897887676352572_a_t_h @ Xs )
          = ( size_s8993897887676352572_a_t_h @ Ys2 ) )
        | ( ( size_s8993897887676352572_a_t_h @ Us )
          = ( size_s8993897887676352572_a_t_h @ Vs ) ) )
     => ( ( ( append7715335228782332733_a_t_h @ Xs @ Us )
          = ( append7715335228782332733_a_t_h @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_408_append__eq__append__conv,axiom,
    ! [Xs: list_iarray_o,Ys2: list_iarray_o,Us: list_iarray_o,Vs: list_iarray_o] :
      ( ( ( ( size_s3243743627286111600rray_o @ Xs )
          = ( size_s3243743627286111600rray_o @ Ys2 ) )
        | ( ( size_s3243743627286111600rray_o @ Us )
          = ( size_s3243743627286111600rray_o @ Vs ) ) )
     => ( ( ( append_iarray_o @ Xs @ Us )
          = ( append_iarray_o @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_409_append__eq__append__conv,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t,Us: list_formula_a_t,Vs: list_formula_a_t] :
      ( ( ( ( size_s8846756101701226951la_a_t @ Xs )
          = ( size_s8846756101701226951la_a_t @ Ys2 ) )
        | ( ( size_s8846756101701226951la_a_t @ Us )
          = ( size_s8846756101701226951la_a_t @ Vs ) ) )
     => ( ( ( append_formula_a_t @ Xs @ Us )
          = ( append_formula_a_t @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_410_append__eq__append__conv,axiom,
    ! [Xs: list_t,Ys2: list_t,Us: list_t,Vs: list_t] :
      ( ( ( ( size_size_list_t @ Xs )
          = ( size_size_list_t @ Ys2 ) )
        | ( ( size_size_list_t @ Us )
          = ( size_size_list_t @ Vs ) ) )
     => ( ( ( append_t @ Xs @ Us )
          = ( append_t @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_411_append__eq__append__conv,axiom,
    ! [Xs: list_o,Ys2: list_o,Us: list_o,Vs: list_o] :
      ( ( ( ( size_size_list_o @ Xs )
          = ( size_size_list_o @ Ys2 ) )
        | ( ( size_size_list_o @ Us )
          = ( size_size_list_o @ Vs ) ) )
     => ( ( ( append_o @ Xs @ Us )
          = ( append_o @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_412_append__eq__append__conv,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,Ys2: list_P4002435161011370285od_o_o,Us: list_P4002435161011370285od_o_o,Vs: list_P4002435161011370285od_o_o] :
      ( ( ( ( size_s1515746228057227161od_o_o @ Xs )
          = ( size_s1515746228057227161od_o_o @ Ys2 ) )
        | ( ( size_s1515746228057227161od_o_o @ Us )
          = ( size_s1515746228057227161od_o_o @ Vs ) ) )
     => ( ( ( append2614242729457001410od_o_o @ Xs @ Us )
          = ( append2614242729457001410od_o_o @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

% append_eq_append_conv
thf(fact_413_append__eq__append__conv,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o,Us: list_P5575445741472356340od_t_o,Vs: list_P5575445741472356340od_t_o] :
      ( ( ( ( size_s4106575409306904672od_t_o @ Xs )
          = ( size_s4106575409306904672od_t_o @ Ys2 ) )
        | ( ( size_s4106575409306904672od_t_o @ Us )
          = ( size_s4106575409306904672od_t_o @ Vs ) ) )
     => ( ( ( append2717171661090821641od_t_o @ Xs @ Us )
          = ( append2717171661090821641od_t_o @ Ys2 @ Vs ) )
        = ( ( Xs = Ys2 )
          & ( Us = Vs ) ) ) ) ).

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

% append_eq_append_conv
thf(fact_415_map__append,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( map_Pr119846518281778721et_a_t @ F @ ( append8768163766229313743_set_a @ Xs @ Ys2 ) )
      = ( append_t @ ( map_Pr119846518281778721et_a_t @ F @ Xs ) @ ( map_Pr119846518281778721et_a_t @ F @ Ys2 ) ) ) ).

% map_append
thf(fact_416_map__append,axiom,
    ! [F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( map_fo5746072578778194433_a_t_h @ F @ ( append_formula_a_t @ Xs @ Ys2 ) )
      = ( append7715335228782332733_a_t_h @ ( map_fo5746072578778194433_a_t_h @ F @ Xs ) @ ( map_fo5746072578778194433_a_t_h @ F @ Ys2 ) ) ) ).

% map_append
thf(fact_417_map__append,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( map_formula_a_t_o @ F @ ( append_formula_a_t @ Xs @ Ys2 ) )
      = ( append_o @ ( map_formula_a_t_o @ F @ Xs ) @ ( map_formula_a_t_o @ F @ Ys2 ) ) ) ).

% map_append
thf(fact_418_run_I5_J,axiom,
    wf_fmla_a_t @ phi ).

% run(5)
thf(fact_419_run_I4_J,axiom,
    bounde209865433540700070la_a_t @ phi ).

% run(4)
thf(fact_420_append__eq__map__conv,axiom,
    ! [Ys2: list_t,Zs: list_t,F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a] :
      ( ( ( append_t @ Ys2 @ Zs )
        = ( map_Pr119846518281778721et_a_t @ F @ Xs ) )
      = ( ? [Us2: list_P1095827921439705018_set_a,Vs5: list_P1095827921439705018_set_a] :
            ( ( Xs
              = ( append8768163766229313743_set_a @ Us2 @ Vs5 ) )
            & ( Ys2
              = ( map_Pr119846518281778721et_a_t @ F @ Us2 ) )
            & ( Zs
              = ( map_Pr119846518281778721et_a_t @ F @ Vs5 ) ) ) ) ) ).

% append_eq_map_conv
thf(fact_421_append__eq__map__conv,axiom,
    ! [Ys2: list_vydra_aux_a_t_h,Zs: list_vydra_aux_a_t_h,F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t] :
      ( ( ( append7715335228782332733_a_t_h @ Ys2 @ Zs )
        = ( map_fo5746072578778194433_a_t_h @ F @ Xs ) )
      = ( ? [Us2: list_formula_a_t,Vs5: list_formula_a_t] :
            ( ( Xs
              = ( append_formula_a_t @ Us2 @ Vs5 ) )
            & ( Ys2
              = ( map_fo5746072578778194433_a_t_h @ F @ Us2 ) )
            & ( Zs
              = ( map_fo5746072578778194433_a_t_h @ F @ Vs5 ) ) ) ) ) ).

% append_eq_map_conv
thf(fact_422_append__eq__map__conv,axiom,
    ! [Ys2: list_o,Zs: list_o,F: formula_a_t > $o,Xs: list_formula_a_t] :
      ( ( ( append_o @ Ys2 @ Zs )
        = ( map_formula_a_t_o @ F @ Xs ) )
      = ( ? [Us2: list_formula_a_t,Vs5: list_formula_a_t] :
            ( ( Xs
              = ( append_formula_a_t @ Us2 @ Vs5 ) )
            & ( Ys2
              = ( map_formula_a_t_o @ F @ Us2 ) )
            & ( Zs
              = ( map_formula_a_t_o @ F @ Vs5 ) ) ) ) ) ).

% append_eq_map_conv
thf(fact_423_map__eq__append__conv,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a,Ys2: list_t,Zs: list_t] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = ( append_t @ Ys2 @ Zs ) )
      = ( ? [Us2: list_P1095827921439705018_set_a,Vs5: list_P1095827921439705018_set_a] :
            ( ( Xs
              = ( append8768163766229313743_set_a @ Us2 @ Vs5 ) )
            & ( Ys2
              = ( map_Pr119846518281778721et_a_t @ F @ Us2 ) )
            & ( Zs
              = ( map_Pr119846518281778721et_a_t @ F @ Vs5 ) ) ) ) ) ).

% map_eq_append_conv
thf(fact_424_map__eq__append__conv,axiom,
    ! [F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t,Ys2: list_vydra_aux_a_t_h,Zs: list_vydra_aux_a_t_h] :
      ( ( ( map_fo5746072578778194433_a_t_h @ F @ Xs )
        = ( append7715335228782332733_a_t_h @ Ys2 @ Zs ) )
      = ( ? [Us2: list_formula_a_t,Vs5: list_formula_a_t] :
            ( ( Xs
              = ( append_formula_a_t @ Us2 @ Vs5 ) )
            & ( Ys2
              = ( map_fo5746072578778194433_a_t_h @ F @ Us2 ) )
            & ( Zs
              = ( map_fo5746072578778194433_a_t_h @ F @ Vs5 ) ) ) ) ) ).

% map_eq_append_conv
thf(fact_425_map__eq__append__conv,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,Ys2: list_o,Zs: list_o] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( append_o @ Ys2 @ Zs ) )
      = ( ? [Us2: list_formula_a_t,Vs5: list_formula_a_t] :
            ( ( Xs
              = ( append_formula_a_t @ Us2 @ Vs5 ) )
            & ( Ys2
              = ( map_formula_a_t_o @ F @ Us2 ) )
            & ( Zs
              = ( map_formula_a_t_o @ F @ Vs5 ) ) ) ) ) ).

% map_eq_append_conv
thf(fact_426_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_427_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_428_reaches__on__trans,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,S2: list_vydra_aux_a_t_h,Vs2: list_iarray_o,S3: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ Run @ S @ Vs @ S2 )
     => ( ( reache2401979074735462992rray_o @ Run @ S2 @ Vs2 @ S3 )
       => ( reache2401979074735462992rray_o @ Run @ S @ ( append_iarray_o @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_429_reaches__on__trans,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h,Vs2: list_P5575445741472356340od_t_o,S3: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ Run @ S @ Vs @ S2 )
     => ( ( reache8691153155344877136od_t_o @ Run @ S2 @ Vs2 @ S3 )
       => ( reache8691153155344877136od_t_o @ Run @ S @ ( append2717171661090821641od_t_o @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_430_reaches__on__trans,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,Vs2: list_t,S3: h] :
      ( ( reaches_on_h_t @ Run @ S @ Vs @ S2 )
     => ( ( reaches_on_h_t @ Run @ S2 @ Vs2 @ S3 )
       => ( reaches_on_h_t @ Run @ S @ ( append_t @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_431_reaches__on__trans,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,Vs: list_o,S2: t,Vs2: list_o,S3: t] :
      ( ( reaches_on_t_o @ Run @ S @ Vs @ S2 )
     => ( ( reaches_on_t_o @ Run @ S2 @ Vs2 @ S3 )
       => ( reaches_on_t_o @ Run @ S @ ( append_o @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_432_reaches__on__trans,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,S2: t,Vs2: list_P4002435161011370285od_o_o,S3: t] :
      ( ( reache4453078201178095962od_o_o @ Run @ S @ Vs @ S2 )
     => ( ( reache4453078201178095962od_o_o @ Run @ S2 @ Vs2 @ S3 )
       => ( reache4453078201178095962od_o_o @ Run @ S @ ( append2614242729457001410od_o_o @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_433_reaches__on__trans,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,Vs2: list_set_a,S3: t] :
      ( ( reaches_on_t_set_a @ Run @ S @ Vs @ S2 )
     => ( ( reaches_on_t_set_a @ Run @ S2 @ Vs2 @ S3 )
       => ( reaches_on_t_set_a @ Run @ S @ ( append_set_a @ Vs @ Vs2 ) @ S3 ) ) ) ).

% reaches_on_trans
thf(fact_434_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 )
     => ? [S5: option2110264179601050681od_h_t] :
          ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs @ S5 )
          & ( reache645946503560514460_h_t_t @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_435_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 )
     => ? [S5: h] :
          ( ( reache3397181163414509427_set_a @ Run @ S @ Vs @ S5 )
          & ( reache3397181163414509427_set_a @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_436_reaches__on__split__app,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,Vs2: list_iarray_o,S2: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ Run @ S @ ( append_iarray_o @ Vs @ Vs2 ) @ S2 )
     => ? [S5: list_vydra_aux_a_t_h] :
          ( ( reache2401979074735462992rray_o @ Run @ S @ Vs @ S5 )
          & ( reache2401979074735462992rray_o @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_437_reaches__on__split__app,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,Vs2: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ Run @ S @ ( append2717171661090821641od_t_o @ Vs @ Vs2 ) @ S2 )
     => ? [S5: vydra_aux_a_t_h] :
          ( ( reache8691153155344877136od_t_o @ Run @ S @ Vs @ S5 )
          & ( reache8691153155344877136od_t_o @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_438_reaches__on__split__app,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,Vs: list_t,Vs2: list_t,S2: h] :
      ( ( reaches_on_h_t @ Run @ S @ ( append_t @ Vs @ Vs2 ) @ S2 )
     => ? [S5: h] :
          ( ( reaches_on_h_t @ Run @ S @ Vs @ S5 )
          & ( reaches_on_h_t @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_439_reaches__on__split__app,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,Vs: list_o,Vs2: list_o,S2: t] :
      ( ( reaches_on_t_o @ Run @ S @ ( append_o @ Vs @ Vs2 ) @ S2 )
     => ? [S5: t] :
          ( ( reaches_on_t_o @ Run @ S @ Vs @ S5 )
          & ( reaches_on_t_o @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_440_reaches__on__split__app,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,Vs2: list_P4002435161011370285od_o_o,S2: t] :
      ( ( reache4453078201178095962od_o_o @ Run @ S @ ( append2614242729457001410od_o_o @ Vs @ Vs2 ) @ S2 )
     => ? [S5: t] :
          ( ( reache4453078201178095962od_o_o @ Run @ S @ Vs @ S5 )
          & ( reache4453078201178095962od_o_o @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

% reaches_on_split_app
thf(fact_441_reaches__on__split__app,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,Vs2: list_set_a,S2: t] :
      ( ( reaches_on_t_set_a @ Run @ S @ ( append_set_a @ Vs @ Vs2 ) @ S2 )
     => ? [S5: t] :
          ( ( reaches_on_t_set_a @ Run @ S @ Vs @ S5 )
          & ( reaches_on_t_set_a @ Run @ S5 @ Vs2 @ S2 ) ) ) ).

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

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

% linorder_le_cases
thf(fact_444_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C2 ) ) ) ) ).

% ord_le_eq_subst
thf(fact_445_ord__eq__le__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C2: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C2 ) ) ) ) ) ).

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

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

% order_eq_refl
thf(fact_448_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C2 ) ) ) ) ).

% order_subst2
thf(fact_449_order__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C2: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C2 ) ) ) ) ) ).

% order_subst1
thf(fact_450_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z: nat] : ( Y4 = Z ) )
    = ( ^ [A5: nat,B4: nat] :
          ( ( ord_less_eq_nat @ A5 @ B4 )
          & ( ord_less_eq_nat @ B4 @ A5 ) ) ) ) ).

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

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

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

% dual_order.antisym
thf(fact_454_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: nat,Z: nat] : ( Y4 = Z ) )
    = ( ^ [A5: nat,B4: nat] :
          ( ( ord_less_eq_nat @ B4 @ A5 )
          & ( ord_less_eq_nat @ A5 @ B4 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_455_linorder__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: nat,B3: nat] :
            ( ( P @ B3 @ A3 )
           => ( P @ A3 @ B3 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_456_order__trans,axiom,
    ! [X3: nat,Y: nat,Z4: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z4 )
       => ( ord_less_eq_nat @ X3 @ Z4 ) ) ) ).

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

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

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

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

% ord_eq_le_trans
thf(fact_461_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z: nat] : ( Y4 = Z ) )
    = ( ^ [X7: nat,Y6: nat] :
          ( ( ord_less_eq_nat @ X7 @ Y6 )
          & ( ord_less_eq_nat @ Y6 @ X7 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_462_le__cases3,axiom,
    ! [X3: nat,Y: nat,Z4: nat] :
      ( ( ( ord_less_eq_nat @ X3 @ Y )
       => ~ ( ord_less_eq_nat @ Y @ Z4 ) )
     => ( ( ( ord_less_eq_nat @ Y @ X3 )
         => ~ ( ord_less_eq_nat @ X3 @ Z4 ) )
       => ( ( ( ord_less_eq_nat @ X3 @ Z4 )
           => ~ ( ord_less_eq_nat @ Z4 @ Y ) )
         => ( ( ( ord_less_eq_nat @ Z4 @ Y )
             => ~ ( ord_less_eq_nat @ Y @ X3 ) )
           => ( ( ( ord_less_eq_nat @ Y @ Z4 )
               => ~ ( ord_less_eq_nat @ Z4 @ X3 ) )
             => ~ ( ( ord_less_eq_nat @ Z4 @ X3 )
                 => ~ ( ord_less_eq_nat @ X3 @ Y ) ) ) ) ) ) ) ).

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

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

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

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

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

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

% ord_less_eq_trans
thf(fact_469_less__induct,axiom,
    ! [P: nat > $o,A: nat] :
      ( ! [X: nat] :
          ( ! [Y5: nat] :
              ( ( ord_less_nat @ Y5 @ X )
             => ( P @ Y5 ) )
         => ( P @ X ) )
     => ( P @ A ) ) ).

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

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

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

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

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

% exists_least_iff
thf(fact_475_linorder__less__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A3: nat,B3: nat] :
          ( ( ord_less_nat @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: nat] : ( P @ A3 @ A3 )
       => ( ! [A3: nat,B3: nat] :
              ( ( P @ B3 @ A3 )
             => ( P @ A3 @ B3 ) )
         => ( P @ A @ B ) ) ) ) ).

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

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

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

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

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

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

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

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

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

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

% order_less_trans
thf(fact_486_ord__eq__less__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C2: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_nat @ B @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C2 ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_487_ord__less__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ( F @ B )
          = C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C2 ) ) ) ) ).

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

% order_less_irrefl
thf(fact_489_order__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C2: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C2 ) ) ) ) ) ).

% order_less_subst1
thf(fact_490_order__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C2 ) ) ) ) ).

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

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

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

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

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

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

% order_less_imp_not_less
thf(fact_497_nth__append,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( ( ord_less_nat @ N @ ( size_s5362121731612881446_set_a @ Xs ) )
       => ( ( nth_Pr633927046780761275_set_a @ ( append8768163766229313743_set_a @ Xs @ Ys2 ) @ N )
          = ( nth_Pr633927046780761275_set_a @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s5362121731612881446_set_a @ Xs ) )
       => ( ( nth_Pr633927046780761275_set_a @ ( append8768163766229313743_set_a @ Xs @ Ys2 ) @ N )
          = ( nth_Pr633927046780761275_set_a @ Ys2 @ ( minus_minus_nat @ N @ ( size_s5362121731612881446_set_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_498_nth__append,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( ( ord_less_nat @ N @ ( size_s8993897887676352572_a_t_h @ Xs ) )
       => ( ( nth_vydra_aux_a_t_h @ ( append7715335228782332733_a_t_h @ Xs @ Ys2 ) @ N )
          = ( nth_vydra_aux_a_t_h @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s8993897887676352572_a_t_h @ Xs ) )
       => ( ( nth_vydra_aux_a_t_h @ ( append7715335228782332733_a_t_h @ Xs @ Ys2 ) @ N )
          = ( nth_vydra_aux_a_t_h @ Ys2 @ ( minus_minus_nat @ N @ ( size_s8993897887676352572_a_t_h @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_499_nth__append,axiom,
    ! [N: nat,Xs: list_iarray_o,Ys2: list_iarray_o] :
      ( ( ( ord_less_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) )
       => ( ( nth_iarray_o @ ( append_iarray_o @ Xs @ Ys2 ) @ N )
          = ( nth_iarray_o @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) )
       => ( ( nth_iarray_o @ ( append_iarray_o @ Xs @ Ys2 ) @ N )
          = ( nth_iarray_o @ Ys2 @ ( minus_minus_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_500_nth__append,axiom,
    ! [N: nat,Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ( ord_less_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) )
       => ( ( nth_formula_a_t @ ( append_formula_a_t @ Xs @ Ys2 ) @ N )
          = ( nth_formula_a_t @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) )
       => ( ( nth_formula_a_t @ ( append_formula_a_t @ Xs @ Ys2 ) @ N )
          = ( nth_formula_a_t @ Ys2 @ ( minus_minus_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_501_nth__append,axiom,
    ! [N: nat,Xs: list_t,Ys2: list_t] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs ) )
       => ( ( nth_t @ ( append_t @ Xs @ Ys2 ) @ N )
          = ( nth_t @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_t @ Xs ) )
       => ( ( nth_t @ ( append_t @ Xs @ Ys2 ) @ N )
          = ( nth_t @ Ys2 @ ( minus_minus_nat @ N @ ( size_size_list_t @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_502_nth__append,axiom,
    ! [Xs: list_o,Ys2: list_o,N: nat] :
      ( ( nth_o @ ( append_o @ Xs @ Ys2 ) @ N )
      = ( ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
         => ( nth_o @ Xs @ N ) )
        & ( ~ ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
         => ( nth_o @ Ys2 @ ( minus_minus_nat @ N @ ( size_size_list_o @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_503_nth__append,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( ( ord_less_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) )
       => ( ( nth_Product_prod_o_o @ ( append2614242729457001410od_o_o @ Xs @ Ys2 ) @ N )
          = ( nth_Product_prod_o_o @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) )
       => ( ( nth_Product_prod_o_o @ ( append2614242729457001410od_o_o @ Xs @ Ys2 ) @ N )
          = ( nth_Product_prod_o_o @ Ys2 @ ( minus_minus_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_504_nth__append,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( ( ord_less_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) )
       => ( ( nth_Product_prod_t_o @ ( append2717171661090821641od_t_o @ Xs @ Ys2 ) @ N )
          = ( nth_Product_prod_t_o @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) )
       => ( ( nth_Product_prod_t_o @ ( append2717171661090821641od_t_o @ Xs @ Ys2 ) @ N )
          = ( nth_Product_prod_t_o @ Ys2 @ ( minus_minus_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_505_nth__append,axiom,
    ! [N: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
       => ( ( nth_set_a @ ( append_set_a @ Xs @ Ys2 ) @ N )
          = ( nth_set_a @ Xs @ N ) ) )
      & ( ~ ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
       => ( ( nth_set_a @ ( append_set_a @ Xs @ Ys2 ) @ N )
          = ( nth_set_a @ Ys2 @ ( minus_minus_nat @ N @ ( size_size_list_set_a @ Xs ) ) ) ) ) ) ).

% nth_append
thf(fact_506_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: h > option5775791656947114332_set_a,S: h,Vs: list_P1095827921439705018_set_a,S2: h,Vs2: list_P1095827921439705018_set_a,S3: h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache3397181163414509427_set_a @ R @ S @ Vs @ S2 )
       => ( ( reache3397181163414509427_set_a @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Vs2 ) @ ( size_s5362121731612881446_set_a @ Vs ) )
           => ? [Vs4: list_P1095827921439705018_set_a] :
                ( ( reache3397181163414509427_set_a @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append8768163766229313743_set_a @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_507_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Vs: list_iarray_o,S2: list_vydra_aux_a_t_h,Vs2: list_iarray_o,S3: list_vydra_aux_a_t_h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache2401979074735462992rray_o @ R @ S @ Vs @ S2 )
       => ( ( reache2401979074735462992rray_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_s3243743627286111600rray_o @ Vs2 ) @ ( size_s3243743627286111600rray_o @ Vs ) )
           => ? [Vs4: list_iarray_o] :
                ( ( reache2401979074735462992rray_o @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append_iarray_o @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_508_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: 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] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache645946503560514460_h_t_t @ R @ S @ Vs @ S2 )
       => ( ( reache645946503560514460_h_t_t @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_size_list_t @ Vs2 ) @ ( size_size_list_t @ Vs ) )
           => ? [Vs4: list_t] :
                ( ( reache645946503560514460_h_t_t @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append_t @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_509_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: h > option2110264179601050681od_h_t,S: h,Vs: list_t,S2: h,Vs2: list_t,S3: h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reaches_on_h_t @ R @ S @ Vs @ S2 )
       => ( ( reaches_on_h_t @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_size_list_t @ Vs2 ) @ ( size_size_list_t @ Vs ) )
           => ? [Vs4: list_t] :
                ( ( reaches_on_h_t @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append_t @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_510_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: t > option8291060355354214836od_t_o,S: t,Vs: list_o,S2: t,Vs2: list_o,S3: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reaches_on_t_o @ R @ S @ Vs @ S2 )
       => ( ( reaches_on_t_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_size_list_o @ Vs2 ) @ ( size_size_list_o @ Vs ) )
           => ? [Vs4: list_o] :
                ( ( reaches_on_t_o @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append_o @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_511_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: t > option2536733916571057475od_o_o,S: t,Vs: list_P4002435161011370285od_o_o,S2: t,Vs2: list_P4002435161011370285od_o_o,S3: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache4453078201178095962od_o_o @ R @ S @ Vs @ S2 )
       => ( ( reache4453078201178095962od_o_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_s1515746228057227161od_o_o @ Vs2 ) @ ( size_s1515746228057227161od_o_o @ Vs ) )
           => ? [Vs4: list_P4002435161011370285od_o_o] :
                ( ( reache4453078201178095962od_o_o @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append2614242729457001410od_o_o @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_512_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Vs: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h,Vs2: list_P5575445741472356340od_t_o,S3: vydra_aux_a_t_h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache8691153155344877136od_t_o @ R @ S @ Vs @ S2 )
       => ( ( reache8691153155344877136od_t_o @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_s4106575409306904672od_t_o @ Vs2 ) @ ( size_s4106575409306904672od_t_o @ Vs ) )
           => ? [Vs4: list_P5575445741472356340od_t_o] :
                ( ( reache8691153155344877136od_t_o @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append2717171661090821641od_t_o @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_513_VYDRA__MDL_Oreaches__on__suffix,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: t > option4621139365931258234_set_a,S: t,Vs: list_set_a,S2: t,Vs2: list_set_a,S3: t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reaches_on_t_set_a @ R @ S @ Vs @ S2 )
       => ( ( reaches_on_t_set_a @ R @ S @ Vs2 @ S3 )
         => ( ( ord_less_eq_nat @ ( size_size_list_set_a @ Vs2 ) @ ( size_size_list_set_a @ Vs ) )
           => ? [Vs4: list_set_a] :
                ( ( reaches_on_t_set_a @ R @ S3 @ Vs4 @ S2 )
                & ( Vs
                  = ( append_set_a @ Vs2 @ Vs4 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_on_suffix
thf(fact_514_leD,axiom,
    ! [Y: nat,X3: nat] :
      ( ( ord_less_eq_nat @ Y @ X3 )
     => ~ ( ord_less_nat @ X3 @ Y ) ) ).

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

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

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

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

% antisym_conv2
thf(fact_519_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X7: nat,Y6: nat] :
          ( ( ord_less_eq_nat @ X7 @ Y6 )
          & ~ ( ord_less_eq_nat @ Y6 @ X7 ) ) ) ) ).

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

% not_le_imp_less
thf(fact_521_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A5: nat,B4: nat] :
          ( ( ord_less_nat @ A5 @ B4 )
          | ( A5 = B4 ) ) ) ) ).

% order.order_iff_strict
thf(fact_522_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A5: nat,B4: nat] :
          ( ( ord_less_eq_nat @ A5 @ B4 )
          & ( A5 != B4 ) ) ) ) ).

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

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

% order.strict_trans2
thf(fact_525_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A5: nat,B4: nat] :
          ( ( ord_less_eq_nat @ A5 @ B4 )
          & ~ ( ord_less_eq_nat @ B4 @ A5 ) ) ) ) ).

% order.strict_iff_not
thf(fact_526_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B4: nat,A5: nat] :
          ( ( ord_less_nat @ B4 @ A5 )
          | ( A5 = B4 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_527_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B4: nat,A5: nat] :
          ( ( ord_less_eq_nat @ B4 @ A5 )
          & ( A5 != B4 ) ) ) ) ).

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

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

% dual_order.strict_trans2
thf(fact_530_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B4: nat,A5: nat] :
          ( ( ord_less_eq_nat @ B4 @ A5 )
          & ~ ( ord_less_eq_nat @ A5 @ B4 ) ) ) ) ).

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

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

% dual_order.strict_implies_order
thf(fact_533_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X7: nat,Y6: nat] :
          ( ( ord_less_nat @ X7 @ Y6 )
          | ( X7 = Y6 ) ) ) ) ).

% order_le_less
thf(fact_534_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X7: nat,Y6: nat] :
          ( ( ord_less_eq_nat @ X7 @ Y6 )
          & ( X7 != Y6 ) ) ) ) ).

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

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

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

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

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

% order_neq_le_trans
thf(fact_540_order__le__less__trans,axiom,
    ! [X3: nat,Y: nat,Z4: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y )
     => ( ( ord_less_nat @ Y @ Z4 )
       => ( ord_less_nat @ X3 @ Z4 ) ) ) ).

% order_le_less_trans
thf(fact_541_order__less__le__trans,axiom,
    ! [X3: nat,Y: nat,Z4: nat] :
      ( ( ord_less_nat @ X3 @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z4 )
       => ( ord_less_nat @ X3 @ Z4 ) ) ) ).

% order_less_le_trans
thf(fact_542_order__le__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C2: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C2 ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_543_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C2 ) ) ) ) ).

% order_le_less_subst2
thf(fact_544_order__less__le__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C2: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C2 ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_545_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C2 )
       => ( ! [X: nat,Y3: nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C2 ) ) ) ) ).

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

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

% order_le_imp_less_or_eq
thf(fact_548_run_I1_J,axiom,
    vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ phi @ i2 @ n @ v ).

% run(1)
thf(fact_549_msize,axiom,
    ord_less_eq_nat @ ( msize_fmla_a_t @ phi ) @ n ).

% msize
thf(fact_550_sorted__list__atD,axiom,
    ! [Xs: list_P1095827921439705018_set_a,I: nat,J: nat] :
      ( ( sorted5003863949113869663_set_a @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s5362121731612881446_set_a @ Xs ) )
         => ( ord_le1576776917030837460_set_a @ ( nth_Pr633927046780761275_set_a @ Xs @ I ) @ ( nth_Pr633927046780761275_set_a @ Xs @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_551_sorted__list__atD,axiom,
    ! [Xs: list_t,I: nat,J: nat] :
      ( ( sorted_list_t @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_t @ Xs ) )
         => ( ord_less_eq_t @ ( nth_t @ Xs @ I ) @ ( nth_t @ Xs @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_552_sorted__list__atD,axiom,
    ! [Xs: list_o,I: nat,J: nat] :
      ( ( sorted_list_o @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_o @ Xs ) )
         => ( ord_less_eq_o @ ( nth_o @ Xs @ I ) @ ( nth_o @ Xs @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_553_sorted__list__atD,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,I: nat,J: nat] :
      ( ( sorted8634893310443622482od_o_o @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s1515746228057227161od_o_o @ Xs ) )
         => ( ord_le2636248316962427079od_o_o @ ( nth_Product_prod_o_o @ Xs @ I ) @ ( nth_Product_prod_o_o @ Xs @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_554_sorted__list__atD,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,I: nat,J: nat] :
      ( ( sorted2640272588785007257od_t_o @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s4106575409306904672od_t_o @ Xs ) )
         => ( ord_le1999770283289415822od_t_o @ ( nth_Product_prod_t_o @ Xs @ I ) @ ( nth_Product_prod_t_o @ Xs @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_555_sorted__list__atD,axiom,
    ! [Xs: list_set_a,I: nat,J: nat] :
      ( ( sorted_list_set_a @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_set_a @ Xs ) )
         => ( ord_less_eq_set_a @ ( nth_set_a @ Xs @ I ) @ ( nth_set_a @ Xs @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_556_sorted__list__atD,axiom,
    ! [Xs: list_nat,I: nat,J: nat] :
      ( ( sorted_list_nat @ Xs )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs ) )
         => ( ord_less_eq_nat @ ( nth_nat @ Xs @ I ) @ ( nth_nat @ Xs @ J ) ) ) ) ) ).

% sorted_list_atD
thf(fact_557_run__subs__vD,axiom,
    ! [Run: t > option5115755630998872842od_t_o,Vs: list_t,Vs2: list_t,Bs: iarray_o,J: nat] :
      ( ( ( run_subs_t_t_t_o @ Run @ Vs )
        = ( some_P7501796307291990963rray_o @ ( produc8281831009199921854rray_o @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_t @ Vs ) )
       => ? [Vj: t,Tj: t,Bj: $o] :
            ( ( ( Run @ ( nth_t @ Vs @ J ) )
              = ( some_P5782336797119413673od_t_o @ ( produc7539267677312392372od_t_o @ Vj @ ( product_Pair_t_o @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_o @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_558_run__subs__vD,axiom,
    ! [Run: t > option6366625828353349007od_h_t,Vs: list_t,Vs2: list_t,Bs: iarray_t,J: nat] :
      ( ( ( run_subs_t_t_h_t @ Run @ Vs )
        = ( some_P7066414042217547692rray_t @ ( produc4777086648503855159rray_t @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_t @ Vs ) )
       => ? [Vj: t,Tj: h,Bj: t] :
            ( ( ( Run @ ( nth_t @ Vs @ J ) )
              = ( some_P3412453634688163246od_h_t @ ( produc5663778790490485817od_h_t @ Vj @ ( product_Pair_h_t @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_t @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_559_run__subs__vD,axiom,
    ! [Run: t > option2536733916571057475od_o_o,Vs: list_t,Vs2: list_t,Bs: iarray_o,J: nat] :
      ( ( ( run_subs_t_t_o_o @ Run @ Vs )
        = ( some_P7501796307291990963rray_o @ ( produc8281831009199921854rray_o @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_t @ Vs ) )
       => ? [Vj: t,Tj: $o,Bj: $o] :
            ( ( ( Run @ ( nth_t @ Vs @ J ) )
              = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ Vj @ ( product_Pair_o_o @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_o @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_560_run__subs__vD,axiom,
    ! [Run: $o > option5115755630998872842od_t_o,Vs: list_o,Vs2: list_t,Bs: iarray_o,J: nat] :
      ( ( ( run_subs_o_t_t_o @ Run @ Vs )
        = ( some_P7501796307291990963rray_o @ ( produc8281831009199921854rray_o @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_o @ Vs ) )
       => ? [Vj: t,Tj: t,Bj: $o] :
            ( ( ( Run @ ( nth_o @ Vs @ J ) )
              = ( some_P5782336797119413673od_t_o @ ( produc7539267677312392372od_t_o @ Vj @ ( product_Pair_t_o @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_o @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_561_run__subs__vD,axiom,
    ! [Run: $o > option6366625828353349007od_h_t,Vs: list_o,Vs2: list_t,Bs: iarray_t,J: nat] :
      ( ( ( run_subs_o_t_h_t @ Run @ Vs )
        = ( some_P7066414042217547692rray_t @ ( produc4777086648503855159rray_t @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_o @ Vs ) )
       => ? [Vj: t,Tj: h,Bj: t] :
            ( ( ( Run @ ( nth_o @ Vs @ J ) )
              = ( some_P3412453634688163246od_h_t @ ( produc5663778790490485817od_h_t @ Vj @ ( product_Pair_h_t @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_t @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_562_run__subs__vD,axiom,
    ! [Run: $o > option2536733916571057475od_o_o,Vs: list_o,Vs2: list_t,Bs: iarray_o,J: nat] :
      ( ( ( run_subs_o_t_o_o @ Run @ Vs )
        = ( some_P7501796307291990963rray_o @ ( produc8281831009199921854rray_o @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_o @ Vs ) )
       => ? [Vj: t,Tj: $o,Bj: $o] :
            ( ( ( Run @ ( nth_o @ Vs @ J ) )
              = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ Vj @ ( product_Pair_o_o @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_o @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_563_run__subs__vD,axiom,
    ! [Run: iarray_o > option5115755630998872842od_t_o,Vs: list_iarray_o,Vs2: list_t,Bs: iarray_o,J: nat] :
      ( ( ( run_su98717407436750474_t_t_o @ Run @ Vs )
        = ( some_P7501796307291990963rray_o @ ( produc8281831009199921854rray_o @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_s3243743627286111600rray_o @ Vs ) )
       => ? [Vj: t,Tj: t,Bj: $o] :
            ( ( ( Run @ ( nth_iarray_o @ Vs @ J ) )
              = ( some_P5782336797119413673od_t_o @ ( produc7539267677312392372od_t_o @ Vj @ ( product_Pair_t_o @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_o @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_564_run__subs__vD,axiom,
    ! [Run: iarray_o > option6366625828353349007od_h_t,Vs: list_iarray_o,Vs2: list_t,Bs: iarray_t,J: nat] :
      ( ( ( run_su3655969966392431119_t_h_t @ Run @ Vs )
        = ( some_P7066414042217547692rray_t @ ( produc4777086648503855159rray_t @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_s3243743627286111600rray_o @ Vs ) )
       => ? [Vj: t,Tj: h,Bj: t] :
            ( ( ( Run @ ( nth_iarray_o @ Vs @ J ) )
              = ( some_P3412453634688163246od_h_t @ ( produc5663778790490485817od_h_t @ Vj @ ( product_Pair_h_t @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_t @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_565_run__subs__vD,axiom,
    ! [Run: iarray_o > option2536733916571057475od_o_o,Vs: list_iarray_o,Vs2: list_t,Bs: iarray_o,J: nat] :
      ( ( ( run_su8806722425823548483_t_o_o @ Run @ Vs )
        = ( some_P7501796307291990963rray_o @ ( produc8281831009199921854rray_o @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_s3243743627286111600rray_o @ Vs ) )
       => ? [Vj: t,Tj: $o,Bj: $o] :
            ( ( ( Run @ ( nth_iarray_o @ Vs @ J ) )
              = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ Vj @ ( product_Pair_o_o @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_o @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_566_run__subs__vD,axiom,
    ! [Run: t > option4136621186271108688_set_a,Vs: list_t,Vs2: list_t,Bs: iarray_set_a,J: nat] :
      ( ( ( run_subs_t_t_t_set_a @ Run @ Vs )
        = ( some_P331467869274976249_set_a @ ( produc4688466989509365508_set_a @ Vs2 @ Bs ) ) )
     => ( ( ord_less_nat @ J @ ( size_size_list_t @ Vs ) )
       => ? [Vj: t,Tj: t,Bj: set_a] :
            ( ( ( Run @ ( nth_t @ Vs @ J ) )
              = ( some_P7916121082815958767_set_a @ ( produc9102197234902130170_set_a @ Vj @ ( product_Pair_t_set_a @ Tj @ Bj ) ) ) )
            & ( ( nth_t @ Vs2 @ J )
              = Vj )
            & ( ( sub_set_a @ Bs @ J )
              = Bj ) ) ) ) ).

% run_subs_vD
thf(fact_567_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 )
           => ( ! [I4: nat] :
                  ( ( ord_less_nat @ K2 @ I4 )
                 => ( P @ I4 ) )
             => ( P @ K2 ) ) )
       => ( P @ M ) ) ) ).

% nat_descend_induct
thf(fact_568_fstI,axiom,
    ! [X3: produc4127598065228779901od_o_o,Y: t,Z4: product_prod_o_o] :
      ( ( X3
        = ( produc1891450550985068525od_o_o @ Y @ Z4 ) )
     => ( ( produc1892153463183078873od_o_o @ X3 )
        = Y ) ) ).

% fstI
thf(fact_569_fstI,axiom,
    ! [X3: product_prod_t_o,Y: t,Z4: $o] :
      ( ( X3
        = ( product_Pair_t_o @ Y @ Z4 ) )
     => ( ( product_fst_t_o @ X3 )
        = Y ) ) ).

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

% fstI
thf(fact_571_fstI,axiom,
    ! [X3: product_prod_h_t,Y: h,Z4: t] :
      ( ( X3
        = ( product_Pair_h_t @ Y @ Z4 ) )
     => ( ( product_fst_h_t @ X3 )
        = Y ) ) ).

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

% fstI
thf(fact_573_fstI,axiom,
    ! [X3: produc8228095596854190539rray_o,Y: list_vydra_aux_a_t_h,Z4: iarray_o] :
      ( ( X3
        = ( produc8472968102330193021rray_o @ Y @ Z4 ) )
     => ( ( produc6595003253218802065rray_o @ X3 )
        = Y ) ) ).

% fstI
thf(fact_574_fstI,axiom,
    ! [X3: produc530307916048688075od_t_o,Y: vydra_aux_a_t_h,Z4: product_prod_t_o] :
      ( ( X3
        = ( produc5956389175556509053od_t_o @ Y @ Z4 ) )
     => ( ( produc288163909963368081od_t_o @ X3 )
        = Y ) ) ).

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

% fstI
thf(fact_576_VYDRA__MDL_Owf__vydra_Ocong,axiom,
    vYDRA_wf_vydra_a_t_h = vYDRA_wf_vydra_a_t_h ).

% VYDRA_MDL.wf_vydra.cong
thf(fact_577_run__subs__lD,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,Vs: list_vydra_aux_a_t_h,Vs2: list_vydra_aux_a_t_h,Bs: iarray_o] :
      ( ( ( run_su3116026553151384105_h_t_o @ Run @ Vs )
        = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ Vs2 @ Bs ) ) )
     => ( ( ( size_s8993897887676352572_a_t_h @ Vs2 )
          = ( size_s8993897887676352572_a_t_h @ Vs ) )
        & ( ( length_o @ Bs )
          = ( size_s8993897887676352572_a_t_h @ Vs ) ) ) ) ).

% run_subs_lD
thf(fact_578_vydra__sound__aux,axiom,
    ! [Phi2: formula_a_t,N: nat,I: nat,V: vydra_aux_a_t_h,V3: vydra_aux_a_t_h,T: t,B: $o] :
      ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi2 ) @ N )
     => ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi2 @ I @ N @ V )
       => ( ( ( run_h_t_a @ run_hd @ N @ V )
            = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ V3 @ ( product_Pair_t_o @ T @ B ) ) ) )
         => ( ( bounde209865433540700070la_a_t @ Phi2 )
           => ( ( wf_fmla_a_t @ Phi2 )
             => ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi2 @ ( suc @ I ) @ N @ V3 )
                & ? [Es2: list_P1095827921439705018_set_a,E2: h] :
                    ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Es2 @ E2 )
                    & ( ( size_s5362121731612881446_set_a @ Es2 )
                      = ( suc @ I ) ) )
                & ( T
                  = ( tau_a_t @ sigma @ I ) )
                & ( B
                  = ( sat_a_t @ sigma @ Phi2 @ I ) ) ) ) ) ) ) ) ).

% vydra_sound_aux
thf(fact_579_run_I2_J,axiom,
    ( ( run_h_t_a @ run_hd @ n @ v )
    = none_P3452577240289636010od_t_o ) ).

% run(2)
thf(fact_580_v__def_I2_J,axiom,
    vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ phi2 @ j @ na @ vphi ).

% v_def(2)
thf(fact_581_v__def_I3_J,axiom,
    vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ psi @ j @ na @ vpsi ).

% v_def(3)
thf(fact_582_reaches__ons__run__lD,axiom,
    ! [N: nat,Vs: list_vydra_aux_a_t_h,Ws: list_iarray_o,Vs2: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ run_hd @ N ) ) @ Vs @ Ws @ Vs2 )
     => ( ( size_s8993897887676352572_a_t_h @ Vs )
        = ( size_s8993897887676352572_a_t_h @ Vs2 ) ) ) ).

% reaches_ons_run_lD
thf(fact_583_Until_Ohyps_I2_J,axiom,
    ord_less_eq_nat @ ( msize_fmla_a_t @ psi ) @ na ).

% Until.hyps(2)
thf(fact_584_Until_Ohyps_I1_J,axiom,
    ord_less_eq_nat @ ( msize_fmla_a_t @ phi2 ) @ na ).

% Until.hyps(1)
thf(fact_585_reaches__ons__run__vD,axiom,
    ! [N: nat,Vs: list_vydra_aux_a_t_h,Ws: list_iarray_o,Vs2: list_vydra_aux_a_t_h,I: nat] :
      ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ run_hd @ N ) ) @ Vs @ Ws @ Vs2 )
     => ( ( ord_less_nat @ I @ ( size_s8993897887676352572_a_t_h @ Vs ) )
       => ? [Ys4: list_P5575445741472356340od_t_o] :
            ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ run_hd @ N ) @ ( nth_vydra_aux_a_t_h @ Vs @ I ) @ Ys4 @ ( nth_vydra_aux_a_t_h @ Vs2 @ I ) )
            & ( ( size_s4106575409306904672od_t_o @ Ys4 )
              = ( size_s3243743627286111600rray_o @ Ws ) ) ) ) ) ).

% reaches_ons_run_vD
thf(fact_586_not__None__eq,axiom,
    ! [X3: option2536733916571057475od_o_o] :
      ( ( X3 != none_P2907379280119556574od_o_o )
      = ( ? [Y6: produc4127598065228779901od_o_o] :
            ( X3
            = ( some_P6789671444921510242od_o_o @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_587_not__None__eq,axiom,
    ! [X3: option8291060355354214836od_t_o] :
      ( ( X3 != none_P7032077165169035727od_t_o )
      = ( ? [Y6: product_prod_t_o] :
            ( X3
            = ( some_P1805796590424124243od_t_o @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_588_not__None__eq,axiom,
    ! [X3: option5775791656947114332_set_a] :
      ( ( X3 != none_P2868508613186038903_set_a )
      = ( ? [Y6: produc8090089739038349590_set_a] :
            ( X3
            = ( some_P2245991037696317435_set_a @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_589_not__None__eq,axiom,
    ! [X3: option2110264179601050681od_h_t] :
      ( ( X3 != none_P849260865442546644od_h_t )
      = ( ? [Y6: product_prod_h_t] :
            ( X3
            = ( some_P2526622376857543512od_h_t @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_590_not__None__eq,axiom,
    ! [X3: option_t] :
      ( ( X3 != none_t )
      = ( ? [Y6: t] :
            ( X3
            = ( some_t @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_591_not__None__eq,axiom,
    ! [X3: option4241632866121027589_h_t_t] :
      ( ( X3 != none_P797220180637652640_h_t_t )
      = ( ? [Y6: produc2796182059459404991_h_t_t] :
            ( X3
            = ( some_P8406129549712030756_h_t_t @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_592_not__None__eq,axiom,
    ! [X3: option8553266494716013595rray_o] :
      ( ( X3 != none_P945442321178488234rray_o )
      = ( ? [Y6: produc8228095596854190539rray_o] :
            ( X3
            = ( some_P7279874174034738982rray_o @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_593_not__None__eq,axiom,
    ! [X3: option4580262698044125979od_t_o] :
      ( ( X3 != none_P3452577240289636010od_t_o )
      = ( ? [Y6: produc530307916048688075od_t_o] :
            ( X3
            = ( some_P9127227083975130150od_t_o @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_594_not__None__eq,axiom,
    ! [X3: option4621139365931258234_set_a] :
      ( ( X3 != none_P6544562728533672341_set_a )
      = ( ? [Y6: product_prod_t_set_a] :
            ( X3
            = ( some_P4667681669429350681_set_a @ Y6 ) ) ) ) ).

% not_None_eq
thf(fact_595_not__Some__eq,axiom,
    ! [X3: option2536733916571057475od_o_o] :
      ( ( ! [Y6: produc4127598065228779901od_o_o] :
            ( X3
           != ( some_P6789671444921510242od_o_o @ Y6 ) ) )
      = ( X3 = none_P2907379280119556574od_o_o ) ) ).

% not_Some_eq
thf(fact_596_not__Some__eq,axiom,
    ! [X3: option8291060355354214836od_t_o] :
      ( ( ! [Y6: product_prod_t_o] :
            ( X3
           != ( some_P1805796590424124243od_t_o @ Y6 ) ) )
      = ( X3 = none_P7032077165169035727od_t_o ) ) ).

% not_Some_eq
thf(fact_597_not__Some__eq,axiom,
    ! [X3: option5775791656947114332_set_a] :
      ( ( ! [Y6: produc8090089739038349590_set_a] :
            ( X3
           != ( some_P2245991037696317435_set_a @ Y6 ) ) )
      = ( X3 = none_P2868508613186038903_set_a ) ) ).

% not_Some_eq
thf(fact_598_not__Some__eq,axiom,
    ! [X3: option2110264179601050681od_h_t] :
      ( ( ! [Y6: product_prod_h_t] :
            ( X3
           != ( some_P2526622376857543512od_h_t @ Y6 ) ) )
      = ( X3 = none_P849260865442546644od_h_t ) ) ).

% not_Some_eq
thf(fact_599_not__Some__eq,axiom,
    ! [X3: option_t] :
      ( ( ! [Y6: t] :
            ( X3
           != ( some_t @ Y6 ) ) )
      = ( X3 = none_t ) ) ).

% not_Some_eq
thf(fact_600_not__Some__eq,axiom,
    ! [X3: option4241632866121027589_h_t_t] :
      ( ( ! [Y6: produc2796182059459404991_h_t_t] :
            ( X3
           != ( some_P8406129549712030756_h_t_t @ Y6 ) ) )
      = ( X3 = none_P797220180637652640_h_t_t ) ) ).

% not_Some_eq
thf(fact_601_not__Some__eq,axiom,
    ! [X3: option8553266494716013595rray_o] :
      ( ( ! [Y6: produc8228095596854190539rray_o] :
            ( X3
           != ( some_P7279874174034738982rray_o @ Y6 ) ) )
      = ( X3 = none_P945442321178488234rray_o ) ) ).

% not_Some_eq
thf(fact_602_not__Some__eq,axiom,
    ! [X3: option4580262698044125979od_t_o] :
      ( ( ! [Y6: produc530307916048688075od_t_o] :
            ( X3
           != ( some_P9127227083975130150od_t_o @ Y6 ) ) )
      = ( X3 = none_P3452577240289636010od_t_o ) ) ).

% not_Some_eq
thf(fact_603_not__Some__eq,axiom,
    ! [X3: option4621139365931258234_set_a] :
      ( ( ! [Y6: product_prod_t_set_a] :
            ( X3
           != ( some_P4667681669429350681_set_a @ Y6 ) ) )
      = ( X3 = none_P6544562728533672341_set_a ) ) ).

% not_Some_eq
thf(fact_604_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_605_VYDRA__MDL_Oreaches__ons__run__lD,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,N: nat,Vs: list_vydra_aux_a_t_h,Ws: list_iarray_o,Vs2: list_vydra_aux_a_t_h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ Run_hd @ N ) ) @ Vs @ Ws @ Vs2 )
       => ( ( size_s8993897887676352572_a_t_h @ Vs )
          = ( size_s8993897887676352572_a_t_h @ Vs2 ) ) ) ) ).

% VYDRA_MDL.reaches_ons_run_lD
thf(fact_606_option_Odistinct_I1_J,axiom,
    ! [X2: produc4127598065228779901od_o_o] :
      ( none_P2907379280119556574od_o_o
     != ( some_P6789671444921510242od_o_o @ X2 ) ) ).

% option.distinct(1)
thf(fact_607_option_Odistinct_I1_J,axiom,
    ! [X2: product_prod_t_o] :
      ( none_P7032077165169035727od_t_o
     != ( some_P1805796590424124243od_t_o @ X2 ) ) ).

% option.distinct(1)
thf(fact_608_option_Odistinct_I1_J,axiom,
    ! [X2: produc8090089739038349590_set_a] :
      ( none_P2868508613186038903_set_a
     != ( some_P2245991037696317435_set_a @ X2 ) ) ).

% option.distinct(1)
thf(fact_609_option_Odistinct_I1_J,axiom,
    ! [X2: product_prod_h_t] :
      ( none_P849260865442546644od_h_t
     != ( some_P2526622376857543512od_h_t @ X2 ) ) ).

% option.distinct(1)
thf(fact_610_option_Odistinct_I1_J,axiom,
    ! [X2: t] :
      ( none_t
     != ( some_t @ X2 ) ) ).

% option.distinct(1)
thf(fact_611_option_Odistinct_I1_J,axiom,
    ! [X2: produc2796182059459404991_h_t_t] :
      ( none_P797220180637652640_h_t_t
     != ( some_P8406129549712030756_h_t_t @ X2 ) ) ).

% option.distinct(1)
thf(fact_612_option_Odistinct_I1_J,axiom,
    ! [X2: produc8228095596854190539rray_o] :
      ( none_P945442321178488234rray_o
     != ( some_P7279874174034738982rray_o @ X2 ) ) ).

% option.distinct(1)
thf(fact_613_option_Odistinct_I1_J,axiom,
    ! [X2: produc530307916048688075od_t_o] :
      ( none_P3452577240289636010od_t_o
     != ( some_P9127227083975130150od_t_o @ X2 ) ) ).

% option.distinct(1)
thf(fact_614_option_Odistinct_I1_J,axiom,
    ! [X2: product_prod_t_set_a] :
      ( none_P6544562728533672341_set_a
     != ( some_P4667681669429350681_set_a @ X2 ) ) ).

% option.distinct(1)
thf(fact_615_option_OdiscI,axiom,
    ! [Option: option2536733916571057475od_o_o,X2: produc4127598065228779901od_o_o] :
      ( ( Option
        = ( some_P6789671444921510242od_o_o @ X2 ) )
     => ( Option != none_P2907379280119556574od_o_o ) ) ).

% option.discI
thf(fact_616_option_OdiscI,axiom,
    ! [Option: option8291060355354214836od_t_o,X2: product_prod_t_o] :
      ( ( Option
        = ( some_P1805796590424124243od_t_o @ X2 ) )
     => ( Option != none_P7032077165169035727od_t_o ) ) ).

% option.discI
thf(fact_617_option_OdiscI,axiom,
    ! [Option: option5775791656947114332_set_a,X2: produc8090089739038349590_set_a] :
      ( ( Option
        = ( some_P2245991037696317435_set_a @ X2 ) )
     => ( Option != none_P2868508613186038903_set_a ) ) ).

% option.discI
thf(fact_618_option_OdiscI,axiom,
    ! [Option: option2110264179601050681od_h_t,X2: product_prod_h_t] :
      ( ( Option
        = ( some_P2526622376857543512od_h_t @ X2 ) )
     => ( Option != none_P849260865442546644od_h_t ) ) ).

% option.discI
thf(fact_619_option_OdiscI,axiom,
    ! [Option: option_t,X2: t] :
      ( ( Option
        = ( some_t @ X2 ) )
     => ( Option != none_t ) ) ).

% option.discI
thf(fact_620_option_OdiscI,axiom,
    ! [Option: option4241632866121027589_h_t_t,X2: produc2796182059459404991_h_t_t] :
      ( ( Option
        = ( some_P8406129549712030756_h_t_t @ X2 ) )
     => ( Option != none_P797220180637652640_h_t_t ) ) ).

% option.discI
thf(fact_621_option_OdiscI,axiom,
    ! [Option: option8553266494716013595rray_o,X2: produc8228095596854190539rray_o] :
      ( ( Option
        = ( some_P7279874174034738982rray_o @ X2 ) )
     => ( Option != none_P945442321178488234rray_o ) ) ).

% option.discI
thf(fact_622_option_OdiscI,axiom,
    ! [Option: option4580262698044125979od_t_o,X2: produc530307916048688075od_t_o] :
      ( ( Option
        = ( some_P9127227083975130150od_t_o @ X2 ) )
     => ( Option != none_P3452577240289636010od_t_o ) ) ).

% option.discI
thf(fact_623_option_OdiscI,axiom,
    ! [Option: option4621139365931258234_set_a,X2: product_prod_t_set_a] :
      ( ( Option
        = ( some_P4667681669429350681_set_a @ X2 ) )
     => ( Option != none_P6544562728533672341_set_a ) ) ).

% option.discI
thf(fact_624_option_Oexhaust,axiom,
    ! [Y: option2536733916571057475od_o_o] :
      ( ( Y != none_P2907379280119556574od_o_o )
     => ~ ! [X22: produc4127598065228779901od_o_o] :
            ( Y
           != ( some_P6789671444921510242od_o_o @ X22 ) ) ) ).

% option.exhaust
thf(fact_625_option_Oexhaust,axiom,
    ! [Y: option8291060355354214836od_t_o] :
      ( ( Y != none_P7032077165169035727od_t_o )
     => ~ ! [X22: product_prod_t_o] :
            ( Y
           != ( some_P1805796590424124243od_t_o @ X22 ) ) ) ).

% option.exhaust
thf(fact_626_option_Oexhaust,axiom,
    ! [Y: option5775791656947114332_set_a] :
      ( ( Y != none_P2868508613186038903_set_a )
     => ~ ! [X22: produc8090089739038349590_set_a] :
            ( Y
           != ( some_P2245991037696317435_set_a @ X22 ) ) ) ).

% option.exhaust
thf(fact_627_option_Oexhaust,axiom,
    ! [Y: option2110264179601050681od_h_t] :
      ( ( Y != none_P849260865442546644od_h_t )
     => ~ ! [X22: product_prod_h_t] :
            ( Y
           != ( some_P2526622376857543512od_h_t @ X22 ) ) ) ).

% option.exhaust
thf(fact_628_option_Oexhaust,axiom,
    ! [Y: option_t] :
      ( ( Y != none_t )
     => ~ ! [X22: t] :
            ( Y
           != ( some_t @ X22 ) ) ) ).

% option.exhaust
thf(fact_629_option_Oexhaust,axiom,
    ! [Y: option4241632866121027589_h_t_t] :
      ( ( Y != none_P797220180637652640_h_t_t )
     => ~ ! [X22: produc2796182059459404991_h_t_t] :
            ( Y
           != ( some_P8406129549712030756_h_t_t @ X22 ) ) ) ).

% option.exhaust
thf(fact_630_option_Oexhaust,axiom,
    ! [Y: option8553266494716013595rray_o] :
      ( ( Y != none_P945442321178488234rray_o )
     => ~ ! [X22: produc8228095596854190539rray_o] :
            ( Y
           != ( some_P7279874174034738982rray_o @ X22 ) ) ) ).

% option.exhaust
thf(fact_631_option_Oexhaust,axiom,
    ! [Y: option4580262698044125979od_t_o] :
      ( ( Y != none_P3452577240289636010od_t_o )
     => ~ ! [X22: produc530307916048688075od_t_o] :
            ( Y
           != ( some_P9127227083975130150od_t_o @ X22 ) ) ) ).

% option.exhaust
thf(fact_632_option_Oexhaust,axiom,
    ! [Y: option4621139365931258234_set_a] :
      ( ( Y != none_P6544562728533672341_set_a )
     => ~ ! [X22: product_prod_t_set_a] :
            ( Y
           != ( some_P4667681669429350681_set_a @ X22 ) ) ) ).

% option.exhaust
thf(fact_633_split__option__ex,axiom,
    ( ( ^ [P3: option2536733916571057475od_o_o > $o] :
        ? [X11: option2536733916571057475od_o_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option2536733916571057475od_o_o > $o] :
          ( ( P4 @ none_P2907379280119556574od_o_o )
          | ? [X7: produc4127598065228779901od_o_o] : ( P4 @ ( some_P6789671444921510242od_o_o @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_634_split__option__ex,axiom,
    ( ( ^ [P3: option8291060355354214836od_t_o > $o] :
        ? [X11: option8291060355354214836od_t_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option8291060355354214836od_t_o > $o] :
          ( ( P4 @ none_P7032077165169035727od_t_o )
          | ? [X7: product_prod_t_o] : ( P4 @ ( some_P1805796590424124243od_t_o @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_635_split__option__ex,axiom,
    ( ( ^ [P3: option5775791656947114332_set_a > $o] :
        ? [X11: option5775791656947114332_set_a] : ( P3 @ X11 ) )
    = ( ^ [P4: option5775791656947114332_set_a > $o] :
          ( ( P4 @ none_P2868508613186038903_set_a )
          | ? [X7: produc8090089739038349590_set_a] : ( P4 @ ( some_P2245991037696317435_set_a @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_636_split__option__ex,axiom,
    ( ( ^ [P3: option2110264179601050681od_h_t > $o] :
        ? [X11: option2110264179601050681od_h_t] : ( P3 @ X11 ) )
    = ( ^ [P4: option2110264179601050681od_h_t > $o] :
          ( ( P4 @ none_P849260865442546644od_h_t )
          | ? [X7: product_prod_h_t] : ( P4 @ ( some_P2526622376857543512od_h_t @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_637_split__option__ex,axiom,
    ( ( ^ [P3: option_t > $o] :
        ? [X11: option_t] : ( P3 @ X11 ) )
    = ( ^ [P4: option_t > $o] :
          ( ( P4 @ none_t )
          | ? [X7: t] : ( P4 @ ( some_t @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_638_split__option__ex,axiom,
    ( ( ^ [P3: option4241632866121027589_h_t_t > $o] :
        ? [X11: option4241632866121027589_h_t_t] : ( P3 @ X11 ) )
    = ( ^ [P4: option4241632866121027589_h_t_t > $o] :
          ( ( P4 @ none_P797220180637652640_h_t_t )
          | ? [X7: produc2796182059459404991_h_t_t] : ( P4 @ ( some_P8406129549712030756_h_t_t @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_639_split__option__ex,axiom,
    ( ( ^ [P3: option8553266494716013595rray_o > $o] :
        ? [X11: option8553266494716013595rray_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option8553266494716013595rray_o > $o] :
          ( ( P4 @ none_P945442321178488234rray_o )
          | ? [X7: produc8228095596854190539rray_o] : ( P4 @ ( some_P7279874174034738982rray_o @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_640_split__option__ex,axiom,
    ( ( ^ [P3: option4580262698044125979od_t_o > $o] :
        ? [X11: option4580262698044125979od_t_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option4580262698044125979od_t_o > $o] :
          ( ( P4 @ none_P3452577240289636010od_t_o )
          | ? [X7: produc530307916048688075od_t_o] : ( P4 @ ( some_P9127227083975130150od_t_o @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_641_split__option__ex,axiom,
    ( ( ^ [P3: option4621139365931258234_set_a > $o] :
        ? [X11: option4621139365931258234_set_a] : ( P3 @ X11 ) )
    = ( ^ [P4: option4621139365931258234_set_a > $o] :
          ( ( P4 @ none_P6544562728533672341_set_a )
          | ? [X7: product_prod_t_set_a] : ( P4 @ ( some_P4667681669429350681_set_a @ X7 ) ) ) ) ) ).

% split_option_ex
thf(fact_642_split__option__all,axiom,
    ( ( ^ [P3: option2536733916571057475od_o_o > $o] :
        ! [X11: option2536733916571057475od_o_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option2536733916571057475od_o_o > $o] :
          ( ( P4 @ none_P2907379280119556574od_o_o )
          & ! [X7: produc4127598065228779901od_o_o] : ( P4 @ ( some_P6789671444921510242od_o_o @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_643_split__option__all,axiom,
    ( ( ^ [P3: option8291060355354214836od_t_o > $o] :
        ! [X11: option8291060355354214836od_t_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option8291060355354214836od_t_o > $o] :
          ( ( P4 @ none_P7032077165169035727od_t_o )
          & ! [X7: product_prod_t_o] : ( P4 @ ( some_P1805796590424124243od_t_o @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_644_split__option__all,axiom,
    ( ( ^ [P3: option5775791656947114332_set_a > $o] :
        ! [X11: option5775791656947114332_set_a] : ( P3 @ X11 ) )
    = ( ^ [P4: option5775791656947114332_set_a > $o] :
          ( ( P4 @ none_P2868508613186038903_set_a )
          & ! [X7: produc8090089739038349590_set_a] : ( P4 @ ( some_P2245991037696317435_set_a @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_645_split__option__all,axiom,
    ( ( ^ [P3: option2110264179601050681od_h_t > $o] :
        ! [X11: option2110264179601050681od_h_t] : ( P3 @ X11 ) )
    = ( ^ [P4: option2110264179601050681od_h_t > $o] :
          ( ( P4 @ none_P849260865442546644od_h_t )
          & ! [X7: product_prod_h_t] : ( P4 @ ( some_P2526622376857543512od_h_t @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_646_split__option__all,axiom,
    ( ( ^ [P3: option_t > $o] :
        ! [X11: option_t] : ( P3 @ X11 ) )
    = ( ^ [P4: option_t > $o] :
          ( ( P4 @ none_t )
          & ! [X7: t] : ( P4 @ ( some_t @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_647_split__option__all,axiom,
    ( ( ^ [P3: option4241632866121027589_h_t_t > $o] :
        ! [X11: option4241632866121027589_h_t_t] : ( P3 @ X11 ) )
    = ( ^ [P4: option4241632866121027589_h_t_t > $o] :
          ( ( P4 @ none_P797220180637652640_h_t_t )
          & ! [X7: produc2796182059459404991_h_t_t] : ( P4 @ ( some_P8406129549712030756_h_t_t @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_648_split__option__all,axiom,
    ( ( ^ [P3: option8553266494716013595rray_o > $o] :
        ! [X11: option8553266494716013595rray_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option8553266494716013595rray_o > $o] :
          ( ( P4 @ none_P945442321178488234rray_o )
          & ! [X7: produc8228095596854190539rray_o] : ( P4 @ ( some_P7279874174034738982rray_o @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_649_split__option__all,axiom,
    ( ( ^ [P3: option4580262698044125979od_t_o > $o] :
        ! [X11: option4580262698044125979od_t_o] : ( P3 @ X11 ) )
    = ( ^ [P4: option4580262698044125979od_t_o > $o] :
          ( ( P4 @ none_P3452577240289636010od_t_o )
          & ! [X7: produc530307916048688075od_t_o] : ( P4 @ ( some_P9127227083975130150od_t_o @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_650_split__option__all,axiom,
    ( ( ^ [P3: option4621139365931258234_set_a > $o] :
        ! [X11: option4621139365931258234_set_a] : ( P3 @ X11 ) )
    = ( ^ [P4: option4621139365931258234_set_a > $o] :
          ( ( P4 @ none_P6544562728533672341_set_a )
          & ! [X7: product_prod_t_set_a] : ( P4 @ ( some_P4667681669429350681_set_a @ X7 ) ) ) ) ) ).

% split_option_all
thf(fact_651_combine__options__cases,axiom,
    ! [X3: option_t,P: option_t > option_t > $o,Y: option_t] :
      ( ( ( X3 = none_t )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_t )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: t,B3: t] :
              ( ( X3
                = ( some_t @ A3 ) )
             => ( ( Y
                  = ( some_t @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_652_combine__options__cases,axiom,
    ! [X3: option8291060355354214836od_t_o,P: option8291060355354214836od_t_o > option_t > $o,Y: option_t] :
      ( ( ( X3 = none_P7032077165169035727od_t_o )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_t )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: product_prod_t_o,B3: t] :
              ( ( X3
                = ( some_P1805796590424124243od_t_o @ A3 ) )
             => ( ( Y
                  = ( some_t @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_653_combine__options__cases,axiom,
    ! [X3: option2110264179601050681od_h_t,P: option2110264179601050681od_h_t > option_t > $o,Y: option_t] :
      ( ( ( X3 = none_P849260865442546644od_h_t )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_t )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: product_prod_h_t,B3: t] :
              ( ( X3
                = ( some_P2526622376857543512od_h_t @ A3 ) )
             => ( ( Y
                  = ( some_t @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_654_combine__options__cases,axiom,
    ! [X3: option_t,P: option_t > option8291060355354214836od_t_o > $o,Y: option8291060355354214836od_t_o] :
      ( ( ( X3 = none_t )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_P7032077165169035727od_t_o )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: t,B3: product_prod_t_o] :
              ( ( X3
                = ( some_t @ A3 ) )
             => ( ( Y
                  = ( some_P1805796590424124243od_t_o @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_655_combine__options__cases,axiom,
    ! [X3: option_t,P: option_t > option2110264179601050681od_h_t > $o,Y: option2110264179601050681od_h_t] :
      ( ( ( X3 = none_t )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_P849260865442546644od_h_t )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: t,B3: product_prod_h_t] :
              ( ( X3
                = ( some_t @ A3 ) )
             => ( ( Y
                  = ( some_P2526622376857543512od_h_t @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_656_combine__options__cases,axiom,
    ! [X3: option_t,P: option_t > option4621139365931258234_set_a > $o,Y: option4621139365931258234_set_a] :
      ( ( ( X3 = none_t )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_P6544562728533672341_set_a )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: t,B3: product_prod_t_set_a] :
              ( ( X3
                = ( some_t @ A3 ) )
             => ( ( Y
                  = ( some_P4667681669429350681_set_a @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_657_combine__options__cases,axiom,
    ! [X3: option4621139365931258234_set_a,P: option4621139365931258234_set_a > option_t > $o,Y: option_t] :
      ( ( ( X3 = none_P6544562728533672341_set_a )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_t )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: product_prod_t_set_a,B3: t] :
              ( ( X3
                = ( some_P4667681669429350681_set_a @ A3 ) )
             => ( ( Y
                  = ( some_t @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_658_combine__options__cases,axiom,
    ! [X3: option2536733916571057475od_o_o,P: option2536733916571057475od_o_o > option_t > $o,Y: option_t] :
      ( ( ( X3 = none_P2907379280119556574od_o_o )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_t )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: produc4127598065228779901od_o_o,B3: t] :
              ( ( X3
                = ( some_P6789671444921510242od_o_o @ A3 ) )
             => ( ( Y
                  = ( some_t @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_659_combine__options__cases,axiom,
    ! [X3: option8291060355354214836od_t_o,P: option8291060355354214836od_t_o > option8291060355354214836od_t_o > $o,Y: option8291060355354214836od_t_o] :
      ( ( ( X3 = none_P7032077165169035727od_t_o )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_P7032077165169035727od_t_o )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: product_prod_t_o,B3: product_prod_t_o] :
              ( ( X3
                = ( some_P1805796590424124243od_t_o @ A3 ) )
             => ( ( Y
                  = ( some_P1805796590424124243od_t_o @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_660_combine__options__cases,axiom,
    ! [X3: option8291060355354214836od_t_o,P: option8291060355354214836od_t_o > option2110264179601050681od_h_t > $o,Y: option2110264179601050681od_h_t] :
      ( ( ( X3 = none_P7032077165169035727od_t_o )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_P849260865442546644od_h_t )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: product_prod_t_o,B3: product_prod_h_t] :
              ( ( X3
                = ( some_P1805796590424124243od_t_o @ A3 ) )
             => ( ( Y
                  = ( some_P2526622376857543512od_h_t @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_661_reaches__on__init__Some,axiom,
    ! [R: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,Xs: list_t,S2: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P797220180637652640_h_t_t )
       => ( ( R @ S )
         != none_P797220180637652640_h_t_t ) ) ) ).

% reaches_on_init_Some
thf(fact_662_reaches__on__init__Some,axiom,
    ! [R: h > option5775791656947114332_set_a,S: h,Xs: list_P1095827921439705018_set_a,S2: h] :
      ( ( reache3397181163414509427_set_a @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P2868508613186038903_set_a )
       => ( ( R @ S )
         != none_P2868508613186038903_set_a ) ) ) ).

% reaches_on_init_Some
thf(fact_663_reaches__on__init__Some,axiom,
    ! [R: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,Xs: list_iarray_o,S2: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P945442321178488234rray_o )
       => ( ( R @ S )
         != none_P945442321178488234rray_o ) ) ) ).

% reaches_on_init_Some
thf(fact_664_reaches__on__init__Some,axiom,
    ! [R: h > option2110264179601050681od_h_t,S: h,Xs: list_t,S2: h] :
      ( ( reaches_on_h_t @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P849260865442546644od_h_t )
       => ( ( R @ S )
         != none_P849260865442546644od_h_t ) ) ) ).

% reaches_on_init_Some
thf(fact_665_reaches__on__init__Some,axiom,
    ! [R: t > option4621139365931258234_set_a,S: t,Xs: list_set_a,S2: t] :
      ( ( reaches_on_t_set_a @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P6544562728533672341_set_a )
       => ( ( R @ S )
         != none_P6544562728533672341_set_a ) ) ) ).

% reaches_on_init_Some
thf(fact_666_reaches__on__init__Some,axiom,
    ! [R: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,Xs: list_P5575445741472356340od_t_o,S2: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P3452577240289636010od_t_o )
       => ( ( R @ S )
         != none_P3452577240289636010od_t_o ) ) ) ).

% reaches_on_init_Some
thf(fact_667_reaches__on__init__Some,axiom,
    ! [R: t > option2536733916571057475od_o_o,S: t,Xs: list_P4002435161011370285od_o_o,S2: t] :
      ( ( reache4453078201178095962od_o_o @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P2907379280119556574od_o_o )
       => ( ( R @ S )
         != none_P2907379280119556574od_o_o ) ) ) ).

% reaches_on_init_Some
thf(fact_668_reaches__on__init__Some,axiom,
    ! [R: t > option8291060355354214836od_t_o,S: t,Xs: list_o,S2: t] :
      ( ( reaches_on_t_o @ R @ S @ Xs @ S2 )
     => ( ( ( R @ S2 )
         != none_P7032077165169035727od_t_o )
       => ( ( R @ S )
         != none_P7032077165169035727od_t_o ) ) ) ).

% reaches_on_init_Some
thf(fact_669_VYDRA__MDL_Oreaches__ons__run__vD,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,N: nat,Vs: list_vydra_aux_a_t_h,Ws: list_iarray_o,Vs2: list_vydra_aux_a_t_h,I: nat] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ Run_hd @ N ) ) @ Vs @ Ws @ Vs2 )
       => ( ( ord_less_nat @ I @ ( size_s8993897887676352572_a_t_h @ Vs ) )
         => ? [Ys4: list_P5575445741472356340od_t_o] :
              ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ Run_hd @ N ) @ ( nth_vydra_aux_a_t_h @ Vs @ I ) @ Ys4 @ ( nth_vydra_aux_a_t_h @ Vs2 @ I ) )
              & ( ( size_s4106575409306904672od_t_o @ Ys4 )
                = ( size_s3243743627286111600rray_o @ Ws ) ) ) ) ) ) ).

% VYDRA_MDL.reaches_ons_run_vD
thf(fact_670_read__t_Oelims,axiom,
    ! [X3: option2110264179601050681od_h_t,Y: option_t] :
      ( ( ( read_t_h_t @ X3 )
        = Y )
     => ( ( ( X3 = none_P849260865442546644od_h_t )
         => ( Y != none_t ) )
       => ~ ! [E2: h,T5: t] :
              ( ( X3
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E2 @ T5 ) ) )
             => ( Y
               != ( some_t @ T5 ) ) ) ) ) ).

% read_t.elims
thf(fact_671_read__t_Oelims,axiom,
    ! [X3: option4241632866121027589_h_t_t,Y: option_t] :
      ( ( ( read_t2092621867719112_h_t_t @ X3 )
        = Y )
     => ( ( ( X3 = none_P797220180637652640_h_t_t )
         => ( Y != none_t ) )
       => ~ ! [E2: option2110264179601050681od_h_t,T5: t] :
              ( ( X3
                = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E2 @ T5 ) ) )
             => ( Y
               != ( some_t @ T5 ) ) ) ) ) ).

% read_t.elims
thf(fact_672_read__t_Ocases,axiom,
    ! [X3: option2110264179601050681od_h_t] :
      ( ( X3 != none_P849260865442546644od_h_t )
     => ~ ! [E2: h,T5: t] :
            ( X3
           != ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ E2 @ T5 ) ) ) ) ).

% read_t.cases
thf(fact_673_read__t_Ocases,axiom,
    ! [X3: option4241632866121027589_h_t_t] :
      ( ( X3 != none_P797220180637652640_h_t_t )
     => ~ ! [E2: option2110264179601050681od_h_t,T5: t] :
            ( X3
           != ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ E2 @ T5 ) ) ) ) ).

% read_t.cases
thf(fact_674_reaches__on__len,axiom,
    ! [Run: h > option5775791656947114332_set_a,S: h,N: nat] :
    ? [Vs3: list_P1095827921439705018_set_a,S9: h] :
      ( ( reache3397181163414509427_set_a @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_s5362121731612881446_set_a @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P2868508613186038903_set_a ) ) ) ).

% reaches_on_len
thf(fact_675_reaches__on__len,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h,N: nat] :
    ? [Vs3: list_iarray_o,S9: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_s3243743627286111600rray_o @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P945442321178488234rray_o ) ) ) ).

% reaches_on_len
thf(fact_676_reaches__on__len,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,S: option2110264179601050681od_h_t,N: nat] :
    ? [Vs3: list_t,S9: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_size_list_t @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P797220180637652640_h_t_t ) ) ) ).

% reaches_on_len
thf(fact_677_reaches__on__len,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h,N: nat] :
    ? [Vs3: list_t,S9: h] :
      ( ( reaches_on_h_t @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_size_list_t @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P849260865442546644od_h_t ) ) ) ).

% reaches_on_len
thf(fact_678_reaches__on__len,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t,N: nat] :
    ? [Vs3: list_o,S9: t] :
      ( ( reaches_on_t_o @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_size_list_o @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P7032077165169035727od_t_o ) ) ) ).

% reaches_on_len
thf(fact_679_reaches__on__len,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t,N: nat] :
    ? [Vs3: list_P4002435161011370285od_o_o,S9: t] :
      ( ( reache4453078201178095962od_o_o @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_s1515746228057227161od_o_o @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P2907379280119556574od_o_o ) ) ) ).

% reaches_on_len
thf(fact_680_reaches__on__len,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h,N: nat] :
    ? [Vs3: list_P5575445741472356340od_t_o,S9: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_s4106575409306904672od_t_o @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P3452577240289636010od_t_o ) ) ) ).

% reaches_on_len
thf(fact_681_reaches__on__len,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t,N: nat] :
    ? [Vs3: list_set_a,S9: t] :
      ( ( reaches_on_t_set_a @ Run @ S @ Vs3 @ S9 )
      & ( ( ( size_size_list_set_a @ Vs3 )
          = N )
        | ( ( Run @ S9 )
          = none_P6544562728533672341_set_a ) ) ) ).

% reaches_on_len
thf(fact_682_VYDRA__MDL_Ovydra__sound__aux,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Phi2: formula_a_t,N: nat,I: nat,V: vydra_aux_a_t_h,V3: vydra_aux_a_t_h,T: t,B: $o] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi2 ) @ N )
       => ( ( vYDRA_wf_vydra_a_t_h @ Sigma @ Init_hd @ Run_hd @ Phi2 @ I @ N @ V )
         => ( ( ( run_h_t_a @ Run_hd @ N @ V )
              = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ V3 @ ( product_Pair_t_o @ T @ B ) ) ) )
           => ( ( bounde209865433540700070la_a_t @ Phi2 )
             => ( ( wf_fmla_a_t @ Phi2 )
               => ( ( vYDRA_wf_vydra_a_t_h @ Sigma @ Init_hd @ Run_hd @ Phi2 @ ( suc @ I ) @ N @ V3 )
                  & ? [Es2: list_P1095827921439705018_set_a,E2: h] :
                      ( ( reache3397181163414509427_set_a @ Run_hd @ Init_hd @ Es2 @ E2 )
                      & ( ( size_s5362121731612881446_set_a @ Es2 )
                        = ( suc @ I ) ) )
                  & ( T
                    = ( tau_a_t @ Sigma @ I ) )
                  & ( B
                    = ( sat_a_t @ Sigma @ Phi2 @ I ) ) ) ) ) ) ) ) ) ).

% VYDRA_MDL.vydra_sound_aux
thf(fact_683_vydra__wf__reaches__on,axiom,
    ! [I: nat,Phi2: formula_a_t,N: nat] :
      ( ! [J2: nat] :
          ( ( ord_less_nat @ J2 @ I )
         => ! [V2: vydra_aux_a_t_h] :
              ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi2 @ J2 @ N @ V2 )
             => ( ( run_h_t_a @ run_hd @ N @ V2 )
               != none_P3452577240289636010od_t_o ) ) )
     => ( ( bounde209865433540700070la_a_t @ Phi2 )
       => ( ( wf_fmla_a_t @ Phi2 )
         => ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi2 ) @ N )
           => ? [Vs3: list_P5575445741472356340od_t_o,V2: vydra_aux_a_t_h] :
                ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ run_hd @ N ) @ ( sub_h_t_a @ init_hd @ run_hd @ N @ Phi2 ) @ Vs3 @ V2 )
                & ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi2 @ I @ N @ V2 )
                & ( ( size_s4106575409306904672od_t_o @ Vs3 )
                  = I ) ) ) ) ) ) ).

% vydra_wf_reaches_on
thf(fact_684_IArray__nth__equalityI,axiom,
    ! [Xs: iarray1745998091029370010_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( ( length4184113030062493425_set_a @ Xs )
        = ( size_s5362121731612881446_set_a @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length4184113030062493425_set_a @ Xs ) )
           => ( ( sub_Pr3630787706679140143_set_a @ Xs @ I2 )
              = ( nth_Pr633927046780761275_set_a @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray8998427052846395271_set_a @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_685_IArray__nth__equalityI,axiom,
    ! [Xs: iarray4851489445666185416_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( ( length242649669638338715_a_t_h @ Xs )
        = ( size_s8993897887676352572_a_t_h @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length242649669638338715_a_t_h @ Xs ) )
           => ( ( sub_vydra_aux_a_t_h @ Xs @ I2 )
              = ( nth_vydra_aux_a_t_h @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray3337576414570620549_a_t_h @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_686_IArray__nth__equalityI,axiom,
    ! [Xs: iarray_iarray_o,Ys2: list_iarray_o] :
      ( ( ( length_iarray_o @ Xs )
        = ( size_s3243743627286111600rray_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length_iarray_o @ Xs ) )
           => ( ( sub_iarray_o @ Xs @ I2 )
              = ( nth_iarray_o @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray_iarray_o @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_687_IArray__nth__equalityI,axiom,
    ! [Xs: iarray_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ( length_formula_a_t @ Xs )
        = ( size_s8846756101701226951la_a_t @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length_formula_a_t @ Xs ) )
           => ( ( sub_formula_a_t @ Xs @ I2 )
              = ( nth_formula_a_t @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray_formula_a_t @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_688_IArray__nth__equalityI,axiom,
    ! [Xs: iarray_t,Ys2: list_t] :
      ( ( ( length_t @ Xs )
        = ( size_size_list_t @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length_t @ Xs ) )
           => ( ( sub_t @ Xs @ I2 )
              = ( nth_t @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray_t @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_689_IArray__nth__equalityI,axiom,
    ! [Xs: iarray_o,Ys2: list_o] :
      ( ( ( length_o @ Xs )
        = ( size_size_list_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length_o @ Xs ) )
           => ( ( sub_o @ Xs @ I2 )
              = ( nth_o @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray_o @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_690_IArray__nth__equalityI,axiom,
    ! [Xs: iarray3609206187914733069od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( ( length5448591687185871844od_o_o @ Xs )
        = ( size_s1515746228057227161od_o_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length5448591687185871844od_o_o @ Xs ) )
           => ( ( sub_Product_prod_o_o @ Xs @ I2 )
              = ( nth_Product_prod_o_o @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray900536415543050874od_o_o @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_691_IArray__nth__equalityI,axiom,
    ! [Xs: iarray217416955382142164od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( ( length1340590818988602667od_t_o @ Xs )
        = ( size_s4106575409306904672od_t_o @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length1340590818988602667od_t_o @ Xs ) )
           => ( ( sub_Product_prod_t_o @ Xs @ I2 )
              = ( nth_Product_prod_t_o @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray615630007583135937od_t_o @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_692_IArray__nth__equalityI,axiom,
    ! [Xs: iarray_set_a,Ys2: list_set_a] :
      ( ( ( length_set_a @ Xs )
        = ( size_size_list_set_a @ Ys2 ) )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( length_set_a @ Xs ) )
           => ( ( sub_set_a @ Xs @ I2 )
              = ( nth_set_a @ Ys2 @ I2 ) ) )
       => ( Xs
          = ( iArray_set_a @ Ys2 ) ) ) ) ).

% IArray_nth_equalityI
thf(fact_693_Until_OIH_I1_J,axiom,
    ! [I: nat,V: vydra_aux_a_t_h] :
      ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ phi2 @ I @ na @ V )
     => ( ( ( run_h_t_a @ run_hd @ na @ V )
          = none_P3452577240289636010od_t_o )
       => ( ( ord_less_nat @ I @ ( progress_a_t @ phi2 @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ vs ) ) )
         => ( ( bounde209865433540700070la_a_t @ phi2 )
           => ~ ( wf_fmla_a_t @ phi2 ) ) ) ) ) ).

% Until.IH(1)
thf(fact_694_Until_OIH_I2_J,axiom,
    ! [I: nat,V: vydra_aux_a_t_h] :
      ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ psi @ I @ na @ V )
     => ( ( ( run_h_t_a @ run_hd @ na @ V )
          = none_P3452577240289636010od_t_o )
       => ( ( ord_less_nat @ I @ ( progress_a_t @ psi @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ vs ) ) )
         => ( ( bounde209865433540700070la_a_t @ psi )
           => ~ ( wf_fmla_a_t @ psi ) ) ) ) ) ).

% Until.IH(2)
thf(fact_695_v__def_I1_J,axiom,
    ( va
    = ( vydra_8322945071554601_t_h_a @ i @ back @ vphi @ vpsi @ front @ c @ z ) ) ).

% v_def(1)
thf(fact_696_vydra__aux_Oinject_I8_J,axiom,
    ! [X91: i_t,X92: option2110264179601050681od_h_t,X93: vydra_aux_a_t_h,X94: vydra_aux_a_t_h,X95: option2110264179601050681od_h_t,X96: nat,X97: option2536733916571057475od_o_o,Y91: i_t,Y92: option2110264179601050681od_h_t,Y93: vydra_aux_a_t_h,Y94: vydra_aux_a_t_h,Y95: option2110264179601050681od_h_t,Y96: nat,Y97: option2536733916571057475od_o_o] :
      ( ( ( vydra_8322945071554601_t_h_a @ X91 @ X92 @ X93 @ X94 @ X95 @ X96 @ X97 )
        = ( vydra_8322945071554601_t_h_a @ Y91 @ Y92 @ Y93 @ Y94 @ Y95 @ Y96 @ Y97 ) )
      = ( ( X91 = Y91 )
        & ( X92 = Y92 )
        & ( X93 = Y93 )
        & ( X94 = Y94 )
        & ( X95 = Y95 )
        & ( X96 = Y96 )
        & ( X97 = Y97 ) ) ) ).

% vydra_aux.inject(8)
thf(fact_697_Until_Oprems_I2_J,axiom,
    ( ( run_h_t_a @ run_hd @ ( suc @ na ) @ va )
    = none_P3452577240289636010od_t_o ) ).

% Until.prems(2)
thf(fact_698_prod_Ocollapse,axiom,
    ! [Prod: produc4127598065228779901od_o_o] :
      ( ( produc1891450550985068525od_o_o @ ( produc1892153463183078873od_o_o @ Prod ) @ ( produc4009737033919571227od_o_o @ Prod ) )
      = Prod ) ).

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

% prod.collapse
thf(fact_700_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_701_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_702_prod_Ocollapse,axiom,
    ! [Prod: produc8228095596854190539rray_o] :
      ( ( produc8472968102330193021rray_o @ ( produc6595003253218802065rray_o @ Prod ) @ ( produc8626223991256068815rray_o @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_703_prod_Ocollapse,axiom,
    ! [Prod: produc530307916048688075od_t_o] :
      ( ( produc5956389175556509053od_t_o @ ( produc288163909963368081od_t_o @ Prod ) @ ( produc5774376458158505423od_t_o @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_704_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_705_prod_Ocollapse,axiom,
    ! [Prod: product_prod_t_o] :
      ( ( product_Pair_t_o @ ( product_fst_t_o @ Prod ) @ ( product_snd_t_o @ Prod ) )
      = Prod ) ).

% prod.collapse
thf(fact_706_v__def_I11_J,axiom,
    ( z
    = ( case_n943740417880565421od_o_o @ none_P2907379280119556574od_o_o
      @ ^ [K3: nat] : ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ ( tau_a_t @ sigma @ K3 ) @ ( product_Pair_o_o @ ( sat_a_t @ sigma @ phi2 @ K3 ) @ ( sat_a_t @ sigma @ psi @ K3 ) ) ) )
      @ j ) ) ).

% v_def(11)
thf(fact_707_Until_Oprems_I4_J,axiom,
    bounde209865433540700070la_a_t @ ( until_a_t @ phi2 @ i @ psi ) ).

% Until.prems(4)
thf(fact_708_Until_Oprems_I5_J,axiom,
    wf_fmla_a_t @ ( until_a_t @ phi2 @ i @ psi ) ).

% Until.prems(5)
thf(fact_709_Until_Oprems_I3_J,axiom,
    ord_less_nat @ ia @ ( progress_a_t @ ( until_a_t @ phi2 @ i @ psi ) @ ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ vs ) ) ).

% Until.prems(3)
thf(fact_710_Until_Oprems_I1_J,axiom,
    vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( until_a_t @ phi2 @ i @ psi ) @ ia @ ( suc @ na ) @ va ).

% Until.prems(1)
thf(fact_711_sndI,axiom,
    ! [X3: produc4127598065228779901od_o_o,Y: t,Z4: product_prod_o_o] :
      ( ( X3
        = ( produc1891450550985068525od_o_o @ Y @ Z4 ) )
     => ( ( produc4009737033919571227od_o_o @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_712_sndI,axiom,
    ! [X3: product_prod_t_set_a,Y: t,Z4: set_a] :
      ( ( X3
        = ( product_Pair_t_set_a @ Y @ Z4 ) )
     => ( ( product_snd_t_set_a @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_713_sndI,axiom,
    ! [X3: produc8090089739038349590_set_a,Y: h,Z4: product_prod_t_set_a] :
      ( ( X3
        = ( produc3432067189782488838_set_a @ Y @ Z4 ) )
     => ( ( produc5260167487839082036_set_a @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_714_sndI,axiom,
    ! [X3: product_prod_h_t,Y: h,Z4: t] :
      ( ( X3
        = ( product_Pair_h_t @ Y @ Z4 ) )
     => ( ( product_snd_h_t @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_715_sndI,axiom,
    ! [X3: produc2796182059459404991_h_t_t,Y: option2110264179601050681od_h_t,Z4: t] :
      ( ( X3
        = ( produc770200333395398319_h_t_t @ Y @ Z4 ) )
     => ( ( produc4382304763178309853_h_t_t @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_716_sndI,axiom,
    ! [X3: produc8228095596854190539rray_o,Y: list_vydra_aux_a_t_h,Z4: iarray_o] :
      ( ( X3
        = ( produc8472968102330193021rray_o @ Y @ Z4 ) )
     => ( ( produc8626223991256068815rray_o @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_717_sndI,axiom,
    ! [X3: produc530307916048688075od_t_o,Y: vydra_aux_a_t_h,Z4: product_prod_t_o] :
      ( ( X3
        = ( produc5956389175556509053od_t_o @ Y @ Z4 ) )
     => ( ( produc5774376458158505423od_t_o @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_718_sndI,axiom,
    ! [X3: product_prod_t_o,Y: t,Z4: $o] :
      ( ( X3
        = ( product_Pair_t_o @ Y @ Z4 ) )
     => ( ( product_snd_t_o @ X3 )
        = Z4 ) ) ).

% sndI
thf(fact_719_snd__conv,axiom,
    ! [X1: t,X2: product_prod_o_o] :
      ( ( produc4009737033919571227od_o_o @ ( produc1891450550985068525od_o_o @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_720_snd__conv,axiom,
    ! [X1: t,X2: set_a] :
      ( ( product_snd_t_set_a @ ( product_Pair_t_set_a @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_721_snd__conv,axiom,
    ! [X1: h,X2: product_prod_t_set_a] :
      ( ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_722_snd__conv,axiom,
    ! [X1: h,X2: t] :
      ( ( product_snd_h_t @ ( product_Pair_h_t @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_723_snd__conv,axiom,
    ! [X1: option2110264179601050681od_h_t,X2: t] :
      ( ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_724_snd__conv,axiom,
    ! [X1: list_vydra_aux_a_t_h,X2: iarray_o] :
      ( ( produc8626223991256068815rray_o @ ( produc8472968102330193021rray_o @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_725_snd__conv,axiom,
    ! [X1: vydra_aux_a_t_h,X2: product_prod_t_o] :
      ( ( produc5774376458158505423od_t_o @ ( produc5956389175556509053od_t_o @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_726_snd__conv,axiom,
    ! [X1: t,X2: $o] :
      ( ( product_snd_t_o @ ( product_Pair_t_o @ X1 @ X2 ) )
      = X2 ) ).

% snd_conv
thf(fact_727_snd__eqD,axiom,
    ! [X3: t,Y: product_prod_o_o,A: product_prod_o_o] :
      ( ( ( produc4009737033919571227od_o_o @ ( produc1891450550985068525od_o_o @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_728_snd__eqD,axiom,
    ! [X3: t,Y: set_a,A: set_a] :
      ( ( ( product_snd_t_set_a @ ( product_Pair_t_set_a @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_729_snd__eqD,axiom,
    ! [X3: h,Y: product_prod_t_set_a,A: product_prod_t_set_a] :
      ( ( ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_730_snd__eqD,axiom,
    ! [X3: h,Y: t,A: t] :
      ( ( ( product_snd_h_t @ ( product_Pair_h_t @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_731_snd__eqD,axiom,
    ! [X3: option2110264179601050681od_h_t,Y: t,A: t] :
      ( ( ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_732_snd__eqD,axiom,
    ! [X3: list_vydra_aux_a_t_h,Y: iarray_o,A: iarray_o] :
      ( ( ( produc8626223991256068815rray_o @ ( produc8472968102330193021rray_o @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_733_snd__eqD,axiom,
    ! [X3: vydra_aux_a_t_h,Y: product_prod_t_o,A: product_prod_t_o] :
      ( ( ( produc5774376458158505423od_t_o @ ( produc5956389175556509053od_t_o @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_734_snd__eqD,axiom,
    ! [X3: t,Y: $o,A: $o] :
      ( ( ( product_snd_t_o @ ( product_Pair_t_o @ X3 @ Y ) )
        = A )
     => ( Y = A ) ) ).

% snd_eqD
thf(fact_735_prod__eq__iff,axiom,
    ( ( ^ [Y4: product_prod_t_set_a,Z: product_prod_t_set_a] : ( Y4 = Z ) )
    = ( ^ [S6: product_prod_t_set_a,T4: product_prod_t_set_a] :
          ( ( ( product_fst_t_set_a @ S6 )
            = ( product_fst_t_set_a @ T4 ) )
          & ( ( product_snd_t_set_a @ S6 )
            = ( product_snd_t_set_a @ T4 ) ) ) ) ) ).

% prod_eq_iff
thf(fact_736_prod__eq__iff,axiom,
    ( ( ^ [Y4: product_prod_t_o,Z: product_prod_t_o] : ( Y4 = Z ) )
    = ( ^ [S6: product_prod_t_o,T4: product_prod_t_o] :
          ( ( ( product_fst_t_o @ S6 )
            = ( product_fst_t_o @ T4 ) )
          & ( ( product_snd_t_o @ S6 )
            = ( product_snd_t_o @ T4 ) ) ) ) ) ).

% prod_eq_iff
thf(fact_737_prod__eqI,axiom,
    ! [P2: product_prod_t_set_a,Q: product_prod_t_set_a] :
      ( ( ( product_fst_t_set_a @ P2 )
        = ( product_fst_t_set_a @ Q ) )
     => ( ( ( product_snd_t_set_a @ P2 )
          = ( product_snd_t_set_a @ Q ) )
       => ( P2 = Q ) ) ) ).

% prod_eqI
thf(fact_738_prod__eqI,axiom,
    ! [P2: product_prod_t_o,Q: product_prod_t_o] :
      ( ( ( product_fst_t_o @ P2 )
        = ( product_fst_t_o @ Q ) )
     => ( ( ( product_snd_t_o @ P2 )
          = ( product_snd_t_o @ Q ) )
       => ( P2 = Q ) ) ) ).

% prod_eqI
thf(fact_739_prod_Oexpand,axiom,
    ! [Prod: product_prod_t_set_a,Prod2: product_prod_t_set_a] :
      ( ( ( ( product_fst_t_set_a @ Prod )
          = ( product_fst_t_set_a @ Prod2 ) )
        & ( ( product_snd_t_set_a @ Prod )
          = ( product_snd_t_set_a @ Prod2 ) ) )
     => ( Prod = Prod2 ) ) ).

% prod.expand
thf(fact_740_prod_Oexpand,axiom,
    ! [Prod: product_prod_t_o,Prod2: product_prod_t_o] :
      ( ( ( ( product_fst_t_o @ Prod )
          = ( product_fst_t_o @ Prod2 ) )
        & ( ( product_snd_t_o @ Prod )
          = ( product_snd_t_o @ Prod2 ) ) )
     => ( Prod = Prod2 ) ) ).

% prod.expand
thf(fact_741_surjective__pairing,axiom,
    ! [T: produc4127598065228779901od_o_o] :
      ( T
      = ( produc1891450550985068525od_o_o @ ( produc1892153463183078873od_o_o @ T ) @ ( produc4009737033919571227od_o_o @ T ) ) ) ).

% surjective_pairing
thf(fact_742_surjective__pairing,axiom,
    ! [T: produc8090089739038349590_set_a] :
      ( T
      = ( produc3432067189782488838_set_a @ ( produc6892702156181598450_set_a @ T ) @ ( produc5260167487839082036_set_a @ T ) ) ) ).

% surjective_pairing
thf(fact_743_surjective__pairing,axiom,
    ! [T: product_prod_h_t] :
      ( T
      = ( product_Pair_h_t @ ( product_fst_h_t @ T ) @ ( product_snd_h_t @ T ) ) ) ).

% surjective_pairing
thf(fact_744_surjective__pairing,axiom,
    ! [T: produc2796182059459404991_h_t_t] :
      ( T
      = ( produc770200333395398319_h_t_t @ ( produc4004510029700249243_h_t_t @ T ) @ ( produc4382304763178309853_h_t_t @ T ) ) ) ).

% surjective_pairing
thf(fact_745_surjective__pairing,axiom,
    ! [T: produc8228095596854190539rray_o] :
      ( T
      = ( produc8472968102330193021rray_o @ ( produc6595003253218802065rray_o @ T ) @ ( produc8626223991256068815rray_o @ T ) ) ) ).

% surjective_pairing
thf(fact_746_surjective__pairing,axiom,
    ! [T: produc530307916048688075od_t_o] :
      ( T
      = ( produc5956389175556509053od_t_o @ ( produc288163909963368081od_t_o @ T ) @ ( produc5774376458158505423od_t_o @ T ) ) ) ).

% surjective_pairing
thf(fact_747_surjective__pairing,axiom,
    ! [T: product_prod_t_set_a] :
      ( T
      = ( product_Pair_t_set_a @ ( product_fst_t_set_a @ T ) @ ( product_snd_t_set_a @ T ) ) ) ).

% surjective_pairing
thf(fact_748_surjective__pairing,axiom,
    ! [T: product_prod_t_o] :
      ( T
      = ( product_Pair_t_o @ ( product_fst_t_o @ T ) @ ( product_snd_t_o @ T ) ) ) ).

% surjective_pairing
thf(fact_749_prod_Oexhaust__sel,axiom,
    ! [Prod: produc4127598065228779901od_o_o] :
      ( Prod
      = ( produc1891450550985068525od_o_o @ ( produc1892153463183078873od_o_o @ Prod ) @ ( produc4009737033919571227od_o_o @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_750_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_751_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_752_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_753_prod_Oexhaust__sel,axiom,
    ! [Prod: produc8228095596854190539rray_o] :
      ( Prod
      = ( produc8472968102330193021rray_o @ ( produc6595003253218802065rray_o @ Prod ) @ ( produc8626223991256068815rray_o @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_754_prod_Oexhaust__sel,axiom,
    ! [Prod: produc530307916048688075od_t_o] :
      ( Prod
      = ( produc5956389175556509053od_t_o @ ( produc288163909963368081od_t_o @ Prod ) @ ( produc5774376458158505423od_t_o @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_755_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_756_prod_Oexhaust__sel,axiom,
    ! [Prod: product_prod_t_o] :
      ( Prod
      = ( product_Pair_t_o @ ( product_fst_t_o @ Prod ) @ ( product_snd_t_o @ Prod ) ) ) ).

% prod.exhaust_sel
thf(fact_757_pair__list__eqI,axiom,
    ! [Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Xs )
        = ( map_Pr119846518281778721et_a_t @ product_fst_t_set_a @ Ys2 ) )
     => ( ( ( map_Pr7710007540447715182_set_a @ product_snd_t_set_a @ Xs )
          = ( map_Pr7710007540447715182_set_a @ product_snd_t_set_a @ Ys2 ) )
       => ( Xs = Ys2 ) ) ) ).

% pair_list_eqI
thf(fact_758_pair__list__eqI,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( ( map_Pr4056436085500758887_t_o_t @ product_fst_t_o @ Xs )
        = ( map_Pr4056436085500758887_t_o_t @ product_fst_t_o @ Ys2 ) )
     => ( ( ( map_Pr913679237327294190_t_o_o @ product_snd_t_o @ Xs )
          = ( map_Pr913679237327294190_t_o_o @ product_snd_t_o @ Ys2 ) )
       => ( Xs = Ys2 ) ) ) ).

% pair_list_eqI
thf(fact_759_less__prod__def_H,axiom,
    ( ord_le7650071679307129824_set_a
    = ( ^ [X7: product_prod_t_set_a,Y6: product_prod_t_set_a] :
          ( ( ord_less_t @ ( product_fst_t_set_a @ X7 ) @ ( product_fst_t_set_a @ Y6 ) )
          | ( ( ( product_fst_t_set_a @ X7 )
              = ( product_fst_t_set_a @ Y6 ) )
            & ( ord_less_set_a @ ( product_snd_t_set_a @ X7 ) @ ( product_snd_t_set_a @ Y6 ) ) ) ) ) ) ).

% less_prod_def'
thf(fact_760_less__prod__def_H,axiom,
    ( ord_le3945363144663698842od_t_o
    = ( ^ [X7: product_prod_t_o,Y6: product_prod_t_o] :
          ( ( ord_less_t @ ( product_fst_t_o @ X7 ) @ ( product_fst_t_o @ Y6 ) )
          | ( ( ( product_fst_t_o @ X7 )
              = ( product_fst_t_o @ Y6 ) )
            & ( ord_less_o @ ( product_snd_t_o @ X7 ) @ ( product_snd_t_o @ Y6 ) ) ) ) ) ) ).

% less_prod_def'
thf(fact_761_less__prod__def_H,axiom,
    ( ord_le1203424502768444845at_nat
    = ( ^ [X7: product_prod_nat_nat,Y6: product_prod_nat_nat] :
          ( ( ord_less_nat @ ( product_fst_nat_nat @ X7 ) @ ( product_fst_nat_nat @ Y6 ) )
          | ( ( ( product_fst_nat_nat @ X7 )
              = ( product_fst_nat_nat @ Y6 ) )
            & ( ord_less_nat @ ( product_snd_nat_nat @ X7 ) @ ( product_snd_nat_nat @ Y6 ) ) ) ) ) ) ).

% less_prod_def'
thf(fact_762_prod__less__def,axiom,
    ( ord_le7650071679307129824_set_a
    = ( ^ [X7: product_prod_t_set_a,Y6: product_prod_t_set_a] :
          ( ( ord_less_t @ ( product_fst_t_set_a @ X7 ) @ ( product_fst_t_set_a @ Y6 ) )
          | ( ( ord_less_eq_t @ ( product_fst_t_set_a @ X7 ) @ ( product_fst_t_set_a @ Y6 ) )
            & ( ord_less_set_a @ ( product_snd_t_set_a @ X7 ) @ ( product_snd_t_set_a @ Y6 ) ) ) ) ) ) ).

% prod_less_def
thf(fact_763_prod__less__def,axiom,
    ( ord_le3945363144663698842od_t_o
    = ( ^ [X7: product_prod_t_o,Y6: product_prod_t_o] :
          ( ( ord_less_t @ ( product_fst_t_o @ X7 ) @ ( product_fst_t_o @ Y6 ) )
          | ( ( ord_less_eq_t @ ( product_fst_t_o @ X7 ) @ ( product_fst_t_o @ Y6 ) )
            & ( ord_less_o @ ( product_snd_t_o @ X7 ) @ ( product_snd_t_o @ Y6 ) ) ) ) ) ) ).

% prod_less_def
thf(fact_764_prod__less__def,axiom,
    ( ord_le1203424502768444845at_nat
    = ( ^ [X7: product_prod_nat_nat,Y6: product_prod_nat_nat] :
          ( ( ord_less_nat @ ( product_fst_nat_nat @ X7 ) @ ( product_fst_nat_nat @ Y6 ) )
          | ( ( ord_less_eq_nat @ ( product_fst_nat_nat @ X7 ) @ ( product_fst_nat_nat @ Y6 ) )
            & ( ord_less_nat @ ( product_snd_nat_nat @ X7 ) @ ( product_snd_nat_nat @ Y6 ) ) ) ) ) ) ).

% prod_less_def
thf(fact_765_less__eq__prod__def,axiom,
    ( ord_le1576776917030837460_set_a
    = ( ^ [X7: product_prod_t_set_a,Y6: product_prod_t_set_a] :
          ( ( ord_less_t @ ( product_fst_t_set_a @ X7 ) @ ( product_fst_t_set_a @ Y6 ) )
          | ( ( ord_less_eq_t @ ( product_fst_t_set_a @ X7 ) @ ( product_fst_t_set_a @ Y6 ) )
            & ( ord_less_eq_set_a @ ( product_snd_t_set_a @ X7 ) @ ( product_snd_t_set_a @ Y6 ) ) ) ) ) ) ).

% less_eq_prod_def
thf(fact_766_less__eq__prod__def,axiom,
    ( ord_le1999770283289415822od_t_o
    = ( ^ [X7: product_prod_t_o,Y6: product_prod_t_o] :
          ( ( ord_less_t @ ( product_fst_t_o @ X7 ) @ ( product_fst_t_o @ Y6 ) )
          | ( ( ord_less_eq_t @ ( product_fst_t_o @ X7 ) @ ( product_fst_t_o @ Y6 ) )
            & ( ord_less_eq_o @ ( product_snd_t_o @ X7 ) @ ( product_snd_t_o @ Y6 ) ) ) ) ) ) ).

% less_eq_prod_def
thf(fact_767_less__eq__prod__def,axiom,
    ( ord_le8460144461188290721at_nat
    = ( ^ [X7: product_prod_nat_nat,Y6: product_prod_nat_nat] :
          ( ( ord_less_nat @ ( product_fst_nat_nat @ X7 ) @ ( product_fst_nat_nat @ Y6 ) )
          | ( ( ord_less_eq_nat @ ( product_fst_nat_nat @ X7 ) @ ( product_fst_nat_nat @ Y6 ) )
            & ( ord_less_eq_nat @ ( product_snd_nat_nat @ X7 ) @ ( product_snd_nat_nat @ Y6 ) ) ) ) ) ) ).

% less_eq_prod_def
thf(fact_768_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray1745998091029370010_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length4184113030062493425_set_a @ Xs )
          = ( size_s5362121731612881446_set_a @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length4184113030062493425_set_a @ Xs ) )
             => ( ( sub_Pr3630787706679140143_set_a @ Xs @ I2 )
                = ( nth_Pr633927046780761275_set_a @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray8998427052846395271_set_a @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_769_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray4851489445666185416_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length242649669638338715_a_t_h @ Xs )
          = ( size_s8993897887676352572_a_t_h @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length242649669638338715_a_t_h @ Xs ) )
             => ( ( sub_vydra_aux_a_t_h @ Xs @ I2 )
                = ( nth_vydra_aux_a_t_h @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray3337576414570620549_a_t_h @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_770_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray_iarray_o,Ys2: list_iarray_o] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length_iarray_o @ Xs )
          = ( size_s3243743627286111600rray_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length_iarray_o @ Xs ) )
             => ( ( sub_iarray_o @ Xs @ I2 )
                = ( nth_iarray_o @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray_iarray_o @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_771_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray_formula_a_t,Ys2: list_formula_a_t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length_formula_a_t @ Xs )
          = ( size_s8846756101701226951la_a_t @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length_formula_a_t @ Xs ) )
             => ( ( sub_formula_a_t @ Xs @ I2 )
                = ( nth_formula_a_t @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray_formula_a_t @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_772_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray_t,Ys2: list_t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length_t @ Xs )
          = ( size_size_list_t @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length_t @ Xs ) )
             => ( ( sub_t @ Xs @ I2 )
                = ( nth_t @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray_t @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_773_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray_o,Ys2: list_o] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length_o @ Xs )
          = ( size_size_list_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length_o @ Xs ) )
             => ( ( sub_o @ Xs @ I2 )
                = ( nth_o @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray_o @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_774_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray3609206187914733069od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length5448591687185871844od_o_o @ Xs )
          = ( size_s1515746228057227161od_o_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length5448591687185871844od_o_o @ Xs ) )
             => ( ( sub_Product_prod_o_o @ Xs @ I2 )
                = ( nth_Product_prod_o_o @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray900536415543050874od_o_o @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_775_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray217416955382142164od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length1340590818988602667od_t_o @ Xs )
          = ( size_s4106575409306904672od_t_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length1340590818988602667od_t_o @ Xs ) )
             => ( ( sub_Product_prod_t_o @ Xs @ I2 )
                = ( nth_Product_prod_t_o @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray615630007583135937od_t_o @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_776_VYDRA__MDL_OIArray__nth__equalityI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Xs: iarray_set_a,Ys2: list_set_a] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ( length_set_a @ Xs )
          = ( size_size_list_set_a @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( length_set_a @ Xs ) )
             => ( ( sub_set_a @ Xs @ I2 )
                = ( nth_set_a @ Ys2 @ I2 ) ) )
         => ( Xs
            = ( iArray_set_a @ Ys2 ) ) ) ) ) ).

% VYDRA_MDL.IArray_nth_equalityI
thf(fact_777_VYDRA__MDL_Ovydra__wf__reaches__on,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,I: nat,Phi2: formula_a_t,N: nat] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ! [J2: nat] :
            ( ( ord_less_nat @ J2 @ I )
           => ! [V2: vydra_aux_a_t_h] :
                ( ( vYDRA_wf_vydra_a_t_h @ Sigma @ Init_hd @ Run_hd @ Phi2 @ J2 @ N @ V2 )
               => ( ( run_h_t_a @ Run_hd @ N @ V2 )
                 != none_P3452577240289636010od_t_o ) ) )
       => ( ( bounde209865433540700070la_a_t @ Phi2 )
         => ( ( wf_fmla_a_t @ Phi2 )
           => ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi2 ) @ N )
             => ? [Vs3: list_P5575445741472356340od_t_o,V2: vydra_aux_a_t_h] :
                  ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ Run_hd @ N ) @ ( sub_h_t_a @ Init_hd @ Run_hd @ N @ Phi2 ) @ Vs3 @ V2 )
                  & ( vYDRA_wf_vydra_a_t_h @ Sigma @ Init_hd @ Run_hd @ Phi2 @ I @ N @ V2 )
                  & ( ( size_s4106575409306904672od_t_o @ Vs3 )
                    = I ) ) ) ) ) ) ) ).

% VYDRA_MDL.vydra_wf_reaches_on
thf(fact_778_wf__vydra__sub,axiom,
    ! [Phi2: formula_a_t,N: nat] :
      ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi2 ) @ N )
     => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi2 @ zero_zero_nat @ N @ ( sub_h_t_a @ init_hd @ run_hd @ N @ Phi2 ) ) ) ).

% wf_vydra_sub
thf(fact_779_init__vydra__def,axiom,
    ( init_vydra_h_t_a
    = ( ^ [Init_hd2: h,Run_hd2: h > option5775791656947114332_set_a,Phi3: formula_a_t] : ( produc184169161053073665_a_t_h @ ( msize_fmla_a_t @ Phi3 ) @ ( sub_h_t_a @ Init_hd2 @ Run_hd2 @ ( msize_fmla_a_t @ Phi3 ) @ Phi3 ) ) ) ) ).

% init_vydra_def
thf(fact_780_reach__run__subs__run,axiom,
    ! [N: nat,R: regex_a_t,Rho2: list_iarray_o,Vs: list_vydra_aux_a_t_h,J: nat,Phi: formula_a_t] :
      ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ run_hd @ N ) ) @ ( map_fo5746072578778194433_a_t_h @ ( sub_h_t_a @ init_hd @ run_hd @ N ) @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) @ Rho2 @ Vs )
     => ( ( ord_less_nat @ J @ ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
       => ( ( Phi
            = ( nth_formula_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) @ J ) )
         => ? [Rho3: list_P5575445741472356340od_t_o] :
              ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ run_hd @ N ) @ ( sub_h_t_a @ init_hd @ run_hd @ N @ Phi ) @ Rho3 @ ( nth_vydra_aux_a_t_h @ Vs @ J ) )
              & ( ( size_s4106575409306904672od_t_o @ Rho3 )
                = ( size_s3243743627286111600rray_o @ Rho2 ) ) ) ) ) ) ).

% reach_run_subs_run
thf(fact_781_exI__realizer,axiom,
    ! [P: product_prod_o_o > t > $o,Y: product_prod_o_o,X3: t] :
      ( ( P @ Y @ X3 )
     => ( P @ ( produc4009737033919571227od_o_o @ ( produc1891450550985068525od_o_o @ X3 @ Y ) ) @ ( produc1892153463183078873od_o_o @ ( produc1891450550985068525od_o_o @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_782_exI__realizer,axiom,
    ! [P: product_prod_t_set_a > h > $o,Y: product_prod_t_set_a,X3: h] :
      ( ( P @ Y @ X3 )
     => ( P @ ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ X3 @ Y ) ) @ ( produc6892702156181598450_set_a @ ( produc3432067189782488838_set_a @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_783_exI__realizer,axiom,
    ! [P: t > h > $o,Y: t,X3: h] :
      ( ( P @ Y @ X3 )
     => ( P @ ( product_snd_h_t @ ( product_Pair_h_t @ X3 @ Y ) ) @ ( product_fst_h_t @ ( product_Pair_h_t @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_784_exI__realizer,axiom,
    ! [P: t > option2110264179601050681od_h_t > $o,Y: t,X3: option2110264179601050681od_h_t] :
      ( ( P @ Y @ X3 )
     => ( P @ ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ X3 @ Y ) ) @ ( produc4004510029700249243_h_t_t @ ( produc770200333395398319_h_t_t @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_785_exI__realizer,axiom,
    ! [P: iarray_o > list_vydra_aux_a_t_h > $o,Y: iarray_o,X3: list_vydra_aux_a_t_h] :
      ( ( P @ Y @ X3 )
     => ( P @ ( produc8626223991256068815rray_o @ ( produc8472968102330193021rray_o @ X3 @ Y ) ) @ ( produc6595003253218802065rray_o @ ( produc8472968102330193021rray_o @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_786_exI__realizer,axiom,
    ! [P: product_prod_t_o > vydra_aux_a_t_h > $o,Y: product_prod_t_o,X3: vydra_aux_a_t_h] :
      ( ( P @ Y @ X3 )
     => ( P @ ( produc5774376458158505423od_t_o @ ( produc5956389175556509053od_t_o @ X3 @ Y ) ) @ ( produc288163909963368081od_t_o @ ( produc5956389175556509053od_t_o @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_787_exI__realizer,axiom,
    ! [P: set_a > t > $o,Y: set_a,X3: t] :
      ( ( P @ Y @ X3 )
     => ( P @ ( product_snd_t_set_a @ ( product_Pair_t_set_a @ X3 @ Y ) ) @ ( product_fst_t_set_a @ ( product_Pair_t_set_a @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_788_exI__realizer,axiom,
    ! [P: $o > t > $o,Y: $o,X3: t] :
      ( ( P @ Y @ X3 )
     => ( P @ ( product_snd_t_o @ ( product_Pair_t_o @ X3 @ Y ) ) @ ( product_fst_t_o @ ( product_Pair_t_o @ X3 @ Y ) ) ) ) ).

% exI_realizer
thf(fact_789_conjI__realizer,axiom,
    ! [P: t > $o,P2: t,Q2: product_prod_o_o > $o,Q: product_prod_o_o] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( produc1892153463183078873od_o_o @ ( produc1891450550985068525od_o_o @ P2 @ Q ) ) )
          & ( Q2 @ ( produc4009737033919571227od_o_o @ ( produc1891450550985068525od_o_o @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_790_conjI__realizer,axiom,
    ! [P: h > $o,P2: h,Q2: product_prod_t_set_a > $o,Q: product_prod_t_set_a] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( produc6892702156181598450_set_a @ ( produc3432067189782488838_set_a @ P2 @ Q ) ) )
          & ( Q2 @ ( produc5260167487839082036_set_a @ ( produc3432067189782488838_set_a @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_791_conjI__realizer,axiom,
    ! [P: h > $o,P2: h,Q2: t > $o,Q: t] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( product_fst_h_t @ ( product_Pair_h_t @ P2 @ Q ) ) )
          & ( Q2 @ ( product_snd_h_t @ ( product_Pair_h_t @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_792_conjI__realizer,axiom,
    ! [P: option2110264179601050681od_h_t > $o,P2: option2110264179601050681od_h_t,Q2: t > $o,Q: t] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( produc4004510029700249243_h_t_t @ ( produc770200333395398319_h_t_t @ P2 @ Q ) ) )
          & ( Q2 @ ( produc4382304763178309853_h_t_t @ ( produc770200333395398319_h_t_t @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_793_conjI__realizer,axiom,
    ! [P: list_vydra_aux_a_t_h > $o,P2: list_vydra_aux_a_t_h,Q2: iarray_o > $o,Q: iarray_o] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( produc6595003253218802065rray_o @ ( produc8472968102330193021rray_o @ P2 @ Q ) ) )
          & ( Q2 @ ( produc8626223991256068815rray_o @ ( produc8472968102330193021rray_o @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_794_conjI__realizer,axiom,
    ! [P: vydra_aux_a_t_h > $o,P2: vydra_aux_a_t_h,Q2: product_prod_t_o > $o,Q: product_prod_t_o] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( produc288163909963368081od_t_o @ ( produc5956389175556509053od_t_o @ P2 @ Q ) ) )
          & ( Q2 @ ( produc5774376458158505423od_t_o @ ( produc5956389175556509053od_t_o @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_795_conjI__realizer,axiom,
    ! [P: t > $o,P2: t,Q2: set_a > $o,Q: set_a] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( product_fst_t_set_a @ ( product_Pair_t_set_a @ P2 @ Q ) ) )
          & ( Q2 @ ( product_snd_t_set_a @ ( product_Pair_t_set_a @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_796_conjI__realizer,axiom,
    ! [P: t > $o,P2: t,Q2: $o > $o,Q: $o] :
      ( ( P @ P2 )
     => ( ( Q2 @ Q )
       => ( ( P @ ( product_fst_t_o @ ( product_Pair_t_o @ P2 @ Q ) ) )
          & ( Q2 @ ( product_snd_t_o @ ( product_Pair_t_o @ P2 @ Q ) ) ) ) ) ) ).

% conjI_realizer
thf(fact_797_last__before_Ocases,axiom,
    ! [X3: produc3074792404157404414_o_nat] :
      ( ! [P5: nat > $o] :
          ( X3
         != ( produc7277522915581678840_o_nat @ P5 @ zero_zero_nat ) )
     => ~ ! [P5: nat > $o,N3: nat] :
            ( X3
           != ( produc7277522915581678840_o_nat @ P5 @ ( suc @ N3 ) ) ) ) ).

% last_before.cases
thf(fact_798_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

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

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

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

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

% less_nat_zero_code
thf(fact_803_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

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

% diff_0_eq_0
thf(fact_805_list_Omap__disc__iff,axiom,
    ! [F: formula_a_t > formula_a_t,A: list_formula_a_t] :
      ( ( ( map_fo8328018262729589004la_a_t @ F @ A )
        = nil_formula_a_t )
      = ( A = nil_formula_a_t ) ) ).

% list.map_disc_iff
thf(fact_806_list_Omap__disc__iff,axiom,
    ! [F: product_prod_t_set_a > t,A: list_P1095827921439705018_set_a] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ A )
        = nil_t )
      = ( A = nil_Pr7982011819685168954_set_a ) ) ).

% list.map_disc_iff
thf(fact_807_list_Omap__disc__iff,axiom,
    ! [F: formula_a_t > vydra_aux_a_t_h,A: list_formula_a_t] :
      ( ( ( map_fo5746072578778194433_a_t_h @ F @ A )
        = nil_vydra_aux_a_t_h )
      = ( A = nil_formula_a_t ) ) ).

% list.map_disc_iff
thf(fact_808_list_Omap__disc__iff,axiom,
    ! [F: formula_a_t > $o,A: list_formula_a_t] :
      ( ( ( map_formula_a_t_o @ F @ A )
        = nil_o )
      = ( A = nil_formula_a_t ) ) ).

% list.map_disc_iff
thf(fact_809_Nil__is__map__conv,axiom,
    ! [F: formula_a_t > formula_a_t,Xs: list_formula_a_t] :
      ( ( nil_formula_a_t
        = ( map_fo8328018262729589004la_a_t @ F @ Xs ) )
      = ( Xs = nil_formula_a_t ) ) ).

% Nil_is_map_conv
thf(fact_810_Nil__is__map__conv,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a] :
      ( ( nil_t
        = ( map_Pr119846518281778721et_a_t @ F @ Xs ) )
      = ( Xs = nil_Pr7982011819685168954_set_a ) ) ).

% Nil_is_map_conv
thf(fact_811_Nil__is__map__conv,axiom,
    ! [F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t] :
      ( ( nil_vydra_aux_a_t_h
        = ( map_fo5746072578778194433_a_t_h @ F @ Xs ) )
      = ( Xs = nil_formula_a_t ) ) ).

% Nil_is_map_conv
thf(fact_812_Nil__is__map__conv,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t] :
      ( ( nil_o
        = ( map_formula_a_t_o @ F @ Xs ) )
      = ( Xs = nil_formula_a_t ) ) ).

% Nil_is_map_conv
thf(fact_813_map__is__Nil__conv,axiom,
    ! [F: formula_a_t > formula_a_t,Xs: list_formula_a_t] :
      ( ( ( map_fo8328018262729589004la_a_t @ F @ Xs )
        = nil_formula_a_t )
      = ( Xs = nil_formula_a_t ) ) ).

% map_is_Nil_conv
thf(fact_814_map__is__Nil__conv,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = nil_t )
      = ( Xs = nil_Pr7982011819685168954_set_a ) ) ).

% map_is_Nil_conv
thf(fact_815_map__is__Nil__conv,axiom,
    ! [F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t] :
      ( ( ( map_fo5746072578778194433_a_t_h @ F @ Xs )
        = nil_vydra_aux_a_t_h )
      = ( Xs = nil_formula_a_t ) ) ).

% map_is_Nil_conv
thf(fact_816_map__is__Nil__conv,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = nil_o )
      = ( Xs = nil_formula_a_t ) ) ).

% map_is_Nil_conv
thf(fact_817_append_Oright__neutral,axiom,
    ! [A: list_formula_a_t] :
      ( ( append_formula_a_t @ A @ nil_formula_a_t )
      = A ) ).

% append.right_neutral
thf(fact_818_append__Nil2,axiom,
    ! [Xs: list_formula_a_t] :
      ( ( append_formula_a_t @ Xs @ nil_formula_a_t )
      = Xs ) ).

% append_Nil2
thf(fact_819_append__self__conv,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ( append_formula_a_t @ Xs @ Ys2 )
        = Xs )
      = ( Ys2 = nil_formula_a_t ) ) ).

% append_self_conv
thf(fact_820_self__append__conv,axiom,
    ! [Y: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( Y
        = ( append_formula_a_t @ Y @ Ys2 ) )
      = ( Ys2 = nil_formula_a_t ) ) ).

% self_append_conv
thf(fact_821_append__self__conv2,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ( append_formula_a_t @ Xs @ Ys2 )
        = Ys2 )
      = ( Xs = nil_formula_a_t ) ) ).

% append_self_conv2
thf(fact_822_self__append__conv2,axiom,
    ! [Y: list_formula_a_t,Xs: list_formula_a_t] :
      ( ( Y
        = ( append_formula_a_t @ Xs @ Y ) )
      = ( Xs = nil_formula_a_t ) ) ).

% self_append_conv2
thf(fact_823_Nil__is__append__conv,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( nil_formula_a_t
        = ( append_formula_a_t @ Xs @ Ys2 ) )
      = ( ( Xs = nil_formula_a_t )
        & ( Ys2 = nil_formula_a_t ) ) ) ).

% Nil_is_append_conv
thf(fact_824_append__is__Nil__conv,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ( append_formula_a_t @ Xs @ Ys2 )
        = nil_formula_a_t )
      = ( ( Xs = nil_formula_a_t )
        & ( Ys2 = nil_formula_a_t ) ) ) ).

% append_is_Nil_conv
thf(fact_825_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_826_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_827_length__0__conv,axiom,
    ! [Xs: list_P1095827921439705018_set_a] :
      ( ( ( size_s5362121731612881446_set_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Pr7982011819685168954_set_a ) ) ).

% length_0_conv
thf(fact_828_length__0__conv,axiom,
    ! [Xs: list_vydra_aux_a_t_h] :
      ( ( ( size_s8993897887676352572_a_t_h @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_vydra_aux_a_t_h ) ) ).

% length_0_conv
thf(fact_829_length__0__conv,axiom,
    ! [Xs: list_iarray_o] :
      ( ( ( size_s3243743627286111600rray_o @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_iarray_o ) ) ).

% length_0_conv
thf(fact_830_length__0__conv,axiom,
    ! [Xs: list_formula_a_t] :
      ( ( ( size_s8846756101701226951la_a_t @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_formula_a_t ) ) ).

% length_0_conv
thf(fact_831_length__0__conv,axiom,
    ! [Xs: list_t] :
      ( ( ( size_size_list_t @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_t ) ) ).

% length_0_conv
thf(fact_832_length__0__conv,axiom,
    ! [Xs: list_o] :
      ( ( ( size_size_list_o @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_o ) ) ).

% length_0_conv
thf(fact_833_length__0__conv,axiom,
    ! [Xs: list_P4002435161011370285od_o_o] :
      ( ( ( size_s1515746228057227161od_o_o @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Product_prod_o_o ) ) ).

% length_0_conv
thf(fact_834_length__0__conv,axiom,
    ! [Xs: list_P5575445741472356340od_t_o] :
      ( ( ( size_s4106575409306904672od_t_o @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Product_prod_t_o ) ) ).

% length_0_conv
thf(fact_835_length__0__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( ( size_size_list_set_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_set_a ) ) ).

% length_0_conv
thf(fact_836_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_837_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_838_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_839_take0,axiom,
    ( ( take_formula_a_t @ zero_zero_nat )
    = ( ^ [Xs3: list_formula_a_t] : nil_formula_a_t ) ) ).

% take0
thf(fact_840_take__eq__Nil,axiom,
    ! [N: nat,Xs: list_formula_a_t] :
      ( ( ( take_formula_a_t @ N @ Xs )
        = nil_formula_a_t )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_formula_a_t ) ) ) ).

% take_eq_Nil
thf(fact_841_take__eq__Nil2,axiom,
    ! [N: nat,Xs: list_formula_a_t] :
      ( ( nil_formula_a_t
        = ( take_formula_a_t @ N @ Xs ) )
      = ( ( N = zero_zero_nat )
        | ( Xs = nil_formula_a_t ) ) ) ).

% take_eq_Nil2
thf(fact_842_take__all__iff,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a] :
      ( ( ( take_P2822414627813279522_set_a @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_843_take__all__iff,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h] :
      ( ( ( take_vydra_aux_a_t_h @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_s8993897887676352572_a_t_h @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_844_take__all__iff,axiom,
    ! [N: nat,Xs: list_iarray_o] :
      ( ( ( take_iarray_o @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_s3243743627286111600rray_o @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_845_take__all__iff,axiom,
    ! [N: nat,Xs: list_formula_a_t] :
      ( ( ( take_formula_a_t @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_s8846756101701226951la_a_t @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_846_take__all__iff,axiom,
    ! [N: nat,Xs: list_t] :
      ( ( ( take_t @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_t @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_847_take__all__iff,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( ( take_o @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_848_take__all__iff,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o] :
      ( ( ( take_P6963594774600499477od_o_o @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_s1515746228057227161od_o_o @ Xs ) @ N ) ) ).

% take_all_iff
thf(fact_849_take__all__iff,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o] :
      ( ( ( take_P7695396673888565724od_t_o @ N @ Xs )
        = Xs )
      = ( ord_less_eq_nat @ ( size_s4106575409306904672od_t_o @ Xs ) @ N ) ) ).

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

% take_all_iff
thf(fact_851_take__all,axiom,
    ! [Xs: list_P1095827921439705018_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs ) @ N )
     => ( ( take_P2822414627813279522_set_a @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_852_take__all,axiom,
    ! [Xs: list_vydra_aux_a_t_h,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s8993897887676352572_a_t_h @ Xs ) @ N )
     => ( ( take_vydra_aux_a_t_h @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_853_take__all,axiom,
    ! [Xs: list_iarray_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s3243743627286111600rray_o @ Xs ) @ N )
     => ( ( take_iarray_o @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_854_take__all,axiom,
    ! [Xs: list_formula_a_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s8846756101701226951la_a_t @ Xs ) @ N )
     => ( ( take_formula_a_t @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_855_take__all,axiom,
    ! [Xs: list_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs ) @ N )
     => ( ( take_t @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_856_take__all,axiom,
    ! [Xs: list_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N )
     => ( ( take_o @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_857_take__all,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s1515746228057227161od_o_o @ Xs ) @ N )
     => ( ( take_P6963594774600499477od_o_o @ N @ Xs )
        = Xs ) ) ).

% take_all
thf(fact_858_take__all,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s4106575409306904672od_t_o @ Xs ) @ N )
     => ( ( take_P7695396673888565724od_t_o @ N @ Xs )
        = Xs ) ) ).

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

% take_all
thf(fact_860_nth__take,axiom,
    ! [I: nat,N: nat,Xs: list_t] :
      ( ( ord_less_nat @ I @ N )
     => ( ( nth_t @ ( take_t @ N @ Xs ) @ I )
        = ( nth_t @ Xs @ I ) ) ) ).

% nth_take
thf(fact_861_nth__take,axiom,
    ! [I: nat,N: nat,Xs: list_vydra_aux_a_t_h] :
      ( ( ord_less_nat @ I @ N )
     => ( ( nth_vydra_aux_a_t_h @ ( take_vydra_aux_a_t_h @ N @ Xs ) @ I )
        = ( nth_vydra_aux_a_t_h @ Xs @ I ) ) ) ).

% nth_take
thf(fact_862_nth__take,axiom,
    ! [I: nat,N: nat,Xs: list_formula_a_t] :
      ( ( ord_less_nat @ I @ N )
     => ( ( nth_formula_a_t @ ( take_formula_a_t @ N @ Xs ) @ I )
        = ( nth_formula_a_t @ Xs @ I ) ) ) ).

% nth_take
thf(fact_863_length__greater__0__conv,axiom,
    ! [Xs: list_P1095827921439705018_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s5362121731612881446_set_a @ Xs ) )
      = ( Xs != nil_Pr7982011819685168954_set_a ) ) ).

% length_greater_0_conv
thf(fact_864_length__greater__0__conv,axiom,
    ! [Xs: list_vydra_aux_a_t_h] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s8993897887676352572_a_t_h @ Xs ) )
      = ( Xs != nil_vydra_aux_a_t_h ) ) ).

% length_greater_0_conv
thf(fact_865_length__greater__0__conv,axiom,
    ! [Xs: list_iarray_o] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s3243743627286111600rray_o @ Xs ) )
      = ( Xs != nil_iarray_o ) ) ).

% length_greater_0_conv
thf(fact_866_length__greater__0__conv,axiom,
    ! [Xs: list_formula_a_t] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s8846756101701226951la_a_t @ Xs ) )
      = ( Xs != nil_formula_a_t ) ) ).

% length_greater_0_conv
thf(fact_867_length__greater__0__conv,axiom,
    ! [Xs: list_t] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_t @ Xs ) )
      = ( Xs != nil_t ) ) ).

% length_greater_0_conv
thf(fact_868_length__greater__0__conv,axiom,
    ! [Xs: list_o] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_o @ Xs ) )
      = ( Xs != nil_o ) ) ).

% length_greater_0_conv
thf(fact_869_length__greater__0__conv,axiom,
    ! [Xs: list_P4002435161011370285od_o_o] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s1515746228057227161od_o_o @ Xs ) )
      = ( Xs != nil_Product_prod_o_o ) ) ).

% length_greater_0_conv
thf(fact_870_length__greater__0__conv,axiom,
    ! [Xs: list_P5575445741472356340od_t_o] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s4106575409306904672od_t_o @ Xs ) )
      = ( Xs != nil_Product_prod_t_o ) ) ).

% length_greater_0_conv
thf(fact_871_length__greater__0__conv,axiom,
    ! [Xs: list_set_a] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_set_a @ Xs ) )
      = ( Xs != nil_set_a ) ) ).

% length_greater_0_conv
thf(fact_872_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_873_reach__run__subs__len,axiom,
    ! [N: nat,R: regex_a_t,Rho2: list_iarray_o,Vs: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ run_hd @ N ) ) @ ( map_fo5746072578778194433_a_t_h @ ( sub_h_t_a @ init_hd @ run_hd @ N ) @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) @ Rho2 @ Vs )
     => ( ( size_s8993897887676352572_a_t_h @ Vs )
        = ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) ) ) ).

% reach_run_subs_len
thf(fact_874_take__append,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( take_P2822414627813279522_set_a @ N @ ( append8768163766229313743_set_a @ Xs @ Ys2 ) )
      = ( append8768163766229313743_set_a @ ( take_P2822414627813279522_set_a @ N @ Xs ) @ ( take_P2822414627813279522_set_a @ ( minus_minus_nat @ N @ ( size_s5362121731612881446_set_a @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_875_take__append,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( take_vydra_aux_a_t_h @ N @ ( append7715335228782332733_a_t_h @ Xs @ Ys2 ) )
      = ( append7715335228782332733_a_t_h @ ( take_vydra_aux_a_t_h @ N @ Xs ) @ ( take_vydra_aux_a_t_h @ ( minus_minus_nat @ N @ ( size_s8993897887676352572_a_t_h @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_876_take__append,axiom,
    ! [N: nat,Xs: list_iarray_o,Ys2: list_iarray_o] :
      ( ( take_iarray_o @ N @ ( append_iarray_o @ Xs @ Ys2 ) )
      = ( append_iarray_o @ ( take_iarray_o @ N @ Xs ) @ ( take_iarray_o @ ( minus_minus_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_877_take__append,axiom,
    ! [N: nat,Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( take_formula_a_t @ N @ ( append_formula_a_t @ Xs @ Ys2 ) )
      = ( append_formula_a_t @ ( take_formula_a_t @ N @ Xs ) @ ( take_formula_a_t @ ( minus_minus_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_878_take__append,axiom,
    ! [N: nat,Xs: list_t,Ys2: list_t] :
      ( ( take_t @ N @ ( append_t @ Xs @ Ys2 ) )
      = ( append_t @ ( take_t @ N @ Xs ) @ ( take_t @ ( minus_minus_nat @ N @ ( size_size_list_t @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_879_take__append,axiom,
    ! [N: nat,Xs: list_o,Ys2: list_o] :
      ( ( take_o @ N @ ( append_o @ Xs @ Ys2 ) )
      = ( append_o @ ( take_o @ N @ Xs ) @ ( take_o @ ( minus_minus_nat @ N @ ( size_size_list_o @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_880_take__append,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( take_P6963594774600499477od_o_o @ N @ ( append2614242729457001410od_o_o @ Xs @ Ys2 ) )
      = ( append2614242729457001410od_o_o @ ( take_P6963594774600499477od_o_o @ N @ Xs ) @ ( take_P6963594774600499477od_o_o @ ( minus_minus_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_881_take__append,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( take_P7695396673888565724od_t_o @ N @ ( append2717171661090821641od_t_o @ Xs @ Ys2 ) )
      = ( append2717171661090821641od_t_o @ ( take_P7695396673888565724od_t_o @ N @ Xs ) @ ( take_P7695396673888565724od_t_o @ ( minus_minus_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_882_take__append,axiom,
    ! [N: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( take_set_a @ N @ ( append_set_a @ Xs @ Ys2 ) )
      = ( append_set_a @ ( take_set_a @ N @ Xs ) @ ( take_set_a @ ( minus_minus_nat @ N @ ( size_size_list_set_a @ Xs ) ) @ Ys2 ) ) ) ).

% take_append
thf(fact_883_list_Osize_I3_J,axiom,
    ( ( size_s5362121731612881446_set_a @ nil_Pr7982011819685168954_set_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_884_list_Osize_I3_J,axiom,
    ( ( size_s8993897887676352572_a_t_h @ nil_vydra_aux_a_t_h )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_885_list_Osize_I3_J,axiom,
    ( ( size_s3243743627286111600rray_o @ nil_iarray_o )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_886_list_Osize_I3_J,axiom,
    ( ( size_s8846756101701226951la_a_t @ nil_formula_a_t )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_887_list_Osize_I3_J,axiom,
    ( ( size_size_list_t @ nil_t )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_888_list_Osize_I3_J,axiom,
    ( ( size_size_list_o @ nil_o )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_889_list_Osize_I3_J,axiom,
    ( ( size_s1515746228057227161od_o_o @ nil_Product_prod_o_o )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_890_list_Osize_I3_J,axiom,
    ( ( size_s4106575409306904672od_t_o @ nil_Product_prod_t_o )
    = zero_zero_nat ) ).

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

% list.size(3)
thf(fact_892_nat_Ocase__distrib,axiom,
    ! [H: $o > $o,F1: $o,F2: nat > $o,Nat: nat] :
      ( ( H @ ( case_nat_o @ F1 @ F2 @ Nat ) )
      = ( case_nat_o @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_893_nat_Ocase__distrib,axiom,
    ! [H: $o > nat,F1: $o,F2: nat > $o,Nat: nat] :
      ( ( H @ ( case_nat_o @ F1 @ F2 @ Nat ) )
      = ( case_nat_nat @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_894_nat_Ocase__distrib,axiom,
    ! [H: nat > $o,F1: nat,F2: nat > nat,Nat: nat] :
      ( ( H @ ( case_nat_nat @ F1 @ F2 @ Nat ) )
      = ( case_nat_o @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_895_nat_Ocase__distrib,axiom,
    ! [H: nat > nat,F1: nat,F2: nat > nat,Nat: nat] :
      ( ( H @ ( case_nat_nat @ F1 @ F2 @ Nat ) )
      = ( case_nat_nat @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_896_nat_Ocase__distrib,axiom,
    ! [H: $o > option_t,F1: $o,F2: nat > $o,Nat: nat] :
      ( ( H @ ( case_nat_o @ F1 @ F2 @ Nat ) )
      = ( case_nat_option_t @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_897_nat_Ocase__distrib,axiom,
    ! [H: nat > option_t,F1: nat,F2: nat > nat,Nat: nat] :
      ( ( H @ ( case_nat_nat @ F1 @ F2 @ Nat ) )
      = ( case_nat_option_t @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_898_nat_Ocase__distrib,axiom,
    ! [H: option_t > $o,F1: option_t,F2: nat > option_t,Nat: nat] :
      ( ( H @ ( case_nat_option_t @ F1 @ F2 @ Nat ) )
      = ( case_nat_o @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_899_nat_Ocase__distrib,axiom,
    ! [H: option_t > nat,F1: option_t,F2: nat > option_t,Nat: nat] :
      ( ( H @ ( case_nat_option_t @ F1 @ F2 @ Nat ) )
      = ( case_nat_nat @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_900_nat_Ocase__distrib,axiom,
    ! [H: option_t > option_t,F1: option_t,F2: nat > option_t,Nat: nat] :
      ( ( H @ ( case_nat_option_t @ F1 @ F2 @ Nat ) )
      = ( case_nat_option_t @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_901_nat_Ocase__distrib,axiom,
    ! [H: $o > option8291060355354214836od_t_o,F1: $o,F2: nat > $o,Nat: nat] :
      ( ( H @ ( case_nat_o @ F1 @ F2 @ Nat ) )
      = ( case_n7548220105206534174od_t_o @ ( H @ F1 )
        @ ^ [X7: nat] : ( H @ ( F2 @ X7 ) )
        @ Nat ) ) ).

% nat.case_distrib
thf(fact_902_old_Onat_Osimps_I4_J,axiom,
    ! [F1: option2536733916571057475od_o_o,F2: nat > option2536733916571057475od_o_o] :
      ( ( case_n943740417880565421od_o_o @ F1 @ F2 @ zero_zero_nat )
      = F1 ) ).

% old.nat.simps(4)
thf(fact_903_old_Onat_Osimps_I4_J,axiom,
    ! [F1: $o,F2: nat > $o] :
      ( ( case_nat_o @ F1 @ F2 @ zero_zero_nat )
      = F1 ) ).

% old.nat.simps(4)
thf(fact_904_old_Onat_Osimps_I4_J,axiom,
    ! [F1: nat,F2: nat > nat] :
      ( ( case_nat_nat @ F1 @ F2 @ zero_zero_nat )
      = F1 ) ).

% old.nat.simps(4)
thf(fact_905_old_Onat_Osimps_I4_J,axiom,
    ! [F1: option8291060355354214836od_t_o,F2: nat > option8291060355354214836od_t_o] :
      ( ( case_n7548220105206534174od_t_o @ F1 @ F2 @ zero_zero_nat )
      = F1 ) ).

% old.nat.simps(4)
thf(fact_906_old_Onat_Osimps_I4_J,axiom,
    ! [F1: option_t,F2: nat > option_t] :
      ( ( case_nat_option_t @ F1 @ F2 @ zero_zero_nat )
      = F1 ) ).

% old.nat.simps(4)
thf(fact_907_take__Nil,axiom,
    ! [N: nat] :
      ( ( take_formula_a_t @ N @ nil_formula_a_t )
      = nil_formula_a_t ) ).

% take_Nil
thf(fact_908_take__0,axiom,
    ! [Xs: list_formula_a_t] :
      ( ( take_formula_a_t @ zero_zero_nat @ Xs )
      = nil_formula_a_t ) ).

% take_0
thf(fact_909_take__map,axiom,
    ! [N: nat,F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a] :
      ( ( take_t @ N @ ( map_Pr119846518281778721et_a_t @ F @ Xs ) )
      = ( map_Pr119846518281778721et_a_t @ F @ ( take_P2822414627813279522_set_a @ N @ Xs ) ) ) ).

% take_map
thf(fact_910_take__map,axiom,
    ! [N: nat,F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t] :
      ( ( take_vydra_aux_a_t_h @ N @ ( map_fo5746072578778194433_a_t_h @ F @ Xs ) )
      = ( map_fo5746072578778194433_a_t_h @ F @ ( take_formula_a_t @ N @ Xs ) ) ) ).

% take_map
thf(fact_911_take__map,axiom,
    ! [N: nat,F: formula_a_t > $o,Xs: list_formula_a_t] :
      ( ( take_o @ N @ ( map_formula_a_t_o @ F @ Xs ) )
      = ( map_formula_a_t_o @ F @ ( take_formula_a_t @ N @ Xs ) ) ) ).

% take_map
thf(fact_912_list_Osimps_I8_J,axiom,
    ! [F: formula_a_t > formula_a_t] :
      ( ( map_fo8328018262729589004la_a_t @ F @ nil_formula_a_t )
      = nil_formula_a_t ) ).

% list.simps(8)
thf(fact_913_list_Osimps_I8_J,axiom,
    ! [F: product_prod_t_set_a > t] :
      ( ( map_Pr119846518281778721et_a_t @ F @ nil_Pr7982011819685168954_set_a )
      = nil_t ) ).

% list.simps(8)
thf(fact_914_list_Osimps_I8_J,axiom,
    ! [F: formula_a_t > vydra_aux_a_t_h] :
      ( ( map_fo5746072578778194433_a_t_h @ F @ nil_formula_a_t )
      = nil_vydra_aux_a_t_h ) ).

% list.simps(8)
thf(fact_915_list_Osimps_I8_J,axiom,
    ! [F: formula_a_t > $o] :
      ( ( map_formula_a_t_o @ F @ nil_formula_a_t )
      = nil_o ) ).

% list.simps(8)
thf(fact_916_append__Nil,axiom,
    ! [Ys2: list_formula_a_t] :
      ( ( append_formula_a_t @ nil_formula_a_t @ Ys2 )
      = Ys2 ) ).

% append_Nil
thf(fact_917_append_Oleft__neutral,axiom,
    ! [A: list_formula_a_t] :
      ( ( append_formula_a_t @ nil_formula_a_t @ A )
      = A ) ).

% append.left_neutral
thf(fact_918_eq__Nil__appendI,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( Xs = Ys2 )
     => ( Xs
        = ( append_formula_a_t @ nil_formula_a_t @ Ys2 ) ) ) ).

% eq_Nil_appendI
thf(fact_919_list__decode_Ocases,axiom,
    ! [X3: nat] :
      ( ( X3 != zero_zero_nat )
     => ~ ! [N3: nat] :
            ( X3
           != ( suc @ N3 ) ) ) ).

% list_decode.cases
thf(fact_920_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M4: nat] :
          ( N
          = ( suc @ M4 ) ) ) ).

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

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

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

% Suc_neq_Zero
thf(fact_924_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N3: nat] :
            ( ( P @ ( suc @ N3 ) )
           => ( P @ N3 ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_925_diff__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [X: nat] : ( P @ X @ zero_zero_nat )
     => ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
       => ( ! [X: nat,Y3: nat] :
              ( ( P @ X @ Y3 )
             => ( P @ ( suc @ X ) @ ( suc @ Y3 ) ) )
         => ( P @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_926_nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N3: nat] :
            ( ( P @ N3 )
           => ( P @ ( suc @ N3 ) ) )
       => ( P @ N ) ) ) ).

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

% old.nat.exhaust
thf(fact_928_nat_OdiscI,axiom,
    ! [Nat: nat,X2: nat] :
      ( ( Nat
        = ( suc @ X2 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_929_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

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

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

% nat.distinct(1)
thf(fact_932_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_933_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_934_reaches__on_Ointros_I1_J,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,S: list_vydra_aux_a_t_h] : ( reache2401979074735462992rray_o @ Run @ S @ nil_iarray_o @ S ) ).

% reaches_on.intros(1)
thf(fact_935_reaches__on_Ointros_I1_J,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,S: vydra_aux_a_t_h] : ( reache8691153155344877136od_t_o @ Run @ S @ nil_Product_prod_t_o @ S ) ).

% reaches_on.intros(1)
thf(fact_936_reaches__on_Ointros_I1_J,axiom,
    ! [Run: h > option2110264179601050681od_h_t,S: h] : ( reaches_on_h_t @ Run @ S @ nil_t @ S ) ).

% reaches_on.intros(1)
thf(fact_937_reaches__on_Ointros_I1_J,axiom,
    ! [Run: t > option8291060355354214836od_t_o,S: t] : ( reaches_on_t_o @ Run @ S @ nil_o @ S ) ).

% reaches_on.intros(1)
thf(fact_938_reaches__on_Ointros_I1_J,axiom,
    ! [Run: t > option2536733916571057475od_o_o,S: t] : ( reache4453078201178095962od_o_o @ Run @ S @ nil_Product_prod_o_o @ S ) ).

% reaches_on.intros(1)
thf(fact_939_reaches__on_Ointros_I1_J,axiom,
    ! [Run: t > option4621139365931258234_set_a,S: t] : ( reaches_on_t_set_a @ Run @ S @ nil_set_a @ S ) ).

% reaches_on.intros(1)
thf(fact_940_reaches__on__NilD,axiom,
    ! [Run: option2110264179601050681od_h_t > option4241632866121027589_h_t_t,Q: option2110264179601050681od_h_t,Q3: option2110264179601050681od_h_t] :
      ( ( reache645946503560514460_h_t_t @ Run @ Q @ nil_t @ Q3 )
     => ( Q = Q3 ) ) ).

% reaches_on_NilD
thf(fact_941_reaches__on__NilD,axiom,
    ! [Run: h > option5775791656947114332_set_a,Q: h,Q3: h] :
      ( ( reache3397181163414509427_set_a @ Run @ Q @ nil_Pr7982011819685168954_set_a @ Q3 )
     => ( Q = Q3 ) ) ).

% reaches_on_NilD
thf(fact_942_reaches__on__NilD,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,Q: list_vydra_aux_a_t_h,Q3: list_vydra_aux_a_t_h] :
      ( ( reache2401979074735462992rray_o @ Run @ Q @ nil_iarray_o @ Q3 )
     => ( Q = Q3 ) ) ).

% reaches_on_NilD
thf(fact_943_reaches__on__NilD,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,Q: vydra_aux_a_t_h,Q3: vydra_aux_a_t_h] :
      ( ( reache8691153155344877136od_t_o @ Run @ Q @ nil_Product_prod_t_o @ Q3 )
     => ( Q = Q3 ) ) ).

% reaches_on_NilD
thf(fact_944_reaches__on__NilD,axiom,
    ! [Run: h > option2110264179601050681od_h_t,Q: h,Q3: h] :
      ( ( reaches_on_h_t @ Run @ Q @ nil_t @ Q3 )
     => ( Q = Q3 ) ) ).

% reaches_on_NilD
thf(fact_945_reaches__on__NilD,axiom,
    ! [Run: t > option8291060355354214836od_t_o,Q: t,Q3: t] :
      ( ( reaches_on_t_o @ Run @ Q @ nil_o @ Q3 )
     => ( Q = Q3 ) ) ).

% reaches_on_NilD
thf(fact_946_reaches__on__NilD,axiom,
    ! [Run: t > option2536733916571057475od_o_o,Q: t,Q3: t] :
      ( ( reache4453078201178095962od_o_o @ Run @ Q @ nil_Product_prod_o_o @ Q3 )
     => ( Q = Q3 ) ) ).

% reaches_on_NilD
thf(fact_947_reaches__on__NilD,axiom,
    ! [Run: t > option4621139365931258234_set_a,Q: t,Q3: t] :
      ( ( reaches_on_t_set_a @ Run @ Q @ nil_set_a @ Q3 )
     => ( Q = Q3 ) ) ).

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

% le_0_eq
thf(fact_949_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

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

% bot_nat_0.extremum_unique
thf(fact_951_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_952_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

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

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

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

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

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

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

% infinite_descent0
thf(fact_959_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_960_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_961_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_962_old_Onat_Osimps_I5_J,axiom,
    ! [F1: option2536733916571057475od_o_o,F2: nat > option2536733916571057475od_o_o,X2: nat] :
      ( ( case_n943740417880565421od_o_o @ F1 @ F2 @ ( suc @ X2 ) )
      = ( F2 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_963_old_Onat_Osimps_I5_J,axiom,
    ! [F1: $o,F2: nat > $o,X2: nat] :
      ( ( case_nat_o @ F1 @ F2 @ ( suc @ X2 ) )
      = ( F2 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_964_old_Onat_Osimps_I5_J,axiom,
    ! [F1: nat,F2: nat > nat,X2: nat] :
      ( ( case_nat_nat @ F1 @ F2 @ ( suc @ X2 ) )
      = ( F2 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_965_old_Onat_Osimps_I5_J,axiom,
    ! [F1: option8291060355354214836od_t_o,F2: nat > option8291060355354214836od_t_o,X2: nat] :
      ( ( case_n7548220105206534174od_t_o @ F1 @ F2 @ ( suc @ X2 ) )
      = ( F2 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_966_old_Onat_Osimps_I5_J,axiom,
    ! [F1: option_t,F2: nat > option_t,X2: nat] :
      ( ( case_nat_option_t @ F1 @ F2 @ ( suc @ X2 ) )
      = ( F2 @ X2 ) ) ).

% old.nat.simps(5)
thf(fact_967_sub_Osimps_I8_J,axiom,
    ! [Init_hd: h,Run_hd: h > option5775791656947114332_set_a,N: nat,Phi: formula_a_t,I5: i_t,Psi: formula_a_t] :
      ( ( sub_h_t_a @ Init_hd @ Run_hd @ ( suc @ N ) @ ( until_a_t @ Phi @ I5 @ Psi ) )
      = ( vydra_8322945071554601_t_h_a @ I5 @ ( t0_h_t_a @ Init_hd @ Run_hd ) @ ( sub_h_t_a @ Init_hd @ Run_hd @ N @ Phi ) @ ( sub_h_t_a @ Init_hd @ Run_hd @ N @ Psi ) @ ( t0_h_t_a @ Init_hd @ Run_hd ) @ zero_zero_nat @ none_P2907379280119556574od_o_o ) ) ).

% sub.simps(8)
thf(fact_968_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_969_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M4: nat] :
          ( N
          = ( suc @ M4 ) ) ) ).

% gr0_implies_Suc
thf(fact_970_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
           => ( P @ I3 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
           => ( P @ ( suc @ I3 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_971_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M6: nat] :
            ( N
            = ( suc @ M6 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_972_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( suc @ N ) )
            & ( P @ I3 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ N )
            & ( P @ ( suc @ I3 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_973_option_Osize_I4_J,axiom,
    ! [X2: produc4127598065228779901od_o_o] :
      ( ( size_s7159609156297001903od_o_o @ ( some_P6789671444921510242od_o_o @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_974_option_Osize_I4_J,axiom,
    ! [X2: product_prod_t_o] :
      ( ( size_s4900030450070283808od_t_o @ ( some_P1805796590424124243od_t_o @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

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

% option.size(4)
thf(fact_976_option_Osize_I4_J,axiom,
    ! [X2: product_prod_h_t] :
      ( ( size_s6536553198265154213od_h_t @ ( some_P2526622376857543512od_h_t @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_977_option_Osize_I4_J,axiom,
    ! [X2: t] :
      ( ( size_size_option_t @ ( some_t @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

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

% option.size(4)
thf(fact_979_option_Osize_I4_J,axiom,
    ! [X2: produc8228095596854190539rray_o] :
      ( ( size_s2704686997974730927rray_o @ ( some_P7279874174034738982rray_o @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_980_option_Osize_I4_J,axiom,
    ! [X2: produc530307916048688075od_t_o] :
      ( ( size_s8621177079540999087od_t_o @ ( some_P9127227083975130150od_t_o @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_981_option_Osize_I4_J,axiom,
    ! [X2: product_prod_t_set_a] :
      ( ( size_s5130308976298692582_set_a @ ( some_P4667681669429350681_set_a @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_982_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K2 )
               => ~ ( P @ I4 ) )
            & ( P @ K2 ) ) ) ) ).

% ex_least_nat_le
thf(fact_983_option_Osize_I3_J,axiom,
    ( ( size_s8621177079540999087od_t_o @ none_P3452577240289636010od_t_o )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_984_option_Osize_I3_J,axiom,
    ( ( size_s7159609156297001903od_o_o @ none_P2907379280119556574od_o_o )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_985_option_Osize_I3_J,axiom,
    ( ( size_s4900030450070283808od_t_o @ none_P7032077165169035727od_t_o )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_986_option_Osize_I3_J,axiom,
    ( ( size_size_option_t @ none_t )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_987_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_988_VYDRA__MDL_Olast__before_Ocases,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,X3: produc3074792404157404414_o_nat] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ! [P5: nat > $o] :
            ( X3
           != ( produc7277522915581678840_o_nat @ P5 @ zero_zero_nat ) )
       => ~ ! [P5: nat > $o,N3: nat] :
              ( X3
             != ( produc7277522915581678840_o_nat @ P5 @ ( suc @ N3 ) ) ) ) ) ).

% VYDRA_MDL.last_before.cases
thf(fact_989_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ! [I4: nat] :
                ( ( ord_less_eq_nat @ I4 @ K2 )
               => ~ ( P @ I4 ) )
            & ( P @ ( suc @ K2 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_990_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_991_VYDRA__MDL_Oreach__run__subs__len,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,N: nat,R: regex_a_t,Rho2: list_iarray_o,Vs: list_vydra_aux_a_t_h] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ Run_hd @ N ) ) @ ( map_fo5746072578778194433_a_t_h @ ( sub_h_t_a @ Init_hd @ Run_hd @ N ) @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) @ Rho2 @ Vs )
       => ( ( size_s8993897887676352572_a_t_h @ Vs )
          = ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) ) ) ) ).

% VYDRA_MDL.reach_run_subs_len
thf(fact_992_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( ord_less_eq_nat @ K @ ( size_s5362121731612881446_set_a @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s5362121731612881446_set_a @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_Pr633927046780761275_set_a @ Xs @ I2 )
                = ( nth_Pr633927046780761275_set_a @ Ys2 @ I2 ) ) )
         => ( ( take_P2822414627813279522_set_a @ K @ Xs )
            = ( take_P2822414627813279522_set_a @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_993_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_vydra_aux_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( ord_less_eq_nat @ K @ ( size_s8993897887676352572_a_t_h @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s8993897887676352572_a_t_h @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_vydra_aux_a_t_h @ Xs @ I2 )
                = ( nth_vydra_aux_a_t_h @ Ys2 @ I2 ) ) )
         => ( ( take_vydra_aux_a_t_h @ K @ Xs )
            = ( take_vydra_aux_a_t_h @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_994_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_iarray_o,Ys2: list_iarray_o] :
      ( ( ord_less_eq_nat @ K @ ( size_s3243743627286111600rray_o @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s3243743627286111600rray_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_iarray_o @ Xs @ I2 )
                = ( nth_iarray_o @ Ys2 @ I2 ) ) )
         => ( ( take_iarray_o @ K @ Xs )
            = ( take_iarray_o @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_995_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( ord_less_eq_nat @ K @ ( size_s8846756101701226951la_a_t @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s8846756101701226951la_a_t @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_formula_a_t @ Xs @ I2 )
                = ( nth_formula_a_t @ Ys2 @ I2 ) ) )
         => ( ( take_formula_a_t @ K @ Xs )
            = ( take_formula_a_t @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_996_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_t,Ys2: list_t] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_t @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_t @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_t @ Xs @ I2 )
                = ( nth_t @ Ys2 @ I2 ) ) )
         => ( ( take_t @ K @ Xs )
            = ( take_t @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_997_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_o,Ys2: list_o] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_o @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_o @ Xs @ I2 )
                = ( nth_o @ Ys2 @ I2 ) ) )
         => ( ( take_o @ K @ Xs )
            = ( take_o @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_998_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_P4002435161011370285od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( ord_less_eq_nat @ K @ ( size_s1515746228057227161od_o_o @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s1515746228057227161od_o_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_Product_prod_o_o @ Xs @ I2 )
                = ( nth_Product_prod_o_o @ Ys2 @ I2 ) ) )
         => ( ( take_P6963594774600499477od_o_o @ K @ Xs )
            = ( take_P6963594774600499477od_o_o @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_999_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( ord_less_eq_nat @ K @ ( size_s4106575409306904672od_t_o @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_s4106575409306904672od_t_o @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_Product_prod_t_o @ Xs @ I2 )
                = ( nth_Product_prod_t_o @ Ys2 @ I2 ) ) )
         => ( ( take_P7695396673888565724od_t_o @ K @ Xs )
            = ( take_P7695396673888565724od_t_o @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_1000_nth__take__lemma,axiom,
    ! [K: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( ord_less_eq_nat @ K @ ( size_size_list_set_a @ Xs ) )
     => ( ( ord_less_eq_nat @ K @ ( size_size_list_set_a @ Ys2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ K )
             => ( ( nth_set_a @ Xs @ I2 )
                = ( nth_set_a @ Ys2 @ I2 ) ) )
         => ( ( take_set_a @ K @ Xs )
            = ( take_set_a @ K @ Ys2 ) ) ) ) ) ).

% nth_take_lemma
thf(fact_1001_reaches_Ocases,axiom,
    ! [Run: t > option2536733916571057475od_o_o,A1: t,A22: nat,A32: t] :
      ( ( reache739737707335374427od_o_o @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S9: t,V2: product_prod_o_o,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ S9 @ V2 ) ) )
               => ~ ( reache739737707335374427od_o_o @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1002_reaches_Ocases,axiom,
    ! [Run: t > option8291060355354214836od_t_o,A1: t,A22: nat,A32: t] :
      ( ( reaches_t_o @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S9: t,V2: $o,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ S9 @ V2 ) ) )
               => ~ ( reaches_t_o @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1003_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 ) )
       => ~ ! [S9: h,V2: product_prod_t_set_a,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S9 @ V2 ) ) )
               => ~ ( reache8480716032150177652_set_a @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1004_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 ) )
       => ~ ! [S9: h,V2: t,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S9 @ V2 ) ) )
               => ~ ( reaches_h_t @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1005_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 ) )
       => ~ ! [S9: option2110264179601050681od_h_t,V2: t,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S9 @ V2 ) ) )
               => ~ ( reache5944868495896439325_h_t_t @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1006_reaches_Ocases,axiom,
    ! [Run: list_vydra_aux_a_t_h > option8553266494716013595rray_o,A1: list_vydra_aux_a_t_h,A22: nat,A32: list_vydra_aux_a_t_h] :
      ( ( reache2947816147551113615rray_o @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S9: list_vydra_aux_a_t_h,V2: iarray_o,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ S9 @ V2 ) ) )
               => ~ ( reache2947816147551113615rray_o @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1007_reaches_Ocases,axiom,
    ! [Run: vydra_aux_a_t_h > option4580262698044125979od_t_o,A1: vydra_aux_a_t_h,A22: nat,A32: vydra_aux_a_t_h] :
      ( ( reache549850244866497679od_t_o @ Run @ A1 @ A22 @ A32 )
     => ( ( ( A22 = zero_zero_nat )
         => ( A32 != A1 ) )
       => ~ ! [S9: vydra_aux_a_t_h,V2: product_prod_t_o,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ S9 @ V2 ) ) )
               => ~ ( reache549850244866497679od_t_o @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1008_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 ) )
       => ~ ! [S9: t,V2: set_a,N3: nat] :
              ( ( A22
                = ( suc @ N3 ) )
             => ( ( ( Run @ A1 )
                  = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S9 @ V2 ) ) )
               => ~ ( reaches_t_set_a @ Run @ S9 @ N3 @ A32 ) ) ) ) ) ).

% reaches.cases
thf(fact_1009_reaches_Osimps,axiom,
    ( reache739737707335374427od_o_o
    = ( ^ [Run2: t > option2536733916571057475od_o_o,A12: t,A23: nat,A33: t] :
          ( ? [S6: t] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: t,S7: t,V4: product_prod_o_o,N2: nat,S10: t] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ S7 @ V4 ) ) )
              & ( reache739737707335374427od_o_o @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1010_reaches_Osimps,axiom,
    ( reaches_t_o
    = ( ^ [Run2: t > option8291060355354214836od_t_o,A12: t,A23: nat,A33: t] :
          ( ? [S6: t] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: t,S7: t,V4: $o,N2: nat,S10: t] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ S7 @ V4 ) ) )
              & ( reaches_t_o @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1011_reaches_Osimps,axiom,
    ( reache8480716032150177652_set_a
    = ( ^ [Run2: h > option5775791656947114332_set_a,A12: h,A23: nat,A33: h] :
          ( ? [S6: h] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: h,S7: h,V4: product_prod_t_set_a,N2: nat,S10: h] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P2245991037696317435_set_a @ ( produc3432067189782488838_set_a @ S7 @ V4 ) ) )
              & ( reache8480716032150177652_set_a @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1012_reaches_Osimps,axiom,
    ( reaches_h_t
    = ( ^ [Run2: h > option2110264179601050681od_h_t,A12: h,A23: nat,A33: h] :
          ( ? [S6: h] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: h,S7: h,V4: t,N2: nat,S10: h] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P2526622376857543512od_h_t @ ( product_Pair_h_t @ S7 @ V4 ) ) )
              & ( reaches_h_t @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1013_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] :
          ( ? [S6: option2110264179601050681od_h_t] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: option2110264179601050681od_h_t,S7: option2110264179601050681od_h_t,V4: t,N2: nat,S10: option2110264179601050681od_h_t] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ S7 @ V4 ) ) )
              & ( reache5944868495896439325_h_t_t @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1014_reaches_Osimps,axiom,
    ( reache2947816147551113615rray_o
    = ( ^ [Run2: list_vydra_aux_a_t_h > option8553266494716013595rray_o,A12: list_vydra_aux_a_t_h,A23: nat,A33: list_vydra_aux_a_t_h] :
          ( ? [S6: list_vydra_aux_a_t_h] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: list_vydra_aux_a_t_h,S7: list_vydra_aux_a_t_h,V4: iarray_o,N2: nat,S10: list_vydra_aux_a_t_h] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ S7 @ V4 ) ) )
              & ( reache2947816147551113615rray_o @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1015_reaches_Osimps,axiom,
    ( reache549850244866497679od_t_o
    = ( ^ [Run2: vydra_aux_a_t_h > option4580262698044125979od_t_o,A12: vydra_aux_a_t_h,A23: nat,A33: vydra_aux_a_t_h] :
          ( ? [S6: vydra_aux_a_t_h] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: vydra_aux_a_t_h,S7: vydra_aux_a_t_h,V4: product_prod_t_o,N2: nat,S10: vydra_aux_a_t_h] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ S7 @ V4 ) ) )
              & ( reache549850244866497679od_t_o @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1016_reaches_Osimps,axiom,
    ( reaches_t_set_a
    = ( ^ [Run2: t > option4621139365931258234_set_a,A12: t,A23: nat,A33: t] :
          ( ? [S6: t] :
              ( ( A12 = S6 )
              & ( A23 = zero_zero_nat )
              & ( A33 = S6 ) )
          | ? [S6: t,S7: t,V4: set_a,N2: nat,S10: t] :
              ( ( A12 = S6 )
              & ( A23
                = ( suc @ N2 ) )
              & ( A33 = S10 )
              & ( ( Run2 @ S6 )
                = ( some_P4667681669429350681_set_a @ ( product_Pair_t_set_a @ S7 @ V4 ) ) )
              & ( reaches_t_set_a @ Run2 @ S7 @ N2 @ S10 ) ) ) ) ) ).

% reaches.simps
thf(fact_1017_VYDRA__MDL_Owf__vydra__sub,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,Phi2: formula_a_t,N: nat] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi2 ) @ N )
       => ( vYDRA_wf_vydra_a_t_h @ Sigma @ Init_hd @ Run_hd @ Phi2 @ zero_zero_nat @ N @ ( sub_h_t_a @ Init_hd @ Run_hd @ N @ Phi2 ) ) ) ) ).

% VYDRA_MDL.wf_vydra_sub
thf(fact_1018_VYDRA__MDL_Oreach__run__subs__run,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,N: nat,R: regex_a_t,Rho2: list_iarray_o,Vs: list_vydra_aux_a_t_h,J: nat,Phi: formula_a_t] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ Run_hd @ N ) ) @ ( map_fo5746072578778194433_a_t_h @ ( sub_h_t_a @ Init_hd @ Run_hd @ N ) @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) @ Rho2 @ Vs )
       => ( ( ord_less_nat @ J @ ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
         => ( ( Phi
              = ( nth_formula_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) @ J ) )
           => ? [Rho3: list_P5575445741472356340od_t_o] :
                ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ Run_hd @ N ) @ ( sub_h_t_a @ Init_hd @ Run_hd @ N @ Phi ) @ Rho3 @ ( nth_vydra_aux_a_t_h @ Vs @ J ) )
                & ( ( size_s4106575409306904672od_t_o @ Rho3 )
                  = ( size_s3243743627286111600rray_o @ Rho2 ) ) ) ) ) ) ) ).

% VYDRA_MDL.reach_run_subs_run
thf(fact_1019_exE__realizer_H,axiom,
    ! [P: set_a > t > $o,P2: product_prod_t_set_a] :
      ( ( P @ ( product_snd_t_set_a @ P2 ) @ ( product_fst_t_set_a @ P2 ) )
     => ~ ! [X: t,Y3: set_a] :
            ~ ( P @ Y3 @ X ) ) ).

% exE_realizer'
thf(fact_1020_exE__realizer_H,axiom,
    ! [P: $o > t > $o,P2: product_prod_t_o] :
      ( ( P @ ( product_snd_t_o @ P2 ) @ ( product_fst_t_o @ P2 ) )
     => ~ ! [X: t,Y3: $o] :
            ~ ( P @ Y3 @ X ) ) ).

% exE_realizer'
thf(fact_1021_reaches__ons__runI,axiom,
    ! [R: regex_a_t,N: nat,I: nat] :
      ( ! [Phi4: formula_a_t] :
          ( ( member_formula_a_t @ Phi4 @ ( set_formula_a_t2 @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
         => ? [Ws2: list_P5575445741472356340od_t_o,V5: vydra_aux_a_t_h] :
              ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ run_hd @ N ) @ ( sub_h_t_a @ init_hd @ run_hd @ N @ Phi4 ) @ Ws2 @ V5 )
              & ( ( size_s4106575409306904672od_t_o @ Ws2 )
                = I ) ) )
     => ? [Ws3: list_iarray_o,V2: list_vydra_aux_a_t_h] :
          ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ run_hd @ N ) ) @ ( map_fo5746072578778194433_a_t_h @ ( sub_h_t_a @ init_hd @ run_hd @ N ) @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) @ Ws3 @ V2 )
          & ( ( size_s3243743627286111600rray_o @ Ws3 )
            = I ) ) ) ).

% reaches_ons_runI
thf(fact_1022_bs__sat,axiom,
    ! [R: regex_a_t,N: nat,I: nat,Vs: list_vydra_aux_a_t_h,Vs2: list_vydra_aux_a_t_h,Bs: iarray_o] :
      ( ! [Phi4: formula_a_t,I2: nat,V2: vydra_aux_a_t_h,V6: vydra_aux_a_t_h,B3: product_prod_t_o] :
          ( ( member_formula_a_t @ Phi4 @ ( set_formula_a_t2 @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
         => ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi4 @ I2 @ N @ V2 )
           => ( ( ( run_h_t_a @ run_hd @ N @ V2 )
                = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ V6 @ B3 ) ) )
             => ( ( product_snd_t_o @ B3 )
                = ( sat_a_t @ sigma @ Phi4 @ I2 ) ) ) ) )
     => ( ! [J2: nat] :
            ( ( ord_less_nat @ J2 @ ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
           => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( nth_formula_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) @ J2 ) @ I @ N @ ( nth_vydra_aux_a_t_h @ Vs @ J2 ) ) )
       => ( ( ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ run_hd @ N ) @ Vs )
            = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ Vs2 @ Bs ) ) )
         => ( ( ( size_s8993897887676352572_a_t_h @ Vs )
              = ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
           => ( Bs
              = ( iarray_of_list_o
                @ ( map_formula_a_t_o
                  @ ^ [Phi5: formula_a_t] : ( sat_a_t @ sigma @ Phi5 @ I )
                  @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) ) ) ) ) ) ) ).

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

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

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

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1026_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

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

% zero_diff
thf(fact_1028_map__eq__conv,axiom,
    ! [F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a,G: product_prod_t_set_a > t] :
      ( ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = ( map_Pr119846518281778721et_a_t @ G @ Xs ) )
      = ( ! [X7: product_prod_t_set_a] :
            ( ( member2646690471337469789_set_a @ X7 @ ( set_Pr15456023412717001_set_a @ Xs ) )
           => ( ( F @ X7 )
              = ( G @ X7 ) ) ) ) ) ).

% map_eq_conv
thf(fact_1029_map__eq__conv,axiom,
    ! [F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t,G: formula_a_t > vydra_aux_a_t_h] :
      ( ( ( map_fo5746072578778194433_a_t_h @ F @ Xs )
        = ( map_fo5746072578778194433_a_t_h @ G @ Xs ) )
      = ( ! [X7: formula_a_t] :
            ( ( member_formula_a_t @ X7 @ ( set_formula_a_t2 @ Xs ) )
           => ( ( F @ X7 )
              = ( G @ X7 ) ) ) ) ) ).

% map_eq_conv
thf(fact_1030_map__eq__conv,axiom,
    ! [F: formula_a_t > $o,Xs: list_formula_a_t,G: formula_a_t > $o] :
      ( ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Xs ) )
      = ( ! [X7: formula_a_t] :
            ( ( member_formula_a_t @ X7 @ ( set_formula_a_t2 @ Xs ) )
           => ( ( F @ X7 )
              = ( G @ X7 ) ) ) ) ) ).

% map_eq_conv
thf(fact_1031_subset__code_I1_J,axiom,
    ! [Xs: list_nat,B5: set_nat] :
      ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ B5 )
      = ( ! [X7: nat] :
            ( ( member_nat @ X7 @ ( set_nat2 @ Xs ) )
           => ( member_nat @ X7 @ B5 ) ) ) ) ).

% subset_code(1)
thf(fact_1032_subset__code_I1_J,axiom,
    ! [Xs: list_a,B5: set_a] :
      ( ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ B5 )
      = ( ! [X7: a] :
            ( ( member_a @ X7 @ ( set_a2 @ Xs ) )
           => ( member_a @ X7 @ B5 ) ) ) ) ).

% subset_code(1)
thf(fact_1033_subset__code_I1_J,axiom,
    ! [Xs: list_P6011104703257516679at_nat,B5: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ B5 )
      = ( ! [X7: product_prod_nat_nat] :
            ( ( member8440522571783428010at_nat @ X7 @ ( set_Pr5648618587558075414at_nat @ Xs ) )
           => ( member8440522571783428010at_nat @ X7 @ B5 ) ) ) ) ).

% subset_code(1)
thf(fact_1034_subset__code_I1_J,axiom,
    ! [Xs: list_formula_a_t,B5: set_formula_a_t] :
      ( ( ord_le7457455060544393785la_a_t @ ( set_formula_a_t2 @ Xs ) @ B5 )
      = ( ! [X7: formula_a_t] :
            ( ( member_formula_a_t @ X7 @ ( set_formula_a_t2 @ Xs ) )
           => ( member_formula_a_t @ X7 @ B5 ) ) ) ) ).

% subset_code(1)
thf(fact_1035_subset__code_I1_J,axiom,
    ! [Xs: list_t,B5: set_t] :
      ( ( ord_less_eq_set_t @ ( set_t2 @ Xs ) @ B5 )
      = ( ! [X7: t] :
            ( ( member_t @ X7 @ ( set_t2 @ Xs ) )
           => ( member_t @ X7 @ B5 ) ) ) ) ).

% subset_code(1)
thf(fact_1036_ex__map__conv,axiom,
    ! [Ys2: list_vydra_aux_a_t_h,F: formula_a_t > vydra_aux_a_t_h] :
      ( ( ? [Xs3: list_formula_a_t] :
            ( Ys2
            = ( map_fo5746072578778194433_a_t_h @ F @ Xs3 ) ) )
      = ( ! [X7: vydra_aux_a_t_h] :
            ( ( member5760284237610626351_a_t_h @ X7 @ ( set_vydra_aux_a_t_h2 @ Ys2 ) )
           => ? [Y6: formula_a_t] :
                ( X7
                = ( F @ Y6 ) ) ) ) ) ).

% ex_map_conv
thf(fact_1037_ex__map__conv,axiom,
    ! [Ys2: list_o,F: formula_a_t > $o] :
      ( ( ? [Xs3: list_formula_a_t] :
            ( Ys2
            = ( map_formula_a_t_o @ F @ Xs3 ) ) )
      = ( ! [X7: $o] :
            ( ( member_o @ X7 @ ( set_o2 @ Ys2 ) )
           => ? [Y6: formula_a_t] :
                ( X7
                = ( F @ Y6 ) ) ) ) ) ).

% ex_map_conv
thf(fact_1038_ex__map__conv,axiom,
    ! [Ys2: list_t,F: product_prod_t_set_a > t] :
      ( ( ? [Xs3: list_P1095827921439705018_set_a] :
            ( Ys2
            = ( map_Pr119846518281778721et_a_t @ F @ Xs3 ) ) )
      = ( ! [X7: t] :
            ( ( member_t @ X7 @ ( set_t2 @ Ys2 ) )
           => ? [Y6: product_prod_t_set_a] :
                ( X7
                = ( F @ Y6 ) ) ) ) ) ).

% ex_map_conv
thf(fact_1039_map__cong,axiom,
    ! [Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a,F: product_prod_t_set_a > t,G: product_prod_t_set_a > t] :
      ( ( Xs = Ys2 )
     => ( ! [X: product_prod_t_set_a] :
            ( ( member2646690471337469789_set_a @ X @ ( set_Pr15456023412717001_set_a @ Ys2 ) )
           => ( ( F @ X )
              = ( G @ X ) ) )
       => ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
          = ( map_Pr119846518281778721et_a_t @ G @ Ys2 ) ) ) ) ).

% map_cong
thf(fact_1040_map__cong,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t,F: formula_a_t > vydra_aux_a_t_h,G: formula_a_t > vydra_aux_a_t_h] :
      ( ( Xs = Ys2 )
     => ( ! [X: formula_a_t] :
            ( ( member_formula_a_t @ X @ ( set_formula_a_t2 @ Ys2 ) )
           => ( ( F @ X )
              = ( G @ X ) ) )
       => ( ( map_fo5746072578778194433_a_t_h @ F @ Xs )
          = ( map_fo5746072578778194433_a_t_h @ G @ Ys2 ) ) ) ) ).

% map_cong
thf(fact_1041_map__cong,axiom,
    ! [Xs: list_formula_a_t,Ys2: list_formula_a_t,F: formula_a_t > $o,G: formula_a_t > $o] :
      ( ( Xs = Ys2 )
     => ( ! [X: formula_a_t] :
            ( ( member_formula_a_t @ X @ ( set_formula_a_t2 @ Ys2 ) )
           => ( ( F @ X )
              = ( G @ X ) ) )
       => ( ( map_formula_a_t_o @ F @ Xs )
          = ( map_formula_a_t_o @ G @ Ys2 ) ) ) ) ).

% map_cong
thf(fact_1042_map__idI,axiom,
    ! [Xs: list_nat,F: nat > nat] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
         => ( ( F @ X )
            = X ) )
     => ( ( map_nat_nat @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1043_map__idI,axiom,
    ! [Xs: list_a,F: a > a] :
      ( ! [X: a] :
          ( ( member_a @ X @ ( set_a2 @ Xs ) )
         => ( ( F @ X )
            = X ) )
     => ( ( map_a_a @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1044_map__idI,axiom,
    ! [Xs: list_P6011104703257516679at_nat,F: product_prod_nat_nat > product_prod_nat_nat] :
      ( ! [X: product_prod_nat_nat] :
          ( ( member8440522571783428010at_nat @ X @ ( set_Pr5648618587558075414at_nat @ Xs ) )
         => ( ( F @ X )
            = X ) )
     => ( ( map_Pr8058819605623181956at_nat @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1045_map__idI,axiom,
    ! [Xs: list_formula_a_t,F: formula_a_t > formula_a_t] :
      ( ! [X: formula_a_t] :
          ( ( member_formula_a_t @ X @ ( set_formula_a_t2 @ Xs ) )
         => ( ( F @ X )
            = X ) )
     => ( ( map_fo8328018262729589004la_a_t @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1046_map__idI,axiom,
    ! [Xs: list_t,F: t > t] :
      ( ! [X: t] :
          ( ( member_t @ X @ ( set_t2 @ Xs ) )
         => ( ( F @ X )
            = X ) )
     => ( ( map_t_t @ F @ Xs )
        = Xs ) ) ).

% map_idI
thf(fact_1047_map__ext,axiom,
    ! [Xs: list_P1095827921439705018_set_a,F: product_prod_t_set_a > t,G: product_prod_t_set_a > t] :
      ( ! [X: product_prod_t_set_a] :
          ( ( member2646690471337469789_set_a @ X @ ( set_Pr15456023412717001_set_a @ Xs ) )
         => ( ( F @ X )
            = ( G @ X ) ) )
     => ( ( map_Pr119846518281778721et_a_t @ F @ Xs )
        = ( map_Pr119846518281778721et_a_t @ G @ Xs ) ) ) ).

% map_ext
thf(fact_1048_map__ext,axiom,
    ! [Xs: list_formula_a_t,F: formula_a_t > vydra_aux_a_t_h,G: formula_a_t > vydra_aux_a_t_h] :
      ( ! [X: formula_a_t] :
          ( ( member_formula_a_t @ X @ ( set_formula_a_t2 @ Xs ) )
         => ( ( F @ X )
            = ( G @ X ) ) )
     => ( ( map_fo5746072578778194433_a_t_h @ F @ Xs )
        = ( map_fo5746072578778194433_a_t_h @ G @ Xs ) ) ) ).

% map_ext
thf(fact_1049_map__ext,axiom,
    ! [Xs: list_formula_a_t,F: formula_a_t > $o,G: formula_a_t > $o] :
      ( ! [X: formula_a_t] :
          ( ( member_formula_a_t @ X @ ( set_formula_a_t2 @ Xs ) )
         => ( ( F @ X )
            = ( G @ X ) ) )
     => ( ( map_formula_a_t_o @ F @ Xs )
        = ( map_formula_a_t_o @ G @ Xs ) ) ) ).

% map_ext
thf(fact_1050_list_Omap__ident__strong,axiom,
    ! [T: list_nat,F: nat > nat] :
      ( ! [Z2: nat] :
          ( ( member_nat @ Z2 @ ( set_nat2 @ T ) )
         => ( ( F @ Z2 )
            = Z2 ) )
     => ( ( map_nat_nat @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1051_list_Omap__ident__strong,axiom,
    ! [T: list_a,F: a > a] :
      ( ! [Z2: a] :
          ( ( member_a @ Z2 @ ( set_a2 @ T ) )
         => ( ( F @ Z2 )
            = Z2 ) )
     => ( ( map_a_a @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1052_list_Omap__ident__strong,axiom,
    ! [T: list_P6011104703257516679at_nat,F: product_prod_nat_nat > product_prod_nat_nat] :
      ( ! [Z2: product_prod_nat_nat] :
          ( ( member8440522571783428010at_nat @ Z2 @ ( set_Pr5648618587558075414at_nat @ T ) )
         => ( ( F @ Z2 )
            = Z2 ) )
     => ( ( map_Pr8058819605623181956at_nat @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1053_list_Omap__ident__strong,axiom,
    ! [T: list_formula_a_t,F: formula_a_t > formula_a_t] :
      ( ! [Z2: formula_a_t] :
          ( ( member_formula_a_t @ Z2 @ ( set_formula_a_t2 @ T ) )
         => ( ( F @ Z2 )
            = Z2 ) )
     => ( ( map_fo8328018262729589004la_a_t @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1054_list_Omap__ident__strong,axiom,
    ! [T: list_t,F: t > t] :
      ( ! [Z2: t] :
          ( ( member_t @ Z2 @ ( set_t2 @ T ) )
         => ( ( F @ Z2 )
            = Z2 ) )
     => ( ( map_t_t @ F @ T )
        = T ) ) ).

% list.map_ident_strong
thf(fact_1055_list_Oinj__map__strong,axiom,
    ! [X3: list_P1095827921439705018_set_a,Xa: list_P1095827921439705018_set_a,F: product_prod_t_set_a > t,Fa: product_prod_t_set_a > t] :
      ( ! [Z2: product_prod_t_set_a,Za: product_prod_t_set_a] :
          ( ( member2646690471337469789_set_a @ Z2 @ ( set_Pr15456023412717001_set_a @ X3 ) )
         => ( ( member2646690471337469789_set_a @ Za @ ( set_Pr15456023412717001_set_a @ Xa ) )
           => ( ( ( F @ Z2 )
                = ( Fa @ Za ) )
             => ( Z2 = Za ) ) ) )
     => ( ( ( map_Pr119846518281778721et_a_t @ F @ X3 )
          = ( map_Pr119846518281778721et_a_t @ Fa @ Xa ) )
       => ( X3 = Xa ) ) ) ).

% list.inj_map_strong
thf(fact_1056_list_Oinj__map__strong,axiom,
    ! [X3: list_formula_a_t,Xa: list_formula_a_t,F: formula_a_t > vydra_aux_a_t_h,Fa: formula_a_t > vydra_aux_a_t_h] :
      ( ! [Z2: formula_a_t,Za: formula_a_t] :
          ( ( member_formula_a_t @ Z2 @ ( set_formula_a_t2 @ X3 ) )
         => ( ( member_formula_a_t @ Za @ ( set_formula_a_t2 @ Xa ) )
           => ( ( ( F @ Z2 )
                = ( Fa @ Za ) )
             => ( Z2 = Za ) ) ) )
     => ( ( ( map_fo5746072578778194433_a_t_h @ F @ X3 )
          = ( map_fo5746072578778194433_a_t_h @ Fa @ Xa ) )
       => ( X3 = Xa ) ) ) ).

% list.inj_map_strong
thf(fact_1057_list_Oinj__map__strong,axiom,
    ! [X3: list_formula_a_t,Xa: list_formula_a_t,F: formula_a_t > $o,Fa: formula_a_t > $o] :
      ( ! [Z2: formula_a_t,Za: formula_a_t] :
          ( ( member_formula_a_t @ Z2 @ ( set_formula_a_t2 @ X3 ) )
         => ( ( member_formula_a_t @ Za @ ( set_formula_a_t2 @ Xa ) )
           => ( ( ( F @ Z2 )
                = ( Fa @ Za ) )
             => ( Z2 = Za ) ) ) )
     => ( ( ( map_formula_a_t_o @ F @ X3 )
          = ( map_formula_a_t_o @ Fa @ Xa ) )
       => ( X3 = Xa ) ) ) ).

% list.inj_map_strong
thf(fact_1058_list_Omap__cong0,axiom,
    ! [X3: list_P1095827921439705018_set_a,F: product_prod_t_set_a > t,G: product_prod_t_set_a > t] :
      ( ! [Z2: product_prod_t_set_a] :
          ( ( member2646690471337469789_set_a @ Z2 @ ( set_Pr15456023412717001_set_a @ X3 ) )
         => ( ( F @ Z2 )
            = ( G @ Z2 ) ) )
     => ( ( map_Pr119846518281778721et_a_t @ F @ X3 )
        = ( map_Pr119846518281778721et_a_t @ G @ X3 ) ) ) ).

% list.map_cong0
thf(fact_1059_list_Omap__cong0,axiom,
    ! [X3: list_formula_a_t,F: formula_a_t > vydra_aux_a_t_h,G: formula_a_t > vydra_aux_a_t_h] :
      ( ! [Z2: formula_a_t] :
          ( ( member_formula_a_t @ Z2 @ ( set_formula_a_t2 @ X3 ) )
         => ( ( F @ Z2 )
            = ( G @ Z2 ) ) )
     => ( ( map_fo5746072578778194433_a_t_h @ F @ X3 )
        = ( map_fo5746072578778194433_a_t_h @ G @ X3 ) ) ) ).

% list.map_cong0
thf(fact_1060_list_Omap__cong0,axiom,
    ! [X3: list_formula_a_t,F: formula_a_t > $o,G: formula_a_t > $o] :
      ( ! [Z2: formula_a_t] :
          ( ( member_formula_a_t @ Z2 @ ( set_formula_a_t2 @ X3 ) )
         => ( ( F @ Z2 )
            = ( G @ Z2 ) ) )
     => ( ( map_formula_a_t_o @ F @ X3 )
        = ( map_formula_a_t_o @ G @ X3 ) ) ) ).

% list.map_cong0
thf(fact_1061_list_Omap__cong,axiom,
    ! [X3: list_P1095827921439705018_set_a,Ya: list_P1095827921439705018_set_a,F: product_prod_t_set_a > t,G: product_prod_t_set_a > t] :
      ( ( X3 = Ya )
     => ( ! [Z2: product_prod_t_set_a] :
            ( ( member2646690471337469789_set_a @ Z2 @ ( set_Pr15456023412717001_set_a @ Ya ) )
           => ( ( F @ Z2 )
              = ( G @ Z2 ) ) )
       => ( ( map_Pr119846518281778721et_a_t @ F @ X3 )
          = ( map_Pr119846518281778721et_a_t @ G @ Ya ) ) ) ) ).

% list.map_cong
thf(fact_1062_list_Omap__cong,axiom,
    ! [X3: list_formula_a_t,Ya: list_formula_a_t,F: formula_a_t > vydra_aux_a_t_h,G: formula_a_t > vydra_aux_a_t_h] :
      ( ( X3 = Ya )
     => ( ! [Z2: formula_a_t] :
            ( ( member_formula_a_t @ Z2 @ ( set_formula_a_t2 @ Ya ) )
           => ( ( F @ Z2 )
              = ( G @ Z2 ) ) )
       => ( ( map_fo5746072578778194433_a_t_h @ F @ X3 )
          = ( map_fo5746072578778194433_a_t_h @ G @ Ya ) ) ) ) ).

% list.map_cong
thf(fact_1063_list_Omap__cong,axiom,
    ! [X3: list_formula_a_t,Ya: list_formula_a_t,F: formula_a_t > $o,G: formula_a_t > $o] :
      ( ( X3 = Ya )
     => ( ! [Z2: formula_a_t] :
            ( ( member_formula_a_t @ Z2 @ ( set_formula_a_t2 @ Ya ) )
           => ( ( F @ Z2 )
              = ( G @ Z2 ) ) )
       => ( ( map_formula_a_t_o @ F @ X3 )
          = ( map_formula_a_t_o @ G @ Ya ) ) ) ) ).

% list.map_cong
thf(fact_1064_in__set__takeD,axiom,
    ! [X3: nat,N: nat,Xs: list_nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ ( take_nat @ N @ Xs ) ) )
     => ( member_nat @ X3 @ ( set_nat2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_1065_in__set__takeD,axiom,
    ! [X3: a,N: nat,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ ( take_a @ N @ Xs ) ) )
     => ( member_a @ X3 @ ( set_a2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_1066_in__set__takeD,axiom,
    ! [X3: product_prod_nat_nat,N: nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ X3 @ ( set_Pr5648618587558075414at_nat @ ( take_P2173866234530122223at_nat @ N @ Xs ) ) )
     => ( member8440522571783428010at_nat @ X3 @ ( set_Pr5648618587558075414at_nat @ Xs ) ) ) ).

% in_set_takeD
thf(fact_1067_in__set__takeD,axiom,
    ! [X3: formula_a_t,N: nat,Xs: list_formula_a_t] :
      ( ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ ( take_formula_a_t @ N @ Xs ) ) )
     => ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_1068_in__set__takeD,axiom,
    ! [X3: t,N: nat,Xs: list_t] :
      ( ( member_t @ X3 @ ( set_t2 @ ( take_t @ N @ Xs ) ) )
     => ( member_t @ X3 @ ( set_t2 @ Xs ) ) ) ).

% in_set_takeD
thf(fact_1069_set__take__subset,axiom,
    ! [N: nat,Xs: list_formula_a_t] : ( ord_le7457455060544393785la_a_t @ ( set_formula_a_t2 @ ( take_formula_a_t @ N @ Xs ) ) @ ( set_formula_a_t2 @ Xs ) ) ).

% set_take_subset
thf(fact_1070_set__take__subset,axiom,
    ! [N: nat,Xs: list_t] : ( ord_less_eq_set_t @ ( set_t2 @ ( take_t @ N @ Xs ) ) @ ( set_t2 @ Xs ) ) ).

% set_take_subset
thf(fact_1071_nat_Odisc__eq__case_I2_J,axiom,
    ! [Nat: nat] :
      ( ( Nat != zero_zero_nat )
      = ( case_nat_o @ $false
        @ ^ [Uu: nat] : $true
        @ Nat ) ) ).

% nat.disc_eq_case(2)
thf(fact_1072_nat_Odisc__eq__case_I1_J,axiom,
    ! [Nat: nat] :
      ( ( Nat = zero_zero_nat )
      = ( case_nat_o @ $true
        @ ^ [Uu: nat] : $false
        @ Nat ) ) ).

% nat.disc_eq_case(1)
thf(fact_1073_set__take__subset__set__take,axiom,
    ! [M: nat,N: nat,Xs: list_formula_a_t] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_le7457455060544393785la_a_t @ ( set_formula_a_t2 @ ( take_formula_a_t @ M @ Xs ) ) @ ( set_formula_a_t2 @ ( take_formula_a_t @ N @ Xs ) ) ) ) ).

% set_take_subset_set_take
thf(fact_1074_set__take__subset__set__take,axiom,
    ! [M: nat,N: nat,Xs: list_t] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_set_t @ ( set_t2 @ ( take_t @ M @ Xs ) ) @ ( set_t2 @ ( take_t @ N @ Xs ) ) ) ) ).

% set_take_subset_set_take
thf(fact_1075_less__eq__nat_Osimps_I2_J,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( case_nat_o @ $false @ ( ord_less_eq_nat @ M ) @ N ) ) ).

% less_eq_nat.simps(2)
thf(fact_1076_length__pos__if__in__set,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1077_length__pos__if__in__set,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_a @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1078_length__pos__if__in__set,axiom,
    ! [X3: t,Xs: list_t] :
      ( ( member_t @ X3 @ ( set_t2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_t @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1079_length__pos__if__in__set,axiom,
    ! [X3: $o,Xs: list_o] :
      ( ( member_o @ X3 @ ( set_o2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_o @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1080_length__pos__if__in__set,axiom,
    ! [X3: iarray_o,Xs: list_iarray_o] :
      ( ( member_iarray_o @ X3 @ ( set_iarray_o2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s3243743627286111600rray_o @ Xs ) ) ) ).

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

% length_pos_if_in_set
thf(fact_1082_length__pos__if__in__set,axiom,
    ! [X3: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ X3 @ ( set_Pr5648618587558075414at_nat @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s5460976970255530739at_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1083_length__pos__if__in__set,axiom,
    ! [X3: formula_a_t,Xs: list_formula_a_t] :
      ( ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s8846756101701226951la_a_t @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1084_length__pos__if__in__set,axiom,
    ! [X3: product_prod_o_o,Xs: list_P4002435161011370285od_o_o] :
      ( ( member7466972457876170832od_o_o @ X3 @ ( set_Product_prod_o_o2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s1515746228057227161od_o_o @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1085_length__pos__if__in__set,axiom,
    ! [X3: product_prod_t_o,Xs: list_P5575445741472356340od_t_o] :
      ( ( member3252940038344094615od_t_o @ X3 @ ( set_Product_prod_t_o2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s4106575409306904672od_t_o @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1086_all__set__conv__all__nth,axiom,
    ! [Xs: list_P1095827921439705018_set_a,P: product_prod_t_set_a > $o] :
      ( ( ! [X7: product_prod_t_set_a] :
            ( ( member2646690471337469789_set_a @ X7 @ ( set_Pr15456023412717001_set_a @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5362121731612881446_set_a @ Xs ) )
           => ( P @ ( nth_Pr633927046780761275_set_a @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1087_all__set__conv__all__nth,axiom,
    ! [Xs: list_vydra_aux_a_t_h,P: vydra_aux_a_t_h > $o] :
      ( ( ! [X7: vydra_aux_a_t_h] :
            ( ( member5760284237610626351_a_t_h @ X7 @ ( set_vydra_aux_a_t_h2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8993897887676352572_a_t_h @ Xs ) )
           => ( P @ ( nth_vydra_aux_a_t_h @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1088_all__set__conv__all__nth,axiom,
    ! [Xs: list_iarray_o,P: iarray_o > $o] :
      ( ( ! [X7: iarray_o] :
            ( ( member_iarray_o @ X7 @ ( set_iarray_o2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3243743627286111600rray_o @ Xs ) )
           => ( P @ ( nth_iarray_o @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1089_all__set__conv__all__nth,axiom,
    ! [Xs: list_formula_a_t,P: formula_a_t > $o] :
      ( ( ! [X7: formula_a_t] :
            ( ( member_formula_a_t @ X7 @ ( set_formula_a_t2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8846756101701226951la_a_t @ Xs ) )
           => ( P @ ( nth_formula_a_t @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1090_all__set__conv__all__nth,axiom,
    ! [Xs: list_t,P: t > $o] :
      ( ( ! [X7: t] :
            ( ( member_t @ X7 @ ( set_t2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Xs ) )
           => ( P @ ( nth_t @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1091_all__set__conv__all__nth,axiom,
    ! [Xs: list_o,P: $o > $o] :
      ( ( ! [X7: $o] :
            ( ( member_o @ X7 @ ( set_o2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_o @ Xs ) )
           => ( P @ ( nth_o @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1092_all__set__conv__all__nth,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,P: product_prod_o_o > $o] :
      ( ( ! [X7: product_prod_o_o] :
            ( ( member7466972457876170832od_o_o @ X7 @ ( set_Product_prod_o_o2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1515746228057227161od_o_o @ Xs ) )
           => ( P @ ( nth_Product_prod_o_o @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1093_all__set__conv__all__nth,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,P: product_prod_t_o > $o] :
      ( ( ! [X7: product_prod_t_o] :
            ( ( member3252940038344094615od_t_o @ X7 @ ( set_Product_prod_t_o2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s4106575409306904672od_t_o @ Xs ) )
           => ( P @ ( nth_Product_prod_t_o @ Xs @ I3 ) ) ) ) ) ).

% all_set_conv_all_nth
thf(fact_1094_all__set__conv__all__nth,axiom,
    ! [Xs: list_set_a,P: set_a > $o] :
      ( ( ! [X7: set_a] :
            ( ( member_set_a @ X7 @ ( set_set_a2 @ Xs ) )
           => ( P @ X7 ) ) )
      = ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_set_a @ Xs ) )
           => ( P @ ( nth_set_a @ Xs @ I3 ) ) ) ) ) ).

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

% all_nth_imp_all_set
thf(fact_1096_all__nth__imp__all__set,axiom,
    ! [Xs: list_a,P: a > $o,X3: a] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_a @ Xs ) )
         => ( P @ ( nth_a @ Xs @ I2 ) ) )
     => ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1097_all__nth__imp__all__set,axiom,
    ! [Xs: list_t,P: t > $o,X3: t] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_t @ Xs ) )
         => ( P @ ( nth_t @ Xs @ I2 ) ) )
     => ( ( member_t @ X3 @ ( set_t2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1098_all__nth__imp__all__set,axiom,
    ! [Xs: list_o,P: $o > $o,X3: $o] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_o @ Xs ) )
         => ( P @ ( nth_o @ Xs @ I2 ) ) )
     => ( ( member_o @ X3 @ ( set_o2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1099_all__nth__imp__all__set,axiom,
    ! [Xs: list_iarray_o,P: iarray_o > $o,X3: iarray_o] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s3243743627286111600rray_o @ Xs ) )
         => ( P @ ( nth_iarray_o @ Xs @ I2 ) ) )
     => ( ( member_iarray_o @ X3 @ ( set_iarray_o2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1100_all__nth__imp__all__set,axiom,
    ! [Xs: list_set_a,P: set_a > $o,X3: set_a] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_size_list_set_a @ Xs ) )
         => ( P @ ( nth_set_a @ Xs @ I2 ) ) )
     => ( ( member_set_a @ X3 @ ( set_set_a2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1101_all__nth__imp__all__set,axiom,
    ! [Xs: list_P6011104703257516679at_nat,P: product_prod_nat_nat > $o,X3: product_prod_nat_nat] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s5460976970255530739at_nat @ Xs ) )
         => ( P @ ( nth_Pr7617993195940197384at_nat @ Xs @ I2 ) ) )
     => ( ( member8440522571783428010at_nat @ X3 @ ( set_Pr5648618587558075414at_nat @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1102_all__nth__imp__all__set,axiom,
    ! [Xs: list_formula_a_t,P: formula_a_t > $o,X3: formula_a_t] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s8846756101701226951la_a_t @ Xs ) )
         => ( P @ ( nth_formula_a_t @ Xs @ I2 ) ) )
     => ( ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1103_all__nth__imp__all__set,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,P: product_prod_o_o > $o,X3: product_prod_o_o] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s1515746228057227161od_o_o @ Xs ) )
         => ( P @ ( nth_Product_prod_o_o @ Xs @ I2 ) ) )
     => ( ( member7466972457876170832od_o_o @ X3 @ ( set_Product_prod_o_o2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

% all_nth_imp_all_set
thf(fact_1104_all__nth__imp__all__set,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,P: product_prod_t_o > $o,X3: product_prod_t_o] :
      ( ! [I2: nat] :
          ( ( ord_less_nat @ I2 @ ( size_s4106575409306904672od_t_o @ Xs ) )
         => ( P @ ( nth_Product_prod_t_o @ Xs @ I2 ) ) )
     => ( ( member3252940038344094615od_t_o @ X3 @ ( set_Product_prod_t_o2 @ Xs ) )
       => ( P @ X3 ) ) ) ).

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

% in_set_conv_nth
thf(fact_1106_in__set__conv__nth,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_a @ Xs ) )
            & ( ( nth_a @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1107_in__set__conv__nth,axiom,
    ! [X3: t,Xs: list_t] :
      ( ( member_t @ X3 @ ( set_t2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_t @ Xs ) )
            & ( ( nth_t @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1108_in__set__conv__nth,axiom,
    ! [X3: $o,Xs: list_o] :
      ( ( member_o @ X3 @ ( set_o2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_o @ Xs ) )
            & ( ( nth_o @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1109_in__set__conv__nth,axiom,
    ! [X3: iarray_o,Xs: list_iarray_o] :
      ( ( member_iarray_o @ X3 @ ( set_iarray_o2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s3243743627286111600rray_o @ Xs ) )
            & ( ( nth_iarray_o @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1110_in__set__conv__nth,axiom,
    ! [X3: set_a,Xs: list_set_a] :
      ( ( member_set_a @ X3 @ ( set_set_a2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_set_a @ Xs ) )
            & ( ( nth_set_a @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1111_in__set__conv__nth,axiom,
    ! [X3: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ X3 @ ( set_Pr5648618587558075414at_nat @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s5460976970255530739at_nat @ Xs ) )
            & ( ( nth_Pr7617993195940197384at_nat @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1112_in__set__conv__nth,axiom,
    ! [X3: formula_a_t,Xs: list_formula_a_t] :
      ( ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s8846756101701226951la_a_t @ Xs ) )
            & ( ( nth_formula_a_t @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1113_in__set__conv__nth,axiom,
    ! [X3: product_prod_o_o,Xs: list_P4002435161011370285od_o_o] :
      ( ( member7466972457876170832od_o_o @ X3 @ ( set_Product_prod_o_o2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s1515746228057227161od_o_o @ Xs ) )
            & ( ( nth_Product_prod_o_o @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1114_in__set__conv__nth,axiom,
    ! [X3: product_prod_t_o,Xs: list_P5575445741472356340od_t_o] :
      ( ( member3252940038344094615od_t_o @ X3 @ ( set_Product_prod_t_o2 @ Xs ) )
      = ( ? [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_s4106575409306904672od_t_o @ Xs ) )
            & ( ( nth_Product_prod_t_o @ Xs @ I3 )
              = X3 ) ) ) ) ).

% in_set_conv_nth
thf(fact_1115_list__ball__nth,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a,P: product_prod_t_set_a > $o] :
      ( ( ord_less_nat @ N @ ( size_s5362121731612881446_set_a @ Xs ) )
     => ( ! [X: product_prod_t_set_a] :
            ( ( member2646690471337469789_set_a @ X @ ( set_Pr15456023412717001_set_a @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_Pr633927046780761275_set_a @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1116_list__ball__nth,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h,P: vydra_aux_a_t_h > $o] :
      ( ( ord_less_nat @ N @ ( size_s8993897887676352572_a_t_h @ Xs ) )
     => ( ! [X: vydra_aux_a_t_h] :
            ( ( member5760284237610626351_a_t_h @ X @ ( set_vydra_aux_a_t_h2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_vydra_aux_a_t_h @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1117_list__ball__nth,axiom,
    ! [N: nat,Xs: list_iarray_o,P: iarray_o > $o] :
      ( ( ord_less_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) )
     => ( ! [X: iarray_o] :
            ( ( member_iarray_o @ X @ ( set_iarray_o2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_iarray_o @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1118_list__ball__nth,axiom,
    ! [N: nat,Xs: list_formula_a_t,P: formula_a_t > $o] :
      ( ( ord_less_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) )
     => ( ! [X: formula_a_t] :
            ( ( member_formula_a_t @ X @ ( set_formula_a_t2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_formula_a_t @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1119_list__ball__nth,axiom,
    ! [N: nat,Xs: list_t,P: t > $o] :
      ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs ) )
     => ( ! [X: t] :
            ( ( member_t @ X @ ( set_t2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_t @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1120_list__ball__nth,axiom,
    ! [N: nat,Xs: list_o,P: $o > $o] :
      ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
     => ( ! [X: $o] :
            ( ( member_o @ X @ ( set_o2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_o @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1121_list__ball__nth,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o,P: product_prod_o_o > $o] :
      ( ( ord_less_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) )
     => ( ! [X: product_prod_o_o] :
            ( ( member7466972457876170832od_o_o @ X @ ( set_Product_prod_o_o2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_Product_prod_o_o @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1122_list__ball__nth,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o,P: product_prod_t_o > $o] :
      ( ( ord_less_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) )
     => ( ! [X: product_prod_t_o] :
            ( ( member3252940038344094615od_t_o @ X @ ( set_Product_prod_t_o2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_Product_prod_t_o @ Xs @ N ) ) ) ) ).

% list_ball_nth
thf(fact_1123_list__ball__nth,axiom,
    ! [N: nat,Xs: list_set_a,P: set_a > $o] :
      ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
     => ( ! [X: set_a] :
            ( ( member_set_a @ X @ ( set_set_a2 @ Xs ) )
           => ( P @ X ) )
       => ( P @ ( nth_set_a @ Xs @ N ) ) ) ) ).

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

% nth_mem
thf(fact_1125_nth__mem,axiom,
    ! [N: nat,Xs: list_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
     => ( member_a @ ( nth_a @ Xs @ N ) @ ( set_a2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1126_nth__mem,axiom,
    ! [N: nat,Xs: list_t] :
      ( ( ord_less_nat @ N @ ( size_size_list_t @ Xs ) )
     => ( member_t @ ( nth_t @ Xs @ N ) @ ( set_t2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1127_nth__mem,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
     => ( member_o @ ( nth_o @ Xs @ N ) @ ( set_o2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1128_nth__mem,axiom,
    ! [N: nat,Xs: list_iarray_o] :
      ( ( ord_less_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) )
     => ( member_iarray_o @ ( nth_iarray_o @ Xs @ N ) @ ( set_iarray_o2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1129_nth__mem,axiom,
    ! [N: nat,Xs: list_set_a] :
      ( ( ord_less_nat @ N @ ( size_size_list_set_a @ Xs ) )
     => ( member_set_a @ ( nth_set_a @ Xs @ N ) @ ( set_set_a2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1130_nth__mem,axiom,
    ! [N: nat,Xs: list_P6011104703257516679at_nat] :
      ( ( ord_less_nat @ N @ ( size_s5460976970255530739at_nat @ Xs ) )
     => ( member8440522571783428010at_nat @ ( nth_Pr7617993195940197384at_nat @ Xs @ N ) @ ( set_Pr5648618587558075414at_nat @ Xs ) ) ) ).

% nth_mem
thf(fact_1131_nth__mem,axiom,
    ! [N: nat,Xs: list_formula_a_t] :
      ( ( ord_less_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) )
     => ( member_formula_a_t @ ( nth_formula_a_t @ Xs @ N ) @ ( set_formula_a_t2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1132_nth__mem,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o] :
      ( ( ord_less_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) )
     => ( member7466972457876170832od_o_o @ ( nth_Product_prod_o_o @ Xs @ N ) @ ( set_Product_prod_o_o2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1133_nth__mem,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o] :
      ( ( ord_less_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) )
     => ( member3252940038344094615od_t_o @ ( nth_Product_prod_t_o @ Xs @ N ) @ ( set_Product_prod_t_o2 @ Xs ) ) ) ).

% nth_mem
thf(fact_1134_diff__right__commute,axiom,
    ! [A: nat,C2: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C2 ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C2 ) ) ).

% diff_right_commute
thf(fact_1135_diff__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [K3: nat] : K3
        @ ( minus_minus_nat @ M @ N ) ) ) ).

% diff_Suc
thf(fact_1136_zero__le,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X3 ) ).

% zero_le
thf(fact_1137_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_1138_gr__implies__not__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

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

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

% gr_zeroI
thf(fact_1141_VYDRA__MDL_Obs__sat,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: regex_a_t,N: nat,I: nat,Vs: list_vydra_aux_a_t_h,Vs2: list_vydra_aux_a_t_h,Bs: iarray_o] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ! [Phi4: formula_a_t,I2: nat,V2: vydra_aux_a_t_h,V6: vydra_aux_a_t_h,B3: product_prod_t_o] :
            ( ( member_formula_a_t @ Phi4 @ ( set_formula_a_t2 @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
           => ( ( vYDRA_wf_vydra_a_t_h @ Sigma @ Init_hd @ Run_hd @ Phi4 @ I2 @ N @ V2 )
             => ( ( ( run_h_t_a @ Run_hd @ N @ V2 )
                  = ( some_P9127227083975130150od_t_o @ ( produc5956389175556509053od_t_o @ V6 @ B3 ) ) )
               => ( ( product_snd_t_o @ B3 )
                  = ( sat_a_t @ Sigma @ Phi4 @ I2 ) ) ) ) )
       => ( ! [J2: nat] :
              ( ( ord_less_nat @ J2 @ ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
             => ( vYDRA_wf_vydra_a_t_h @ Sigma @ Init_hd @ Run_hd @ ( nth_formula_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) @ J2 ) @ I @ N @ ( nth_vydra_aux_a_t_h @ Vs @ J2 ) ) )
         => ( ( ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ Run_hd @ N ) @ Vs )
              = ( some_P7279874174034738982rray_o @ ( produc8472968102330193021rray_o @ Vs2 @ Bs ) ) )
           => ( ( ( size_s8993897887676352572_a_t_h @ Vs )
                = ( size_s8846756101701226951la_a_t @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
             => ( Bs
                = ( iarray_of_list_o
                  @ ( map_formula_a_t_o
                    @ ^ [Phi5: formula_a_t] : ( sat_a_t @ Sigma @ Phi5 @ I )
                    @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) ) ) ) ) ) ) ) ).

% VYDRA_MDL.bs_sat
thf(fact_1142_VYDRA__MDL_Oreaches__ons__runI,axiom,
    ! [Sigma: trace_a_t,Init_hd: h,Run_hd: h > option5775791656947114332_set_a,R: regex_a_t,N: nat,I: nat] :
      ( ( vYDRA_MDL_a_t_h @ Sigma @ Init_hd @ Run_hd )
     => ( ! [Phi4: formula_a_t] :
            ( ( member_formula_a_t @ Phi4 @ ( set_formula_a_t2 @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
           => ? [Ws2: list_P5575445741472356340od_t_o,V5: vydra_aux_a_t_h] :
                ( ( reache8691153155344877136od_t_o @ ( run_h_t_a @ Run_hd @ N ) @ ( sub_h_t_a @ Init_hd @ Run_hd @ N @ Phi4 ) @ Ws2 @ V5 )
                & ( ( size_s4106575409306904672od_t_o @ Ws2 )
                  = I ) ) )
       => ? [Ws3: list_iarray_o,V2: list_vydra_aux_a_t_h] :
            ( ( reache2401979074735462992rray_o @ ( run_su3116026553151384105_h_t_o @ ( run_h_t_a @ Run_hd @ N ) ) @ ( map_fo5746072578778194433_a_t_h @ ( sub_h_t_a @ Init_hd @ Run_hd @ N ) @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) @ Ws3 @ V2 )
            & ( ( size_s3243743627286111600rray_o @ Ws3 )
              = I ) ) ) ) ).

% VYDRA_MDL.reaches_ons_runI
thf(fact_1143_collect__subfmlas__size,axiom,
    ! [X3: formula_a_t,R: regex_a_t] :
      ( ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ ( collect_subfmlas_a_t @ R @ nil_formula_a_t ) ) )
     => ( ord_less_nat @ ( size_s4016968051272393527la_a_t @ X3 ) @ ( size_size_regex_a_t @ R ) ) ) ).

% collect_subfmlas_size
thf(fact_1144_length__drop,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a] :
      ( ( size_s5362121731612881446_set_a @ ( drop_P283403782220237946_set_a @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_s5362121731612881446_set_a @ Xs ) @ N ) ) ).

% length_drop
thf(fact_1145_length__drop,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h] :
      ( ( size_s8993897887676352572_a_t_h @ ( drop_vydra_aux_a_t_h @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_s8993897887676352572_a_t_h @ Xs ) @ N ) ) ).

% length_drop
thf(fact_1146_length__drop,axiom,
    ! [N: nat,Xs: list_iarray_o] :
      ( ( size_s3243743627286111600rray_o @ ( drop_iarray_o @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_s3243743627286111600rray_o @ Xs ) @ N ) ) ).

% length_drop
thf(fact_1147_length__drop,axiom,
    ! [N: nat,Xs: list_formula_a_t] :
      ( ( size_s8846756101701226951la_a_t @ ( drop_formula_a_t @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_s8846756101701226951la_a_t @ Xs ) @ N ) ) ).

% length_drop
thf(fact_1148_length__drop,axiom,
    ! [N: nat,Xs: list_t] :
      ( ( size_size_list_t @ ( drop_t @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_t @ Xs ) @ N ) ) ).

% length_drop
thf(fact_1149_length__drop,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( size_size_list_o @ ( drop_o @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_size_list_o @ Xs ) @ N ) ) ).

% length_drop
thf(fact_1150_length__drop,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o] :
      ( ( size_s1515746228057227161od_o_o @ ( drop_P1195729285504171629od_o_o @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_s1515746228057227161od_o_o @ Xs ) @ N ) ) ).

% length_drop
thf(fact_1151_length__drop,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o] :
      ( ( size_s4106575409306904672od_t_o @ ( drop_P3066774390924266292od_t_o @ N @ Xs ) )
      = ( minus_minus_nat @ ( size_s4106575409306904672od_t_o @ Xs ) @ N ) ) ).

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

% length_drop
thf(fact_1153_drop__all,axiom,
    ! [Xs: list_P1095827921439705018_set_a,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs ) @ N )
     => ( ( drop_P283403782220237946_set_a @ N @ Xs )
        = nil_Pr7982011819685168954_set_a ) ) ).

% drop_all
thf(fact_1154_drop__all,axiom,
    ! [Xs: list_vydra_aux_a_t_h,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s8993897887676352572_a_t_h @ Xs ) @ N )
     => ( ( drop_vydra_aux_a_t_h @ N @ Xs )
        = nil_vydra_aux_a_t_h ) ) ).

% drop_all
thf(fact_1155_drop__all,axiom,
    ! [Xs: list_iarray_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s3243743627286111600rray_o @ Xs ) @ N )
     => ( ( drop_iarray_o @ N @ Xs )
        = nil_iarray_o ) ) ).

% drop_all
thf(fact_1156_drop__all,axiom,
    ! [Xs: list_formula_a_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s8846756101701226951la_a_t @ Xs ) @ N )
     => ( ( drop_formula_a_t @ N @ Xs )
        = nil_formula_a_t ) ) ).

% drop_all
thf(fact_1157_drop__all,axiom,
    ! [Xs: list_t,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_t @ Xs ) @ N )
     => ( ( drop_t @ N @ Xs )
        = nil_t ) ) ).

% drop_all
thf(fact_1158_drop__all,axiom,
    ! [Xs: list_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N )
     => ( ( drop_o @ N @ Xs )
        = nil_o ) ) ).

% drop_all
thf(fact_1159_drop__all,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s1515746228057227161od_o_o @ Xs ) @ N )
     => ( ( drop_P1195729285504171629od_o_o @ N @ Xs )
        = nil_Product_prod_o_o ) ) ).

% drop_all
thf(fact_1160_drop__all,axiom,
    ! [Xs: list_P5575445741472356340od_t_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_s4106575409306904672od_t_o @ Xs ) @ N )
     => ( ( drop_P3066774390924266292od_t_o @ N @ Xs )
        = nil_Product_prod_t_o ) ) ).

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

% drop_all
thf(fact_1162_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a] :
      ( ( ( drop_P283403782220237946_set_a @ N @ Xs )
        = nil_Pr7982011819685168954_set_a )
      = ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_1163_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h] :
      ( ( ( drop_vydra_aux_a_t_h @ N @ Xs )
        = nil_vydra_aux_a_t_h )
      = ( ord_less_eq_nat @ ( size_s8993897887676352572_a_t_h @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_1164_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_iarray_o] :
      ( ( ( drop_iarray_o @ N @ Xs )
        = nil_iarray_o )
      = ( ord_less_eq_nat @ ( size_s3243743627286111600rray_o @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_1165_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_formula_a_t] :
      ( ( ( drop_formula_a_t @ N @ Xs )
        = nil_formula_a_t )
      = ( ord_less_eq_nat @ ( size_s8846756101701226951la_a_t @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_1166_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_t] :
      ( ( ( drop_t @ N @ Xs )
        = nil_t )
      = ( ord_less_eq_nat @ ( size_size_list_t @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_1167_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( ( drop_o @ N @ Xs )
        = nil_o )
      = ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_1168_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o] :
      ( ( ( drop_P1195729285504171629od_o_o @ N @ Xs )
        = nil_Product_prod_o_o )
      = ( ord_less_eq_nat @ ( size_s1515746228057227161od_o_o @ Xs ) @ N ) ) ).

% drop_eq_Nil
thf(fact_1169_drop__eq__Nil,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o] :
      ( ( ( drop_P3066774390924266292od_t_o @ N @ Xs )
        = nil_Product_prod_t_o )
      = ( ord_less_eq_nat @ ( size_s4106575409306904672od_t_o @ Xs ) @ N ) ) ).

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

% drop_eq_Nil
thf(fact_1171_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a] :
      ( ( nil_Pr7982011819685168954_set_a
        = ( drop_P283403782220237946_set_a @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s5362121731612881446_set_a @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_1172_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h] :
      ( ( nil_vydra_aux_a_t_h
        = ( drop_vydra_aux_a_t_h @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s8993897887676352572_a_t_h @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_1173_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_iarray_o] :
      ( ( nil_iarray_o
        = ( drop_iarray_o @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s3243743627286111600rray_o @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_1174_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_formula_a_t] :
      ( ( nil_formula_a_t
        = ( drop_formula_a_t @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s8846756101701226951la_a_t @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_1175_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_t] :
      ( ( nil_t
        = ( drop_t @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_t @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_1176_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( nil_o
        = ( drop_o @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_1177_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o] :
      ( ( nil_Product_prod_o_o
        = ( drop_P1195729285504171629od_o_o @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s1515746228057227161od_o_o @ Xs ) @ N ) ) ).

% drop_eq_Nil2
thf(fact_1178_drop__eq__Nil2,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o] :
      ( ( nil_Product_prod_t_o
        = ( drop_P3066774390924266292od_t_o @ N @ Xs ) )
      = ( ord_less_eq_nat @ ( size_s4106575409306904672od_t_o @ Xs ) @ N ) ) ).

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

% drop_eq_Nil2
thf(fact_1180_drop__append,axiom,
    ! [N: nat,Xs: list_P1095827921439705018_set_a,Ys2: list_P1095827921439705018_set_a] :
      ( ( drop_P283403782220237946_set_a @ N @ ( append8768163766229313743_set_a @ Xs @ Ys2 ) )
      = ( append8768163766229313743_set_a @ ( drop_P283403782220237946_set_a @ N @ Xs ) @ ( drop_P283403782220237946_set_a @ ( minus_minus_nat @ N @ ( size_s5362121731612881446_set_a @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1181_drop__append,axiom,
    ! [N: nat,Xs: list_vydra_aux_a_t_h,Ys2: list_vydra_aux_a_t_h] :
      ( ( drop_vydra_aux_a_t_h @ N @ ( append7715335228782332733_a_t_h @ Xs @ Ys2 ) )
      = ( append7715335228782332733_a_t_h @ ( drop_vydra_aux_a_t_h @ N @ Xs ) @ ( drop_vydra_aux_a_t_h @ ( minus_minus_nat @ N @ ( size_s8993897887676352572_a_t_h @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1182_drop__append,axiom,
    ! [N: nat,Xs: list_iarray_o,Ys2: list_iarray_o] :
      ( ( drop_iarray_o @ N @ ( append_iarray_o @ Xs @ Ys2 ) )
      = ( append_iarray_o @ ( drop_iarray_o @ N @ Xs ) @ ( drop_iarray_o @ ( minus_minus_nat @ N @ ( size_s3243743627286111600rray_o @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1183_drop__append,axiom,
    ! [N: nat,Xs: list_formula_a_t,Ys2: list_formula_a_t] :
      ( ( drop_formula_a_t @ N @ ( append_formula_a_t @ Xs @ Ys2 ) )
      = ( append_formula_a_t @ ( drop_formula_a_t @ N @ Xs ) @ ( drop_formula_a_t @ ( minus_minus_nat @ N @ ( size_s8846756101701226951la_a_t @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1184_drop__append,axiom,
    ! [N: nat,Xs: list_t,Ys2: list_t] :
      ( ( drop_t @ N @ ( append_t @ Xs @ Ys2 ) )
      = ( append_t @ ( drop_t @ N @ Xs ) @ ( drop_t @ ( minus_minus_nat @ N @ ( size_size_list_t @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1185_drop__append,axiom,
    ! [N: nat,Xs: list_o,Ys2: list_o] :
      ( ( drop_o @ N @ ( append_o @ Xs @ Ys2 ) )
      = ( append_o @ ( drop_o @ N @ Xs ) @ ( drop_o @ ( minus_minus_nat @ N @ ( size_size_list_o @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1186_drop__append,axiom,
    ! [N: nat,Xs: list_P4002435161011370285od_o_o,Ys2: list_P4002435161011370285od_o_o] :
      ( ( drop_P1195729285504171629od_o_o @ N @ ( append2614242729457001410od_o_o @ Xs @ Ys2 ) )
      = ( append2614242729457001410od_o_o @ ( drop_P1195729285504171629od_o_o @ N @ Xs ) @ ( drop_P1195729285504171629od_o_o @ ( minus_minus_nat @ N @ ( size_s1515746228057227161od_o_o @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1187_drop__append,axiom,
    ! [N: nat,Xs: list_P5575445741472356340od_t_o,Ys2: list_P5575445741472356340od_t_o] :
      ( ( drop_P3066774390924266292od_t_o @ N @ ( append2717171661090821641od_t_o @ Xs @ Ys2 ) )
      = ( append2717171661090821641od_t_o @ ( drop_P3066774390924266292od_t_o @ N @ Xs ) @ ( drop_P3066774390924266292od_t_o @ ( minus_minus_nat @ N @ ( size_s4106575409306904672od_t_o @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1188_drop__append,axiom,
    ! [N: nat,Xs: list_set_a,Ys2: list_set_a] :
      ( ( drop_set_a @ N @ ( append_set_a @ Xs @ Ys2 ) )
      = ( append_set_a @ ( drop_set_a @ N @ Xs ) @ ( drop_set_a @ ( minus_minus_nat @ N @ ( size_size_list_set_a @ Xs ) ) @ Ys2 ) ) ) ).

% drop_append
thf(fact_1189_drop__Nil,axiom,
    ! [N: nat] :
      ( ( drop_formula_a_t @ N @ nil_formula_a_t )
      = nil_formula_a_t ) ).

% drop_Nil
thf(fact_1190_drop__map,axiom,
    ! [N: nat,F: product_prod_t_set_a > t,Xs: list_P1095827921439705018_set_a] :
      ( ( drop_t @ N @ ( map_Pr119846518281778721et_a_t @ F @ Xs ) )
      = ( map_Pr119846518281778721et_a_t @ F @ ( drop_P283403782220237946_set_a @ N @ Xs ) ) ) ).

% drop_map
thf(fact_1191_drop__map,axiom,
    ! [N: nat,F: formula_a_t > vydra_aux_a_t_h,Xs: list_formula_a_t] :
      ( ( drop_vydra_aux_a_t_h @ N @ ( map_fo5746072578778194433_a_t_h @ F @ Xs ) )
      = ( map_fo5746072578778194433_a_t_h @ F @ ( drop_formula_a_t @ N @ Xs ) ) ) ).

% drop_map
thf(fact_1192_drop__map,axiom,
    ! [N: nat,F: formula_a_t > $o,Xs: list_formula_a_t] :
      ( ( drop_o @ N @ ( map_formula_a_t_o @ F @ Xs ) )
      = ( map_formula_a_t_o @ F @ ( drop_formula_a_t @ N @ Xs ) ) ) ).

% drop_map
thf(fact_1193_in__set__dropD,axiom,
    ! [X3: nat,N: nat,Xs: list_nat] :
      ( ( member_nat @ X3 @ ( set_nat2 @ ( drop_nat @ N @ Xs ) ) )
     => ( member_nat @ X3 @ ( set_nat2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_1194_in__set__dropD,axiom,
    ! [X3: a,N: nat,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ ( drop_a @ N @ Xs ) ) )
     => ( member_a @ X3 @ ( set_a2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_1195_in__set__dropD,axiom,
    ! [X3: product_prod_nat_nat,N: nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ X3 @ ( set_Pr5648618587558075414at_nat @ ( drop_P8868858903918902087at_nat @ N @ Xs ) ) )
     => ( member8440522571783428010at_nat @ X3 @ ( set_Pr5648618587558075414at_nat @ Xs ) ) ) ).

% in_set_dropD
thf(fact_1196_in__set__dropD,axiom,
    ! [X3: formula_a_t,N: nat,Xs: list_formula_a_t] :
      ( ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ ( drop_formula_a_t @ N @ Xs ) ) )
     => ( member_formula_a_t @ X3 @ ( set_formula_a_t2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_1197_in__set__dropD,axiom,
    ! [X3: t,N: nat,Xs: list_t] :
      ( ( member_t @ X3 @ ( set_t2 @ ( drop_t @ N @ Xs ) ) )
     => ( member_t @ X3 @ ( set_t2 @ Xs ) ) ) ).

% in_set_dropD
thf(fact_1198_set__drop__subset,axiom,
    ! [N: nat,Xs: list_t] : ( ord_less_eq_set_t @ ( set_t2 @ ( drop_t @ N @ Xs ) ) @ ( set_t2 @ Xs ) ) ).

% set_drop_subset
thf(fact_1199_v__def_I9_J,axiom,
    ! [T: t] :
      ( ( member_t @ T @ ( set_t2 @ es ) )
     => ( memR_t @ ( tau_a_t @ sigma @ ia ) @ T @ i ) ) ).

% v_def(9)
thf(fact_1200__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062back_Avphi_Avpsi_Afront_Ac_Az_Aes_Aes_H_Aj_O_A_092_060lbrakk_062v_A_061_AVYDRA__Until_AI_Aback_Avphi_Avpsi_Afront_Ac_Az_059_Awf__vydra_Aphi_Aj_An_Avphi_059_Awf__vydra_Apsi_Aj_An_Avpsi_059_Ai_A_092_060le_062_Aj_059_Areaches__on_Aru__t_Al__t0_Aes_Aback_059_Alength_Aes_A_061_Ai_059_Areaches__on_Aru__t_Al__t0_Aes_H_Afront_059_Alength_Aes_H_A_061_Aj_059_A_092_060And_062t_O_At_A_092_060in_062_Aset_Aes_H_A_092_060Longrightarrow_062_AmemR_A_I_092_060tau_062_A_092_060sigma_062_Ai_J_At_AI_059_Ac_A_061_Aj_A_N_Ai_059_Az_A_061_A_Icase_Aj_Aof_A0_A_092_060Rightarrow_062_ANone_A_124_ASuc_Ak_A_092_060Rightarrow_062_ASome_A_I_092_060tau_062_A_092_060sigma_062_Ak_M_Asat_Aphi_Ak_M_Asat_Apsi_Ak_J_J_059_A_092_060And_062k_O_Ak_A_092_060in_062_A_123i_O_O_060j_A_N_A1_125_A_092_060Longrightarrow_062_Asat_Aphi_Ak_A_092_060and_062_A_ImemL_A_I_092_060tau_062_A_092_060sigma_062_Ai_J_A_I_092_060tau_062_A_092_060sigma_062_Ak_J_AI_A_092_060longrightarrow_062_A_092_060not_062_Asat_Apsi_Ak_J_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
    ~ ! [Back: option2110264179601050681od_h_t,Vphi: vydra_aux_a_t_h,Vpsi: vydra_aux_a_t_h,Front: option2110264179601050681od_h_t,C: nat,Z2: option2536733916571057475od_o_o] :
        ( ( va
          = ( vydra_8322945071554601_t_h_a @ i @ Back @ Vphi @ Vpsi @ Front @ C @ Z2 ) )
       => ! [Es2: list_t,Es3: list_t,J2: nat] :
            ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ phi2 @ J2 @ na @ Vphi )
           => ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ psi @ J2 @ na @ Vpsi )
             => ( ( ord_less_eq_nat @ ia @ J2 )
               => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Es2 @ Back )
                 => ( ( ( size_size_list_t @ Es2 )
                      = ia )
                   => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Es3 @ Front )
                     => ( ( ( size_size_list_t @ Es3 )
                          = J2 )
                       => ( ! [T6: t] :
                              ( ( member_t @ T6 @ ( set_t2 @ Es3 ) )
                             => ( memR_t @ ( tau_a_t @ sigma @ ia ) @ T6 @ i ) )
                         => ( ( C
                              = ( minus_minus_nat @ J2 @ ia ) )
                           => ( ( Z2
                                = ( case_n943740417880565421od_o_o @ none_P2907379280119556574od_o_o
                                  @ ^ [K3: nat] : ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ ( tau_a_t @ sigma @ K3 ) @ ( product_Pair_o_o @ ( sat_a_t @ sigma @ phi2 @ K3 ) @ ( sat_a_t @ sigma @ psi @ K3 ) ) ) )
                                  @ J2 ) )
                             => ~ ! [K4: nat] :
                                    ( ( member_nat @ K4 @ ( set_or4665077453230672383an_nat @ ia @ ( minus_minus_nat @ J2 @ one_one_nat ) ) )
                                   => ( ( sat_a_t @ sigma @ phi2 @ K4 )
                                      & ( ( memL_t @ ( tau_a_t @ sigma @ ia ) @ ( tau_a_t @ sigma @ K4 ) @ i )
                                       => ~ ( sat_a_t @ sigma @ psi @ K4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% \<open>\<And>thesis. (\<And>back vphi vpsi front c z es es' j. \<lbrakk>v = VYDRA_Until I back vphi vpsi front c z; wf_vydra phi j n vphi; wf_vydra psi j n vpsi; i \<le> j; reaches_on ru_t l_t0 es back; length es = i; reaches_on ru_t l_t0 es' front; length es' = j; \<And>t. t \<in> set es' \<Longrightarrow> memR (\<tau> \<sigma> i) t I; c = j - i; z = (case j of 0 \<Rightarrow> None | Suc k \<Rightarrow> Some (\<tau> \<sigma> k, sat phi k, sat psi k)); \<And>k. k \<in> {i..<j - 1} \<Longrightarrow> sat phi k \<and> (memL (\<tau> \<sigma> i) (\<tau> \<sigma> k) I \<longrightarrow> \<not> sat psi k)\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_1201_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_1202_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_1203_v__def_I12_J,axiom,
    ! [K: nat] :
      ( ( member_nat @ K @ ( set_or4665077453230672383an_nat @ ia @ ( minus_minus_nat @ j @ one_one_nat ) ) )
     => ( ( sat_a_t @ sigma @ phi2 @ K )
        & ( ( memL_t @ ( tau_a_t @ sigma @ ia ) @ ( tau_a_t @ sigma @ K ) @ i )
         => ~ ( sat_a_t @ sigma @ psi @ K ) ) ) ) ).

% v_def(12)
thf(fact_1204_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_1205_wf__vydra_Ointros_I10_J,axiom,
    ! [Phi: formula_a_t,J: nat,N: nat,Vphi2: vydra_aux_a_t_h,Psi: formula_a_t,Vpsi2: vydra_aux_a_t_h,I: nat,Es: list_t,Back2: option2110264179601050681od_h_t,Es4: list_t,Front2: option2110264179601050681od_h_t,I5: i_t,C2: nat,Z4: option2536733916571057475od_o_o] :
      ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi @ J @ N @ Vphi2 )
     => ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Psi @ J @ N @ Vpsi2 )
       => ( ( ord_less_eq_nat @ I @ J )
         => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Es @ Back2 )
           => ( ( ( size_size_list_t @ Es )
                = I )
             => ( ( reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ Es4 @ Front2 )
               => ( ( ( size_size_list_t @ Es4 )
                    = J )
                 => ( ! [T5: t] :
                        ( ( member_t @ T5 @ ( set_t2 @ Es4 ) )
                       => ( memR_t @ ( tau_a_t @ sigma @ I ) @ T5 @ I5 ) )
                   => ( ( C2
                        = ( minus_minus_nat @ J @ I ) )
                     => ( ( Z4
                          = ( case_n943740417880565421od_o_o @ none_P2907379280119556574od_o_o
                            @ ^ [K3: nat] : ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ ( tau_a_t @ sigma @ K3 ) @ ( product_Pair_o_o @ ( sat_a_t @ sigma @ Phi @ K3 ) @ ( sat_a_t @ sigma @ Psi @ K3 ) ) ) )
                            @ J ) )
                       => ( ! [K2: nat] :
                              ( ( member_nat @ K2 @ ( set_or4665077453230672383an_nat @ I @ ( minus_minus_nat @ J @ one_one_nat ) ) )
                             => ( ( sat_a_t @ sigma @ Phi @ K2 )
                                & ( ( memL_t @ ( tau_a_t @ sigma @ I ) @ ( tau_a_t @ sigma @ K2 ) @ I5 )
                                 => ~ ( sat_a_t @ sigma @ Psi @ K2 ) ) ) )
                         => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( until_a_t @ Phi @ I5 @ Psi ) @ I @ ( suc @ N ) @ ( vydra_8322945071554601_t_h_a @ I5 @ Back2 @ Vphi2 @ Vpsi2 @ Front2 @ C2 @ Z4 ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% wf_vydra.intros(10)
thf(fact_1206_all__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M6: nat] :
            ( ( ord_less_nat @ M6 @ N )
           => ( P @ M6 ) ) )
      = ( ! [X7: nat] :
            ( ( member_nat @ X7 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
           => ( P @ X7 ) ) ) ) ).

% all_nat_less_eq
thf(fact_1207_ex__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M6: nat] :
            ( ( ord_less_nat @ M6 @ N )
            & ( P @ M6 ) ) )
      = ( ? [X7: nat] :
            ( ( member_nat @ X7 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
            & ( P @ X7 ) ) ) ) ).

% ex_nat_less_eq
thf(fact_1208_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_1209_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_1210_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N3: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N3 )
             => ( ( P @ N3 )
               => ( P @ ( suc @ N3 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_1211_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_1212_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_1213_bounded__Max__nat,axiom,
    ! [P: nat > $o,X3: nat,M7: nat] :
      ( ( P @ X3 )
     => ( ! [X: nat] :
            ( ( P @ X )
           => ( ord_less_eq_nat @ X @ M7 ) )
       => ~ ! [M4: nat] :
              ( ( P @ M4 )
             => ~ ! [X12: nat] :
                    ( ( P @ X12 )
                   => ( ord_less_eq_nat @ X12 @ M4 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_1214_wf__vydra_Ointros_I7_J,axiom,
    ! [Phi: formula_a_t,I: nat,N: nat,V: vydra_aux_a_t_h,Es: list_P1095827921439705018_set_a,Sub: h,I5: i_t] :
      ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi @ I @ N @ V )
     => ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Es @ Sub )
       => ( ( ( size_s5362121731612881446_set_a @ Es )
            = I )
         => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( prev_t_a @ I5 @ Phi ) @ I @ ( suc @ N )
            @ ( vydra_3189297434896079910_t_a_h @ I5 @ V @ Sub
              @ ( case_n7548220105206534174od_t_o @ none_P7032077165169035727od_t_o
                @ ^ [J3: nat] : ( some_P1805796590424124243od_t_o @ ( product_Pair_t_o @ ( tau_a_t @ sigma @ J3 ) @ ( sat_a_t @ sigma @ Phi @ J3 ) ) )
                @ I ) ) ) ) ) ) ).

% wf_vydra.intros(7)
thf(fact_1215_prod__decode__aux_Ocases,axiom,
    ! [X3: product_prod_nat_nat] :
      ~ ! [K2: nat,M4: nat] :
          ( X3
         != ( product_Pair_nat_nat @ K2 @ M4 ) ) ).

% prod_decode_aux.cases
thf(fact_1216_wf__vydra_Ointros_I1_J,axiom,
    ! [Phi: formula_a_t,I: nat,N: nat,W: vydra_aux_a_t_h,I5: i_t] :
      ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi @ I @ N @ W )
     => ( ( ( run_h_t_a @ run_hd @ N @ W )
          = none_P3452577240289636010od_t_o )
       => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( prev_t_a @ I5 @ Phi ) @ ( suc @ I ) @ ( suc @ N ) @ vydra_4195442553028166619_a_t_h ) ) ) ).

% wf_vydra.intros(1)
thf(fact_1217_sat_Osimps_I5_J,axiom,
    ! [I5: i_t,Phi2: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( prev_t_a @ I5 @ Phi2 ) @ I )
      = ( case_nat_o @ $false
        @ ^ [J3: nat] :
            ( ( mem_t @ ( tau_a_t @ sigma @ J3 ) @ ( tau_a_t @ sigma @ I ) @ I5 )
            & ( sat_a_t @ sigma @ Phi2 @ J3 ) )
        @ I ) ) ).

% sat.simps(5)
thf(fact_1218_wf__vydra_Ointros_I2_J,axiom,
    ! [Phi: formula_a_t,I: nat,N: nat,W: vydra_aux_a_t_h,I5: i_t] :
      ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi @ I @ N @ W )
     => ( ( ( run_h_t_a @ run_hd @ N @ W )
          = none_P3452577240289636010od_t_o )
       => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( next_t_a @ I5 @ Phi ) @ I @ ( suc @ N ) @ vydra_4195442553028166619_a_t_h ) ) ) ).

% wf_vydra.intros(2)
thf(fact_1219_sat_Osimps_I8_J,axiom,
    ! [Phi2: formula_a_t,I5: i_t,Psi2: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( until_a_t @ Phi2 @ I5 @ Psi2 ) @ I )
      = ( ? [J3: nat] :
            ( ( ord_less_eq_nat @ I @ J3 )
            & ( mem_t @ ( tau_a_t @ sigma @ I ) @ ( tau_a_t @ sigma @ J3 ) @ I5 )
            & ( sat_a_t @ sigma @ Psi2 @ J3 )
            & ! [X7: nat] :
                ( ( member_nat @ X7 @ ( set_or4665077453230672383an_nat @ I @ J3 ) )
               => ( sat_a_t @ sigma @ Phi2 @ X7 ) ) ) ) ) ).

% sat.simps(8)
thf(fact_1220_sat_Osimps_I6_J,axiom,
    ! [I5: i_t,Phi2: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( next_t_a @ I5 @ Phi2 ) @ I )
      = ( ( mem_t @ ( tau_a_t @ sigma @ I ) @ ( tau_a_t @ sigma @ ( suc @ I ) ) @ I5 )
        & ( sat_a_t @ sigma @ Phi2 @ ( suc @ I ) ) ) ) ).

% sat.simps(6)
thf(fact_1221_wf__vydra_Ointros_I8_J,axiom,
    ! [Phi: formula_a_t,I: nat,N: nat,V: vydra_aux_a_t_h,Es: list_P1095827921439705018_set_a,Sub: h,I5: i_t] :
      ( ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ Phi @ I @ N @ V )
     => ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Es @ Sub )
       => ( ( ( size_s5362121731612881446_set_a @ Es )
            = I )
         => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( next_t_a @ I5 @ Phi ) @ ( minus_minus_nat @ I @ one_one_nat ) @ ( suc @ N )
            @ ( vydra_5146114697169468038_t_a_h @ I5 @ V @ Sub
              @ ( case_nat_option_t @ none_t
                @ ^ [J3: nat] : ( some_t @ ( tau_a_t @ sigma @ J3 ) )
                @ I ) ) ) ) ) ) ).

% wf_vydra.intros(8)
thf(fact_1222_sat_Osimps_I2_J,axiom,
    ! [A: a,I: nat] :
      ( ( sat_a_t @ sigma @ ( atom_a_t @ A ) @ I )
      = ( member_a @ A @ ( gamma_a_t @ sigma @ I ) ) ) ).

% sat.simps(2)
thf(fact_1223_wf__vydra_Ointros_I4_J,axiom,
    ! [Es: list_P1095827921439705018_set_a,Sub: h,I: nat,A: a,N: nat] :
      ( ( reache3397181163414509427_set_a @ run_hd @ init_hd @ Es @ Sub )
     => ( ( ( size_s5362121731612881446_set_a @ Es )
          = I )
       => ( vYDRA_wf_vydra_a_t_h @ sigma @ init_hd @ run_hd @ ( atom_a_t @ A ) @ I @ N @ ( vydra_3724560892389469594_a_h_t @ A @ Sub ) ) ) ) ).

% wf_vydra.intros(4)
thf(fact_1224_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_1225_sat_Osimps_I10_J,axiom,
    ! [I5: i_t,R: regex_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( matchF_t_a @ I5 @ R ) @ I )
      = ( ? [J3: nat] :
            ( ( ord_less_eq_nat @ I @ J3 )
            & ( mem_t @ ( tau_a_t @ sigma @ I ) @ ( tau_a_t @ sigma @ J3 ) @ I5 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( suc @ J3 ) ) @ ( match_a_t @ sigma @ R ) ) ) ) ) ).

% sat.simps(10)
thf(fact_1226_sat_Osimps_I9_J,axiom,
    ! [I5: i_t,R: regex_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( matchP_t_a @ I5 @ R ) @ I )
      = ( ? [J3: nat] :
            ( ( ord_less_eq_nat @ J3 @ I )
            & ( mem_t @ ( tau_a_t @ sigma @ J3 ) @ ( tau_a_t @ sigma @ I ) @ I5 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ J3 @ ( suc @ I ) ) @ ( match_a_t @ sigma @ R ) ) ) ) ) ).

% sat.simps(9)
thf(fact_1227_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 ) ) )
       => ? [X: nat] :
            ( ( member_nat @ X @ ( set_or4665077453230672383an_nat @ I @ J ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ X ) @ ( match_a_t @ sigma @ ( star_a_t @ R ) ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ J ) @ ( match_a_t @ sigma @ R ) ) ) ) ) ).

% match_Star_unfold
thf(fact_1228_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_1229_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_1230_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_1231_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_1232_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_1233_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_1234_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_1235_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_1236_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_1237_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_1238_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_1239_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_1240_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_1241_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_1242_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_1243_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1
thf(fact_1244_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

% le_add2
thf(fact_1245_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_1246_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_1247_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N3: nat] :
          ( L
          = ( plus_plus_nat @ K @ N3 ) ) ) ).

% le_Suc_ex
thf(fact_1248_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_1249_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_1250_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_1251_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_1252_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M6: nat,N2: nat] :
        ? [K3: nat] :
          ( N2
          = ( plus_plus_nat @ M6 @ K3 ) ) ) ) ).

% nat_le_iff_add
thf(fact_1253_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_1254_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_1255_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_1256_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_1257_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_1258_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M4: nat,N3: nat] :
          ( ( ord_less_nat @ M4 @ N3 )
         => ( ord_less_nat @ ( F @ M4 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb

% Conjectures (3)
thf(conj_0,hypothesis,
    reache645946503560514460_h_t_t @ ( run_t_h_t_a @ run_hd ) @ ( t0_h_t_a @ init_hd @ run_hd ) @ gs @ g ).

thf(conj_1,hypothesis,
    ord_less_nat @ ( size_size_list_t @ gs ) @ ( size_s5362121731612881446_set_a @ vs ) ).

thf(conj_2,conjecture,
    ? [G2: option2110264179601050681od_h_t,Gt: t] :
      ( ( run_t_h_t_a @ run_hd @ g )
      = ( some_P8406129549712030756_h_t_t @ ( produc770200333395398319_h_t_t @ G2 @ Gt ) ) ) ).

%------------------------------------------------------------------------------