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

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1560 ( 739 unt; 288 typ;   0 def)
%            Number of atoms       : 3286 (1260 equ;   0 cnn)
%            Maximal formula atoms :   37 (   2 avg)
%            Number of connectives : 10896 ( 592   ~;  59   |; 216   &;8739   @)
%                                         (   0 <=>;1290  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   25 (   6 avg)
%            Number of types       :   54 (  53 usr)
%            Number of type conns  :  968 ( 968   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  238 ( 235 usr;  43 con; 0-9 aty)
%            Number of variables   : 4124 ( 183   ^;3878   !;  63   ?;4124   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 14:54:41.331
%------------------------------------------------------------------------------
% Could-be-implicit typings (53)
thf(ty_n_t__Product____Type__Oprod_It__MDL__Oregex_Itf__a_Mtf__t_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J_J_J_J,type,
    produc3632150455401421742la_a_t: $tType ).

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

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J_J_J,type,
    produc238307629227160457la_a_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__MDL__Oregex_Itf__a_Mtf__t_J_Mt__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J_J,type,
    produc703581975485706584la_a_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
    produc8373899037510109440at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc7248412053542808358at_nat: $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_It__Nat__Onat_Mt__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J_J,type,
    produc8388488633478513124la_a_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc5345460759119203031at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mtf__t_J,type,
    produc3003437026197574647_nat_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__MDL__Oformula_Itf__a_Mtf__t_J_Mt__List__Olist_Itf__t_J_J,type,
    produc3757808585008439209list_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Nat__Onat_J_Mt__Nat__Onat_J,type,
    produc4848289415462619345at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Option__Ooption_It__Nat__Onat_J_J,type,
    produc7186856083342543185on_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    produc1078910373471009876la_a_t: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__MDL__Oformula_Itf__a_Mtf__t_J_Mt__Nat__Onat_J,type,
    produc6285428564250921684_t_nat: $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__Product____Type__Oprod_Itf__t_Mt__Option__Ooption_It__Nat__Onat_J_J,type,
    produc875940232101828704on_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Nat__Onat_J_Mtf__t_J,type,
    produc83643860590634598_nat_t: $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__Interval__O__092__060I__062_It__Option__Ooption_It__Nat__Onat_J_J,type,
    i_option_nat: $tType ).

thf(ty_n_t__Option__Ooption_It__Option__Ooption_It__Nat__Onat_J_J,type,
    option_option_nat: $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__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__Product____Type__Oprod_Itf__t_Mt__Nat__Onat_J,type,
    product_prod_t_nat: $tType ).

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

thf(ty_n_t__Interval__O__092__060I__062_It__Nat__Onat_J,type,
    i_nat: $tType ).

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

thf(ty_n_t__List__Olist_It__List__Olist_I_Eo_J_J,type,
    list_list_o: $tType ).

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

thf(ty_n_t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    product_prod_o_o: $tType ).

thf(ty_n_t__List__Olist_It__NFA__Otransition_J,type,
    list_transition: $tType ).

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

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

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

thf(ty_n_t__MDL__Oregex_Itf__a_Mtf__t_J,type,
    regex_a_t: $tType ).

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

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

thf(ty_n_t__Option__Ooption_Itf__t_J,type,
    option_t: $tType ).

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

thf(ty_n_t__List__Olist_Itf__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__String__Ochar,type,
    char: $tType ).

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

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

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

% Explicit typings (235)
thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

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

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    minus_1356011639430497352at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

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

thf(sy_c_Groups_Oplus__class_Oplus_001t__Option__Ooption_It__Nat__Onat_J,type,
    plus_plus_option_nat: option_nat > option_nat > option_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    plus_p9057090461656269880at_nat: product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    plus_p6845766728538896175at_nat: produc7248412053542808358at_nat > produc7248412053542808358at_nat > produc7248412053542808358at_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    plus_p3828825139930085055_nat_t: product_prod_nat_t > product_prod_nat_t > product_prod_nat_t ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Nat__Onat_J,type,
    plus_p7971253712506197257at_nat: produc8373899037510109440at_nat > produc8373899037510109440at_nat > produc8373899037510109440at_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    plus_p4591053195553783070at_nat: produc859450856879609959at_nat > produc859450856879609959at_nat > produc859450856879609959at_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mtf__t_J,type,
    plus_p3817999869294131246_nat_t: produc3003437026197574647_nat_t > produc3003437026197574647_nat_t > produc3003437026197574647_nat_t ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_Itf__t_Mt__Nat__Onat_J,type,
    plus_p5617359770907004697_t_nat: product_prod_t_nat > product_prod_t_nat > product_prod_t_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    plus_p6160023602215759630at_nat: produc5345460759119203031at_nat > produc5345460759119203031at_nat > produc5345460759119203031at_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_Itf__t_Mtf__t_J,type,
    plus_p6936703069678264862od_t_t: product_prod_t_t > product_prod_t_t > product_prod_t_t ).

thf(sy_c_Groups_Oplus__class_Oplus_001tf__t,type,
    plus_plus_t: t > t > t ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Option__Ooption_It__Nat__Onat_J,type,
    zero_zero_option_nat: option_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Option__Ooption_It__Option__Ooption_It__Nat__Onat_J_J,type,
    zero_z2356438169786057465on_nat: option_option_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Option__Ooption_Itf__t_J,type,
    zero_zero_option_t: option_t ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    zero_z3979849011205770936at_nat: product_prod_nat_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Option__Ooption_It__Nat__Onat_J_J,type,
    zero_z5732948328235640968on_nat: produc7186856083342543185on_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    zero_z5600725813604797615at_nat: produc7248412053542808358at_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__t_J,type,
    zero_z2373507829110246463_nat_t: product_prod_nat_t ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Option__Ooption_It__Nat__Onat_J_Mt__Nat__Onat_J,type,
    zero_z3394381660355717128at_nat: produc4848289415462619345at_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Option__Ooption_It__Nat__Onat_J_Mtf__t_J,type,
    zero_z8314877242146744047_nat_t: produc83643860590634598_nat_t ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_Itf__t_Mt__Nat__Onat_J,type,
    zero_z4162042460087166105_t_nat: product_prod_t_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_Itf__t_Mt__Option__Ooption_It__Nat__Onat_J_J,type,
    zero_z9107173613657938153on_nat: produc875940232101828704on_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    zero_z3271199171317299598at_nat: produc5345460759119203031at_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_Itf__t_Mtf__t_J,type,
    zero_z8673436643597216926od_t_t: product_prod_t_t ).

thf(sy_c_Groups_Ozero__class_Ozero_001tf__t,type,
    zero_zero_t: t ).

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

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

thf(sy_c_Interval_OdropL_001t__Nat__Onat,type,
    dropL_nat: i_nat > i_nat ).

thf(sy_c_Interval_OdropL_001tf__t,type,
    dropL_t: i_t > i_t ).

thf(sy_c_Interval_OflipL_001t__Nat__Onat,type,
    flipL_nat: i_nat > i_nat ).

thf(sy_c_Interval_OflipL_001t__Option__Ooption_It__Nat__Onat_J,type,
    flipL_option_nat: i_option_nat > i_option_nat ).

thf(sy_c_Interval_OflipL_001tf__t,type,
    flipL_t: i_t > i_t ).

thf(sy_c_Interval_OmemL_001t__Nat__Onat,type,
    memL_nat: nat > nat > i_nat > $o ).

thf(sy_c_Interval_OmemL_001t__Option__Ooption_It__Nat__Onat_J,type,
    memL_option_nat: option_nat > option_nat > i_option_nat > $o ).

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

thf(sy_c_Interval_OmemR_001t__Nat__Onat,type,
    memR_nat: nat > nat > i_nat > $o ).

thf(sy_c_Interval_OmemR_001t__Option__Ooption_It__Nat__Onat_J,type,
    memR_option_nat: option_nat > option_nat > i_option_nat > $o ).

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

thf(sy_c_Interval_Omem_001t__Nat__Onat,type,
    mem_nat: nat > nat > i_nat > $o ).

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

thf(sy_c_Interval_Oright_001t__Nat__Onat,type,
    right_nat: i_nat > nat ).

thf(sy_c_Interval_Oright_001tf__t,type,
    right_t: i_t > t ).

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

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

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    sup_su6327502436637775413at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_Itf__t_J,type,
    sup_sup_set_t: set_t > set_t > set_t ).

thf(sy_c_List_Ocoset_001_Eo,type,
    coset_o: list_o > set_o ).

thf(sy_c_List_Ocoset_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    coset_formula_a_t: list_formula_a_t > set_formula_a_t ).

thf(sy_c_List_Ocoset_001t__Nat__Onat,type,
    coset_nat: list_nat > set_nat ).

thf(sy_c_List_Ocoset_001t__Product____Type__Oprod_I_Eo_M_Eo_J,type,
    coset_1028297114053069210od_o_o: list_P4002435161011370285od_o_o > set_Product_prod_o_o ).

thf(sy_c_List_Ocoset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    coset_6809516720700967924at_nat: list_P6011104703257516679at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_List_Ocoset_001tf__a,type,
    coset_a: list_a > set_a ).

thf(sy_c_List_Ocoset_001tf__t,type,
    coset_t: list_t > set_t ).

thf(sy_c_List_Ogen__length_001_Eo,type,
    gen_length_o: nat > list_o > nat ).

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

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

thf(sy_c_List_Ogen__length_001tf__a,type,
    gen_length_a: nat > list_a > nat ).

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

thf(sy_c_List_Olist_ONil_001_Eo,type,
    nil_o: list_o ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    nil_Pr5478986624290739719at_nat: list_P6011104703257516679at_nat ).

thf(sy_c_List_Olist_ONil_001tf__a,type,
    nil_a: list_a ).

thf(sy_c_List_Olist_ONil_001tf__t,type,
    nil_t: list_t ).

thf(sy_c_List_Olist_Oset_001_Eo,type,
    set_o2: list_o > set_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__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_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_Oremdups__adj_001_Eo,type,
    remdups_adj_o: list_o > list_o ).

thf(sy_c_List_Oremdups__adj_001t__Nat__Onat,type,
    remdups_adj_nat: list_nat > list_nat ).

thf(sy_c_List_Oremdups__adj_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    remdup844249387045036349at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Oremdups__adj_001tf__a,type,
    remdups_adj_a: list_a > list_a ).

thf(sy_c_List_Oremdups__adj_001tf__t,type,
    remdups_adj_t: list_t > list_t ).

thf(sy_c_List_Ounion_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    union_3235296681157640187at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).

thf(sy_c_List_Ounion_001tf__t,type,
    union_t: list_t > list_t > list_t ).

thf(sy_c_MDL_OAlways_001tf__t_001tf__a,type,
    always_t_a: i_t > formula_a_t > formula_a_t ).

thf(sy_c_MDL_OEventually_001tf__t_001tf__a,type,
    eventually_t_a: i_t > formula_a_t > formula_a_t ).

thf(sy_c_MDL_OHistorically_001tf__t_001tf__a,type,
    historically_t_a: i_t > formula_a_t > formula_a_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_OOnce_001tf__t_001tf__a,type,
    once_t_a: i_t > formula_a_t > formula_a_t ).

thf(sy_c_MDL_Oatms_001tf__a_001tf__t,type,
    atms_a_t: regex_a_t > set_formula_a_t ).

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_OBin_001tf__a_001tf__t,type,
    bin_a_t: ( $o > $o > $o ) > formula_a_t > formula_a_t > formula_a_t ).

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

thf(sy_c_MDL_Oformula_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_ONeg_001tf__a_001tf__t,type,
    neg_a_t: formula_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_OSince_001tf__a_001tf__t,type,
    since_a_t: formula_a_t > 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_Oformula_Orel__formula_001tf__a_001tf__a_001tf__t,type,
    rel_formula_a_a_t: ( a > a > $o ) > formula_a_t > formula_a_t > $o ).

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

thf(sy_c_MDL_Oregex_OLookahead_001tf__a_001tf__t,type,
    lookahead_a_t: formula_a_t > regex_a_t ).

thf(sy_c_MDL_Oregex_OPlus_001tf__a_001tf__t,type,
    plus_a_t: regex_a_t > regex_a_t > regex_a_t ).

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

thf(sy_c_MDL_Oregex_OSymbol_001tf__a_001tf__t,type,
    symbol_a_t: formula_a_t > regex_a_t ).

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

thf(sy_c_MDL_Oregex_Orel__regex_001tf__a_001tf__a_001tf__t,type,
    rel_regex_a_a_t: ( a > a > $o ) > regex_a_t > regex_a_t > $o ).

thf(sy_c_MDL_Owf__fmla_001tf__a_001tf__t,type,
    wf_fmla_a_t: formula_a_t > $o ).

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

thf(sy_c_Monitor_Omsize__fmla_001tf__a_001tf__t,type,
    msize_fmla_a_t: formula_a_t > nat ).

thf(sy_c_NFA_Oaccept,type,
    accept: nat > nat > list_transition > set_nat > $o ).

thf(sy_c_NFA_Oaccept__eps,type,
    accept_eps: nat > nat > list_transition > set_nat > list_o > $o ).

thf(sy_c_NFA_Ostep__eps__closure,type,
    step_eps_closure: nat > list_transition > list_o > nat > nat > $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_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__Nat__Onat_J,type,
    size_size_list_nat: list_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    size_s5460976970255530739at_nat: list_P6011104703257516679at_nat > 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__Nat__Onat_J,type,
    size_size_option_nat: option_nat > 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__String__Ochar,type,
    size_size_char: char > nat ).

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

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

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

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

thf(sy_c_Option_Ooption_OSome_001t__Option__Ooption_It__Nat__Onat_J,type,
    some_option_nat: option_nat > option_option_nat ).

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_001tf__t,type,
    some_t: t > option_t ).

thf(sy_c_Option_Ooption_Osize__option_001t__Nat__Onat,type,
    size_option_nat: ( nat > nat ) > option_nat > nat ).

thf(sy_c_Option_Ooption_Osize__option_001t__Product____Type__Oprod_Itf__t_Mt__Product____Type__Oprod_I_Eo_M_Eo_J_J,type,
    size_o8441744552813530912od_o_o: ( produc4127598065228779901od_o_o > nat ) > option2536733916571057475od_o_o > nat ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_It__Nat__Onat_M_Eo_J,type,
    ord_less_nat_o: ( nat > $o ) > ( nat > $o ) > $o ).

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_062_It__Nat__Onat_M_Eo_J_Mt__Nat__Onat_J,type,
    ord_le1440161272000278354_o_nat: produc3074792404157404414_o_nat > produc3074792404157404414_o_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_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__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    ord_le7866589430770878221at_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > $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_062_It__MDL__Oformula_Itf__a_Mtf__t_J_M_062_It__MDL__Oformula_Itf__a_Mtf__t_J_M_Eo_J_J,type,
    ord_le4283549061549582176_a_t_o: ( formula_a_t > formula_a_t > $o ) > ( formula_a_t > formula_a_t > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__MDL__Oregex_Itf__a_Mtf__t_J_M_062_It__MDL__Oregex_Itf__a_Mtf__t_J_M_Eo_J_J,type,
    ord_le4639910931513490590_a_t_o: ( regex_a_t > regex_a_t > $o ) > ( regex_a_t > regex_a_t > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_It__Nat__Onat_M_Eo_J,type,
    ord_less_eq_nat_o: ( nat > $o ) > ( nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_Itf__a_M_062_Itf__a_M_Eo_J_J,type,
    ord_less_eq_a_a_o: ( a > a > $o ) > ( a > a > $o ) > $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_062_It__Nat__Onat_M_Eo_J_Mt__Nat__Onat_J,type,
    ord_le1595970101268698462_o_nat: produc3074792404157404414_o_nat > produc3074792404157404414_o_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_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__Set__Oset_I_Eo_J,type,
    ord_less_eq_set_o: set_o > set_o > $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_I_Eo_M_Eo_J_J,type,
    ord_le192195778054999463od_o_o: set_Product_prod_o_o > set_Product_prod_o_o > $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__MDL__Oformula_Itf__a_Mtf__t_J_001t__List__Olist_Itf__t_J,type,
    produc8618728406956180955list_t: formula_a_t > list_t > produc3757808585008439209list_t ).

thf(sy_c_Product__Type_OPair_001t__MDL__Oformula_Itf__a_Mtf__t_J_001t__Nat__Onat,type,
    produc373174216379635980_t_nat: formula_a_t > nat > produc6285428564250921684_t_nat ).

thf(sy_c_Product__Type_OPair_001t__MDL__Oregex_Itf__a_Mtf__t_J_001t__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    produc5661418841318945808la_a_t: regex_a_t > list_formula_a_t > produc703581975485706584la_a_t ).

thf(sy_c_Product__Type_OPair_001t__MDL__Oregex_Itf__a_Mtf__t_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J_J_J,type,
    produc7399166869623548134la_a_t: regex_a_t > produc238307629227160457la_a_t > produc3632150455401421742la_a_t ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J,type,
    produc9017461973804568604la_a_t: nat > list_formula_a_t > produc8388488633478513124la_a_t ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__MDL__Oformula_Itf__a_Mtf__t_J,type,
    produc2953812259323318284la_a_t: nat > formula_a_t > produc1078910373471009876la_a_t ).

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

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Option__Ooption_It__Nat__Onat_J,type,
    produc2023603510366521865on_nat: nat > option_nat > produc7186856083342543185on_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__List__Olist_It__MDL__Oformula_Itf__a_Mtf__t_J_J_J,type,
    produc8654416511292156347la_a_t: nat > produc8388488633478513124la_a_t > produc238307629227160457la_a_t ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc487386426758144856at_nat: nat > product_prod_nat_nat > produc7248412053542808358at_nat ).

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

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Nat__Onat_J_001t__Nat__Onat,type,
    produc5944166176642631561at_nat: option_nat > nat > produc4848289415462619345at_nat ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Nat__Onat_J_001tf__t,type,
    produc1182958754876222360_nat_t: option_nat > t > produc83643860590634598_nat_t ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat,type,
    produc6350711070570205562at_nat: product_prod_nat_nat > nat > produc8373899037510109440at_nat ).

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

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001tf__t,type,
    produc712563270363020263_nat_t: product_prod_nat_nat > t > produc3003437026197574647_nat_t ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Nat__Onat,type,
    product_Pair_t_nat: t > nat > product_prod_t_nat ).

thf(sy_c_Product__Type_OPair_001tf__t_001t__Option__Ooption_It__Nat__Onat_J,type,
    produc4145729873392896474on_nat: t > option_nat > produc875940232101828704on_nat ).

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_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc6746353424601402567at_nat: t > product_prod_nat_nat > produc5345460759119203031at_nat ).

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

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

thf(sy_c_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_I_Eo_M_Eo_J,type,
    collec3167064739498627218od_o_o: ( product_prod_o_o > $o ) > set_Product_prod_o_o ).

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_Set__Interval_Oord__class_OatLeastLessThan_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    set_or2842531625620587538at_nat: product_prod_nat_nat > product_prod_nat_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001tf__t,type,
    set_or5139330845457685154Than_t: t > t > set_t ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Nat__Onat,type,
    set_or6659071591806873216st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    set_or6204648988538903121at_nat: product_prod_nat_nat > product_prod_nat_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001tf__t,type,
    set_or4472690218693186657Most_t: t > t > set_t ).

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

thf(sy_c_Temporal_OMDL_OIH_001tf__a_001tf__t,type,
    iH_a_t: trace_a_t > regex_a_t > nat > nat > list_formula_a_t > list_transition > list_list_o > list_o > nat > $o ).

thf(sy_c_Timestamp_Oembed__nat__class_O_092_060iota_062_001t__Nat__Onat,type,
    embed_nat_iota_nat: nat > nat ).

thf(sy_c_Timestamp_Oembed__nat__class_O_092_060iota_062_001tf__t,type,
    embed_nat_iota_t: nat > 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_Transitive__Closure_Ortrancl_001_Eo,type,
    transitive_rtrancl_o: set_Product_prod_o_o > set_Product_prod_o_o ).

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

thf(sy_c_member_001_Eo,type,
    member_o: $o > set_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__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_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_ba____,type,
    ba: $o ).

thf(sy_v_c_H____,type,
    c: nat ).

thf(sy_v_c____,type,
    c2: nat ).

thf(sy_v_es_H____,type,
    es: list_t ).

thf(sy_v_es____,type,
    es2: list_t ).

thf(sy_v_ia____,type,
    ia: nat ).

thf(sy_v_j_H____,type,
    j: nat ).

thf(sy_v_j____,type,
    j2: 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_ta____,type,
    ta: t ).

thf(sy_v_zb1____,type,
    zb1: $o ).

thf(sy_v_zb2____,type,
    zb2: $o ).

thf(sy_v_zo_H____,type,
    zo: option2536733916571057475od_o_o ).

thf(sy_v_zt____,type,
    zt: t ).

% Relevant facts (1266)
thf(fact_0_v__def_I6_J,axiom,
    ( ( size_size_list_t @ es2 )
    = ia ) ).

% v_def(6)
thf(fact_1_v__def_I4_J,axiom,
    ord_less_eq_nat @ ia @ j2 ).

% v_def(4)
thf(fact_2_v__def_I10_J,axiom,
    ( c2
    = ( minus_minus_nat @ j2 @ ia ) ) ).

% v_def(10)
thf(fact_3_j_H__def,axiom,
    ( j
    = ( plus_plus_nat @ ia @ c ) ) ).

% j'_def
thf(fact_4_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_5_j__eq,axiom,
    ( j2
    = ( plus_plus_nat @ ia @ c2 ) ) ).

% j_eq
thf(fact_6_b__def,axiom,
    ( ba
    = ( zb2
      & ( memL_t @ ta @ zt @ i ) ) ) ).

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

% sat.simps(3)
thf(fact_8_c_H__pos,axiom,
    c != zero_zero_nat ).

% c'_pos
thf(fact_9_sat_Osimps_I1_J,axiom,
    ! [B: $o,I: nat] :
      ( ( sat_a_t @ sigma @ ( bool_a_t @ B ) @ I )
      = B ) ).

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

% sat.simps(4)
thf(fact_11_accept__eps__iff__accept,axiom,
    ! [R: regex_a_t,Q0: nat,Qf: nat,Phis: list_formula_a_t,Transs: list_transition,Bss: list_list_o,Bs: list_o,I: nat,R2: set_nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( iH_a_t @ sigma @ R @ Q0 @ Qf @ Phis @ Transs @ Bss @ Bs @ I )
       => ( ( accept_eps @ Q0 @ Qf @ Transs @ R2 @ Bs )
          = ( accept @ Q0 @ Qf @ Transs @ R2 ) ) ) ) ).

% accept_eps_iff_accept
thf(fact_12_v__def_I8_J,axiom,
    ( ( size_size_list_t @ es )
    = j2 ) ).

% v_def(8)
thf(fact_13_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_14_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_15_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_16_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_17_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_18_diff__add__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_19_le__add__diff__inverse,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_20_le__add__diff__inverse2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ A @ B ) @ B )
        = A ) ) ).

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

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

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

% le_add_same_cancel1
thf(fact_24_add__right__cancel,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_25_add__left__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
      = ( B = C ) ) ).

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

% le_zero_eq
thf(fact_27_add__le__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

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

% add_le_cancel_left
thf(fact_29_add__0,axiom,
    ! [A: t] :
      ( ( plus_plus_t @ zero_zero_t @ A )
      = A ) ).

% add_0
thf(fact_30_add__0,axiom,
    ! [A: product_prod_nat_nat] :
      ( ( plus_p9057090461656269880at_nat @ zero_z3979849011205770936at_nat @ A )
      = A ) ).

% add_0
thf(fact_31_add__0,axiom,
    ! [A: option_nat] :
      ( ( plus_plus_option_nat @ zero_zero_option_nat @ A )
      = A ) ).

% add_0
thf(fact_32_add__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

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

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

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

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

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

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

% add_cancel_left_left
thf(fact_39_add_Oright__neutral,axiom,
    ! [A: t] :
      ( ( plus_plus_t @ A @ zero_zero_t )
      = A ) ).

% add.right_neutral
thf(fact_40_add_Oright__neutral,axiom,
    ! [A: product_prod_nat_nat] :
      ( ( plus_p9057090461656269880at_nat @ A @ zero_z3979849011205770936at_nat )
      = A ) ).

% add.right_neutral
thf(fact_41_add_Oright__neutral,axiom,
    ! [A: option_nat] :
      ( ( plus_plus_option_nat @ A @ zero_zero_option_nat )
      = A ) ).

% add.right_neutral
thf(fact_42_add_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.right_neutral
thf(fact_43_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_44_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

% diff_zero
thf(fact_45_zero__diff,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_46_mem__Collect__eq,axiom,
    ! [A: product_prod_o_o,P: product_prod_o_o > $o] :
      ( ( member7466972457876170832od_o_o @ A @ ( collec3167064739498627218od_o_o @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_47_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_48_mem__Collect__eq,axiom,
    ! [A: t,P: t > $o] :
      ( ( member_t @ A @ ( collect_t @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_49_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_50_mem__Collect__eq,axiom,
    ! [A: a,P: a > $o] :
      ( ( member_a @ A @ ( collect_a @ P ) )
      = ( P @ A ) ) ).

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

% mem_Collect_eq
thf(fact_52_Collect__mem__eq,axiom,
    ! [A2: set_Product_prod_o_o] :
      ( ( collec3167064739498627218od_o_o
        @ ^ [X2: product_prod_o_o] : ( member7466972457876170832od_o_o @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_53_Collect__mem__eq,axiom,
    ! [A2: set_formula_a_t] :
      ( ( collect_formula_a_t
        @ ^ [X2: formula_a_t] : ( member_formula_a_t @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_54_Collect__mem__eq,axiom,
    ! [A2: set_t] :
      ( ( collect_t
        @ ^ [X2: t] : ( member_t @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_55_Collect__mem__eq,axiom,
    ! [A2: set_Pr1261947904930325089at_nat] :
      ( ( collec3392354462482085612at_nat
        @ ^ [X2: product_prod_nat_nat] : ( member8440522571783428010at_nat @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_56_Collect__mem__eq,axiom,
    ! [A2: set_a] :
      ( ( collect_a
        @ ^ [X2: a] : ( member_a @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_57_Collect__mem__eq,axiom,
    ! [A2: set_nat] :
      ( ( collect_nat
        @ ^ [X2: nat] : ( member_nat @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_58_Collect__cong,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ! [X3: nat] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_nat @ P )
        = ( collect_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_59_Collect__cong,axiom,
    ! [P: a > $o,Q: a > $o] :
      ( ! [X3: a] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_a @ P )
        = ( collect_a @ Q ) ) ) ).

% Collect_cong
thf(fact_60_Collect__cong,axiom,
    ! [P: product_prod_nat_nat > $o,Q: product_prod_nat_nat > $o] :
      ( ! [X3: product_prod_nat_nat] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collec3392354462482085612at_nat @ P )
        = ( collec3392354462482085612at_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_61_Collect__cong,axiom,
    ! [P: t > $o,Q: t > $o] :
      ( ! [X3: t] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_t @ P )
        = ( collect_t @ Q ) ) ) ).

% Collect_cong
thf(fact_62_add__diff__cancel__right_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_63_add__diff__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_64_add__diff__cancel__left_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_65_add__diff__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( minus_minus_nat @ A @ B ) ) ).

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

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

% bot_nat_0.extremum
thf(fact_68_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_69_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_70_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_71_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_72_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_73_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_74_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_75_le__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel2
thf(fact_76_zero__reorient,axiom,
    ! [X: t] :
      ( ( zero_zero_t = X )
      = ( X = zero_zero_t ) ) ).

% zero_reorient
thf(fact_77_zero__reorient,axiom,
    ! [X: product_prod_nat_nat] :
      ( ( zero_z3979849011205770936at_nat = X )
      = ( X = zero_z3979849011205770936at_nat ) ) ).

% zero_reorient
thf(fact_78_zero__reorient,axiom,
    ! [X: option_nat] :
      ( ( zero_zero_option_nat = X )
      = ( X = zero_zero_option_nat ) ) ).

% zero_reorient
thf(fact_79_zero__reorient,axiom,
    ! [X: nat] :
      ( ( zero_zero_nat = X )
      = ( X = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_80_add__right__imp__eq,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_81_add__left__imp__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_82_add_Oleft__commute,axiom,
    ! [B: t,A: t,C: t] :
      ( ( plus_plus_t @ B @ ( plus_plus_t @ A @ C ) )
      = ( plus_plus_t @ A @ ( plus_plus_t @ B @ C ) ) ) ).

% add.left_commute
thf(fact_83_add_Oleft__commute,axiom,
    ! [B: product_prod_nat_nat,A: product_prod_nat_nat,C: product_prod_nat_nat] :
      ( ( plus_p9057090461656269880at_nat @ B @ ( plus_p9057090461656269880at_nat @ A @ C ) )
      = ( plus_p9057090461656269880at_nat @ A @ ( plus_p9057090461656269880at_nat @ B @ C ) ) ) ).

% add.left_commute
thf(fact_84_add_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.left_commute
thf(fact_85_add_Ocommute,axiom,
    ( plus_plus_t
    = ( ^ [A3: t,B2: t] : ( plus_plus_t @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_86_add_Ocommute,axiom,
    ( plus_p9057090461656269880at_nat
    = ( ^ [A3: product_prod_nat_nat,B2: product_prod_nat_nat] : ( plus_p9057090461656269880at_nat @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_87_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A3: nat,B2: nat] : ( plus_plus_nat @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_88_add_Oassoc,axiom,
    ! [A: t,B: t,C: t] :
      ( ( plus_plus_t @ ( plus_plus_t @ A @ B ) @ C )
      = ( plus_plus_t @ A @ ( plus_plus_t @ B @ C ) ) ) ).

% add.assoc
thf(fact_89_add_Oassoc,axiom,
    ! [A: product_prod_nat_nat,B: product_prod_nat_nat,C: product_prod_nat_nat] :
      ( ( plus_p9057090461656269880at_nat @ ( plus_p9057090461656269880at_nat @ A @ B ) @ C )
      = ( plus_p9057090461656269880at_nat @ A @ ( plus_p9057090461656269880at_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_90_add_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_91_group__cancel_Oadd2,axiom,
    ! [B3: t,K: t,B: t,A: t] :
      ( ( B3
        = ( plus_plus_t @ K @ B ) )
     => ( ( plus_plus_t @ A @ B3 )
        = ( plus_plus_t @ K @ ( plus_plus_t @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_92_group__cancel_Oadd2,axiom,
    ! [B3: product_prod_nat_nat,K: product_prod_nat_nat,B: product_prod_nat_nat,A: product_prod_nat_nat] :
      ( ( B3
        = ( plus_p9057090461656269880at_nat @ K @ B ) )
     => ( ( plus_p9057090461656269880at_nat @ A @ B3 )
        = ( plus_p9057090461656269880at_nat @ K @ ( plus_p9057090461656269880at_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_93_group__cancel_Oadd2,axiom,
    ! [B3: nat,K: nat,B: nat,A: nat] :
      ( ( B3
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B3 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_94_group__cancel_Oadd1,axiom,
    ! [A2: t,K: t,A: t,B: t] :
      ( ( A2
        = ( plus_plus_t @ K @ A ) )
     => ( ( plus_plus_t @ A2 @ B )
        = ( plus_plus_t @ K @ ( plus_plus_t @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_95_group__cancel_Oadd1,axiom,
    ! [A2: product_prod_nat_nat,K: product_prod_nat_nat,A: product_prod_nat_nat,B: product_prod_nat_nat] :
      ( ( A2
        = ( plus_p9057090461656269880at_nat @ K @ A ) )
     => ( ( plus_p9057090461656269880at_nat @ A2 @ B )
        = ( plus_p9057090461656269880at_nat @ K @ ( plus_p9057090461656269880at_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_96_group__cancel_Oadd1,axiom,
    ! [A2: nat,K: nat,A: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ K @ A ) )
     => ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_97_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_98_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: t,B: t,C: t] :
      ( ( plus_plus_t @ ( plus_plus_t @ A @ B ) @ C )
      = ( plus_plus_t @ A @ ( plus_plus_t @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_99_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: product_prod_nat_nat,B: product_prod_nat_nat,C: product_prod_nat_nat] :
      ( ( plus_p9057090461656269880at_nat @ ( plus_p9057090461656269880at_nat @ A @ B ) @ C )
      = ( plus_p9057090461656269880at_nat @ A @ ( plus_p9057090461656269880at_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_100_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_101_diff__right__commute,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_102_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ? [X3: nat] :
            ( ( P @ X3 )
            & ! [Y3: nat] :
                ( ( P @ Y3 )
               => ( ord_less_eq_nat @ Y3 @ X3 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_103_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_104_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_105_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_106_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_107_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_108_size__neq__size__imp__neq,axiom,
    ! [X: regex_a_t,Y: regex_a_t] :
      ( ( ( size_size_regex_a_t @ X )
       != ( size_size_regex_a_t @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_109_size__neq__size__imp__neq,axiom,
    ! [X: list_P6011104703257516679at_nat,Y: list_P6011104703257516679at_nat] :
      ( ( ( size_s5460976970255530739at_nat @ X )
       != ( size_s5460976970255530739at_nat @ Y ) )
     => ( X != Y ) ) ).

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

% size_neq_size_imp_neq
thf(fact_111_size__neq__size__imp__neq,axiom,
    ! [X: list_nat,Y: list_nat] :
      ( ( ( size_size_list_nat @ X )
       != ( size_size_list_nat @ Y ) )
     => ( X != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_112_size__neq__size__imp__neq,axiom,
    ! [X: list_a,Y: list_a] :
      ( ( ( size_size_list_a @ X )
       != ( size_size_list_a @ Y ) )
     => ( X != Y ) ) ).

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

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

% size_neq_size_imp_neq
thf(fact_115_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_116_zero__le,axiom,
    ! [X: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X ) ).

% zero_le
thf(fact_117_add__le__imp__le__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

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

% add_le_imp_le_left
thf(fact_119_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B2: nat] :
        ? [C2: nat] :
          ( B2
          = ( plus_plus_nat @ A3 @ C2 ) ) ) ) ).

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

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

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

% add_left_mono
thf(fact_123_ordered__ab__semigroup__add__class_Oadd__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% ordered_ab_semigroup_add_class.add_mono
thf(fact_124_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_125_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_126_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_127_add_Ocomm__neutral,axiom,
    ! [A: t] :
      ( ( plus_plus_t @ A @ zero_zero_t )
      = A ) ).

% add.comm_neutral
thf(fact_128_add_Ocomm__neutral,axiom,
    ! [A: product_prod_nat_nat] :
      ( ( plus_p9057090461656269880at_nat @ A @ zero_z3979849011205770936at_nat )
      = A ) ).

% add.comm_neutral
thf(fact_129_add_Ocomm__neutral,axiom,
    ! [A: option_nat] :
      ( ( plus_plus_option_nat @ A @ zero_zero_option_nat )
      = A ) ).

% add.comm_neutral
thf(fact_130_add_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.comm_neutral
thf(fact_131_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: t] :
      ( ( plus_plus_t @ zero_zero_t @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_132_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: product_prod_nat_nat] :
      ( ( plus_p9057090461656269880at_nat @ zero_z3979849011205770936at_nat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_133_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: option_nat] :
      ( ( plus_plus_option_nat @ zero_zero_option_nat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_134_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_135_diff__diff__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
      = ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_136_add__implies__diff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ( plus_plus_nat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_nat @ A @ B ) ) ) ).

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

% le_0_eq
thf(fact_138_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_139_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_140_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_141_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_142_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_143_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_144_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_145_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M2: nat,N2: nat] :
        ? [K2: nat] :
          ( N2
          = ( plus_plus_nat @ M2 @ K2 ) ) ) ) ).

% nat_le_iff_add
thf(fact_146_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_147_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_148_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_149_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_150_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_151_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_152_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_153_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

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

% le_add1
thf(fact_155_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_156_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_157_le__diff__iff_H,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C @ A ) @ ( minus_minus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_158_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_159_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_160_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_161_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_162_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_163_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_164_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_165_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_166_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_167_add__nonpos__eq__0__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X @ Y )
            = zero_zero_nat )
          = ( ( X = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_168_add__nonneg__eq__0__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y )
       => ( ( ( plus_plus_nat @ X @ Y )
            = zero_zero_nat )
          = ( ( X = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

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

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

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

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

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

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

% add_decreasing
thf(fact_175_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ( ( minus_minus_nat @ B @ A )
            = C )
          = ( B
            = ( plus_plus_nat @ C @ A ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_176_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ A @ ( minus_minus_nat @ B @ A ) )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_177_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_diff_right
thf(fact_178_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A )
        = ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_179_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C )
        = ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_180_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A )
        = ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_181_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_182_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_183_le__add__diff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ C @ ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% le_add_diff
thf(fact_184_add__le__add__imp__diff__le,axiom,
    ! [I: nat,K: nat,N: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_185_diff__add,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ A )
        = B ) ) ).

% diff_add
thf(fact_186_add__le__imp__le__diff,axiom,
    ! [I: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ord_less_eq_nat @ I @ ( minus_minus_nat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_187_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_188_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_189_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_190_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_191_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_192_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_193_MDL_Oaccept__eps__iff__accept,axiom,
    ! [R: regex_a_t,Sigma: trace_a_t,Q0: nat,Qf: nat,Phis: list_formula_a_t,Transs: list_transition,Bss: list_list_o,Bs: list_o,I: nat,R2: set_nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( iH_a_t @ Sigma @ R @ Q0 @ Qf @ Phis @ Transs @ Bss @ Bs @ I )
       => ( ( accept_eps @ Q0 @ Qf @ Transs @ R2 @ Bs )
          = ( accept @ Q0 @ Qf @ Transs @ R2 ) ) ) ) ).

% MDL.accept_eps_iff_accept
thf(fact_194__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_195_formula_Oinject_I1_J,axiom,
    ! [X1: $o,Y1: $o] :
      ( ( ( bool_a_t @ X1 )
        = ( bool_a_t @ Y1 ) )
      = ( X1 = Y1 ) ) ).

% formula.inject(1)
thf(fact_196_formula_Oinject_I3_J,axiom,
    ! [X32: formula_a_t,Y32: formula_a_t] :
      ( ( ( neg_a_t @ X32 )
        = ( neg_a_t @ Y32 ) )
      = ( X32 = Y32 ) ) ).

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

% formula.inject(4)
thf(fact_198_dual__order_Orefl,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% dual_order.refl
thf(fact_199_dual__order_Orefl,axiom,
    ! [A: set_t] : ( ord_less_eq_set_t @ A @ A ) ).

% dual_order.refl
thf(fact_200_dual__order_Orefl,axiom,
    ! [A: set_a] : ( ord_less_eq_set_a @ A @ A ) ).

% dual_order.refl
thf(fact_201_dual__order_Orefl,axiom,
    ! [A: nat > $o] : ( ord_less_eq_nat_o @ A @ A ) ).

% dual_order.refl
thf(fact_202_dual__order_Orefl,axiom,
    ! [A: t] : ( ord_less_eq_t @ A @ A ) ).

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

% dual_order.refl
thf(fact_204_order__refl,axiom,
    ! [X: set_nat] : ( ord_less_eq_set_nat @ X @ X ) ).

% order_refl
thf(fact_205_order__refl,axiom,
    ! [X: set_t] : ( ord_less_eq_set_t @ X @ X ) ).

% order_refl
thf(fact_206_order__refl,axiom,
    ! [X: set_a] : ( ord_less_eq_set_a @ X @ X ) ).

% order_refl
thf(fact_207_order__refl,axiom,
    ! [X: nat > $o] : ( ord_less_eq_nat_o @ X @ X ) ).

% order_refl
thf(fact_208_order__refl,axiom,
    ! [X: t] : ( ord_less_eq_t @ X @ X ) ).

% order_refl
thf(fact_209_order__refl,axiom,
    ! [X: nat] : ( ord_less_eq_nat @ X @ X ) ).

% order_refl
thf(fact_210_formula_Odistinct_I3_J,axiom,
    ! [X1: $o,X32: formula_a_t] :
      ( ( bool_a_t @ X1 )
     != ( neg_a_t @ X32 ) ) ).

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

% formula.distinct(5)
thf(fact_212_regex_Osize__neq,axiom,
    ! [X: regex_a_t] :
      ( ( size_size_regex_a_t @ X )
     != zero_zero_nat ) ).

% regex.size_neq
thf(fact_213_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_214_le__cases3,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ( ord_less_eq_nat @ X @ Y )
       => ~ ( ord_less_eq_nat @ Y @ Z ) )
     => ( ( ( ord_less_eq_nat @ Y @ X )
         => ~ ( ord_less_eq_nat @ X @ Z ) )
       => ( ( ( ord_less_eq_nat @ X @ Z )
           => ~ ( ord_less_eq_nat @ Z @ Y ) )
         => ( ( ( ord_less_eq_nat @ Z @ Y )
             => ~ ( ord_less_eq_nat @ Y @ X ) )
           => ( ( ( ord_less_eq_nat @ Y @ Z )
               => ~ ( ord_less_eq_nat @ Z @ X ) )
             => ~ ( ( ord_less_eq_nat @ Z @ X )
                 => ~ ( ord_less_eq_nat @ X @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_215_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z2: set_nat] : ( Y4 = Z2 ) )
    = ( ^ [X2: set_nat,Y5: set_nat] :
          ( ( ord_less_eq_set_nat @ X2 @ Y5 )
          & ( ord_less_eq_set_nat @ Y5 @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_216_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_t,Z2: set_t] : ( Y4 = Z2 ) )
    = ( ^ [X2: set_t,Y5: set_t] :
          ( ( ord_less_eq_set_t @ X2 @ Y5 )
          & ( ord_less_eq_set_t @ Y5 @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_217_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_a,Z2: set_a] : ( Y4 = Z2 ) )
    = ( ^ [X2: set_a,Y5: set_a] :
          ( ( ord_less_eq_set_a @ X2 @ Y5 )
          & ( ord_less_eq_set_a @ Y5 @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_218_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat > $o,Z2: nat > $o] : ( Y4 = Z2 ) )
    = ( ^ [X2: nat > $o,Y5: nat > $o] :
          ( ( ord_less_eq_nat_o @ X2 @ Y5 )
          & ( ord_less_eq_nat_o @ Y5 @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_219_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: t,Z2: t] : ( Y4 = Z2 ) )
    = ( ^ [X2: t,Y5: t] :
          ( ( ord_less_eq_t @ X2 @ Y5 )
          & ( ord_less_eq_t @ Y5 @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_220_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z2: nat] : ( Y4 = Z2 ) )
    = ( ^ [X2: nat,Y5: nat] :
          ( ( ord_less_eq_nat @ X2 @ Y5 )
          & ( ord_less_eq_nat @ Y5 @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_221_ord__eq__le__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( A = B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_222_ord__eq__le__trans,axiom,
    ! [A: set_t,B: set_t,C: set_t] :
      ( ( A = B )
     => ( ( ord_less_eq_set_t @ B @ C )
       => ( ord_less_eq_set_t @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_223_ord__eq__le__trans,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( A = B )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ord_less_eq_set_a @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_224_ord__eq__le__trans,axiom,
    ! [A: nat > $o,B: nat > $o,C: nat > $o] :
      ( ( A = B )
     => ( ( ord_less_eq_nat_o @ B @ C )
       => ( ord_less_eq_nat_o @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_225_ord__eq__le__trans,axiom,
    ! [A: t,B: t,C: t] :
      ( ( A = B )
     => ( ( ord_less_eq_t @ B @ C )
       => ( ord_less_eq_t @ A @ C ) ) ) ).

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

% ord_eq_le_trans
thf(fact_227_ord__le__eq__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_228_ord__le__eq__trans,axiom,
    ! [A: set_t,B: set_t,C: set_t] :
      ( ( ord_less_eq_set_t @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_set_t @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_229_ord__le__eq__trans,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_set_a @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_230_ord__le__eq__trans,axiom,
    ! [A: nat > $o,B: nat > $o,C: nat > $o] :
      ( ( ord_less_eq_nat_o @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_nat_o @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_231_ord__le__eq__trans,axiom,
    ! [A: t,B: t,C: t] :
      ( ( ord_less_eq_t @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_t @ A @ C ) ) ) ).

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

% ord_le_eq_trans
thf(fact_233_order__antisym,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_234_order__antisym,axiom,
    ! [X: set_t,Y: set_t] :
      ( ( ord_less_eq_set_t @ X @ Y )
     => ( ( ord_less_eq_set_t @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_235_order__antisym,axiom,
    ! [X: set_a,Y: set_a] :
      ( ( ord_less_eq_set_a @ X @ Y )
     => ( ( ord_less_eq_set_a @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_236_order__antisym,axiom,
    ! [X: nat > $o,Y: nat > $o] :
      ( ( ord_less_eq_nat_o @ X @ Y )
     => ( ( ord_less_eq_nat_o @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_237_order__antisym,axiom,
    ! [X: t,Y: t] :
      ( ( ord_less_eq_t @ X @ Y )
     => ( ( ord_less_eq_t @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_238_order__antisym,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_239_order_Otrans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_240_order_Otrans,axiom,
    ! [A: set_t,B: set_t,C: set_t] :
      ( ( ord_less_eq_set_t @ A @ B )
     => ( ( ord_less_eq_set_t @ B @ C )
       => ( ord_less_eq_set_t @ A @ C ) ) ) ).

% order.trans
thf(fact_241_order_Otrans,axiom,
    ! [A: set_a,B: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ord_less_eq_set_a @ A @ C ) ) ) ).

% order.trans
thf(fact_242_order_Otrans,axiom,
    ! [A: nat > $o,B: nat > $o,C: nat > $o] :
      ( ( ord_less_eq_nat_o @ A @ B )
     => ( ( ord_less_eq_nat_o @ B @ C )
       => ( ord_less_eq_nat_o @ A @ C ) ) ) ).

% order.trans
thf(fact_243_order_Otrans,axiom,
    ! [A: t,B: t,C: t] :
      ( ( ord_less_eq_t @ A @ B )
     => ( ( ord_less_eq_t @ B @ C )
       => ( ord_less_eq_t @ A @ C ) ) ) ).

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

% order.trans
thf(fact_245_order__trans,axiom,
    ! [X: set_nat,Y: set_nat,Z: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ Z )
       => ( ord_less_eq_set_nat @ X @ Z ) ) ) ).

% order_trans
thf(fact_246_order__trans,axiom,
    ! [X: set_t,Y: set_t,Z: set_t] :
      ( ( ord_less_eq_set_t @ X @ Y )
     => ( ( ord_less_eq_set_t @ Y @ Z )
       => ( ord_less_eq_set_t @ X @ Z ) ) ) ).

% order_trans
thf(fact_247_order__trans,axiom,
    ! [X: set_a,Y: set_a,Z: set_a] :
      ( ( ord_less_eq_set_a @ X @ Y )
     => ( ( ord_less_eq_set_a @ Y @ Z )
       => ( ord_less_eq_set_a @ X @ Z ) ) ) ).

% order_trans
thf(fact_248_order__trans,axiom,
    ! [X: nat > $o,Y: nat > $o,Z: nat > $o] :
      ( ( ord_less_eq_nat_o @ X @ Y )
     => ( ( ord_less_eq_nat_o @ Y @ Z )
       => ( ord_less_eq_nat_o @ X @ Z ) ) ) ).

% order_trans
thf(fact_249_order__trans,axiom,
    ! [X: t,Y: t,Z: t] :
      ( ( ord_less_eq_t @ X @ Y )
     => ( ( ord_less_eq_t @ Y @ Z )
       => ( ord_less_eq_t @ X @ Z ) ) ) ).

% order_trans
thf(fact_250_order__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z )
       => ( ord_less_eq_nat @ X @ Z ) ) ) ).

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

% linorder_wlog
thf(fact_252_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z2: set_nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ B2 @ A3 )
          & ( ord_less_eq_set_nat @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_253_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_t,Z2: set_t] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_t,B2: set_t] :
          ( ( ord_less_eq_set_t @ B2 @ A3 )
          & ( ord_less_eq_set_t @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_254_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_a,Z2: set_a] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_a,B2: set_a] :
          ( ( ord_less_eq_set_a @ B2 @ A3 )
          & ( ord_less_eq_set_a @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_255_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: nat > $o,Z2: nat > $o] : ( Y4 = Z2 ) )
    = ( ^ [A3: nat > $o,B2: nat > $o] :
          ( ( ord_less_eq_nat_o @ B2 @ A3 )
          & ( ord_less_eq_nat_o @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_256_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: t,Z2: t] : ( Y4 = Z2 ) )
    = ( ^ [A3: t,B2: t] :
          ( ( ord_less_eq_t @ B2 @ A3 )
          & ( ord_less_eq_t @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_257_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: nat,Z2: nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ B2 @ A3 )
          & ( ord_less_eq_nat @ A3 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_258_dual__order_Oantisym,axiom,
    ! [B: set_nat,A: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_259_dual__order_Oantisym,axiom,
    ! [B: set_t,A: set_t] :
      ( ( ord_less_eq_set_t @ B @ A )
     => ( ( ord_less_eq_set_t @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_260_dual__order_Oantisym,axiom,
    ! [B: set_a,A: set_a] :
      ( ( ord_less_eq_set_a @ B @ A )
     => ( ( ord_less_eq_set_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_261_dual__order_Oantisym,axiom,
    ! [B: nat > $o,A: nat > $o] :
      ( ( ord_less_eq_nat_o @ B @ A )
     => ( ( ord_less_eq_nat_o @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_262_dual__order_Oantisym,axiom,
    ! [B: t,A: t] :
      ( ( ord_less_eq_t @ B @ A )
     => ( ( ord_less_eq_t @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_263_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_264_dual__order_Otrans,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ C @ B )
       => ( ord_less_eq_set_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_265_dual__order_Otrans,axiom,
    ! [B: set_t,A: set_t,C: set_t] :
      ( ( ord_less_eq_set_t @ B @ A )
     => ( ( ord_less_eq_set_t @ C @ B )
       => ( ord_less_eq_set_t @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_266_dual__order_Otrans,axiom,
    ! [B: set_a,A: set_a,C: set_a] :
      ( ( ord_less_eq_set_a @ B @ A )
     => ( ( ord_less_eq_set_a @ C @ B )
       => ( ord_less_eq_set_a @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_267_dual__order_Otrans,axiom,
    ! [B: nat > $o,A: nat > $o,C: nat > $o] :
      ( ( ord_less_eq_nat_o @ B @ A )
     => ( ( ord_less_eq_nat_o @ C @ B )
       => ( ord_less_eq_nat_o @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_268_dual__order_Otrans,axiom,
    ! [B: t,A: t,C: t] :
      ( ( ord_less_eq_t @ B @ A )
     => ( ( ord_less_eq_t @ C @ B )
       => ( ord_less_eq_t @ C @ A ) ) ) ).

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

% dual_order.trans
thf(fact_270_antisym,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_271_antisym,axiom,
    ! [A: set_t,B: set_t] :
      ( ( ord_less_eq_set_t @ A @ B )
     => ( ( ord_less_eq_set_t @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_272_antisym,axiom,
    ! [A: set_a,B: set_a] :
      ( ( ord_less_eq_set_a @ A @ B )
     => ( ( ord_less_eq_set_a @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_273_antisym,axiom,
    ! [A: nat > $o,B: nat > $o] :
      ( ( ord_less_eq_nat_o @ A @ B )
     => ( ( ord_less_eq_nat_o @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_274_antisym,axiom,
    ! [A: t,B: t] :
      ( ( ord_less_eq_t @ A @ B )
     => ( ( ord_less_eq_t @ B @ A )
       => ( A = B ) ) ) ).

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

% antisym
thf(fact_276_le__funD,axiom,
    ! [F: nat > $o,G: nat > $o,X: nat] :
      ( ( ord_less_eq_nat_o @ F @ G )
     => ( ord_less_eq_o @ ( F @ X ) @ ( G @ X ) ) ) ).

% le_funD
thf(fact_277_le__funE,axiom,
    ! [F: nat > $o,G: nat > $o,X: nat] :
      ( ( ord_less_eq_nat_o @ F @ G )
     => ( ord_less_eq_o @ ( F @ X ) @ ( G @ X ) ) ) ).

% le_funE
thf(fact_278_le__funI,axiom,
    ! [F: nat > $o,G: nat > $o] :
      ( ! [X3: nat] : ( ord_less_eq_o @ ( F @ X3 ) @ ( G @ X3 ) )
     => ( ord_less_eq_nat_o @ F @ G ) ) ).

% le_funI
thf(fact_279_le__fun__def,axiom,
    ( ord_less_eq_nat_o
    = ( ^ [F2: nat > $o,G2: nat > $o] :
        ! [X2: nat] : ( ord_less_eq_o @ ( F2 @ X2 ) @ ( G2 @ X2 ) ) ) ) ).

% le_fun_def
thf(fact_280_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z2: set_nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ A3 @ B2 )
          & ( ord_less_eq_set_nat @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_281_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_t,Z2: set_t] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_t,B2: set_t] :
          ( ( ord_less_eq_set_t @ A3 @ B2 )
          & ( ord_less_eq_set_t @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_282_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_a,Z2: set_a] : ( Y4 = Z2 ) )
    = ( ^ [A3: set_a,B2: set_a] :
          ( ( ord_less_eq_set_a @ A3 @ B2 )
          & ( ord_less_eq_set_a @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_283_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat > $o,Z2: nat > $o] : ( Y4 = Z2 ) )
    = ( ^ [A3: nat > $o,B2: nat > $o] :
          ( ( ord_less_eq_nat_o @ A3 @ B2 )
          & ( ord_less_eq_nat_o @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_284_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: t,Z2: t] : ( Y4 = Z2 ) )
    = ( ^ [A3: t,B2: t] :
          ( ( ord_less_eq_t @ A3 @ B2 )
          & ( ord_less_eq_t @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_285_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z2: nat] : ( Y4 = Z2 ) )
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A3 @ B2 )
          & ( ord_less_eq_nat @ B2 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_286_order__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_287_order__subst1,axiom,
    ! [A: nat,F: t > nat,B: t,C: t] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_t @ B @ C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_288_order__subst1,axiom,
    ! [A: t,F: nat > t,B: nat,C: nat] :
      ( ( ord_less_eq_t @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_289_order__subst1,axiom,
    ! [A: t,F: t > t,B: t,C: t] :
      ( ( ord_less_eq_t @ A @ ( F @ B ) )
     => ( ( ord_less_eq_t @ B @ C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_290_order__subst1,axiom,
    ! [A: nat,F: set_nat > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X3: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_291_order__subst1,axiom,
    ! [A: nat,F: set_t > nat,B: set_t,C: set_t] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_t @ B @ C )
       => ( ! [X3: set_t,Y2: set_t] :
              ( ( ord_less_eq_set_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_292_order__subst1,axiom,
    ! [A: nat,F: set_a > nat,B: set_a,C: set_a] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_a @ B @ C )
       => ( ! [X3: set_a,Y2: set_a] :
              ( ( ord_less_eq_set_a @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_293_order__subst1,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_294_order__subst1,axiom,
    ! [A: set_nat,F: t > set_nat,B: t,C: t] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_t @ B @ C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_295_order__subst1,axiom,
    ! [A: set_t,F: nat > set_t,B: nat,C: nat] :
      ( ( ord_less_eq_set_t @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_t @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_296_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_297_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > t,C: t] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_t @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_298_order__subst2,axiom,
    ! [A: t,B: t,F: t > nat,C: nat] :
      ( ( ord_less_eq_t @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_299_order__subst2,axiom,
    ! [A: t,B: t,F: t > t,C: t] :
      ( ( ord_less_eq_t @ A @ B )
     => ( ( ord_less_eq_t @ ( F @ B ) @ C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_300_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_301_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_t,C: set_t] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_set_t @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_t @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_302_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_a,C: set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_set_a @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_a @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_303_order__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X3: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_304_order__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > t,C: t] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_t @ ( F @ B ) @ C )
       => ( ! [X3: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_305_order__subst2,axiom,
    ! [A: set_t,B: set_t,F: set_t > nat,C: nat] :
      ( ( ord_less_eq_set_t @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X3: set_t,Y2: set_t] :
              ( ( ord_less_eq_set_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_306_order__eq__refl,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( X = Y )
     => ( ord_less_eq_set_nat @ X @ Y ) ) ).

% order_eq_refl
thf(fact_307_order__eq__refl,axiom,
    ! [X: set_t,Y: set_t] :
      ( ( X = Y )
     => ( ord_less_eq_set_t @ X @ Y ) ) ).

% order_eq_refl
thf(fact_308_order__eq__refl,axiom,
    ! [X: set_a,Y: set_a] :
      ( ( X = Y )
     => ( ord_less_eq_set_a @ X @ Y ) ) ).

% order_eq_refl
thf(fact_309_order__eq__refl,axiom,
    ! [X: nat > $o,Y: nat > $o] :
      ( ( X = Y )
     => ( ord_less_eq_nat_o @ X @ Y ) ) ).

% order_eq_refl
thf(fact_310_order__eq__refl,axiom,
    ! [X: t,Y: t] :
      ( ( X = Y )
     => ( ord_less_eq_t @ X @ Y ) ) ).

% order_eq_refl
thf(fact_311_order__eq__refl,axiom,
    ! [X: nat,Y: nat] :
      ( ( X = Y )
     => ( ord_less_eq_nat @ X @ Y ) ) ).

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

% linorder_linear
thf(fact_313_ord__eq__le__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_314_ord__eq__le__subst,axiom,
    ! [A: t,F: nat > t,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_315_ord__eq__le__subst,axiom,
    ! [A: nat,F: t > nat,B: t,C: t] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_t @ B @ C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_316_ord__eq__le__subst,axiom,
    ! [A: t,F: t > t,B: t,C: t] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_t @ B @ C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_317_ord__eq__le__subst,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_318_ord__eq__le__subst,axiom,
    ! [A: set_t,F: nat > set_t,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_t @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_319_ord__eq__le__subst,axiom,
    ! [A: set_a,F: nat > set_a,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_a @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_320_ord__eq__le__subst,axiom,
    ! [A: nat,F: set_nat > nat,B: set_nat,C: set_nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X3: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_321_ord__eq__le__subst,axiom,
    ! [A: t,F: set_nat > t,B: set_nat,C: set_nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X3: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_322_ord__eq__le__subst,axiom,
    ! [A: nat,F: set_t > nat,B: set_t,C: set_t] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_t @ B @ C )
       => ( ! [X3: set_t,Y2: set_t] :
              ( ( ord_less_eq_set_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_323_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_324_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > t,C: t] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_325_ord__le__eq__subst,axiom,
    ! [A: t,B: t,F: t > nat,C: nat] :
      ( ( ord_less_eq_t @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_326_ord__le__eq__subst,axiom,
    ! [A: t,B: t,F: t > t,C: t] :
      ( ( ord_less_eq_t @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: t,Y2: t] :
              ( ( ord_less_eq_t @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_327_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_328_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > set_t,C: set_t] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_t @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_329_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > set_a,C: set_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_set_a @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_set_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_330_ord__le__eq__subst,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_331_ord__le__eq__subst,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > t,C: t] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: set_nat,Y2: set_nat] :
              ( ( ord_less_eq_set_nat @ X3 @ Y2 )
             => ( ord_less_eq_t @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_t @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_332_ord__le__eq__subst,axiom,
    ! [A: set_t,B: set_t,F: set_t > nat,C: nat] :
      ( ( ord_less_eq_set_t @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: set_t,Y2: set_t] :
              ( ( ord_less_eq_set_t @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

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

% linorder_le_cases
thf(fact_334_order__antisym__conv,axiom,
    ! [Y: set_nat,X: set_nat] :
      ( ( ord_less_eq_set_nat @ Y @ X )
     => ( ( ord_less_eq_set_nat @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_335_order__antisym__conv,axiom,
    ! [Y: set_t,X: set_t] :
      ( ( ord_less_eq_set_t @ Y @ X )
     => ( ( ord_less_eq_set_t @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_336_order__antisym__conv,axiom,
    ! [Y: set_a,X: set_a] :
      ( ( ord_less_eq_set_a @ Y @ X )
     => ( ( ord_less_eq_set_a @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_337_order__antisym__conv,axiom,
    ! [Y: nat > $o,X: nat > $o] :
      ( ( ord_less_eq_nat_o @ Y @ X )
     => ( ( ord_less_eq_nat_o @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_338_order__antisym__conv,axiom,
    ! [Y: t,X: t] :
      ( ( ord_less_eq_t @ Y @ X )
     => ( ( ord_less_eq_t @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_339_order__antisym__conv,axiom,
    ! [Y: nat,X: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ( ( ord_less_eq_nat @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_340_MDL_Osat_Ocong,axiom,
    sat_a_t = sat_a_t ).

% MDL.sat.cong
thf(fact_341_MDL_OIH_Ocong,axiom,
    iH_a_t = iH_a_t ).

% MDL.IH.cong
thf(fact_342_MDL_Osat_Osimps_I4_J,axiom,
    ! [Sigma: trace_a_t,F: $o > $o > $o,Phi: formula_a_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( bin_a_t @ F @ Phi @ Psi ) @ I )
      = ( F @ ( sat_a_t @ Sigma @ Phi @ I ) @ ( sat_a_t @ Sigma @ Psi @ I ) ) ) ).

% MDL.sat.simps(4)
thf(fact_343_MDL_Osat_Osimps_I3_J,axiom,
    ! [Sigma: trace_a_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( neg_a_t @ Phi ) @ I )
      = ( ~ ( sat_a_t @ Sigma @ Phi @ I ) ) ) ).

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

% MDL.sat.simps(1)
thf(fact_345_formula_Odistinct_I35_J,axiom,
    ! [X32: formula_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ( ( neg_a_t @ X32 )
     != ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.distinct(35)
thf(fact_346_size__char__eq__0,axiom,
    ( size_size_char
    = ( ^ [C2: char] : zero_zero_nat ) ) ).

% size_char_eq_0
thf(fact_347_memR__mono,axiom,
    ! [T: t,T2: t,I2: i_t,T3: t] :
      ( ( memR_t @ T @ T2 @ I2 )
     => ( ( ord_less_eq_t @ T @ T3 )
       => ( memR_t @ T3 @ T2 @ I2 ) ) ) ).

% memR_mono
thf(fact_348_memR__mono,axiom,
    ! [T: nat,T2: nat,I2: i_nat,T3: nat] :
      ( ( memR_nat @ T @ T2 @ I2 )
     => ( ( ord_less_eq_nat @ T @ T3 )
       => ( memR_nat @ T3 @ T2 @ I2 ) ) ) ).

% memR_mono
thf(fact_349_memR__mono_H,axiom,
    ! [T: t,T2: t,I2: i_t,T3: t] :
      ( ( memR_t @ T @ T2 @ I2 )
     => ( ( ord_less_eq_t @ T3 @ T2 )
       => ( memR_t @ T @ T3 @ I2 ) ) ) ).

% memR_mono'
thf(fact_350_memR__mono_H,axiom,
    ! [T: nat,T2: nat,I2: i_nat,T3: nat] :
      ( ( memR_nat @ T @ T2 @ I2 )
     => ( ( ord_less_eq_nat @ T3 @ T2 )
       => ( memR_nat @ T @ T3 @ I2 ) ) ) ).

% memR_mono'
thf(fact_351_memL__mono,axiom,
    ! [T: t,T2: t,I2: i_t,T3: t] :
      ( ( memL_t @ T @ T2 @ I2 )
     => ( ( ord_less_eq_t @ T3 @ T )
       => ( memL_t @ T3 @ T2 @ I2 ) ) ) ).

% memL_mono
thf(fact_352_memL__mono,axiom,
    ! [T: nat,T2: nat,I2: i_nat,T3: nat] :
      ( ( memL_nat @ T @ T2 @ I2 )
     => ( ( ord_less_eq_nat @ T3 @ T )
       => ( memL_nat @ T3 @ T2 @ I2 ) ) ) ).

% memL_mono
thf(fact_353_memL__mono_H,axiom,
    ! [T: t,T2: t,I2: i_t,T3: t] :
      ( ( memL_t @ T @ T2 @ I2 )
     => ( ( ord_less_eq_t @ T2 @ T3 )
       => ( memL_t @ T @ T3 @ I2 ) ) ) ).

% memL_mono'
thf(fact_354_memL__mono_H,axiom,
    ! [T: nat,T2: nat,I2: i_nat,T3: nat] :
      ( ( memL_nat @ T @ T2 @ I2 )
     => ( ( ord_less_eq_nat @ T2 @ T3 )
       => ( memL_nat @ T @ T3 @ I2 ) ) ) ).

% memL_mono'
thf(fact_355_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B4: nat] :
          ( ( P @ A4 @ B4 )
          = ( P @ B4 @ A4 ) )
     => ( ! [A4: nat] : ( P @ A4 @ zero_zero_nat )
       => ( ! [A4: nat,B4: nat] :
              ( ( P @ A4 @ B4 )
             => ( P @ A4 @ ( plus_plus_nat @ A4 @ B4 ) ) )
         => ( P @ A @ B ) ) ) ) ).

% Euclid_induct
thf(fact_356_add__0__iff,axiom,
    ! [B: nat,A: nat] :
      ( ( B
        = ( plus_plus_nat @ B @ A ) )
      = ( A = zero_zero_nat ) ) ).

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

% size'_char_eq_0
thf(fact_358_memR__flipLD,axiom,
    ! [I2: i_option_nat,T: option_nat,T2: option_nat] :
      ( ~ ( memL_option_nat @ zero_zero_option_nat @ zero_zero_option_nat @ I2 )
     => ( ( memR_option_nat @ T @ T2 @ ( flipL_option_nat @ I2 ) )
       => ~ ( memL_option_nat @ T @ T2 @ I2 ) ) ) ).

% memR_flipLD
thf(fact_359_memR__flipLD,axiom,
    ! [I2: i_t,T: t,T2: t] :
      ( ~ ( memL_t @ zero_zero_t @ zero_zero_t @ I2 )
     => ( ( memR_t @ T @ T2 @ ( flipL_t @ I2 ) )
       => ~ ( memL_t @ T @ T2 @ I2 ) ) ) ).

% memR_flipLD
thf(fact_360_memR__flipLD,axiom,
    ! [I2: i_nat,T: nat,T2: nat] :
      ( ~ ( memL_nat @ zero_zero_nat @ zero_zero_nat @ I2 )
     => ( ( memR_nat @ T @ T2 @ ( flipL_nat @ I2 ) )
       => ~ ( memL_nat @ T @ T2 @ I2 ) ) ) ).

% memR_flipLD
thf(fact_361_memR__flipLI,axiom,
    ! [T: t,T2: t,I2: i_t] :
      ( ! [U: t,V: t] :
          ( ( ord_less_eq_t @ U @ V )
          | ( ord_less_eq_t @ V @ U ) )
     => ( ~ ( memL_t @ T @ T2 @ I2 )
       => ( memR_t @ T @ T2 @ ( flipL_t @ I2 ) ) ) ) ).

% memR_flipLI
thf(fact_362_memR__flipLI,axiom,
    ! [T: nat,T2: nat,I2: i_nat] :
      ( ! [U: nat,V: nat] :
          ( ( ord_less_eq_nat @ U @ V )
          | ( ord_less_eq_nat @ V @ U ) )
     => ( ~ ( memL_nat @ T @ T2 @ I2 )
       => ( memR_nat @ T @ T2 @ ( flipL_nat @ I2 ) ) ) ) ).

% memR_flipLI
thf(fact_363_verit__sum__simplify,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% verit_sum_simplify
thf(fact_364_add__mono__comm,axiom,
    ! [C: t,D: t,A: t] :
      ( ( ord_less_eq_t @ C @ D )
     => ( ord_less_eq_t @ ( plus_plus_t @ C @ A ) @ ( plus_plus_t @ D @ A ) ) ) ).

% add_mono_comm
thf(fact_365_add__mono__comm,axiom,
    ! [C: nat,D: nat,A: nat] :
      ( ( ord_less_eq_nat @ C @ D )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ D @ A ) ) ) ).

% add_mono_comm
thf(fact_366_timestamp__class_Oadd__mono,axiom,
    ! [C: t,D: t,A: t] :
      ( ( ord_less_eq_t @ C @ D )
     => ( ord_less_eq_t @ ( plus_plus_t @ A @ C ) @ ( plus_plus_t @ A @ D ) ) ) ).

% timestamp_class.add_mono
thf(fact_367_timestamp__class_Oadd__mono,axiom,
    ! [C: nat,D: nat,A: nat] :
      ( ( ord_less_eq_nat @ C @ D )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ A @ D ) ) ) ).

% timestamp_class.add_mono
thf(fact_368_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_369_verit__comp__simplify1_I2_J,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_370_verit__comp__simplify1_I2_J,axiom,
    ! [A: set_t] : ( ord_less_eq_set_t @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_371_verit__comp__simplify1_I2_J,axiom,
    ! [A: set_a] : ( ord_less_eq_set_a @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_372_verit__comp__simplify1_I2_J,axiom,
    ! [A: nat > $o] : ( ord_less_eq_nat_o @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_373_verit__comp__simplify1_I2_J,axiom,
    ! [A: t] : ( ord_less_eq_t @ A @ A ) ).

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

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

% timestamp_total
thf(fact_376_verit__la__disequality,axiom,
    ! [A: nat,B: nat] :
      ( ( A = B )
      | ~ ( ord_less_eq_nat @ A @ B )
      | ~ ( ord_less_eq_nat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_377_memL__flipL,axiom,
    ! [T: t,T2: t,I2: i_t] :
      ( ( ord_less_eq_t @ T @ T2 )
     => ( memL_t @ T @ T2 @ ( flipL_t @ I2 ) ) ) ).

% memL_flipL
thf(fact_378_memL__flipL,axiom,
    ! [T: nat,T2: nat,I2: i_nat] :
      ( ( ord_less_eq_nat @ T @ T2 )
     => ( memL_nat @ T @ T2 @ ( flipL_nat @ I2 ) ) ) ).

% memL_flipL
thf(fact_379_memL__dropL,axiom,
    ! [T: t,T2: t,I2: i_t] :
      ( ( ord_less_eq_t @ T @ T2 )
     => ( memL_t @ T @ T2 @ ( dropL_t @ I2 ) ) ) ).

% memL_dropL
thf(fact_380_memL__dropL,axiom,
    ! [T: nat,T2: nat,I2: i_nat] :
      ( ( ord_less_eq_nat @ T @ T2 )
     => ( memL_nat @ T @ T2 @ ( dropL_nat @ I2 ) ) ) ).

% memL_dropL
thf(fact_381__092_060iota_062__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_t @ ( embed_nat_iota_t @ I ) @ ( embed_nat_iota_t @ J ) ) ) ).

% \<iota>_mono
thf(fact_382__092_060iota_062__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( embed_nat_iota_nat @ I ) @ ( embed_nat_iota_nat @ J ) ) ) ).

% \<iota>_mono
thf(fact_383_formula_Osize_I14_J,axiom,
    ! [X141: $o > $o > $o,X142: formula_a_t,X143: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( bin_a_t @ X141 @ X142 @ X143 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X142 ) @ ( size_s4016968051272393527la_a_t @ X143 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(14)
thf(fact_384_formula_Osize_I13_J,axiom,
    ! [X13: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( neg_a_t @ X13 ) )
      = ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X13 ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(13)
thf(fact_385_step__eps__closure__set__empty__list,axiom,
    ! [R: regex_a_t,Q0: nat,Qf: nat,Phis: list_formula_a_t,Transs: list_transition,Bss: list_list_o,Bs: list_o,I: nat,Q2: nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( iH_a_t @ sigma @ R @ Q0 @ Qf @ Phis @ Transs @ Bss @ Bs @ I )
       => ( ( step_eps_closure @ Q0 @ Transs @ Bs @ Q2 @ Qf )
         => ( step_eps_closure @ Q0 @ Transs @ nil_o @ Q2 @ Qf ) ) ) ) ).

% step_eps_closure_set_empty_list
thf(fact_386_memR__dest,axiom,
    ! [T: t,T2: t,I2: i_t] :
      ( ( memR_t @ T @ T2 @ I2 )
     => ( ord_less_eq_t @ T2 @ ( plus_plus_t @ T @ ( right_t @ I2 ) ) ) ) ).

% memR_dest
thf(fact_387_memR__dest,axiom,
    ! [T: nat,T2: nat,I2: i_nat] :
      ( ( memR_nat @ T @ T2 @ I2 )
     => ( ord_less_eq_nat @ T2 @ ( plus_plus_nat @ T @ ( right_nat @ I2 ) ) ) ) ).

% memR_dest
thf(fact_388_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_389_nat_Oinject,axiom,
    ! [X22: nat,Y22: nat] :
      ( ( ( suc @ X22 )
        = ( suc @ Y22 ) )
      = ( X22 = Y22 ) ) ).

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

% old.nat.inject
thf(fact_391_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_392_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_393_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_394_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_395_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_396_Suc__inject,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( suc @ X )
        = ( suc @ Y ) )
     => ( X = Y ) ) ).

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

% n_not_Suc_n
thf(fact_398_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M3: nat] :
          ( N
          = ( suc @ M3 ) ) ) ).

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

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

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

% Suc_neq_Zero
thf(fact_402_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_403_diff__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [X3: nat] : ( P @ X3 @ zero_zero_nat )
     => ( ! [Y2: nat] : ( P @ zero_zero_nat @ ( suc @ Y2 ) )
       => ( ! [X3: nat,Y2: nat] :
              ( ( P @ X3 @ Y2 )
             => ( P @ ( suc @ X3 ) @ ( suc @ Y2 ) ) )
         => ( P @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_404_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_405_old_Onat_Oexhaust,axiom,
    ! [Y: nat] :
      ( ( Y != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y
           != ( suc @ Nat3 ) ) ) ).

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

% nat.discI
thf(fact_407_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

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

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

% nat.distinct(1)
thf(fact_410_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R2: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X3: nat] : ( R2 @ X3 @ X3 )
       => ( ! [X3: nat,Y2: nat,Z3: nat] :
              ( ( R2 @ X3 @ Y2 )
             => ( ( R2 @ Y2 @ Z3 )
               => ( R2 @ X3 @ Z3 ) ) )
         => ( ! [N3: nat] : ( R2 @ N3 @ ( suc @ N3 ) )
           => ( R2 @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_411_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_412_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M4: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M4 ) @ N3 )
             => ( P @ M4 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

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

% Suc_n_not_le_n
thf(fact_415_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_416_Suc__le__D,axiom,
    ! [N: nat,M5: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M5 )
     => ? [M3: nat] :
          ( M5
          = ( suc @ M3 ) ) ) ).

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

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

% Suc_leD
thf(fact_420_add__Suc__shift,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_421_add__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc
thf(fact_422_nat__arith_Osuc1,axiom,
    ! [A2: nat,K: nat,A: nat] :
      ( ( A2
        = ( plus_plus_nat @ K @ A ) )
     => ( ( suc @ A2 )
        = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).

% nat_arith.suc1
thf(fact_423_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_424_MDL_Ostep__eps__closure__set__empty__list,axiom,
    ! [R: regex_a_t,Sigma: trace_a_t,Q0: nat,Qf: nat,Phis: list_formula_a_t,Transs: list_transition,Bss: list_list_o,Bs: list_o,I: nat,Q2: nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( iH_a_t @ Sigma @ R @ Q0 @ Qf @ Phis @ Transs @ Bss @ Bs @ I )
       => ( ( step_eps_closure @ Q0 @ Transs @ Bs @ Q2 @ Qf )
         => ( step_eps_closure @ Q0 @ Transs @ nil_o @ Q2 @ Qf ) ) ) ) ).

% MDL.step_eps_closure_set_empty_list
thf(fact_425_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_set_nat @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_nat @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_426_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_t,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_set_t @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_t @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_427_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_a,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_set_a @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_a @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_428_lift__Suc__antimono__le,axiom,
    ! [F: nat > nat > $o,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat_o @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_nat_o @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_429_lift__Suc__antimono__le,axiom,
    ! [F: nat > t,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_t @ ( F @ ( suc @ N3 ) ) @ ( F @ N3 ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_t @ ( F @ N4 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_430_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_431_lift__Suc__mono__le,axiom,
    ! [F: nat > set_nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_eq_set_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N4 )
       => ( ord_less_eq_set_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

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

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

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

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

% lift_Suc_mono_le
thf(fact_436_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_437_one__is__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M @ N ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_438_add__is__1,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_439_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_440_right__I__add__mono,axiom,
    ! [X: t,I2: i_t] : ( ord_less_eq_t @ X @ ( plus_plus_t @ X @ ( right_t @ I2 ) ) ) ).

% right_I_add_mono
thf(fact_441_right__I__add__mono,axiom,
    ! [X: nat,I2: i_nat] : ( ord_less_eq_nat @ X @ ( plus_plus_nat @ X @ ( right_nat @ I2 ) ) ) ).

% right_I_add_mono
thf(fact_442_memR__dropL,axiom,
    ! [T: nat,T2: nat,I2: i_nat] :
      ( ( memR_nat @ T @ T2 @ ( dropL_nat @ I2 ) )
      = ( memR_nat @ T @ T2 @ I2 ) ) ).

% memR_dropL
thf(fact_443_memR__dropL,axiom,
    ! [T: t,T2: t,I2: i_t] :
      ( ( memR_t @ T @ T2 @ ( dropL_t @ I2 ) )
      = ( memR_t @ T @ T2 @ I2 ) ) ).

% memR_dropL
thf(fact_444_formula_Osize_I11_J,axiom,
    ! [X11: $o] :
      ( ( size_s4016968051272393527la_a_t @ ( bool_a_t @ X11 ) )
      = ( suc @ zero_zero_nat ) ) ).

% formula.size(11)
thf(fact_445_length__0__conv,axiom,
    ! [Xs: list_P6011104703257516679at_nat] :
      ( ( ( size_s5460976970255530739at_nat @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Pr5478986624290739719at_nat ) ) ).

% length_0_conv
thf(fact_446_length__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_nat ) ) ).

% length_0_conv
thf(fact_447_length__0__conv,axiom,
    ! [Xs: list_a] :
      ( ( ( size_size_list_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_a ) ) ).

% length_0_conv
thf(fact_448_length__0__conv,axiom,
    ! [Xs: list_o] :
      ( ( ( size_size_list_o @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_o ) ) ).

% length_0_conv
thf(fact_449_length__0__conv,axiom,
    ! [Xs: list_t] :
      ( ( ( size_size_list_t @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_t ) ) ).

% length_0_conv
thf(fact_450_NFA_Oaccept__def,axiom,
    ( accept
    = ( ^ [Q02: nat,Qf2: nat,Transs2: list_transition,R3: set_nat] : ( accept_eps @ Q02 @ Qf2 @ Transs2 @ R3 @ nil_o ) ) ) ).

% NFA.accept_def
thf(fact_451_list_Osize_I3_J,axiom,
    ( ( size_s5460976970255530739at_nat @ nil_Pr5478986624290739719at_nat )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_452_list_Osize_I3_J,axiom,
    ( ( size_size_list_nat @ nil_nat )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_453_list_Osize_I3_J,axiom,
    ( ( size_size_list_a @ nil_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_454_list_Osize_I3_J,axiom,
    ( ( size_size_list_o @ nil_o )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_455_list_Osize_I3_J,axiom,
    ( ( size_size_list_t @ nil_t )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_456_list__decode_Ocases,axiom,
    ! [X: nat] :
      ( ( X != zero_zero_nat )
     => ~ ! [N3: nat] :
            ( X
           != ( suc @ N3 ) ) ) ).

% list_decode.cases
thf(fact_457_exists__least__lemma,axiom,
    ! [P: nat > $o] :
      ( ~ ( P @ zero_zero_nat )
     => ( ? [X_1: nat] : ( P @ X_1 )
       => ? [N3: nat] :
            ( ~ ( P @ N3 )
            & ( P @ ( suc @ N3 ) ) ) ) ) ).

% exists_least_lemma
thf(fact_458_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_P6011104703257516679at_nat] :
      ( ( size_s5460976970255530739at_nat @ Xs2 )
      = N ) ).

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

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

% Ex_list_of_length
thf(fact_461_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_a] :
      ( ( size_size_list_a @ Xs2 )
      = N ) ).

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

% Ex_list_of_length
thf(fact_463_neq__if__length__neq,axiom,
    ! [Xs: list_P6011104703257516679at_nat,Ys: list_P6011104703257516679at_nat] :
      ( ( ( size_s5460976970255530739at_nat @ Xs )
       != ( size_s5460976970255530739at_nat @ Ys ) )
     => ( Xs != Ys ) ) ).

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

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

% neq_if_length_neq
thf(fact_466_neq__if__length__neq,axiom,
    ! [Xs: list_a,Ys: list_a] :
      ( ( ( size_size_list_a @ Xs )
       != ( size_size_list_a @ Ys ) )
     => ( Xs != Ys ) ) ).

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

% neq_if_length_neq
thf(fact_468_subset__code_I1_J,axiom,
    ! [Xs: list_P4002435161011370285od_o_o,B3: set_Product_prod_o_o] :
      ( ( ord_le192195778054999463od_o_o @ ( set_Product_prod_o_o2 @ Xs ) @ B3 )
      = ( ! [X2: product_prod_o_o] :
            ( ( member7466972457876170832od_o_o @ X2 @ ( set_Product_prod_o_o2 @ Xs ) )
           => ( member7466972457876170832od_o_o @ X2 @ B3 ) ) ) ) ).

% subset_code(1)
thf(fact_469_subset__code_I1_J,axiom,
    ! [Xs: list_formula_a_t,B3: set_formula_a_t] :
      ( ( ord_le7457455060544393785la_a_t @ ( set_formula_a_t2 @ Xs ) @ B3 )
      = ( ! [X2: formula_a_t] :
            ( ( member_formula_a_t @ X2 @ ( set_formula_a_t2 @ Xs ) )
           => ( member_formula_a_t @ X2 @ B3 ) ) ) ) ).

% subset_code(1)
thf(fact_470_subset__code_I1_J,axiom,
    ! [Xs: list_o,B3: set_o] :
      ( ( ord_less_eq_set_o @ ( set_o2 @ Xs ) @ B3 )
      = ( ! [X2: $o] :
            ( ( member_o @ X2 @ ( set_o2 @ Xs ) )
           => ( member_o @ X2 @ B3 ) ) ) ) ).

% subset_code(1)
thf(fact_471_subset__code_I1_J,axiom,
    ! [Xs: list_P6011104703257516679at_nat,B3: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ B3 )
      = ( ! [X2: product_prod_nat_nat] :
            ( ( member8440522571783428010at_nat @ X2 @ ( set_Pr5648618587558075414at_nat @ Xs ) )
           => ( member8440522571783428010at_nat @ X2 @ B3 ) ) ) ) ).

% subset_code(1)
thf(fact_472_subset__code_I1_J,axiom,
    ! [Xs: list_a,B3: set_a] :
      ( ( ord_less_eq_set_a @ ( set_a2 @ Xs ) @ B3 )
      = ( ! [X2: a] :
            ( ( member_a @ X2 @ ( set_a2 @ Xs ) )
           => ( member_a @ X2 @ B3 ) ) ) ) ).

% subset_code(1)
thf(fact_473_subset__code_I1_J,axiom,
    ! [Xs: list_nat,B3: set_nat] :
      ( ( ord_less_eq_set_nat @ ( set_nat2 @ Xs ) @ B3 )
      = ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
           => ( member_nat @ X2 @ B3 ) ) ) ) ).

% subset_code(1)
thf(fact_474_subset__code_I1_J,axiom,
    ! [Xs: list_t,B3: set_t] :
      ( ( ord_less_eq_set_t @ ( set_t2 @ Xs ) @ B3 )
      = ( ! [X2: t] :
            ( ( member_t @ X2 @ ( set_t2 @ Xs ) )
           => ( member_t @ X2 @ B3 ) ) ) ) ).

% subset_code(1)
thf(fact_475_triangle__Suc,axiom,
    ! [N: nat] :
      ( ( nat_triangle @ ( suc @ N ) )
      = ( plus_plus_nat @ ( nat_triangle @ N ) @ ( suc @ N ) ) ) ).

% triangle_Suc
thf(fact_476_gen__length__def,axiom,
    ( gen_le2383899666085517716at_nat
    = ( ^ [N2: nat,Xs3: list_P6011104703257516679at_nat] : ( plus_plus_nat @ N2 @ ( size_s5460976970255530739at_nat @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_477_gen__length__def,axiom,
    ( gen_length_o
    = ( ^ [N2: nat,Xs3: list_o] : ( plus_plus_nat @ N2 @ ( size_size_list_o @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_478_gen__length__def,axiom,
    ( gen_length_nat
    = ( ^ [N2: nat,Xs3: list_nat] : ( plus_plus_nat @ N2 @ ( size_size_list_nat @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_479_gen__length__def,axiom,
    ( gen_length_a
    = ( ^ [N2: nat,Xs3: list_a] : ( plus_plus_nat @ N2 @ ( size_size_list_a @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_480_gen__length__def,axiom,
    ( gen_length_t
    = ( ^ [N2: nat,Xs3: list_t] : ( plus_plus_nat @ N2 @ ( size_size_list_t @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_481_length__code,axiom,
    ( size_s5460976970255530739at_nat
    = ( gen_le2383899666085517716at_nat @ zero_zero_nat ) ) ).

% length_code
thf(fact_482_length__code,axiom,
    ( size_size_list_o
    = ( gen_length_o @ zero_zero_nat ) ) ).

% length_code
thf(fact_483_length__code,axiom,
    ( size_size_list_nat
    = ( gen_length_nat @ zero_zero_nat ) ) ).

% length_code
thf(fact_484_length__code,axiom,
    ( size_size_list_a
    = ( gen_length_a @ zero_zero_nat ) ) ).

% length_code
thf(fact_485_length__code,axiom,
    ( size_size_list_t
    = ( gen_length_t @ zero_zero_nat ) ) ).

% length_code
thf(fact_486_remdups__adj__length__ge1,axiom,
    ! [Xs: list_P6011104703257516679at_nat] :
      ( ( Xs != nil_Pr5478986624290739719at_nat )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_s5460976970255530739at_nat @ ( remdup844249387045036349at_nat @ Xs ) ) ) ) ).

% remdups_adj_length_ge1
thf(fact_487_remdups__adj__length__ge1,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_nat @ ( remdups_adj_nat @ Xs ) ) ) ) ).

% remdups_adj_length_ge1
thf(fact_488_remdups__adj__length__ge1,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_a @ ( remdups_adj_a @ Xs ) ) ) ) ).

% remdups_adj_length_ge1
thf(fact_489_remdups__adj__length__ge1,axiom,
    ! [Xs: list_o] :
      ( ( Xs != nil_o )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_o @ ( remdups_adj_o @ Xs ) ) ) ) ).

% remdups_adj_length_ge1
thf(fact_490_remdups__adj__length__ge1,axiom,
    ! [Xs: list_t] :
      ( ( Xs != nil_t )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_t @ ( remdups_adj_t @ Xs ) ) ) ) ).

% remdups_adj_length_ge1
thf(fact_491_last__before_Ocases,axiom,
    ! [X: produc3074792404157404414_o_nat] :
      ( ! [P2: nat > $o] :
          ( X
         != ( produc7277522915581678840_o_nat @ P2 @ zero_zero_nat ) )
     => ~ ! [P2: nat > $o,N3: nat] :
            ( X
           != ( produc7277522915581678840_o_nat @ P2 @ ( suc @ N3 ) ) ) ) ).

% last_before.cases
thf(fact_492_formula_Osize_I20_J,axiom,
    ! [X1101: i_t,X1102: regex_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( matchF_t_a @ X1101 @ X1102 ) )
      = ( plus_plus_nat @ ( size_size_regex_a_t @ X1102 ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(20)
thf(fact_493_formula_Oinject_I10_J,axiom,
    ! [X101: i_t,X102: regex_a_t,Y101: i_t,Y102: regex_a_t] :
      ( ( ( matchF_t_a @ X101 @ X102 )
        = ( matchF_t_a @ Y101 @ Y102 ) )
      = ( ( X101 = Y101 )
        & ( X102 = Y102 ) ) ) ).

% formula.inject(10)
thf(fact_494_remdups__adj__set,axiom,
    ! [Xs: list_nat] :
      ( ( set_nat2 @ ( remdups_adj_nat @ Xs ) )
      = ( set_nat2 @ Xs ) ) ).

% remdups_adj_set
thf(fact_495_remdups__adj__set,axiom,
    ! [Xs: list_a] :
      ( ( set_a2 @ ( remdups_adj_a @ Xs ) )
      = ( set_a2 @ Xs ) ) ).

% remdups_adj_set
thf(fact_496_remdups__adj__set,axiom,
    ! [Xs: list_P6011104703257516679at_nat] :
      ( ( set_Pr5648618587558075414at_nat @ ( remdup844249387045036349at_nat @ Xs ) )
      = ( set_Pr5648618587558075414at_nat @ Xs ) ) ).

% remdups_adj_set
thf(fact_497_remdups__adj__set,axiom,
    ! [Xs: list_o] :
      ( ( set_o2 @ ( remdups_adj_o @ Xs ) )
      = ( set_o2 @ Xs ) ) ).

% remdups_adj_set
thf(fact_498_remdups__adj__set,axiom,
    ! [Xs: list_t] :
      ( ( set_t2 @ ( remdups_adj_t @ Xs ) )
      = ( set_t2 @ Xs ) ) ).

% remdups_adj_set
thf(fact_499_triangle__0,axiom,
    ( ( nat_triangle @ zero_zero_nat )
    = zero_zero_nat ) ).

% triangle_0
thf(fact_500_plus__prod_Ocases,axiom,
    ! [X: produc859450856879609959at_nat] :
      ~ ! [A4: nat,B4: nat,C3: nat,D2: nat] :
          ( X
         != ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A4 @ B4 ) @ ( product_Pair_nat_nat @ C3 @ D2 ) ) ) ).

% plus_prod.cases
thf(fact_501_zero__prod__def,axiom,
    ( zero_z3979849011205770936at_nat
    = ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) ) ).

% zero_prod_def
thf(fact_502_zero__prod__def,axiom,
    ( zero_z2373507829110246463_nat_t
    = ( product_Pair_nat_t @ zero_zero_nat @ zero_zero_t ) ) ).

% zero_prod_def
thf(fact_503_zero__prod__def,axiom,
    ( zero_z4162042460087166105_t_nat
    = ( product_Pair_t_nat @ zero_zero_t @ zero_zero_nat ) ) ).

% zero_prod_def
thf(fact_504_zero__prod__def,axiom,
    ( zero_z8673436643597216926od_t_t
    = ( product_Pair_t_t @ zero_zero_t @ zero_zero_t ) ) ).

% zero_prod_def
thf(fact_505_zero__prod__def,axiom,
    ( zero_z5732948328235640968on_nat
    = ( produc2023603510366521865on_nat @ zero_zero_nat @ zero_zero_option_nat ) ) ).

% zero_prod_def
thf(fact_506_zero__prod__def,axiom,
    ( zero_z9107173613657938153on_nat
    = ( produc4145729873392896474on_nat @ zero_zero_t @ zero_zero_option_nat ) ) ).

% zero_prod_def
thf(fact_507_zero__prod__def,axiom,
    ( zero_z3394381660355717128at_nat
    = ( produc5944166176642631561at_nat @ zero_zero_option_nat @ zero_zero_nat ) ) ).

% zero_prod_def
thf(fact_508_zero__prod__def,axiom,
    ( zero_z8314877242146744047_nat_t
    = ( produc1182958754876222360_nat_t @ zero_zero_option_nat @ zero_zero_t ) ) ).

% zero_prod_def
thf(fact_509_zero__prod__def,axiom,
    ( zero_z5600725813604797615at_nat
    = ( produc487386426758144856at_nat @ zero_zero_nat @ zero_z3979849011205770936at_nat ) ) ).

% zero_prod_def
thf(fact_510_zero__prod__def,axiom,
    ( zero_z3271199171317299598at_nat
    = ( produc6746353424601402567at_nat @ zero_zero_t @ zero_z3979849011205770936at_nat ) ) ).

% zero_prod_def
thf(fact_511_formula_Odistinct_I47_J,axiom,
    ! [X32: formula_a_t,X101: i_t,X102: regex_a_t] :
      ( ( neg_a_t @ X32 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(47)
thf(fact_512_formula_Odistinct_I59_J,axiom,
    ! [X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,X101: i_t,X102: regex_a_t] :
      ( ( bin_a_t @ X41 @ X42 @ X43 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(59)
thf(fact_513_formula_Odistinct_I17_J,axiom,
    ! [X1: $o,X101: i_t,X102: regex_a_t] :
      ( ( bool_a_t @ X1 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(17)
thf(fact_514_plus__prod_Oelims,axiom,
    ! [X: product_prod_nat_t,Xa: product_prod_nat_t,Y: product_prod_nat_t] :
      ( ( ( plus_p3828825139930085055_nat_t @ X @ Xa )
        = Y )
     => ~ ! [A4: nat,B4: t] :
            ( ( X
              = ( product_Pair_nat_t @ A4 @ B4 ) )
           => ! [C3: nat,D2: t] :
                ( ( Xa
                  = ( product_Pair_nat_t @ C3 @ D2 ) )
               => ( Y
                 != ( product_Pair_nat_t @ ( plus_plus_nat @ A4 @ C3 ) @ ( plus_plus_t @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_515_plus__prod_Oelims,axiom,
    ! [X: produc7248412053542808358at_nat,Xa: produc7248412053542808358at_nat,Y: produc7248412053542808358at_nat] :
      ( ( ( plus_p6845766728538896175at_nat @ X @ Xa )
        = Y )
     => ~ ! [A4: nat,B4: product_prod_nat_nat] :
            ( ( X
              = ( produc487386426758144856at_nat @ A4 @ B4 ) )
           => ! [C3: nat,D2: product_prod_nat_nat] :
                ( ( Xa
                  = ( produc487386426758144856at_nat @ C3 @ D2 ) )
               => ( Y
                 != ( produc487386426758144856at_nat @ ( plus_plus_nat @ A4 @ C3 ) @ ( plus_p9057090461656269880at_nat @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_516_plus__prod_Oelims,axiom,
    ! [X: product_prod_t_nat,Xa: product_prod_t_nat,Y: product_prod_t_nat] :
      ( ( ( plus_p5617359770907004697_t_nat @ X @ Xa )
        = Y )
     => ~ ! [A4: t,B4: nat] :
            ( ( X
              = ( product_Pair_t_nat @ A4 @ B4 ) )
           => ! [C3: t,D2: nat] :
                ( ( Xa
                  = ( product_Pair_t_nat @ C3 @ D2 ) )
               => ( Y
                 != ( product_Pair_t_nat @ ( plus_plus_t @ A4 @ C3 ) @ ( plus_plus_nat @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_517_plus__prod_Oelims,axiom,
    ! [X: product_prod_t_t,Xa: product_prod_t_t,Y: product_prod_t_t] :
      ( ( ( plus_p6936703069678264862od_t_t @ X @ Xa )
        = Y )
     => ~ ! [A4: t,B4: t] :
            ( ( X
              = ( product_Pair_t_t @ A4 @ B4 ) )
           => ! [C3: t,D2: t] :
                ( ( Xa
                  = ( product_Pair_t_t @ C3 @ D2 ) )
               => ( Y
                 != ( product_Pair_t_t @ ( plus_plus_t @ A4 @ C3 ) @ ( plus_plus_t @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_518_plus__prod_Oelims,axiom,
    ! [X: produc5345460759119203031at_nat,Xa: produc5345460759119203031at_nat,Y: produc5345460759119203031at_nat] :
      ( ( ( plus_p6160023602215759630at_nat @ X @ Xa )
        = Y )
     => ~ ! [A4: t,B4: product_prod_nat_nat] :
            ( ( X
              = ( produc6746353424601402567at_nat @ A4 @ B4 ) )
           => ! [C3: t,D2: product_prod_nat_nat] :
                ( ( Xa
                  = ( produc6746353424601402567at_nat @ C3 @ D2 ) )
               => ( Y
                 != ( produc6746353424601402567at_nat @ ( plus_plus_t @ A4 @ C3 ) @ ( plus_p9057090461656269880at_nat @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_519_plus__prod_Oelims,axiom,
    ! [X: produc8373899037510109440at_nat,Xa: produc8373899037510109440at_nat,Y: produc8373899037510109440at_nat] :
      ( ( ( plus_p7971253712506197257at_nat @ X @ Xa )
        = Y )
     => ~ ! [A4: product_prod_nat_nat,B4: nat] :
            ( ( X
              = ( produc6350711070570205562at_nat @ A4 @ B4 ) )
           => ! [C3: product_prod_nat_nat,D2: nat] :
                ( ( Xa
                  = ( produc6350711070570205562at_nat @ C3 @ D2 ) )
               => ( Y
                 != ( produc6350711070570205562at_nat @ ( plus_p9057090461656269880at_nat @ A4 @ C3 ) @ ( plus_plus_nat @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_520_plus__prod_Oelims,axiom,
    ! [X: produc3003437026197574647_nat_t,Xa: produc3003437026197574647_nat_t,Y: produc3003437026197574647_nat_t] :
      ( ( ( plus_p3817999869294131246_nat_t @ X @ Xa )
        = Y )
     => ~ ! [A4: product_prod_nat_nat,B4: t] :
            ( ( X
              = ( produc712563270363020263_nat_t @ A4 @ B4 ) )
           => ! [C3: product_prod_nat_nat,D2: t] :
                ( ( Xa
                  = ( produc712563270363020263_nat_t @ C3 @ D2 ) )
               => ( Y
                 != ( produc712563270363020263_nat_t @ ( plus_p9057090461656269880at_nat @ A4 @ C3 ) @ ( plus_plus_t @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_521_plus__prod_Oelims,axiom,
    ! [X: produc859450856879609959at_nat,Xa: produc859450856879609959at_nat,Y: produc859450856879609959at_nat] :
      ( ( ( plus_p4591053195553783070at_nat @ X @ Xa )
        = Y )
     => ~ ! [A4: product_prod_nat_nat,B4: product_prod_nat_nat] :
            ( ( X
              = ( produc6161850002892822231at_nat @ A4 @ B4 ) )
           => ! [C3: product_prod_nat_nat,D2: product_prod_nat_nat] :
                ( ( Xa
                  = ( produc6161850002892822231at_nat @ C3 @ D2 ) )
               => ( Y
                 != ( produc6161850002892822231at_nat @ ( plus_p9057090461656269880at_nat @ A4 @ C3 ) @ ( plus_p9057090461656269880at_nat @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_522_plus__prod_Oelims,axiom,
    ! [X: product_prod_nat_nat,Xa: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( ( plus_p9057090461656269880at_nat @ X @ Xa )
        = Y )
     => ~ ! [A4: nat,B4: nat] :
            ( ( X
              = ( product_Pair_nat_nat @ A4 @ B4 ) )
           => ! [C3: nat,D2: nat] :
                ( ( Xa
                  = ( product_Pair_nat_nat @ C3 @ D2 ) )
               => ( Y
                 != ( product_Pair_nat_nat @ ( plus_plus_nat @ A4 @ C3 ) @ ( plus_plus_nat @ B4 @ D2 ) ) ) ) ) ) ).

% plus_prod.elims
thf(fact_523_plus__prod_Osimps,axiom,
    ! [A: nat,B: t,C: nat,D: t] :
      ( ( plus_p3828825139930085055_nat_t @ ( product_Pair_nat_t @ A @ B ) @ ( product_Pair_nat_t @ C @ D ) )
      = ( product_Pair_nat_t @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_t @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_524_plus__prod_Osimps,axiom,
    ! [A: nat,B: product_prod_nat_nat,C: nat,D: product_prod_nat_nat] :
      ( ( plus_p6845766728538896175at_nat @ ( produc487386426758144856at_nat @ A @ B ) @ ( produc487386426758144856at_nat @ C @ D ) )
      = ( produc487386426758144856at_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_p9057090461656269880at_nat @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_525_plus__prod_Osimps,axiom,
    ! [A: t,B: nat,C: t,D: nat] :
      ( ( plus_p5617359770907004697_t_nat @ ( product_Pair_t_nat @ A @ B ) @ ( product_Pair_t_nat @ C @ D ) )
      = ( product_Pair_t_nat @ ( plus_plus_t @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_526_plus__prod_Osimps,axiom,
    ! [A: t,B: t,C: t,D: t] :
      ( ( plus_p6936703069678264862od_t_t @ ( product_Pair_t_t @ A @ B ) @ ( product_Pair_t_t @ C @ D ) )
      = ( product_Pair_t_t @ ( plus_plus_t @ A @ C ) @ ( plus_plus_t @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_527_plus__prod_Osimps,axiom,
    ! [A: t,B: product_prod_nat_nat,C: t,D: product_prod_nat_nat] :
      ( ( plus_p6160023602215759630at_nat @ ( produc6746353424601402567at_nat @ A @ B ) @ ( produc6746353424601402567at_nat @ C @ D ) )
      = ( produc6746353424601402567at_nat @ ( plus_plus_t @ A @ C ) @ ( plus_p9057090461656269880at_nat @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_528_plus__prod_Osimps,axiom,
    ! [A: product_prod_nat_nat,B: nat,C: product_prod_nat_nat,D: nat] :
      ( ( plus_p7971253712506197257at_nat @ ( produc6350711070570205562at_nat @ A @ B ) @ ( produc6350711070570205562at_nat @ C @ D ) )
      = ( produc6350711070570205562at_nat @ ( plus_p9057090461656269880at_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_529_plus__prod_Osimps,axiom,
    ! [A: product_prod_nat_nat,B: t,C: product_prod_nat_nat,D: t] :
      ( ( plus_p3817999869294131246_nat_t @ ( produc712563270363020263_nat_t @ A @ B ) @ ( produc712563270363020263_nat_t @ C @ D ) )
      = ( produc712563270363020263_nat_t @ ( plus_p9057090461656269880at_nat @ A @ C ) @ ( plus_plus_t @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_530_plus__prod_Osimps,axiom,
    ! [A: product_prod_nat_nat,B: product_prod_nat_nat,C: product_prod_nat_nat,D: product_prod_nat_nat] :
      ( ( plus_p4591053195553783070at_nat @ ( produc6161850002892822231at_nat @ A @ B ) @ ( produc6161850002892822231at_nat @ C @ D ) )
      = ( produc6161850002892822231at_nat @ ( plus_p9057090461656269880at_nat @ A @ C ) @ ( plus_p9057090461656269880at_nat @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_531_plus__prod_Osimps,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( plus_p9057090461656269880at_nat @ ( product_Pair_nat_nat @ A @ B ) @ ( product_Pair_nat_nat @ C @ D ) )
      = ( product_Pair_nat_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ).

% plus_prod.simps
thf(fact_532_remdups__adj__length,axiom,
    ! [Xs: list_P6011104703257516679at_nat] : ( ord_less_eq_nat @ ( size_s5460976970255530739at_nat @ ( remdup844249387045036349at_nat @ Xs ) ) @ ( size_s5460976970255530739at_nat @ Xs ) ) ).

% remdups_adj_length
thf(fact_533_remdups__adj__length,axiom,
    ! [Xs: list_o] : ( ord_less_eq_nat @ ( size_size_list_o @ ( remdups_adj_o @ Xs ) ) @ ( size_size_list_o @ Xs ) ) ).

% remdups_adj_length
thf(fact_534_remdups__adj__length,axiom,
    ! [Xs: list_nat] : ( ord_less_eq_nat @ ( size_size_list_nat @ ( remdups_adj_nat @ Xs ) ) @ ( size_size_list_nat @ Xs ) ) ).

% remdups_adj_length
thf(fact_535_remdups__adj__length,axiom,
    ! [Xs: list_a] : ( ord_less_eq_nat @ ( size_size_list_a @ ( remdups_adj_a @ Xs ) ) @ ( size_size_list_a @ Xs ) ) ).

% remdups_adj_length
thf(fact_536_remdups__adj__length,axiom,
    ! [Xs: list_t] : ( ord_less_eq_nat @ ( size_size_list_t @ ( remdups_adj_t @ Xs ) ) @ ( size_size_list_t @ Xs ) ) ).

% remdups_adj_length
thf(fact_537_formula_Osize_I19_J,axiom,
    ! [X191: i_t,X192: regex_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( matchP_t_a @ X191 @ X192 ) )
      = ( plus_plus_nat @ ( size_size_regex_a_t @ X192 ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(19)
thf(fact_538_regex_Osize_I7_J,axiom,
    ! [X222: formula_a_t] :
      ( ( size_size_regex_a_t @ ( symbol_a_t @ X222 ) )
      = ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X222 ) @ ( suc @ zero_zero_nat ) ) ) ).

% regex.size(7)
thf(fact_539_regex_Osize_I6_J,axiom,
    ! [X21: formula_a_t] :
      ( ( size_size_regex_a_t @ ( lookahead_a_t @ X21 ) )
      = ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X21 ) @ ( suc @ zero_zero_nat ) ) ) ).

% regex.size(6)
thf(fact_540_subset__code_I3_J,axiom,
    ~ ( ord_le3146513528884898305at_nat @ ( coset_6809516720700967924at_nat @ nil_Pr5478986624290739719at_nat ) @ ( set_Pr5648618587558075414at_nat @ nil_Pr5478986624290739719at_nat ) ) ).

% subset_code(3)
thf(fact_541_subset__code_I3_J,axiom,
    ~ ( ord_less_eq_set_nat @ ( coset_nat @ nil_nat ) @ ( set_nat2 @ nil_nat ) ) ).

% subset_code(3)
thf(fact_542_subset__code_I3_J,axiom,
    ~ ( ord_less_eq_set_a @ ( coset_a @ nil_a ) @ ( set_a2 @ nil_a ) ) ).

% subset_code(3)
thf(fact_543_subset__code_I3_J,axiom,
    ~ ( ord_less_eq_set_o @ ( coset_o @ nil_o ) @ ( set_o2 @ nil_o ) ) ).

% subset_code(3)
thf(fact_544_subset__code_I3_J,axiom,
    ~ ( ord_less_eq_set_t @ ( coset_t @ nil_t ) @ ( set_t2 @ nil_t ) ) ).

% subset_code(3)
thf(fact_545_add__eq__if,axiom,
    ( plus_plus_nat
    = ( ^ [M2: nat,N2: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ N2 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M2 @ one_one_nat ) @ N2 ) ) ) ) ) ).

% add_eq_if
thf(fact_546_formula_Oinject_I9_J,axiom,
    ! [X91: i_t,X92: regex_a_t,Y91: i_t,Y92: regex_a_t] :
      ( ( ( matchP_t_a @ X91 @ X92 )
        = ( matchP_t_a @ Y91 @ Y92 ) )
      = ( ( X91 = Y91 )
        & ( X92 = Y92 ) ) ) ).

% formula.inject(9)
thf(fact_547_regex_Oinject_I2_J,axiom,
    ! [X22: formula_a_t,Y22: formula_a_t] :
      ( ( ( symbol_a_t @ X22 )
        = ( symbol_a_t @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% regex.inject(2)
thf(fact_548_regex_Oinject_I1_J,axiom,
    ! [X1: formula_a_t,Y1: formula_a_t] :
      ( ( ( lookahead_a_t @ X1 )
        = ( lookahead_a_t @ Y1 ) )
      = ( X1 = Y1 ) ) ).

% regex.inject(1)
thf(fact_549_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_550_one__reorient,axiom,
    ! [X: nat] :
      ( ( one_one_nat = X )
      = ( X = one_one_nat ) ) ).

% one_reorient
thf(fact_551_regex_Odistinct_I1_J,axiom,
    ! [X1: formula_a_t,X22: formula_a_t] :
      ( ( lookahead_a_t @ X1 )
     != ( symbol_a_t @ X22 ) ) ).

% regex.distinct(1)
thf(fact_552_formula_Odistinct_I89_J,axiom,
    ! [X91: i_t,X92: regex_a_t,X101: i_t,X102: regex_a_t] :
      ( ( matchP_t_a @ X91 @ X92 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(89)
thf(fact_553_formula_Odistinct_I57_J,axiom,
    ! [X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,X91: i_t,X92: regex_a_t] :
      ( ( bin_a_t @ X41 @ X42 @ X43 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(57)
thf(fact_554_formula_Odistinct_I45_J,axiom,
    ! [X32: formula_a_t,X91: i_t,X92: regex_a_t] :
      ( ( neg_a_t @ X32 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(45)
thf(fact_555_formula_Odistinct_I15_J,axiom,
    ! [X1: $o,X91: i_t,X92: regex_a_t] :
      ( ( bool_a_t @ X1 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(15)
thf(fact_556_wf__regex_Osimps_I1_J,axiom,
    ! [Phi2: formula_a_t] :
      ~ ( wf_regex_a_t @ ( lookahead_a_t @ Phi2 ) ) ).

% wf_regex.simps(1)
thf(fact_557_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_558_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_559_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one_class.zero_le_one
thf(fact_560_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_561_not__one__le__zero,axiom,
    ~ ( ord_less_eq_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_le_zero
thf(fact_562_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_563_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N2: nat] : ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_564_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_565_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_566_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_567_subset__code_I2_J,axiom,
    ! [A2: set_Product_prod_o_o,Ys: list_P4002435161011370285od_o_o] :
      ( ( ord_le192195778054999463od_o_o @ A2 @ ( coset_1028297114053069210od_o_o @ Ys ) )
      = ( ! [X2: product_prod_o_o] :
            ( ( member7466972457876170832od_o_o @ X2 @ ( set_Product_prod_o_o2 @ Ys ) )
           => ~ ( member7466972457876170832od_o_o @ X2 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_568_subset__code_I2_J,axiom,
    ! [A2: set_formula_a_t,Ys: list_formula_a_t] :
      ( ( ord_le7457455060544393785la_a_t @ A2 @ ( coset_formula_a_t @ Ys ) )
      = ( ! [X2: formula_a_t] :
            ( ( member_formula_a_t @ X2 @ ( set_formula_a_t2 @ Ys ) )
           => ~ ( member_formula_a_t @ X2 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_569_subset__code_I2_J,axiom,
    ! [A2: set_o,Ys: list_o] :
      ( ( ord_less_eq_set_o @ A2 @ ( coset_o @ Ys ) )
      = ( ! [X2: $o] :
            ( ( member_o @ X2 @ ( set_o2 @ Ys ) )
           => ~ ( member_o @ X2 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_570_subset__code_I2_J,axiom,
    ! [A2: set_Pr1261947904930325089at_nat,Ys: list_P6011104703257516679at_nat] :
      ( ( ord_le3146513528884898305at_nat @ A2 @ ( coset_6809516720700967924at_nat @ Ys ) )
      = ( ! [X2: product_prod_nat_nat] :
            ( ( member8440522571783428010at_nat @ X2 @ ( set_Pr5648618587558075414at_nat @ Ys ) )
           => ~ ( member8440522571783428010at_nat @ X2 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_571_subset__code_I2_J,axiom,
    ! [A2: set_a,Ys: list_a] :
      ( ( ord_less_eq_set_a @ A2 @ ( coset_a @ Ys ) )
      = ( ! [X2: a] :
            ( ( member_a @ X2 @ ( set_a2 @ Ys ) )
           => ~ ( member_a @ X2 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_572_subset__code_I2_J,axiom,
    ! [A2: set_nat,Ys: list_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( coset_nat @ Ys ) )
      = ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_nat2 @ Ys ) )
           => ~ ( member_nat @ X2 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_573_subset__code_I2_J,axiom,
    ! [A2: set_t,Ys: list_t] :
      ( ( ord_less_eq_set_t @ A2 @ ( coset_t @ Ys ) )
      = ( ! [X2: t] :
            ( ( member_t @ X2 @ ( set_t2 @ Ys ) )
           => ~ ( member_t @ X2 @ A2 ) ) ) ) ).

% subset_code(2)
thf(fact_574_zo_H__Some,axiom,
    ( zo
    = ( some_P6789671444921510242od_o_o @ ( produc1891450550985068525od_o_o @ zt @ ( product_Pair_o_o @ zb1 @ zb2 ) ) ) ) ).

% zo'_Some
thf(fact_575_prod__decode__aux_Oelims,axiom,
    ! [X: nat,Xa: nat,Y: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X @ Xa )
        = Y )
     => ( ( ( ord_less_eq_nat @ Xa @ X )
         => ( Y
            = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X @ Xa ) ) ) )
        & ( ~ ( ord_less_eq_nat @ Xa @ X )
         => ( Y
            = ( nat_prod_decode_aux @ ( suc @ X ) @ ( minus_minus_nat @ Xa @ ( suc @ X ) ) ) ) ) ) ) ).

% prod_decode_aux.elims
thf(fact_576_prod__decode__aux_Osimps,axiom,
    ( nat_prod_decode_aux
    = ( ^ [K2: nat,M2: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ M2 @ K2 ) @ ( product_Pair_nat_nat @ M2 @ ( minus_minus_nat @ K2 @ M2 ) ) @ ( nat_prod_decode_aux @ ( suc @ K2 ) @ ( minus_minus_nat @ M2 @ ( suc @ K2 ) ) ) ) ) ) ).

% prod_decode_aux.simps
thf(fact_577_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_578_MDL_Omatch_Ocong,axiom,
    match_a_t = match_a_t ).

% MDL.match.cong
thf(fact_579_zero__option__def,axiom,
    ( zero_zero_option_t
    = ( some_t @ zero_zero_t ) ) ).

% zero_option_def
thf(fact_580_zero__option__def,axiom,
    ( zero_z2356438169786057465on_nat
    = ( some_option_nat @ zero_zero_option_nat ) ) ).

% zero_option_def
thf(fact_581_zero__option__def,axiom,
    ( zero_zero_option_nat
    = ( some_nat @ zero_zero_nat ) ) ).

% zero_option_def
thf(fact_582_MDL_Omatch__le,axiom,
    ! [I: nat,J: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ Sigma @ R ) )
     => ( ord_less_eq_nat @ I @ J ) ) ).

% MDL.match_le
thf(fact_583_match__rderive,axiom,
    ! [R: regex_a_t,I: nat,J: nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( suc @ J ) ) @ ( match_a_t @ sigma @ R ) )
          = ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ sigma @ ( rderive_a_t @ R ) ) ) ) ) ) ).

% match_rderive
thf(fact_584_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 ) ) )
      = ( ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K2 ) ) @ ( match_a_t @ sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K2 ) @ ( plus_plus_nat @ I @ ( suc @ N ) ) ) @ ( match_a_t @ sigma @ ( star_a_t @ R ) ) ) ) ) ) ).

% match_Star
thf(fact_585_sat_Osimps_I10_J,axiom,
    ! [I2: i_t,R: regex_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( matchF_t_a @ I2 @ R ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ I @ J2 )
            & ( mem_t @ ( tau_a_t @ sigma @ I ) @ ( tau_a_t @ sigma @ J2 ) @ I2 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( suc @ J2 ) ) @ ( match_a_t @ sigma @ R ) ) ) ) ) ).

% sat.simps(10)
thf(fact_586_sat_Osimps_I9_J,axiom,
    ! [I2: i_t,R: regex_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( matchP_t_a @ I2 @ R ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ J2 @ I )
            & ( mem_t @ ( tau_a_t @ sigma @ J2 ) @ ( tau_a_t @ sigma @ I ) @ I2 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ J2 @ ( suc @ I ) ) @ ( match_a_t @ sigma @ R ) ) ) ) ) ).

% sat.simps(9)
thf(fact_587_wf__regex__eps__match,axiom,
    ! [R: regex_a_t,I: nat] :
      ( ( wf_regex_a_t @ R )
     => ( ( eps_a_t @ R )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ I ) @ ( match_a_t @ sigma @ R ) ) ) ) ).

% wf_regex_eps_match
thf(fact_588_regex_Oinject_I5_J,axiom,
    ! [X5: regex_a_t,Y52: regex_a_t] :
      ( ( ( star_a_t @ X5 )
        = ( star_a_t @ Y52 ) )
      = ( X5 = Y52 ) ) ).

% regex.inject(5)
thf(fact_589_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_590_eps_Osimps_I5_J,axiom,
    ! [R: regex_a_t] : ( eps_a_t @ ( star_a_t @ R ) ) ).

% eps.simps(5)
thf(fact_591_regex_Odistinct_I13_J,axiom,
    ! [X22: formula_a_t,X5: regex_a_t] :
      ( ( symbol_a_t @ X22 )
     != ( star_a_t @ X5 ) ) ).

% regex.distinct(13)
thf(fact_592_regex_Odistinct_I7_J,axiom,
    ! [X1: formula_a_t,X5: regex_a_t] :
      ( ( lookahead_a_t @ X1 )
     != ( star_a_t @ X5 ) ) ).

% regex.distinct(7)
thf(fact_593_wf__regex_Osimps_I5_J,axiom,
    ! [R: regex_a_t] :
      ( ( wf_regex_a_t @ ( star_a_t @ R ) )
      = ( wf_regex_a_t @ R ) ) ).

% wf_regex.simps(5)
thf(fact_594_eps_Osimps_I2_J,axiom,
    ! [Phi2: formula_a_t] :
      ~ ( eps_a_t @ ( symbol_a_t @ Phi2 ) ) ).

% eps.simps(2)
thf(fact_595_eps_Osimps_I1_J,axiom,
    ! [Phi2: formula_a_t] : ( eps_a_t @ ( lookahead_a_t @ Phi2 ) ) ).

% eps.simps(1)
thf(fact_596_MDL_Omatch__refl__eps,axiom,
    ! [I: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ I ) @ ( match_a_t @ Sigma @ R ) )
     => ( eps_a_t @ R ) ) ).

% MDL.match_refl_eps
thf(fact_597_mem__def,axiom,
    ( mem_nat
    = ( ^ [T4: nat,T5: nat,I3: i_nat] :
          ( ( memL_nat @ T4 @ T5 @ I3 )
          & ( memR_nat @ T4 @ T5 @ I3 ) ) ) ) ).

% mem_def
thf(fact_598_mem__def,axiom,
    ( mem_t
    = ( ^ [T4: t,T5: t,I3: i_t] :
          ( ( memL_t @ T4 @ T5 @ I3 )
          & ( memR_t @ T4 @ T5 @ I3 ) ) ) ) ).

% mem_def
thf(fact_599_rderive_Osimps_I1_J,axiom,
    ! [Phi2: formula_a_t] :
      ( ( rderive_a_t @ ( lookahead_a_t @ Phi2 ) )
      = ( lookahead_a_t @ ( bool_a_t @ $false ) ) ) ).

% rderive.simps(1)
thf(fact_600_rderive_Osimps_I2_J,axiom,
    ! [Phi2: formula_a_t] :
      ( ( rderive_a_t @ ( symbol_a_t @ Phi2 ) )
      = ( lookahead_a_t @ Phi2 ) ) ).

% rderive.simps(2)
thf(fact_601_MDL_Owf__regex__eps__match,axiom,
    ! [R: regex_a_t,I: nat,Sigma: trace_a_t] :
      ( ( wf_regex_a_t @ R )
     => ( ( eps_a_t @ R )
       => ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ I ) @ ( match_a_t @ Sigma @ R ) ) ) ) ).

% MDL.wf_regex_eps_match
thf(fact_602_regex_Osize_I10_J,axiom,
    ! [X25: regex_a_t] :
      ( ( size_size_regex_a_t @ ( star_a_t @ X25 ) )
      = ( plus_plus_nat @ ( size_size_regex_a_t @ X25 ) @ ( suc @ zero_zero_nat ) ) ) ).

% regex.size(10)
thf(fact_603_MDL_Omatch__Star,axiom,
    ! [I: nat,N: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ ( suc @ N ) ) ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) )
      = ( ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K2 ) ) @ ( match_a_t @ Sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( plus_plus_nat @ I @ one_one_nat ) @ K2 ) @ ( plus_plus_nat @ I @ ( suc @ N ) ) ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) ) ) ) ) ).

% MDL.match_Star
thf(fact_604_MDL_Omatch__rderive,axiom,
    ! [R: regex_a_t,I: nat,J: nat,Sigma: trace_a_t] :
      ( ( wf_regex_a_t @ R )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( suc @ J ) ) @ ( match_a_t @ Sigma @ R ) )
          = ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ Sigma @ ( rderive_a_t @ R ) ) ) ) ) ) ).

% MDL.match_rderive
thf(fact_605_MDL_Osat_Osimps_I10_J,axiom,
    ! [Sigma: trace_a_t,I2: i_t,R: regex_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( matchF_t_a @ I2 @ R ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ I @ J2 )
            & ( mem_t @ ( tau_a_t @ Sigma @ I ) @ ( tau_a_t @ Sigma @ J2 ) @ I2 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( suc @ J2 ) ) @ ( match_a_t @ Sigma @ R ) ) ) ) ) ).

% MDL.sat.simps(10)
thf(fact_606_MDL_Osat_Osimps_I9_J,axiom,
    ! [Sigma: trace_a_t,I2: i_t,R: regex_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( matchP_t_a @ I2 @ R ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ J2 @ I )
            & ( mem_t @ ( tau_a_t @ Sigma @ J2 ) @ ( tau_a_t @ Sigma @ I ) @ I2 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ J2 @ ( suc @ I ) ) @ ( match_a_t @ Sigma @ R ) ) ) ) ) ).

% MDL.sat.simps(9)
thf(fact_607_sat_Osimps_I6_J,axiom,
    ! [I2: i_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( next_t_a @ I2 @ Phi ) @ I )
      = ( ( mem_t @ ( tau_a_t @ sigma @ I ) @ ( tau_a_t @ sigma @ ( suc @ I ) ) @ I2 )
        & ( sat_a_t @ sigma @ Phi @ ( suc @ I ) ) ) ) ).

% sat.simps(6)
thf(fact_608_match__Times,axiom,
    ! [I: nat,N: nat,R: regex_a_t,S: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ sigma @ ( times_a_t @ R @ S ) ) )
      = ( ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ K2 ) ) @ ( match_a_t @ sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ I @ K2 ) @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ sigma @ S ) ) ) ) ) ).

% match_Times
thf(fact_609_option_Osize_I4_J,axiom,
    ! [X22: nat] :
      ( ( size_size_option_nat @ ( some_nat @ X22 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_610_option_Osize_I4_J,axiom,
    ! [X22: produc4127598065228779901od_o_o] :
      ( ( size_s7159609156297001903od_o_o @ ( some_P6789671444921510242od_o_o @ X22 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_611_match_Osimps_I5_J,axiom,
    ! [R: regex_a_t] :
      ( ( match_a_t @ sigma @ ( star_a_t @ R ) )
      = ( transi2905341329935302413cl_nat @ ( match_a_t @ sigma @ R ) ) ) ).

% match.simps(5)
thf(fact_612_prod__encode__prod__decode__aux,axiom,
    ! [K: nat,M: nat] :
      ( ( nat_prod_encode @ ( nat_prod_decode_aux @ K @ M ) )
      = ( plus_plus_nat @ ( nat_triangle @ K ) @ M ) ) ).

% prod_encode_prod_decode_aux
thf(fact_613_rtrancl__unfold_H,axiom,
    ! [X: $o,Z: $o,R2: set_Product_prod_o_o] :
      ( ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ X @ Z ) @ ( transitive_rtrancl_o @ R2 ) )
     => ( ( X = Z )
        | ? [Y2: $o] :
            ( ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ X @ Y2 ) @ ( transitive_rtrancl_o @ R2 ) )
            & ( Y2 != Z )
            & ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ Y2 @ Z ) @ R2 ) ) ) ) ).

% rtrancl_unfold'
thf(fact_614_rtrancl__unfold_H,axiom,
    ! [X: nat,Z: nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Z ) @ ( transi2905341329935302413cl_nat @ R2 ) )
     => ( ( X = Z )
        | ? [Y2: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y2 ) @ ( transi2905341329935302413cl_nat @ R2 ) )
            & ( Y2 != Z )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y2 @ Z ) @ R2 ) ) ) ) ).

% rtrancl_unfold'
thf(fact_615_local_Ortrancl__unfold,axiom,
    ! [X: $o,Z: $o,R2: set_Product_prod_o_o] :
      ( ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ X @ Z ) @ ( transitive_rtrancl_o @ R2 ) )
     => ( ( X = Z )
        | ? [Y2: $o] :
            ( ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ X @ Y2 ) @ R2 )
            & ( X != Y2 )
            & ( member7466972457876170832od_o_o @ ( product_Pair_o_o @ Y2 @ Z ) @ ( transitive_rtrancl_o @ R2 ) ) ) ) ) ).

% local.rtrancl_unfold
thf(fact_616_local_Ortrancl__unfold,axiom,
    ! [X: nat,Z: nat,R2: set_Pr1261947904930325089at_nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Z ) @ ( transi2905341329935302413cl_nat @ R2 ) )
     => ( ( X = Z )
        | ? [Y2: nat] :
            ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y2 ) @ R2 )
            & ( X != Y2 )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y2 @ Z ) @ ( transi2905341329935302413cl_nat @ R2 ) ) ) ) ) ).

% local.rtrancl_unfold
thf(fact_617_formula_Oinject_I6_J,axiom,
    ! [X61: i_t,X62: formula_a_t,Y61: i_t,Y62: formula_a_t] :
      ( ( ( next_t_a @ X61 @ X62 )
        = ( next_t_a @ Y61 @ Y62 ) )
      = ( ( X61 = Y61 )
        & ( X62 = Y62 ) ) ) ).

% formula.inject(6)
thf(fact_618_regex_Oinject_I4_J,axiom,
    ! [X41: regex_a_t,X42: regex_a_t,Y41: regex_a_t,Y42: regex_a_t] :
      ( ( ( times_a_t @ X41 @ X42 )
        = ( times_a_t @ Y41 @ Y42 ) )
      = ( ( X41 = Y41 )
        & ( X42 = Y42 ) ) ) ).

% regex.inject(4)
thf(fact_619_next__rewrite,axiom,
    ! [I2: i_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( next_t_a @ I2 @ Phi ) @ I )
      = ( sat_a_t @ sigma @ ( matchF_t_a @ I2 @ ( times_a_t @ ( symbol_a_t @ ( bool_a_t @ $true ) ) @ ( symbol_a_t @ Phi ) ) ) @ I ) ) ).

% next_rewrite
thf(fact_620_formula_Odistinct_I77_J,axiom,
    ! [X61: i_t,X62: formula_a_t,X101: i_t,X102: regex_a_t] :
      ( ( next_t_a @ X61 @ X62 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(77)
thf(fact_621_formula_Odistinct_I75_J,axiom,
    ! [X61: i_t,X62: formula_a_t,X91: i_t,X92: regex_a_t] :
      ( ( next_t_a @ X61 @ X62 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(75)
thf(fact_622_formula_Odistinct_I39_J,axiom,
    ! [X32: formula_a_t,X61: i_t,X62: formula_a_t] :
      ( ( neg_a_t @ X32 )
     != ( next_t_a @ X61 @ X62 ) ) ).

% formula.distinct(39)
thf(fact_623_formula_Odistinct_I51_J,axiom,
    ! [X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,X61: i_t,X62: formula_a_t] :
      ( ( bin_a_t @ X41 @ X42 @ X43 )
     != ( next_t_a @ X61 @ X62 ) ) ).

% formula.distinct(51)
thf(fact_624_formula_Odistinct_I9_J,axiom,
    ! [X1: $o,X61: i_t,X62: formula_a_t] :
      ( ( bool_a_t @ X1 )
     != ( next_t_a @ X61 @ X62 ) ) ).

% formula.distinct(9)
thf(fact_625_regex_Odistinct_I11_J,axiom,
    ! [X22: formula_a_t,X41: regex_a_t,X42: regex_a_t] :
      ( ( symbol_a_t @ X22 )
     != ( times_a_t @ X41 @ X42 ) ) ).

% regex.distinct(11)
thf(fact_626_regex_Odistinct_I19_J,axiom,
    ! [X41: regex_a_t,X42: regex_a_t,X5: regex_a_t] :
      ( ( times_a_t @ X41 @ X42 )
     != ( star_a_t @ X5 ) ) ).

% regex.distinct(19)
thf(fact_627_regex_Odistinct_I5_J,axiom,
    ! [X1: formula_a_t,X41: regex_a_t,X42: regex_a_t] :
      ( ( lookahead_a_t @ X1 )
     != ( times_a_t @ X41 @ X42 ) ) ).

% regex.distinct(5)
thf(fact_628_eps_Osimps_I4_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( eps_a_t @ ( times_a_t @ R @ S ) )
      = ( ( eps_a_t @ R )
        & ( eps_a_t @ S ) ) ) ).

% eps.simps(4)
thf(fact_629_MDL_Onext__rewrite,axiom,
    ! [Sigma: trace_a_t,I2: i_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( next_t_a @ I2 @ Phi ) @ I )
      = ( sat_a_t @ Sigma @ ( matchF_t_a @ I2 @ ( times_a_t @ ( symbol_a_t @ ( bool_a_t @ $true ) ) @ ( symbol_a_t @ Phi ) ) ) @ I ) ) ).

% MDL.next_rewrite
thf(fact_630_MDL_Omatch_Osimps_I5_J,axiom,
    ! [Sigma: trace_a_t,R: regex_a_t] :
      ( ( match_a_t @ Sigma @ ( star_a_t @ R ) )
      = ( transi2905341329935302413cl_nat @ ( match_a_t @ Sigma @ R ) ) ) ).

% MDL.match.simps(5)
thf(fact_631_wf__regex_Osimps_I4_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( wf_regex_a_t @ ( times_a_t @ R @ S ) )
      = ( ( wf_regex_a_t @ S )
        & ( ~ ( eps_a_t @ S )
          | ( wf_regex_a_t @ R ) ) ) ) ).

% wf_regex.simps(4)
thf(fact_632_rderive_Osimps_I5_J,axiom,
    ! [R: regex_a_t] :
      ( ( rderive_a_t @ ( star_a_t @ R ) )
      = ( times_a_t @ ( star_a_t @ R ) @ ( rderive_a_t @ R ) ) ) ).

% rderive.simps(5)
thf(fact_633_le__prod__encode__1,axiom,
    ! [A: nat,B: nat] : ( ord_less_eq_nat @ A @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_1
thf(fact_634_le__prod__encode__2,axiom,
    ! [B: nat,A: nat] : ( ord_less_eq_nat @ B @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_2
thf(fact_635_MDL_Omatch__Times,axiom,
    ! [I: nat,N: nat,Sigma: trace_a_t,R: regex_a_t,S: regex_a_t] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ Sigma @ ( times_a_t @ R @ S ) ) )
      = ( ? [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ ( plus_plus_nat @ I @ K2 ) ) @ ( match_a_t @ Sigma @ R ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( plus_plus_nat @ I @ K2 ) @ ( plus_plus_nat @ I @ N ) ) @ ( match_a_t @ Sigma @ S ) ) ) ) ) ).

% MDL.match_Times
thf(fact_636_MDL_Osat_Osimps_I6_J,axiom,
    ! [Sigma: trace_a_t,I2: i_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( next_t_a @ I2 @ Phi ) @ I )
      = ( ( mem_t @ ( tau_a_t @ Sigma @ I ) @ ( tau_a_t @ Sigma @ ( suc @ I ) ) @ I2 )
        & ( sat_a_t @ Sigma @ Phi @ ( suc @ I ) ) ) ) ).

% MDL.sat.simps(6)
thf(fact_637_formula_Osize_I16_J,axiom,
    ! [X161: i_t,X162: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( next_t_a @ X161 @ X162 ) )
      = ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X162 ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(16)
thf(fact_638_regex_Osize_I9_J,axiom,
    ! [X241: regex_a_t,X242: regex_a_t] :
      ( ( size_size_regex_a_t @ ( times_a_t @ X241 @ X242 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_size_regex_a_t @ X241 ) @ ( size_size_regex_a_t @ X242 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% regex.size(9)
thf(fact_639_until__rewrite,axiom,
    ! [Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( until_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( sat_a_t @ sigma @ ( matchF_t_a @ I2 @ ( times_a_t @ ( star_a_t @ ( symbol_a_t @ Phi ) ) @ ( symbol_a_t @ Psi ) ) ) @ I ) ) ).

% until_rewrite
thf(fact_640_since__rewrite,axiom,
    ! [Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( since_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( sat_a_t @ sigma @ ( matchP_t_a @ I2 @ ( times_a_t @ ( symbol_a_t @ Psi ) @ ( star_a_t @ ( symbol_a_t @ Phi ) ) ) ) @ I ) ) ).

% since_rewrite
thf(fact_641_prev__rewrite,axiom,
    ! [I2: i_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( prev_t_a @ I2 @ Phi ) @ I )
      = ( sat_a_t @ sigma @ ( matchP_t_a @ I2 @ ( times_a_t @ ( symbol_a_t @ Phi ) @ ( symbol_a_t @ ( bool_a_t @ $true ) ) ) ) @ I ) ) ).

% prev_rewrite
thf(fact_642_match_Osimps_I4_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( match_a_t @ sigma @ ( times_a_t @ R @ S ) )
      = ( relcomp_nat_nat_nat @ ( match_a_t @ sigma @ R ) @ ( match_a_t @ sigma @ S ) ) ) ).

% match.simps(4)
thf(fact_643_option_Osize__gen_I2_J,axiom,
    ! [X: nat > nat,X22: nat] :
      ( ( size_option_nat @ X @ ( some_nat @ X22 ) )
      = ( plus_plus_nat @ ( X @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% option.size_gen(2)
thf(fact_644_option_Osize__gen_I2_J,axiom,
    ! [X: produc4127598065228779901od_o_o > nat,X22: produc4127598065228779901od_o_o] :
      ( ( size_o8441744552813530912od_o_o @ X @ ( some_P6789671444921510242od_o_o @ X22 ) )
      = ( plus_plus_nat @ ( X @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% option.size_gen(2)
thf(fact_645_formula_Oinject_I5_J,axiom,
    ! [X51: i_t,X52: formula_a_t,Y51: i_t,Y522: formula_a_t] :
      ( ( ( prev_t_a @ X51 @ X52 )
        = ( prev_t_a @ Y51 @ Y522 ) )
      = ( ( X51 = Y51 )
        & ( X52 = Y522 ) ) ) ).

% formula.inject(5)
thf(fact_646_formula_Oinject_I8_J,axiom,
    ! [X81: formula_a_t,X82: i_t,X83: formula_a_t,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ( ( ( until_a_t @ X81 @ X82 @ X83 )
        = ( until_a_t @ Y81 @ Y82 @ Y83 ) )
      = ( ( X81 = Y81 )
        & ( X82 = Y82 )
        & ( X83 = Y83 ) ) ) ).

% formula.inject(8)
thf(fact_647_formula_Oinject_I7_J,axiom,
    ! [X71: formula_a_t,X72: i_t,X73: formula_a_t,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ( ( ( since_a_t @ X71 @ X72 @ X73 )
        = ( since_a_t @ Y71 @ Y72 @ Y73 ) )
      = ( ( X71 = Y71 )
        & ( X72 = Y72 )
        & ( X73 = Y73 ) ) ) ).

% formula.inject(7)
thf(fact_648_formula_Odistinct_I73_J,axiom,
    ! [X61: i_t,X62: formula_a_t,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ( ( next_t_a @ X61 @ X62 )
     != ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.distinct(73)
thf(fact_649_formula_Odistinct_I71_J,axiom,
    ! [X61: i_t,X62: formula_a_t,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ( ( next_t_a @ X61 @ X62 )
     != ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.distinct(71)
thf(fact_650_formula_Odistinct_I61_J,axiom,
    ! [X51: i_t,X52: formula_a_t,X61: i_t,X62: formula_a_t] :
      ( ( prev_t_a @ X51 @ X52 )
     != ( next_t_a @ X61 @ X62 ) ) ).

% formula.distinct(61)
thf(fact_651_formula_Odistinct_I87_J,axiom,
    ! [X81: formula_a_t,X82: i_t,X83: formula_a_t,X101: i_t,X102: regex_a_t] :
      ( ( until_a_t @ X81 @ X82 @ X83 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(87)
thf(fact_652_formula_Odistinct_I83_J,axiom,
    ! [X71: formula_a_t,X72: i_t,X73: formula_a_t,X101: i_t,X102: regex_a_t] :
      ( ( since_a_t @ X71 @ X72 @ X73 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(83)
thf(fact_653_formula_Odistinct_I85_J,axiom,
    ! [X81: formula_a_t,X82: i_t,X83: formula_a_t,X91: i_t,X92: regex_a_t] :
      ( ( until_a_t @ X81 @ X82 @ X83 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(85)
thf(fact_654_formula_Odistinct_I81_J,axiom,
    ! [X71: formula_a_t,X72: i_t,X73: formula_a_t,X91: i_t,X92: regex_a_t] :
      ( ( since_a_t @ X71 @ X72 @ X73 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(81)
thf(fact_655_formula_Odistinct_I69_J,axiom,
    ! [X51: i_t,X52: formula_a_t,X101: i_t,X102: regex_a_t] :
      ( ( prev_t_a @ X51 @ X52 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(69)
thf(fact_656_formula_Odistinct_I67_J,axiom,
    ! [X51: i_t,X52: formula_a_t,X91: i_t,X92: regex_a_t] :
      ( ( prev_t_a @ X51 @ X52 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(67)
thf(fact_657_formula_Odistinct_I41_J,axiom,
    ! [X32: formula_a_t,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ( ( neg_a_t @ X32 )
     != ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.distinct(41)
thf(fact_658_formula_Odistinct_I43_J,axiom,
    ! [X32: formula_a_t,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ( ( neg_a_t @ X32 )
     != ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.distinct(43)
thf(fact_659_formula_Odistinct_I53_J,axiom,
    ! [X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ( ( bin_a_t @ X41 @ X42 @ X43 )
     != ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.distinct(53)
thf(fact_660_formula_Odistinct_I55_J,axiom,
    ! [X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ( ( bin_a_t @ X41 @ X42 @ X43 )
     != ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.distinct(55)
thf(fact_661_formula_Odistinct_I37_J,axiom,
    ! [X32: formula_a_t,X51: i_t,X52: formula_a_t] :
      ( ( neg_a_t @ X32 )
     != ( prev_t_a @ X51 @ X52 ) ) ).

% formula.distinct(37)
thf(fact_662_formula_Odistinct_I49_J,axiom,
    ! [X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,X51: i_t,X52: formula_a_t] :
      ( ( bin_a_t @ X41 @ X42 @ X43 )
     != ( prev_t_a @ X51 @ X52 ) ) ).

% formula.distinct(49)
thf(fact_663_formula_Odistinct_I11_J,axiom,
    ! [X1: $o,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ( ( bool_a_t @ X1 )
     != ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.distinct(11)
thf(fact_664_formula_Odistinct_I13_J,axiom,
    ! [X1: $o,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ( ( bool_a_t @ X1 )
     != ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.distinct(13)
thf(fact_665_formula_Odistinct_I7_J,axiom,
    ! [X1: $o,X51: i_t,X52: formula_a_t] :
      ( ( bool_a_t @ X1 )
     != ( prev_t_a @ X51 @ X52 ) ) ).

% formula.distinct(7)
thf(fact_666_formula_Odistinct_I63_J,axiom,
    ! [X51: i_t,X52: formula_a_t,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ( ( prev_t_a @ X51 @ X52 )
     != ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.distinct(63)
thf(fact_667_formula_Odistinct_I65_J,axiom,
    ! [X51: i_t,X52: formula_a_t,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ( ( prev_t_a @ X51 @ X52 )
     != ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.distinct(65)
thf(fact_668_formula_Odistinct_I79_J,axiom,
    ! [X71: formula_a_t,X72: i_t,X73: formula_a_t,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ( ( since_a_t @ X71 @ X72 @ X73 )
     != ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.distinct(79)
thf(fact_669_MDL_Omatch_Osimps_I4_J,axiom,
    ! [Sigma: trace_a_t,R: regex_a_t,S: regex_a_t] :
      ( ( match_a_t @ Sigma @ ( times_a_t @ R @ S ) )
      = ( relcomp_nat_nat_nat @ ( match_a_t @ Sigma @ R ) @ ( match_a_t @ Sigma @ S ) ) ) ).

% MDL.match.simps(4)
thf(fact_670_formula_Osize_I18_J,axiom,
    ! [X181: formula_a_t,X182: i_t,X183: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( until_a_t @ X181 @ X182 @ X183 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X181 ) @ ( size_s4016968051272393527la_a_t @ X183 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(18)
thf(fact_671_formula_Osize_I17_J,axiom,
    ! [X171: formula_a_t,X172: i_t,X173: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( since_a_t @ X171 @ X172 @ X173 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X171 ) @ ( size_s4016968051272393527la_a_t @ X173 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(17)
thf(fact_672_formula_Osize_I15_J,axiom,
    ! [X151: i_t,X152: formula_a_t] :
      ( ( size_s4016968051272393527la_a_t @ ( prev_t_a @ X151 @ X152 ) )
      = ( plus_plus_nat @ ( size_s4016968051272393527la_a_t @ X152 ) @ ( suc @ zero_zero_nat ) ) ) ).

% formula.size(15)
thf(fact_673_MDL_Ountil__rewrite,axiom,
    ! [Sigma: trace_a_t,Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( until_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( sat_a_t @ Sigma @ ( matchF_t_a @ I2 @ ( times_a_t @ ( star_a_t @ ( symbol_a_t @ Phi ) ) @ ( symbol_a_t @ Psi ) ) ) @ I ) ) ).

% MDL.until_rewrite
thf(fact_674_MDL_Osince__rewrite,axiom,
    ! [Sigma: trace_a_t,Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( since_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( sat_a_t @ Sigma @ ( matchP_t_a @ I2 @ ( times_a_t @ ( symbol_a_t @ Psi ) @ ( star_a_t @ ( symbol_a_t @ Phi ) ) ) ) @ I ) ) ).

% MDL.since_rewrite
thf(fact_675_MDL_Oprev__rewrite,axiom,
    ! [Sigma: trace_a_t,I2: i_t,Phi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( prev_t_a @ I2 @ Phi ) @ I )
      = ( sat_a_t @ Sigma @ ( matchP_t_a @ I2 @ ( times_a_t @ ( symbol_a_t @ Phi ) @ ( symbol_a_t @ ( bool_a_t @ $true ) ) ) ) @ I ) ) ).

% MDL.prev_rewrite
thf(fact_676_sat_Ocases,axiom,
    ! [X: produc6285428564250921684_t_nat] :
      ( ! [B4: $o,I4: nat] :
          ( X
         != ( produc373174216379635980_t_nat @ ( bool_a_t @ B4 ) @ I4 ) )
     => ( ! [A4: a,I4: nat] :
            ( X
           != ( produc373174216379635980_t_nat @ ( atom_a_t @ A4 ) @ I4 ) )
       => ( ! [Phi3: formula_a_t,I4: nat] :
              ( X
             != ( produc373174216379635980_t_nat @ ( neg_a_t @ Phi3 ) @ I4 ) )
         => ( ! [F3: $o > $o > $o,Phi3: formula_a_t,Psi2: formula_a_t,I4: nat] :
                ( X
               != ( produc373174216379635980_t_nat @ ( bin_a_t @ F3 @ Phi3 @ Psi2 ) @ I4 ) )
           => ( ! [I5: i_t,Phi3: formula_a_t,I4: nat] :
                  ( X
                 != ( produc373174216379635980_t_nat @ ( prev_t_a @ I5 @ Phi3 ) @ I4 ) )
             => ( ! [I5: i_t,Phi3: formula_a_t,I4: nat] :
                    ( X
                   != ( produc373174216379635980_t_nat @ ( next_t_a @ I5 @ Phi3 ) @ I4 ) )
               => ( ! [Phi3: formula_a_t,I5: i_t,Psi2: formula_a_t,I4: nat] :
                      ( X
                     != ( produc373174216379635980_t_nat @ ( since_a_t @ Phi3 @ I5 @ Psi2 ) @ I4 ) )
                 => ( ! [Phi3: formula_a_t,I5: i_t,Psi2: formula_a_t,I4: nat] :
                        ( X
                       != ( produc373174216379635980_t_nat @ ( until_a_t @ Phi3 @ I5 @ Psi2 ) @ I4 ) )
                   => ( ! [I5: i_t,R4: regex_a_t,I4: nat] :
                          ( X
                         != ( produc373174216379635980_t_nat @ ( matchP_t_a @ I5 @ R4 ) @ I4 ) )
                     => ~ ! [I5: i_t,R4: regex_a_t,I4: nat] :
                            ( X
                           != ( produc373174216379635980_t_nat @ ( matchF_t_a @ I5 @ R4 ) @ I4 ) ) ) ) ) ) ) ) ) ) ) ).

% sat.cases
thf(fact_677_sub_Ocases,axiom,
    ! [X: produc1078910373471009876la_a_t] :
      ( ! [N3: nat,B4: $o] :
          ( X
         != ( produc2953812259323318284la_a_t @ N3 @ ( bool_a_t @ B4 ) ) )
     => ( ! [N3: nat,A4: a] :
            ( X
           != ( produc2953812259323318284la_a_t @ N3 @ ( atom_a_t @ A4 ) ) )
       => ( ! [N3: nat,Phi4: formula_a_t] :
              ( X
             != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( neg_a_t @ Phi4 ) ) )
         => ( ! [N3: nat,F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t] :
                ( X
               != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( bin_a_t @ F3 @ Phi4 @ Psi3 ) ) )
           => ( ! [N3: nat,I5: i_t,Phi4: formula_a_t] :
                  ( X
                 != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( prev_t_a @ I5 @ Phi4 ) ) )
             => ( ! [N3: nat,I5: i_t,Phi4: formula_a_t] :
                    ( X
                   != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( next_t_a @ I5 @ Phi4 ) ) )
               => ( ! [N3: nat,Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                      ( X
                     != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( since_a_t @ Phi4 @ I5 @ Psi3 ) ) )
                 => ( ! [N3: nat,Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                        ( X
                       != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( until_a_t @ Phi4 @ I5 @ Psi3 ) ) )
                   => ( ! [N3: nat,I5: i_t,R4: regex_a_t] :
                          ( X
                         != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( matchP_t_a @ I5 @ R4 ) ) )
                     => ( ! [N3: nat,I5: i_t,R4: regex_a_t] :
                            ( X
                           != ( produc2953812259323318284la_a_t @ ( suc @ N3 ) @ ( matchF_t_a @ I5 @ R4 ) ) )
                       => ( ! [V: formula_a_t] :
                              ( X
                             != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( neg_a_t @ V ) ) )
                         => ( ! [V: $o > $o > $o,Va: formula_a_t,Vb: formula_a_t] :
                                ( X
                               != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( bin_a_t @ V @ Va @ Vb ) ) )
                           => ( ! [V: i_t,Va: formula_a_t] :
                                  ( X
                                 != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( prev_t_a @ V @ Va ) ) )
                             => ( ! [V: i_t,Va: formula_a_t] :
                                    ( X
                                   != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( next_t_a @ V @ Va ) ) )
                               => ( ! [V: formula_a_t,Va: i_t,Vb: formula_a_t] :
                                      ( X
                                     != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( since_a_t @ V @ Va @ Vb ) ) )
                                 => ( ! [V: formula_a_t,Va: i_t,Vb: formula_a_t] :
                                        ( X
                                       != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( until_a_t @ V @ Va @ Vb ) ) )
                                   => ( ! [V: i_t,Va: regex_a_t] :
                                          ( X
                                         != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( matchP_t_a @ V @ Va ) ) )
                                     => ~ ! [V: i_t,Va: regex_a_t] :
                                            ( X
                                           != ( produc2953812259323318284la_a_t @ zero_zero_nat @ ( matchF_t_a @ V @ Va ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% sub.cases
thf(fact_678_Once__def,axiom,
    ( once_t_a
    = ( since_a_t @ ( bool_a_t @ $true ) ) ) ).

% Once_def
thf(fact_679_Eventually__def,axiom,
    ( eventually_t_a
    = ( until_a_t @ ( bool_a_t @ $true ) ) ) ).

% Eventually_def
thf(fact_680_match_Ocases,axiom,
    ! [X: regex_a_t] :
      ( ! [Phi3: formula_a_t] :
          ( X
         != ( lookahead_a_t @ Phi3 ) )
     => ( ! [Phi3: formula_a_t] :
            ( X
           != ( symbol_a_t @ Phi3 ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t] :
              ( X
             != ( plus_a_t @ R4 @ S2 ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( X
               != ( times_a_t @ R4 @ S2 ) )
           => ~ ! [R4: regex_a_t] :
                  ( X
                 != ( star_a_t @ R4 ) ) ) ) ) ) ).

% match.cases
thf(fact_681_regex_Oinject_I3_J,axiom,
    ! [X31: regex_a_t,X322: regex_a_t,Y31: regex_a_t,Y322: regex_a_t] :
      ( ( ( plus_a_t @ X31 @ X322 )
        = ( plus_a_t @ Y31 @ Y322 ) )
      = ( ( X31 = Y31 )
        & ( X322 = Y322 ) ) ) ).

% regex.inject(3)
thf(fact_682_formula_Oinject_I2_J,axiom,
    ! [X22: a,Y22: a] :
      ( ( ( atom_a_t @ X22 )
        = ( atom_a_t @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% formula.inject(2)
thf(fact_683_regex_Odistinct_I15_J,axiom,
    ! [X31: regex_a_t,X322: regex_a_t,X41: regex_a_t,X42: regex_a_t] :
      ( ( plus_a_t @ X31 @ X322 )
     != ( times_a_t @ X41 @ X42 ) ) ).

% regex.distinct(15)
thf(fact_684_formula_Odistinct_I25_J,axiom,
    ! [X22: a,X61: i_t,X62: formula_a_t] :
      ( ( atom_a_t @ X22 )
     != ( next_t_a @ X61 @ X62 ) ) ).

% formula.distinct(25)
thf(fact_685_regex_Odistinct_I9_J,axiom,
    ! [X22: formula_a_t,X31: regex_a_t,X322: regex_a_t] :
      ( ( symbol_a_t @ X22 )
     != ( plus_a_t @ X31 @ X322 ) ) ).

% regex.distinct(9)
thf(fact_686_formula_Odistinct_I23_J,axiom,
    ! [X22: a,X51: i_t,X52: formula_a_t] :
      ( ( atom_a_t @ X22 )
     != ( prev_t_a @ X51 @ X52 ) ) ).

% formula.distinct(23)
thf(fact_687_formula_Odistinct_I27_J,axiom,
    ! [X22: a,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ( ( atom_a_t @ X22 )
     != ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.distinct(27)
thf(fact_688_formula_Odistinct_I29_J,axiom,
    ! [X22: a,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ( ( atom_a_t @ X22 )
     != ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.distinct(29)
thf(fact_689_wf__regex_Osimps_I3_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( wf_regex_a_t @ ( plus_a_t @ R @ S ) )
      = ( ( wf_regex_a_t @ R )
        & ( wf_regex_a_t @ S ) ) ) ).

% wf_regex.simps(3)
thf(fact_690_eps_Osimps_I3_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( eps_a_t @ ( plus_a_t @ R @ S ) )
      = ( ( eps_a_t @ R )
        | ( eps_a_t @ S ) ) ) ).

% eps.simps(3)
thf(fact_691_regex_Odistinct_I3_J,axiom,
    ! [X1: formula_a_t,X31: regex_a_t,X322: regex_a_t] :
      ( ( lookahead_a_t @ X1 )
     != ( plus_a_t @ X31 @ X322 ) ) ).

% regex.distinct(3)
thf(fact_692_regex_Odistinct_I17_J,axiom,
    ! [X31: regex_a_t,X322: regex_a_t,X5: regex_a_t] :
      ( ( plus_a_t @ X31 @ X322 )
     != ( star_a_t @ X5 ) ) ).

% regex.distinct(17)
thf(fact_693_formula_Odistinct_I1_J,axiom,
    ! [X1: $o,X22: a] :
      ( ( bool_a_t @ X1 )
     != ( atom_a_t @ X22 ) ) ).

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

% formula.distinct(21)
thf(fact_695_formula_Odistinct_I19_J,axiom,
    ! [X22: a,X32: formula_a_t] :
      ( ( atom_a_t @ X22 )
     != ( neg_a_t @ X32 ) ) ).

% formula.distinct(19)
thf(fact_696_formula_Odistinct_I31_J,axiom,
    ! [X22: a,X91: i_t,X92: regex_a_t] :
      ( ( atom_a_t @ X22 )
     != ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.distinct(31)
thf(fact_697_formula_Odistinct_I33_J,axiom,
    ! [X22: a,X101: i_t,X102: regex_a_t] :
      ( ( atom_a_t @ X22 )
     != ( matchF_t_a @ X101 @ X102 ) ) ).

% formula.distinct(33)
thf(fact_698_rderive_Osimps_I3_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( rderive_a_t @ ( plus_a_t @ R @ S ) )
      = ( plus_a_t @ ( rderive_a_t @ R ) @ ( rderive_a_t @ S ) ) ) ).

% rderive.simps(3)
thf(fact_699_formula_Osize_I12_J,axiom,
    ! [X12: a] :
      ( ( size_s4016968051272393527la_a_t @ ( atom_a_t @ X12 ) )
      = ( suc @ zero_zero_nat ) ) ).

% formula.size(12)
thf(fact_700_eps_Oelims_I3_J,axiom,
    ! [X: regex_a_t] :
      ( ~ ( eps_a_t @ X )
     => ( ! [Phi4: formula_a_t] :
            ( X
           != ( symbol_a_t @ Phi4 ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t] :
              ( ( X
                = ( plus_a_t @ R4 @ S2 ) )
             => ( ( eps_a_t @ R4 )
                | ( eps_a_t @ S2 ) ) )
         => ~ ! [R4: regex_a_t,S2: regex_a_t] :
                ( ( X
                  = ( times_a_t @ R4 @ S2 ) )
               => ( ( eps_a_t @ R4 )
                  & ( eps_a_t @ S2 ) ) ) ) ) ) ).

% eps.elims(3)
thf(fact_701_rderive_Osimps_I4_J,axiom,
    ! [S: regex_a_t,R: regex_a_t] :
      ( ( ( eps_a_t @ S )
       => ( ( rderive_a_t @ ( times_a_t @ R @ S ) )
          = ( plus_a_t @ ( rderive_a_t @ R ) @ ( times_a_t @ R @ ( rderive_a_t @ S ) ) ) ) )
      & ( ~ ( eps_a_t @ S )
       => ( ( rderive_a_t @ ( times_a_t @ R @ S ) )
          = ( times_a_t @ R @ ( rderive_a_t @ S ) ) ) ) ) ).

% rderive.simps(4)
thf(fact_702_regex_Osize_I8_J,axiom,
    ! [X231: regex_a_t,X232: regex_a_t] :
      ( ( size_size_regex_a_t @ ( plus_a_t @ X231 @ X232 ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( size_size_regex_a_t @ X231 ) @ ( size_size_regex_a_t @ X232 ) ) @ ( suc @ zero_zero_nat ) ) ) ).

% regex.size(8)
thf(fact_703_msize__regex_Ocases,axiom,
    ! [X: regex_a_t] :
      ( ! [Phi4: formula_a_t] :
          ( X
         != ( lookahead_a_t @ Phi4 ) )
     => ( ! [Phi4: formula_a_t] :
            ( X
           != ( symbol_a_t @ Phi4 ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t] :
              ( X
             != ( plus_a_t @ R4 @ S2 ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( X
               != ( times_a_t @ R4 @ S2 ) )
           => ~ ! [R4: regex_a_t] :
                  ( X
                 != ( star_a_t @ R4 ) ) ) ) ) ) ).

% msize_regex.cases
thf(fact_704_regex__induct,axiom,
    ! [P22: regex_a_t > $o,Regex: regex_a_t] :
      ( ! [X3: formula_a_t] : ( P22 @ ( lookahead_a_t @ X3 ) )
     => ( ! [X3: formula_a_t] : ( P22 @ ( symbol_a_t @ X3 ) )
       => ( ! [X14: regex_a_t,X23: regex_a_t] :
              ( ( P22 @ X14 )
             => ( ( P22 @ X23 )
               => ( P22 @ ( plus_a_t @ X14 @ X23 ) ) ) )
         => ( ! [X14: regex_a_t,X23: regex_a_t] :
                ( ( P22 @ X14 )
               => ( ( P22 @ X23 )
                 => ( P22 @ ( times_a_t @ X14 @ X23 ) ) ) )
           => ( ! [X3: regex_a_t] :
                  ( ( P22 @ X3 )
                 => ( P22 @ ( star_a_t @ X3 ) ) )
             => ( P22 @ Regex ) ) ) ) ) ) ).

% regex_induct
thf(fact_705_bounded__future__regex_Ocases,axiom,
    ! [X: regex_a_t] :
      ( ! [Phi4: formula_a_t] :
          ( X
         != ( lookahead_a_t @ Phi4 ) )
     => ( ! [Phi4: formula_a_t] :
            ( X
           != ( symbol_a_t @ Phi4 ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t] :
              ( X
             != ( plus_a_t @ R4 @ S2 ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( X
               != ( times_a_t @ R4 @ S2 ) )
           => ~ ! [R4: regex_a_t] :
                  ( X
                 != ( star_a_t @ R4 ) ) ) ) ) ) ).

% bounded_future_regex.cases
thf(fact_706_regex_Oexhaust,axiom,
    ! [Y: regex_a_t] :
      ( ! [X14: formula_a_t] :
          ( Y
         != ( lookahead_a_t @ X14 ) )
     => ( ! [X23: formula_a_t] :
            ( Y
           != ( symbol_a_t @ X23 ) )
       => ( ! [X312: regex_a_t,X323: regex_a_t] :
              ( Y
             != ( plus_a_t @ X312 @ X323 ) )
         => ( ! [X412: regex_a_t,X422: regex_a_t] :
                ( Y
               != ( times_a_t @ X412 @ X422 ) )
           => ~ ! [X53: regex_a_t] :
                  ( Y
                 != ( star_a_t @ X53 ) ) ) ) ) ) ).

% regex.exhaust
thf(fact_707_collect__subfmlas_Ocases,axiom,
    ! [X: produc703581975485706584la_a_t] :
      ( ! [Phi3: formula_a_t,Phis2: list_formula_a_t] :
          ( X
         != ( produc5661418841318945808la_a_t @ ( lookahead_a_t @ Phi3 ) @ Phis2 ) )
     => ( ! [Phi3: formula_a_t,Phis2: list_formula_a_t] :
            ( X
           != ( produc5661418841318945808la_a_t @ ( symbol_a_t @ Phi3 ) @ Phis2 ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t,Phis2: list_formula_a_t] :
              ( X
             != ( produc5661418841318945808la_a_t @ ( plus_a_t @ R4 @ S2 ) @ Phis2 ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t,Phis2: list_formula_a_t] :
                ( X
               != ( produc5661418841318945808la_a_t @ ( times_a_t @ R4 @ S2 ) @ Phis2 ) )
           => ~ ! [R4: regex_a_t,Phis2: list_formula_a_t] :
                  ( X
                 != ( produc5661418841318945808la_a_t @ ( star_a_t @ R4 ) @ Phis2 ) ) ) ) ) ) ).

% collect_subfmlas.cases
thf(fact_708_build__nfa__impl_Ocases,axiom,
    ! [X: produc3632150455401421742la_a_t] :
      ( ! [Phi3: formula_a_t,Q03: nat,Qf3: nat,Phis2: list_formula_a_t] :
          ( X
         != ( produc7399166869623548134la_a_t @ ( lookahead_a_t @ Phi3 ) @ ( produc8654416511292156347la_a_t @ Q03 @ ( produc9017461973804568604la_a_t @ Qf3 @ Phis2 ) ) ) )
     => ( ! [Phi3: formula_a_t,Q03: nat,Qf3: nat,Phis2: list_formula_a_t] :
            ( X
           != ( produc7399166869623548134la_a_t @ ( symbol_a_t @ Phi3 ) @ ( produc8654416511292156347la_a_t @ Q03 @ ( produc9017461973804568604la_a_t @ Qf3 @ Phis2 ) ) ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t,Q03: nat,Qf3: nat,Phis2: list_formula_a_t] :
              ( X
             != ( produc7399166869623548134la_a_t @ ( plus_a_t @ R4 @ S2 ) @ ( produc8654416511292156347la_a_t @ Q03 @ ( produc9017461973804568604la_a_t @ Qf3 @ Phis2 ) ) ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t,Q03: nat,Qf3: nat,Phis2: list_formula_a_t] :
                ( X
               != ( produc7399166869623548134la_a_t @ ( times_a_t @ R4 @ S2 ) @ ( produc8654416511292156347la_a_t @ Q03 @ ( produc9017461973804568604la_a_t @ Qf3 @ Phis2 ) ) ) )
           => ~ ! [R4: regex_a_t,Q03: nat,Qf3: nat,Phis2: list_formula_a_t] :
                  ( X
                 != ( produc7399166869623548134la_a_t @ ( star_a_t @ R4 ) @ ( produc8654416511292156347la_a_t @ Q03 @ ( produc9017461973804568604la_a_t @ Qf3 @ Phis2 ) ) ) ) ) ) ) ) ).

% build_nfa_impl.cases
thf(fact_709_eps_Oelims_I2_J,axiom,
    ! [X: regex_a_t] :
      ( ( eps_a_t @ X )
     => ( ! [Phi4: formula_a_t] :
            ( X
           != ( lookahead_a_t @ Phi4 ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t] :
              ( ( X
                = ( plus_a_t @ R4 @ S2 ) )
             => ~ ( ( eps_a_t @ R4 )
                  | ( eps_a_t @ S2 ) ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( ( X
                  = ( times_a_t @ R4 @ S2 ) )
               => ~ ( ( eps_a_t @ R4 )
                    & ( eps_a_t @ S2 ) ) )
           => ~ ! [R4: regex_a_t] :
                  ( X
                 != ( star_a_t @ R4 ) ) ) ) ) ) ).

% eps.elims(2)
thf(fact_710_eps_Oelims_I1_J,axiom,
    ! [X: regex_a_t,Y: $o] :
      ( ( ( eps_a_t @ X )
        = Y )
     => ( ( ? [Phi4: formula_a_t] :
              ( X
              = ( lookahead_a_t @ Phi4 ) )
         => ~ Y )
       => ( ( ? [Phi4: formula_a_t] :
                ( X
                = ( symbol_a_t @ Phi4 ) )
           => Y )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( ( X
                  = ( plus_a_t @ R4 @ S2 ) )
               => ( Y
                  = ( ~ ( ( eps_a_t @ R4 )
                        | ( eps_a_t @ S2 ) ) ) ) )
           => ( ! [R4: regex_a_t,S2: regex_a_t] :
                  ( ( X
                    = ( times_a_t @ R4 @ S2 ) )
                 => ( Y
                    = ( ~ ( ( eps_a_t @ R4 )
                          & ( eps_a_t @ S2 ) ) ) ) )
             => ~ ( ? [R4: regex_a_t] :
                      ( X
                      = ( star_a_t @ R4 ) )
                 => ~ Y ) ) ) ) ) ) ).

% eps.elims(1)
thf(fact_711_rderive_Oelims,axiom,
    ! [X: regex_a_t,Y: regex_a_t] :
      ( ( ( rderive_a_t @ X )
        = Y )
     => ( ( ? [Phi4: formula_a_t] :
              ( X
              = ( lookahead_a_t @ Phi4 ) )
         => ( Y
           != ( lookahead_a_t @ ( bool_a_t @ $false ) ) ) )
       => ( ! [Phi4: formula_a_t] :
              ( ( X
                = ( symbol_a_t @ Phi4 ) )
             => ( Y
               != ( lookahead_a_t @ Phi4 ) ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( ( X
                  = ( plus_a_t @ R4 @ S2 ) )
               => ( Y
                 != ( plus_a_t @ ( rderive_a_t @ R4 ) @ ( rderive_a_t @ S2 ) ) ) )
           => ( ! [R4: regex_a_t,S2: regex_a_t] :
                  ( ( X
                    = ( times_a_t @ R4 @ S2 ) )
                 => ~ ( ( ( eps_a_t @ S2 )
                       => ( Y
                          = ( plus_a_t @ ( rderive_a_t @ R4 ) @ ( times_a_t @ R4 @ ( rderive_a_t @ S2 ) ) ) ) )
                      & ( ~ ( eps_a_t @ S2 )
                       => ( Y
                          = ( times_a_t @ R4 @ ( rderive_a_t @ S2 ) ) ) ) ) )
             => ~ ! [R4: regex_a_t] :
                    ( ( X
                      = ( star_a_t @ R4 ) )
                   => ( Y
                     != ( times_a_t @ ( star_a_t @ R4 ) @ ( rderive_a_t @ R4 ) ) ) ) ) ) ) ) ) ).

% rderive.elims
thf(fact_712_progress_Ocases,axiom,
    ! [X: produc3757808585008439209list_t] :
      ( ! [B4: $o,Ts: list_t] :
          ( X
         != ( produc8618728406956180955list_t @ ( bool_a_t @ B4 ) @ Ts ) )
     => ( ! [A4: a,Ts: list_t] :
            ( X
           != ( produc8618728406956180955list_t @ ( atom_a_t @ A4 ) @ Ts ) )
       => ( ! [Phi4: formula_a_t,Ts: list_t] :
              ( X
             != ( produc8618728406956180955list_t @ ( neg_a_t @ Phi4 ) @ Ts ) )
         => ( ! [F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t,Ts: list_t] :
                ( X
               != ( produc8618728406956180955list_t @ ( bin_a_t @ F3 @ Phi4 @ Psi3 ) @ Ts ) )
           => ( ! [I5: i_t,Phi4: formula_a_t,Ts: list_t] :
                  ( X
                 != ( produc8618728406956180955list_t @ ( prev_t_a @ I5 @ Phi4 ) @ Ts ) )
             => ( ! [I5: i_t,Phi4: formula_a_t,Ts: list_t] :
                    ( X
                   != ( produc8618728406956180955list_t @ ( next_t_a @ I5 @ Phi4 ) @ Ts ) )
               => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t,Ts: list_t] :
                      ( X
                     != ( produc8618728406956180955list_t @ ( since_a_t @ Phi4 @ I5 @ Psi3 ) @ Ts ) )
                 => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t,Ts: list_t] :
                        ( X
                       != ( produc8618728406956180955list_t @ ( until_a_t @ Phi4 @ I5 @ Psi3 ) @ Ts ) )
                   => ( ! [I5: i_t,R4: regex_a_t,Ts: list_t] :
                          ( X
                         != ( produc8618728406956180955list_t @ ( matchP_t_a @ I5 @ R4 ) @ Ts ) )
                     => ~ ! [I5: i_t,R4: regex_a_t,Ts: list_t] :
                            ( X
                           != ( produc8618728406956180955list_t @ ( matchF_t_a @ I5 @ R4 ) @ Ts ) ) ) ) ) ) ) ) ) ) ) ).

% progress.cases
thf(fact_713_MDL_Osat_Ocases,axiom,
    ! [X: produc6285428564250921684_t_nat] :
      ( ! [B4: $o,I4: nat] :
          ( X
         != ( produc373174216379635980_t_nat @ ( bool_a_t @ B4 ) @ I4 ) )
     => ( ! [A4: a,I4: nat] :
            ( X
           != ( produc373174216379635980_t_nat @ ( atom_a_t @ A4 ) @ I4 ) )
       => ( ! [Phi3: formula_a_t,I4: nat] :
              ( X
             != ( produc373174216379635980_t_nat @ ( neg_a_t @ Phi3 ) @ I4 ) )
         => ( ! [F3: $o > $o > $o,Phi3: formula_a_t,Psi2: formula_a_t,I4: nat] :
                ( X
               != ( produc373174216379635980_t_nat @ ( bin_a_t @ F3 @ Phi3 @ Psi2 ) @ I4 ) )
           => ( ! [I5: i_t,Phi3: formula_a_t,I4: nat] :
                  ( X
                 != ( produc373174216379635980_t_nat @ ( prev_t_a @ I5 @ Phi3 ) @ I4 ) )
             => ( ! [I5: i_t,Phi3: formula_a_t,I4: nat] :
                    ( X
                   != ( produc373174216379635980_t_nat @ ( next_t_a @ I5 @ Phi3 ) @ I4 ) )
               => ( ! [Phi3: formula_a_t,I5: i_t,Psi2: formula_a_t,I4: nat] :
                      ( X
                     != ( produc373174216379635980_t_nat @ ( since_a_t @ Phi3 @ I5 @ Psi2 ) @ I4 ) )
                 => ( ! [Phi3: formula_a_t,I5: i_t,Psi2: formula_a_t,I4: nat] :
                        ( X
                       != ( produc373174216379635980_t_nat @ ( until_a_t @ Phi3 @ I5 @ Psi2 ) @ I4 ) )
                   => ( ! [I5: i_t,R4: regex_a_t,I4: nat] :
                          ( X
                         != ( produc373174216379635980_t_nat @ ( matchP_t_a @ I5 @ R4 ) @ I4 ) )
                     => ~ ! [I5: i_t,R4: regex_a_t,I4: nat] :
                            ( X
                           != ( produc373174216379635980_t_nat @ ( matchF_t_a @ I5 @ R4 ) @ I4 ) ) ) ) ) ) ) ) ) ) ) ).

% MDL.sat.cases
thf(fact_714_formula_Oexhaust,axiom,
    ! [Y: formula_a_t] :
      ( ! [X14: $o] :
          ( Y
         != ( bool_a_t @ X14 ) )
     => ( ! [X23: a] :
            ( Y
           != ( atom_a_t @ X23 ) )
       => ( ! [X33: formula_a_t] :
              ( Y
             != ( neg_a_t @ X33 ) )
         => ( ! [X412: $o > $o > $o,X422: formula_a_t,X432: formula_a_t] :
                ( Y
               != ( bin_a_t @ X412 @ X422 @ X432 ) )
           => ( ! [X512: i_t,X522: formula_a_t] :
                  ( Y
                 != ( prev_t_a @ X512 @ X522 ) )
             => ( ! [X612: i_t,X622: formula_a_t] :
                    ( Y
                   != ( next_t_a @ X612 @ X622 ) )
               => ( ! [X712: formula_a_t,X722: i_t,X732: formula_a_t] :
                      ( Y
                     != ( since_a_t @ X712 @ X722 @ X732 ) )
                 => ( ! [X812: formula_a_t,X822: i_t,X832: formula_a_t] :
                        ( Y
                       != ( until_a_t @ X812 @ X822 @ X832 ) )
                   => ( ! [X912: i_t,X922: regex_a_t] :
                          ( Y
                         != ( matchP_t_a @ X912 @ X922 ) )
                     => ~ ! [X1012: i_t,X1022: regex_a_t] :
                            ( Y
                           != ( matchF_t_a @ X1012 @ X1022 ) ) ) ) ) ) ) ) ) ) ) ).

% formula.exhaust
thf(fact_715_msize__fmla_Ocases,axiom,
    ! [X: formula_a_t] :
      ( ! [B4: $o] :
          ( X
         != ( bool_a_t @ B4 ) )
     => ( ! [A4: a] :
            ( X
           != ( atom_a_t @ A4 ) )
       => ( ! [Phi4: formula_a_t] :
              ( X
             != ( neg_a_t @ Phi4 ) )
         => ( ! [F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t] :
                ( X
               != ( bin_a_t @ F3 @ Phi4 @ Psi3 ) )
           => ( ! [I5: i_t,Phi4: formula_a_t] :
                  ( X
                 != ( prev_t_a @ I5 @ Phi4 ) )
             => ( ! [I5: i_t,Phi4: formula_a_t] :
                    ( X
                   != ( next_t_a @ I5 @ Phi4 ) )
               => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                      ( X
                     != ( since_a_t @ Phi4 @ I5 @ Psi3 ) )
                 => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                        ( X
                       != ( until_a_t @ Phi4 @ I5 @ Psi3 ) )
                   => ( ! [I5: i_t,R4: regex_a_t] :
                          ( X
                         != ( matchP_t_a @ I5 @ R4 ) )
                     => ~ ! [I5: i_t,R4: regex_a_t] :
                            ( X
                           != ( matchF_t_a @ I5 @ R4 ) ) ) ) ) ) ) ) ) ) ) ).

% msize_fmla.cases
thf(fact_716_bounded__future__fmla_Ocases,axiom,
    ! [X: formula_a_t] :
      ( ! [B4: $o] :
          ( X
         != ( bool_a_t @ B4 ) )
     => ( ! [A4: a] :
            ( X
           != ( atom_a_t @ A4 ) )
       => ( ! [Phi4: formula_a_t] :
              ( X
             != ( neg_a_t @ Phi4 ) )
         => ( ! [F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t] :
                ( X
               != ( bin_a_t @ F3 @ Phi4 @ Psi3 ) )
           => ( ! [I5: i_t,Phi4: formula_a_t] :
                  ( X
                 != ( prev_t_a @ I5 @ Phi4 ) )
             => ( ! [I5: i_t,Phi4: formula_a_t] :
                    ( X
                   != ( next_t_a @ I5 @ Phi4 ) )
               => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                      ( X
                     != ( since_a_t @ Phi4 @ I5 @ Psi3 ) )
                 => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                        ( X
                       != ( until_a_t @ Phi4 @ I5 @ Psi3 ) )
                   => ( ! [I5: i_t,R4: regex_a_t] :
                          ( X
                         != ( matchP_t_a @ I5 @ R4 ) )
                     => ~ ! [I5: i_t,R4: regex_a_t] :
                            ( X
                           != ( matchF_t_a @ I5 @ R4 ) ) ) ) ) ) ) ) ) ) ) ).

% bounded_future_fmla.cases
thf(fact_717_run__induct,axiom,
    ! [Phi2: formula_a_t,N: nat,P: nat > formula_a_t > $o] :
      ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi2 ) @ N )
     => ( ! [B4: $o,N3: nat] : ( P @ N3 @ ( bool_a_t @ B4 ) )
       => ( ! [A4: a,N3: nat] : ( P @ N3 @ ( atom_a_t @ A4 ) )
         => ( ! [N3: nat,Phi4: formula_a_t] :
                ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi4 ) @ N3 )
               => ( ( P @ N3 @ Phi4 )
                 => ( P @ ( suc @ N3 ) @ ( neg_a_t @ Phi4 ) ) ) )
           => ( ! [N3: nat,F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t] :
                  ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ ( bin_a_t @ F3 @ Phi4 @ Psi3 ) ) @ ( suc @ N3 ) )
                 => ( ( P @ N3 @ Phi4 )
                   => ( ( P @ N3 @ Psi3 )
                     => ( P @ ( suc @ N3 ) @ ( bin_a_t @ F3 @ Phi4 @ Psi3 ) ) ) ) )
             => ( ! [N3: nat,I5: i_t,Phi4: formula_a_t] :
                    ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi4 ) @ N3 )
                   => ( ( P @ N3 @ Phi4 )
                     => ( P @ ( suc @ N3 ) @ ( prev_t_a @ I5 @ Phi4 ) ) ) )
               => ( ! [N3: nat,I5: i_t,Phi4: formula_a_t] :
                      ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi4 ) @ N3 )
                     => ( ( P @ N3 @ Phi4 )
                       => ( P @ ( suc @ N3 ) @ ( next_t_a @ I5 @ Phi4 ) ) ) )
                 => ( ! [N3: nat,I5: i_t,Phi4: formula_a_t,Psi3: formula_a_t] :
                        ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi4 ) @ N3 )
                       => ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Psi3 ) @ N3 )
                         => ( ( P @ N3 @ Phi4 )
                           => ( ( P @ N3 @ Psi3 )
                             => ( P @ ( suc @ N3 ) @ ( since_a_t @ Phi4 @ I5 @ Psi3 ) ) ) ) ) )
                   => ( ! [N3: nat,I5: i_t,Phi4: formula_a_t,Psi3: formula_a_t] :
                          ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Phi4 ) @ N3 )
                         => ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ Psi3 ) @ N3 )
                           => ( ( P @ N3 @ Phi4 )
                             => ( ( P @ N3 @ Psi3 )
                               => ( P @ ( suc @ N3 ) @ ( until_a_t @ Phi4 @ I5 @ Psi3 ) ) ) ) ) )
                     => ( ! [N3: nat,I5: i_t,R4: regex_a_t] :
                            ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ ( matchP_t_a @ I5 @ R4 ) ) @ ( suc @ N3 ) )
                           => ( ! [X4: formula_a_t] :
                                  ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ X4 ) @ N3 )
                                 => ( P @ N3 @ X4 ) )
                             => ( P @ ( suc @ N3 ) @ ( matchP_t_a @ I5 @ R4 ) ) ) )
                       => ( ! [N3: nat,I5: i_t,R4: regex_a_t] :
                              ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ ( matchF_t_a @ I5 @ R4 ) ) @ ( suc @ N3 ) )
                             => ( ! [X4: formula_a_t] :
                                    ( ( ord_less_eq_nat @ ( msize_fmla_a_t @ X4 ) @ N3 )
                                   => ( P @ N3 @ X4 ) )
                               => ( P @ ( suc @ N3 ) @ ( matchF_t_a @ I5 @ R4 ) ) ) )
                         => ( P @ N @ Phi2 ) ) ) ) ) ) ) ) ) ) ) ) ).

% run_induct
thf(fact_718_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_719_Historically__def,axiom,
    ( historically_t_a
    = ( ^ [I3: i_t,Phi5: formula_a_t] : ( neg_a_t @ ( once_t_a @ I3 @ ( neg_a_t @ Phi5 ) ) ) ) ) ).

% Historically_def
thf(fact_720_Always__def,axiom,
    ( always_t_a
    = ( ^ [I3: i_t,Phi5: formula_a_t] : ( neg_a_t @ ( eventually_t_a @ I3 @ ( neg_a_t @ Phi5 ) ) ) ) ) ).

% Always_def
thf(fact_721_assms_I1_J,axiom,
    ord_less_eq_nat @ ( msize_fmla_a_t @ phi ) @ n ).

% assms(1)
thf(fact_722_msize__fmla_Osimps_I5_J,axiom,
    ! [I2: i_t,Phi2: formula_a_t] :
      ( ( msize_fmla_a_t @ ( prev_t_a @ I2 @ Phi2 ) )
      = ( suc @ ( msize_fmla_a_t @ Phi2 ) ) ) ).

% msize_fmla.simps(5)
thf(fact_723_msize__fmla_Osimps_I6_J,axiom,
    ! [I2: i_t,Phi2: formula_a_t] :
      ( ( msize_fmla_a_t @ ( next_t_a @ I2 @ Phi2 ) )
      = ( suc @ ( msize_fmla_a_t @ Phi2 ) ) ) ).

% msize_fmla.simps(6)
thf(fact_724_msize__fmla_Osimps_I3_J,axiom,
    ! [Phi2: formula_a_t] :
      ( ( msize_fmla_a_t @ ( neg_a_t @ Phi2 ) )
      = ( suc @ ( msize_fmla_a_t @ Phi2 ) ) ) ).

% msize_fmla.simps(3)
thf(fact_725_msize__fmla_Osimps_I1_J,axiom,
    ! [B: $o] :
      ( ( msize_fmla_a_t @ ( bool_a_t @ B ) )
      = zero_zero_nat ) ).

% msize_fmla.simps(1)
thf(fact_726_msize__fmla_Osimps_I2_J,axiom,
    ! [A: a] :
      ( ( msize_fmla_a_t @ ( atom_a_t @ A ) )
      = zero_zero_nat ) ).

% msize_fmla.simps(2)
thf(fact_727_msize__fmla_Osimps_I4_J,axiom,
    ! [F: $o > $o > $o,Phi2: formula_a_t,Psi4: formula_a_t] :
      ( ( msize_fmla_a_t @ ( bin_a_t @ F @ Phi2 @ Psi4 ) )
      = ( suc @ ( plus_plus_nat @ ( msize_fmla_a_t @ Phi2 ) @ ( msize_fmla_a_t @ Psi4 ) ) ) ) ).

% msize_fmla.simps(4)
thf(fact_728_MDL_Osat_Osimps_I2_J,axiom,
    ! [Sigma: trace_a_t,A: a,I: nat] :
      ( ( sat_a_t @ Sigma @ ( atom_a_t @ A ) @ I )
      = ( member_a @ A @ ( gamma_a_t @ Sigma @ I ) ) ) ).

% MDL.sat.simps(2)
thf(fact_729_assms_I5_J,axiom,
    wf_fmla_a_t @ phi ).

% assms(5)
thf(fact_730_assms_I4_J,axiom,
    bounde209865433540700070la_a_t @ phi ).

% assms(4)
thf(fact_731_formula_Orel__inject_I6_J,axiom,
    ! [R2: a > a > $o,X61: i_t,X62: formula_a_t,Y61: i_t,Y62: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( next_t_a @ X61 @ X62 ) @ ( next_t_a @ Y61 @ Y62 ) )
      = ( ( X61 = Y61 )
        & ( rel_formula_a_a_t @ R2 @ X62 @ Y62 ) ) ) ).

% formula.rel_inject(6)
thf(fact_732_formula_Orel__intros_I6_J,axiom,
    ! [X61: i_t,Y61: i_t,R2: a > a > $o,X62: formula_a_t,Y62: formula_a_t] :
      ( ( X61 = Y61 )
     => ( ( rel_formula_a_a_t @ R2 @ X62 @ Y62 )
       => ( rel_formula_a_a_t @ R2 @ ( next_t_a @ X61 @ X62 ) @ ( next_t_a @ Y61 @ Y62 ) ) ) ) ).

% formula.rel_intros(6)
thf(fact_733_formula_Orel__eq,axiom,
    ( ( rel_formula_a_a_t
      @ ^ [Y4: a,Z2: a] : ( Y4 = Z2 ) )
    = ( ^ [Y4: formula_a_t,Z2: formula_a_t] : ( Y4 = Z2 ) ) ) ).

% formula.rel_eq
thf(fact_734_formula_Orel__refl,axiom,
    ! [Ra: a > a > $o,X: formula_a_t] :
      ( ! [X3: a] : ( Ra @ X3 @ X3 )
     => ( rel_formula_a_a_t @ Ra @ X @ X ) ) ).

% formula.rel_refl
thf(fact_735_formula_Orel__mono,axiom,
    ! [R2: a > a > $o,Ra: a > a > $o] :
      ( ( ord_less_eq_a_a_o @ R2 @ Ra )
     => ( ord_le4283549061549582176_a_t_o @ ( rel_formula_a_a_t @ R2 ) @ ( rel_formula_a_a_t @ Ra ) ) ) ).

% formula.rel_mono
thf(fact_736_formula_Orel__inject_I1_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y1: $o] :
      ( ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( bool_a_t @ Y1 ) )
      = ( X1 = Y1 ) ) ).

% formula.rel_inject(1)
thf(fact_737_formula_Orel__intros_I1_J,axiom,
    ! [X1: $o,Y1: $o,R2: a > a > $o] :
      ( ( X1 = Y1 )
     => ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( bool_a_t @ Y1 ) ) ) ).

% formula.rel_intros(1)
thf(fact_738_formula_Orel__inject_I4_J,axiom,
    ! [R2: a > a > $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) )
      = ( ( X41 = Y41 )
        & ( rel_formula_a_a_t @ R2 @ X42 @ Y42 )
        & ( rel_formula_a_a_t @ R2 @ X43 @ Y43 ) ) ) ).

% formula.rel_inject(4)
thf(fact_739_formula_Orel__inject_I3_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y32: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( neg_a_t @ Y32 ) )
      = ( rel_formula_a_a_t @ R2 @ X32 @ Y32 ) ) ).

% formula.rel_inject(3)
thf(fact_740_formula_Orel__intros_I4_J,axiom,
    ! [X41: $o > $o > $o,Y41: $o > $o > $o,R2: a > a > $o,X42: formula_a_t,Y42: formula_a_t,X43: formula_a_t,Y43: formula_a_t] :
      ( ( X41 = Y41 )
     => ( ( rel_formula_a_a_t @ R2 @ X42 @ Y42 )
       => ( ( rel_formula_a_a_t @ R2 @ X43 @ Y43 )
         => ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) ) ) ) ) ).

% formula.rel_intros(4)
thf(fact_741_formula_Orel__intros_I3_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y32: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ X32 @ Y32 )
     => ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( neg_a_t @ Y32 ) ) ) ).

% formula.rel_intros(3)
thf(fact_742_atms_Osimps_I5_J,axiom,
    ! [R: regex_a_t] :
      ( ( atms_a_t @ ( star_a_t @ R ) )
      = ( atms_a_t @ R ) ) ).

% atms.simps(5)
thf(fact_743_formula_Orel__intros_I2_J,axiom,
    ! [R2: a > a > $o,X22: a,Y22: a] :
      ( ( R2 @ X22 @ Y22 )
     => ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( atom_a_t @ Y22 ) ) ) ).

% formula.rel_intros(2)
thf(fact_744_formula_Orel__inject_I2_J,axiom,
    ! [R2: a > a > $o,X22: a,Y22: a] :
      ( ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( atom_a_t @ Y22 ) )
      = ( R2 @ X22 @ Y22 ) ) ).

% formula.rel_inject(2)
thf(fact_745_formula_Orel__inject_I8_J,axiom,
    ! [R2: a > a > $o,X81: formula_a_t,X82: i_t,X83: formula_a_t,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( until_a_t @ X81 @ X82 @ X83 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) )
      = ( ( rel_formula_a_a_t @ R2 @ X81 @ Y81 )
        & ( X82 = Y82 )
        & ( rel_formula_a_a_t @ R2 @ X83 @ Y83 ) ) ) ).

% formula.rel_inject(8)
thf(fact_746_formula_Orel__inject_I7_J,axiom,
    ! [R2: a > a > $o,X71: formula_a_t,X72: i_t,X73: formula_a_t,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( since_a_t @ X71 @ X72 @ X73 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) )
      = ( ( rel_formula_a_a_t @ R2 @ X71 @ Y71 )
        & ( X72 = Y72 )
        & ( rel_formula_a_a_t @ R2 @ X73 @ Y73 ) ) ) ).

% formula.rel_inject(7)
thf(fact_747_formula_Orel__inject_I5_J,axiom,
    ! [R2: a > a > $o,X51: i_t,X52: formula_a_t,Y51: i_t,Y522: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ X51 @ X52 ) @ ( prev_t_a @ Y51 @ Y522 ) )
      = ( ( X51 = Y51 )
        & ( rel_formula_a_a_t @ R2 @ X52 @ Y522 ) ) ) ).

% formula.rel_inject(5)
thf(fact_748_formula_Orel__intros_I8_J,axiom,
    ! [R2: a > a > $o,X81: formula_a_t,Y81: formula_a_t,X82: i_t,Y82: i_t,X83: formula_a_t,Y83: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ X81 @ Y81 )
     => ( ( X82 = Y82 )
       => ( ( rel_formula_a_a_t @ R2 @ X83 @ Y83 )
         => ( rel_formula_a_a_t @ R2 @ ( until_a_t @ X81 @ X82 @ X83 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ) ) ) ).

% formula.rel_intros(8)
thf(fact_749_formula_Orel__intros_I7_J,axiom,
    ! [R2: a > a > $o,X71: formula_a_t,Y71: formula_a_t,X72: i_t,Y72: i_t,X73: formula_a_t,Y73: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ X71 @ Y71 )
     => ( ( X72 = Y72 )
       => ( ( rel_formula_a_a_t @ R2 @ X73 @ Y73 )
         => ( rel_formula_a_a_t @ R2 @ ( since_a_t @ X71 @ X72 @ X73 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) ) ) ) ) ).

% formula.rel_intros(7)
thf(fact_750_formula_Orel__intros_I5_J,axiom,
    ! [X51: i_t,Y51: i_t,R2: a > a > $o,X52: formula_a_t,Y522: formula_a_t] :
      ( ( X51 = Y51 )
     => ( ( rel_formula_a_a_t @ R2 @ X52 @ Y522 )
       => ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ X51 @ X52 ) @ ( prev_t_a @ Y51 @ Y522 ) ) ) ) ).

% formula.rel_intros(5)
thf(fact_751_formula_Orel__distinct_I61_J,axiom,
    ! [R2: a > a > $o,X51: i_t,X52: formula_a_t,Y61: i_t,Y62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ X51 @ X52 ) @ ( next_t_a @ Y61 @ Y62 ) ) ).

% formula.rel_distinct(61)
thf(fact_752_formula_Orel__distinct_I62_J,axiom,
    ! [R2: a > a > $o,Y61: i_t,Y62: formula_a_t,X51: i_t,X52: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ Y61 @ Y62 ) @ ( prev_t_a @ X51 @ X52 ) ) ).

% formula.rel_distinct(62)
thf(fact_753_formula_Orel__distinct_I78_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X61: i_t,X62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( next_t_a @ X61 @ X62 ) ) ).

% formula.rel_distinct(78)
thf(fact_754_formula_Orel__distinct_I77_J,axiom,
    ! [R2: a > a > $o,X61: i_t,X62: formula_a_t,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ X61 @ X62 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(77)
thf(fact_755_formula_Orel__distinct_I70_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X51: i_t,X52: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( prev_t_a @ X51 @ X52 ) ) ).

% formula.rel_distinct(70)
thf(fact_756_formula_Orel__distinct_I69_J,axiom,
    ! [R2: a > a > $o,X51: i_t,X52: formula_a_t,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ X51 @ X52 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(69)
thf(fact_757_formula_Orel__distinct_I66_J,axiom,
    ! [R2: a > a > $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t,X51: i_t,X52: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ Y81 @ Y82 @ Y83 ) @ ( prev_t_a @ X51 @ X52 ) ) ).

% formula.rel_distinct(66)
thf(fact_758_formula_Orel__distinct_I65_J,axiom,
    ! [R2: a > a > $o,X51: i_t,X52: formula_a_t,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ X51 @ X52 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ).

% formula.rel_distinct(65)
thf(fact_759_formula_Orel__distinct_I73_J,axiom,
    ! [R2: a > a > $o,X61: i_t,X62: formula_a_t,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ X61 @ X62 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ).

% formula.rel_distinct(73)
thf(fact_760_formula_Orel__distinct_I74_J,axiom,
    ! [R2: a > a > $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t,X61: i_t,X62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ Y81 @ Y82 @ Y83 ) @ ( next_t_a @ X61 @ X62 ) ) ).

% formula.rel_distinct(74)
thf(fact_761_formula_Orel__distinct_I76_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X61: i_t,X62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( next_t_a @ X61 @ X62 ) ) ).

% formula.rel_distinct(76)
thf(fact_762_formula_Orel__distinct_I75_J,axiom,
    ! [R2: a > a > $o,X61: i_t,X62: formula_a_t,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ X61 @ X62 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(75)
thf(fact_763_formula_Orel__distinct_I68_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X51: i_t,X52: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( prev_t_a @ X51 @ X52 ) ) ).

% formula.rel_distinct(68)
thf(fact_764_formula_Orel__distinct_I67_J,axiom,
    ! [R2: a > a > $o,X51: i_t,X52: formula_a_t,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ X51 @ X52 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(67)
thf(fact_765_formula_Orel__distinct_I88_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.rel_distinct(88)
thf(fact_766_formula_Orel__distinct_I87_J,axiom,
    ! [R2: a > a > $o,X81: formula_a_t,X82: i_t,X83: formula_a_t,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ X81 @ X82 @ X83 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(87)
thf(fact_767_formula_Orel__distinct_I89_J,axiom,
    ! [R2: a > a > $o,X91: i_t,X92: regex_a_t,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ X91 @ X92 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(89)
thf(fact_768_formula_Orel__distinct_I90_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X91: i_t,X92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( matchP_t_a @ X91 @ X92 ) ) ).

% formula.rel_distinct(90)
thf(fact_769_formula_Orel__distinct_I86_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X81: formula_a_t,X82: i_t,X83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( until_a_t @ X81 @ X82 @ X83 ) ) ).

% formula.rel_distinct(86)
thf(fact_770_formula_Orel__distinct_I85_J,axiom,
    ! [R2: a > a > $o,X81: formula_a_t,X82: i_t,X83: formula_a_t,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ X81 @ X82 @ X83 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(85)
thf(fact_771_formula_Orel__distinct_I64_J,axiom,
    ! [R2: a > a > $o,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t,X51: i_t,X52: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ Y71 @ Y72 @ Y73 ) @ ( prev_t_a @ X51 @ X52 ) ) ).

% formula.rel_distinct(64)
thf(fact_772_formula_Orel__distinct_I63_J,axiom,
    ! [R2: a > a > $o,X51: i_t,X52: formula_a_t,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ X51 @ X52 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) ) ).

% formula.rel_distinct(63)
thf(fact_773_formula_Orel__distinct_I71_J,axiom,
    ! [R2: a > a > $o,X61: i_t,X62: formula_a_t,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ X61 @ X62 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) ) ).

% formula.rel_distinct(71)
thf(fact_774_formula_Orel__distinct_I72_J,axiom,
    ! [R2: a > a > $o,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t,X61: i_t,X62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ Y71 @ Y72 @ Y73 ) @ ( next_t_a @ X61 @ X62 ) ) ).

% formula.rel_distinct(72)
thf(fact_775_formula_Orel__distinct_I39_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y61: i_t,Y62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( next_t_a @ Y61 @ Y62 ) ) ).

% formula.rel_distinct(39)
thf(fact_776_formula_Orel__distinct_I40_J,axiom,
    ! [R2: a > a > $o,Y61: i_t,Y62: formula_a_t,X32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ Y61 @ Y62 ) @ ( neg_a_t @ X32 ) ) ).

% formula.rel_distinct(40)
thf(fact_777_formula_Orel__distinct_I51_J,axiom,
    ! [R2: a > a > $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y61: i_t,Y62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( next_t_a @ Y61 @ Y62 ) ) ).

% formula.rel_distinct(51)
thf(fact_778_formula_Orel__distinct_I52_J,axiom,
    ! [R2: a > a > $o,Y61: i_t,Y62: formula_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ Y61 @ Y62 ) @ ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.rel_distinct(52)
thf(fact_779_formula_Orel__distinct_I37_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y51: i_t,Y522: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( prev_t_a @ Y51 @ Y522 ) ) ).

% formula.rel_distinct(37)
thf(fact_780_formula_Orel__distinct_I38_J,axiom,
    ! [R2: a > a > $o,Y51: i_t,Y522: formula_a_t,X32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ Y51 @ Y522 ) @ ( neg_a_t @ X32 ) ) ).

% formula.rel_distinct(38)
thf(fact_781_formula_Orel__distinct_I49_J,axiom,
    ! [R2: a > a > $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y51: i_t,Y522: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( prev_t_a @ Y51 @ Y522 ) ) ).

% formula.rel_distinct(49)
thf(fact_782_formula_Orel__distinct_I50_J,axiom,
    ! [R2: a > a > $o,Y51: i_t,Y522: formula_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ Y51 @ Y522 ) @ ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.rel_distinct(50)
thf(fact_783_formula_Orel__distinct_I84_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.rel_distinct(84)
thf(fact_784_formula_Orel__distinct_I83_J,axiom,
    ! [R2: a > a > $o,X71: formula_a_t,X72: i_t,X73: formula_a_t,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ X71 @ X72 @ X73 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(83)
thf(fact_785_formula_Orel__distinct_I80_J,axiom,
    ! [R2: a > a > $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ Y81 @ Y82 @ Y83 ) @ ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.rel_distinct(80)
thf(fact_786_formula_Orel__distinct_I79_J,axiom,
    ! [R2: a > a > $o,X71: formula_a_t,X72: i_t,X73: formula_a_t,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ X71 @ X72 @ X73 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ).

% formula.rel_distinct(79)
thf(fact_787_formula_Orel__distinct_I82_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X71: formula_a_t,X72: i_t,X73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( since_a_t @ X71 @ X72 @ X73 ) ) ).

% formula.rel_distinct(82)
thf(fact_788_formula_Orel__distinct_I81_J,axiom,
    ! [R2: a > a > $o,X71: formula_a_t,X72: i_t,X73: formula_a_t,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ X71 @ X72 @ X73 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(81)
thf(fact_789_formula_Orel__distinct_I47_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(47)
thf(fact_790_formula_Orel__distinct_I48_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( neg_a_t @ X32 ) ) ).

% formula.rel_distinct(48)
thf(fact_791_formula_Orel__distinct_I59_J,axiom,
    ! [R2: a > a > $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(59)
thf(fact_792_formula_Orel__distinct_I60_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.rel_distinct(60)
thf(fact_793_formula_Orel__distinct_I43_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ).

% formula.rel_distinct(43)
thf(fact_794_formula_Orel__distinct_I44_J,axiom,
    ! [R2: a > a > $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t,X32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ Y81 @ Y82 @ Y83 ) @ ( neg_a_t @ X32 ) ) ).

% formula.rel_distinct(44)
thf(fact_795_formula_Orel__distinct_I55_J,axiom,
    ! [R2: a > a > $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ).

% formula.rel_distinct(55)
thf(fact_796_formula_Orel__distinct_I56_J,axiom,
    ! [R2: a > a > $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ Y81 @ Y82 @ Y83 ) @ ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.rel_distinct(56)
thf(fact_797_formula_Orel__distinct_I45_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(45)
thf(fact_798_formula_Orel__distinct_I46_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( neg_a_t @ X32 ) ) ).

% formula.rel_distinct(46)
thf(fact_799_formula_Orel__distinct_I57_J,axiom,
    ! [R2: a > a > $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(57)
thf(fact_800_formula_Orel__distinct_I58_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.rel_distinct(58)
thf(fact_801_formula_Orel__distinct_I41_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) ) ).

% formula.rel_distinct(41)
thf(fact_802_formula_Orel__distinct_I42_J,axiom,
    ! [R2: a > a > $o,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t,X32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ Y71 @ Y72 @ Y73 ) @ ( neg_a_t @ X32 ) ) ).

% formula.rel_distinct(42)
thf(fact_803_formula_Orel__distinct_I53_J,axiom,
    ! [R2: a > a > $o,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ X41 @ X42 @ X43 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) ) ).

% formula.rel_distinct(53)
thf(fact_804_formula_Orel__distinct_I54_J,axiom,
    ! [R2: a > a > $o,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t,X41: $o > $o > $o,X42: formula_a_t,X43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ Y71 @ Y72 @ Y73 ) @ ( bin_a_t @ X41 @ X42 @ X43 ) ) ).

% formula.rel_distinct(54)
thf(fact_805_formula_Orel__distinct_I35_J,axiom,
    ! [R2: a > a > $o,X32: formula_a_t,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ X32 ) @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) ) ).

% formula.rel_distinct(35)
thf(fact_806_formula_Orel__distinct_I36_J,axiom,
    ! [R2: a > a > $o,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t,X32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) @ ( neg_a_t @ X32 ) ) ).

% formula.rel_distinct(36)
thf(fact_807_formula_Orel__distinct_I9_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y61: i_t,Y62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( next_t_a @ Y61 @ Y62 ) ) ).

% formula.rel_distinct(9)
thf(fact_808_formula_Orel__distinct_I10_J,axiom,
    ! [R2: a > a > $o,Y61: i_t,Y62: formula_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ Y61 @ Y62 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(10)
thf(fact_809_formula_Orel__distinct_I7_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y51: i_t,Y522: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( prev_t_a @ Y51 @ Y522 ) ) ).

% formula.rel_distinct(7)
thf(fact_810_formula_Orel__distinct_I8_J,axiom,
    ! [R2: a > a > $o,Y51: i_t,Y522: formula_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ Y51 @ Y522 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(8)
thf(fact_811_formula_Orel__distinct_I17_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(17)
thf(fact_812_formula_Orel__distinct_I18_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(18)
thf(fact_813_formula_Orel__distinct_I13_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ).

% formula.rel_distinct(13)
thf(fact_814_formula_Orel__distinct_I14_J,axiom,
    ! [R2: a > a > $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ Y81 @ Y82 @ Y83 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(14)
thf(fact_815_formula_Orel__distinct_I15_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(15)
thf(fact_816_formula_Orel__distinct_I16_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(16)
thf(fact_817_formula_Orel__distinct_I11_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) ) ).

% formula.rel_distinct(11)
thf(fact_818_formula_Orel__distinct_I12_J,axiom,
    ! [R2: a > a > $o,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ Y71 @ Y72 @ Y73 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(12)
thf(fact_819_formula_Orel__distinct_I3_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( neg_a_t @ Y32 ) ) ).

% formula.rel_distinct(3)
thf(fact_820_formula_Orel__distinct_I4_J,axiom,
    ! [R2: a > a > $o,Y32: formula_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ Y32 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(4)
thf(fact_821_formula_Orel__distinct_I5_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) ) ).

% formula.rel_distinct(5)
thf(fact_822_formula_Orel__distinct_I6_J,axiom,
    ! [R2: a > a > $o,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(6)
thf(fact_823_formula_Orel__distinct_I26_J,axiom,
    ! [R2: a > a > $o,Y61: i_t,Y62: formula_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( next_t_a @ Y61 @ Y62 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(26)
thf(fact_824_formula_Orel__distinct_I25_J,axiom,
    ! [R2: a > a > $o,X22: a,Y61: i_t,Y62: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( next_t_a @ Y61 @ Y62 ) ) ).

% formula.rel_distinct(25)
thf(fact_825_formula_Orel__distinct_I23_J,axiom,
    ! [R2: a > a > $o,X22: a,Y51: i_t,Y522: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( prev_t_a @ Y51 @ Y522 ) ) ).

% formula.rel_distinct(23)
thf(fact_826_formula_Orel__distinct_I24_J,axiom,
    ! [R2: a > a > $o,Y51: i_t,Y522: formula_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( prev_t_a @ Y51 @ Y522 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(24)
thf(fact_827_formula_Orel__distinct_I29_J,axiom,
    ! [R2: a > a > $o,X22: a,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( until_a_t @ Y81 @ Y82 @ Y83 ) ) ).

% formula.rel_distinct(29)
thf(fact_828_formula_Orel__distinct_I30_J,axiom,
    ! [R2: a > a > $o,Y81: formula_a_t,Y82: i_t,Y83: formula_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( until_a_t @ Y81 @ Y82 @ Y83 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(30)
thf(fact_829_formula_Orel__distinct_I34_J,axiom,
    ! [R2: a > a > $o,Y101: i_t,Y102: regex_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ Y101 @ Y102 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(34)
thf(fact_830_formula_Orel__distinct_I33_J,axiom,
    ! [R2: a > a > $o,X22: a,Y101: i_t,Y102: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ).

% formula.rel_distinct(33)
thf(fact_831_formula_Orel__distinct_I32_J,axiom,
    ! [R2: a > a > $o,Y91: i_t,Y92: regex_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ Y91 @ Y92 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(32)
thf(fact_832_formula_Orel__distinct_I31_J,axiom,
    ! [R2: a > a > $o,X22: a,Y91: i_t,Y92: regex_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ).

% formula.rel_distinct(31)
thf(fact_833_formula_Orel__distinct_I27_J,axiom,
    ! [R2: a > a > $o,X22: a,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( since_a_t @ Y71 @ Y72 @ Y73 ) ) ).

% formula.rel_distinct(27)
thf(fact_834_formula_Orel__distinct_I28_J,axiom,
    ! [R2: a > a > $o,Y71: formula_a_t,Y72: i_t,Y73: formula_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( since_a_t @ Y71 @ Y72 @ Y73 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(28)
thf(fact_835_formula_Orel__distinct_I19_J,axiom,
    ! [R2: a > a > $o,X22: a,Y32: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( neg_a_t @ Y32 ) ) ).

% formula.rel_distinct(19)
thf(fact_836_formula_Orel__distinct_I20_J,axiom,
    ! [R2: a > a > $o,Y32: formula_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( neg_a_t @ Y32 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(20)
thf(fact_837_formula_Orel__distinct_I21_J,axiom,
    ! [R2: a > a > $o,X22: a,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ X22 ) @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) ) ).

% formula.rel_distinct(21)
thf(fact_838_formula_Orel__distinct_I22_J,axiom,
    ! [R2: a > a > $o,Y41: $o > $o > $o,Y42: formula_a_t,Y43: formula_a_t,X22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bin_a_t @ Y41 @ Y42 @ Y43 ) @ ( atom_a_t @ X22 ) ) ).

% formula.rel_distinct(22)
thf(fact_839_formula_Orel__distinct_I1_J,axiom,
    ! [R2: a > a > $o,X1: $o,Y22: a] :
      ~ ( rel_formula_a_a_t @ R2 @ ( bool_a_t @ X1 ) @ ( atom_a_t @ Y22 ) ) ).

% formula.rel_distinct(1)
thf(fact_840_formula_Orel__distinct_I2_J,axiom,
    ! [R2: a > a > $o,Y22: a,X1: $o] :
      ~ ( rel_formula_a_a_t @ R2 @ ( atom_a_t @ Y22 ) @ ( bool_a_t @ X1 ) ) ).

% formula.rel_distinct(2)
thf(fact_841_atms__rderive,axiom,
    ! [Phi2: formula_a_t,R: regex_a_t] :
      ( ( member_formula_a_t @ Phi2 @ ( atms_a_t @ ( rderive_a_t @ R ) ) )
     => ( ( member_formula_a_t @ Phi2 @ ( atms_a_t @ R ) )
        | ( Phi2
          = ( bool_a_t @ $false ) ) ) ) ).

% atms_rderive
thf(fact_842_Ball__atLeastLessThan__reindex,axiom,
    ! [J: nat,I: nat,P: nat > $o] :
      ( ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_or4665077453230672383an_nat @ J @ I ) )
           => ( P @ ( suc @ X2 ) ) ) )
      = ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_or6659071591806873216st_nat @ J @ I ) )
           => ( P @ X2 ) ) ) ) ).

% Ball_atLeastLessThan_reindex
thf(fact_843_bounded__future__fmla_Osimps_I5_J,axiom,
    ! [I2: i_t,Phi2: formula_a_t] :
      ( ( bounde209865433540700070la_a_t @ ( prev_t_a @ I2 @ Phi2 ) )
      = ( bounde209865433540700070la_a_t @ Phi2 ) ) ).

% bounded_future_fmla.simps(5)
thf(fact_844_bounded__future__fmla_Osimps_I7_J,axiom,
    ! [Phi2: formula_a_t,I2: i_t,Psi4: formula_a_t] :
      ( ( bounde209865433540700070la_a_t @ ( since_a_t @ Phi2 @ I2 @ Psi4 ) )
      = ( ( bounde209865433540700070la_a_t @ Phi2 )
        & ( bounde209865433540700070la_a_t @ Psi4 ) ) ) ).

% bounded_future_fmla.simps(7)
thf(fact_845_wf__fmla_Osimps_I5_J,axiom,
    ! [I2: i_t,Phi2: formula_a_t] :
      ( ( wf_fmla_a_t @ ( prev_t_a @ I2 @ Phi2 ) )
      = ( wf_fmla_a_t @ Phi2 ) ) ).

% wf_fmla.simps(5)
thf(fact_846_wf__fmla_Osimps_I7_J,axiom,
    ! [Phi2: formula_a_t,I2: i_t,Psi4: formula_a_t] :
      ( ( wf_fmla_a_t @ ( since_a_t @ Phi2 @ I2 @ Psi4 ) )
      = ( ( wf_fmla_a_t @ Phi2 )
        & ( wf_fmla_a_t @ Psi4 ) ) ) ).

% wf_fmla.simps(7)
thf(fact_847_wf__fmla_Osimps_I8_J,axiom,
    ! [Phi2: formula_a_t,I2: i_t,Psi4: formula_a_t] :
      ( ( wf_fmla_a_t @ ( until_a_t @ Phi2 @ I2 @ Psi4 ) )
      = ( ( wf_fmla_a_t @ Phi2 )
        & ( wf_fmla_a_t @ Psi4 ) ) ) ).

% wf_fmla.simps(8)
thf(fact_848_wf__fmla_Osimps_I2_J,axiom,
    ! [A: a] : ( wf_fmla_a_t @ ( atom_a_t @ A ) ) ).

% wf_fmla.simps(2)
thf(fact_849_bounded__future__fmla_Osimps_I2_J,axiom,
    ! [A: a] : ( bounde209865433540700070la_a_t @ ( atom_a_t @ A ) ) ).

% bounded_future_fmla.simps(2)
thf(fact_850_regex_Orel__intros_I5_J,axiom,
    ! [R2: a > a > $o,X5: regex_a_t,Y52: regex_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ X5 @ Y52 )
     => ( rel_regex_a_a_t @ R2 @ ( star_a_t @ X5 ) @ ( star_a_t @ Y52 ) ) ) ).

% regex.rel_intros(5)
thf(fact_851_regex_Orel__inject_I5_J,axiom,
    ! [R2: a > a > $o,X5: regex_a_t,Y52: regex_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ ( star_a_t @ X5 ) @ ( star_a_t @ Y52 ) )
      = ( rel_regex_a_a_t @ R2 @ X5 @ Y52 ) ) ).

% regex.rel_inject(5)
thf(fact_852_wf__fmla_Osimps_I3_J,axiom,
    ! [Phi2: formula_a_t] :
      ( ( wf_fmla_a_t @ ( neg_a_t @ Phi2 ) )
      = ( wf_fmla_a_t @ Phi2 ) ) ).

% wf_fmla.simps(3)
thf(fact_853_wf__fmla_Osimps_I4_J,axiom,
    ! [F: $o > $o > $o,Phi2: formula_a_t,Psi4: formula_a_t] :
      ( ( wf_fmla_a_t @ ( bin_a_t @ F @ Phi2 @ Psi4 ) )
      = ( ( wf_fmla_a_t @ Phi2 )
        & ( wf_fmla_a_t @ Psi4 ) ) ) ).

% wf_fmla.simps(4)
thf(fact_854_wf__fmla_Osimps_I1_J,axiom,
    ! [B: $o] : ( wf_fmla_a_t @ ( bool_a_t @ B ) ) ).

% wf_fmla.simps(1)
thf(fact_855_bounded__future__fmla_Osimps_I3_J,axiom,
    ! [Phi2: formula_a_t] :
      ( ( bounde209865433540700070la_a_t @ ( neg_a_t @ Phi2 ) )
      = ( bounde209865433540700070la_a_t @ Phi2 ) ) ).

% bounded_future_fmla.simps(3)
thf(fact_856_bounded__future__fmla_Osimps_I4_J,axiom,
    ! [F: $o > $o > $o,Phi2: formula_a_t,Psi4: formula_a_t] :
      ( ( bounde209865433540700070la_a_t @ ( bin_a_t @ F @ Phi2 @ Psi4 ) )
      = ( ( bounde209865433540700070la_a_t @ Phi2 )
        & ( bounde209865433540700070la_a_t @ Psi4 ) ) ) ).

% bounded_future_fmla.simps(4)
thf(fact_857_bounded__future__fmla_Osimps_I1_J,axiom,
    ! [B: $o] : ( bounde209865433540700070la_a_t @ ( bool_a_t @ B ) ) ).

% bounded_future_fmla.simps(1)
thf(fact_858_regex_Orel__mono,axiom,
    ! [R2: a > a > $o,Ra: a > a > $o] :
      ( ( ord_less_eq_a_a_o @ R2 @ Ra )
     => ( ord_le4639910931513490590_a_t_o @ ( rel_regex_a_a_t @ R2 ) @ ( rel_regex_a_a_t @ Ra ) ) ) ).

% regex.rel_mono
thf(fact_859_regex_Orel__refl,axiom,
    ! [Ra: a > a > $o,X: regex_a_t] :
      ( ! [X3: a] : ( Ra @ X3 @ X3 )
     => ( rel_regex_a_a_t @ Ra @ X @ X ) ) ).

% regex.rel_refl
thf(fact_860_regex_Orel__eq,axiom,
    ( ( rel_regex_a_a_t
      @ ^ [Y4: a,Z2: a] : ( Y4 = Z2 ) )
    = ( ^ [Y4: regex_a_t,Z2: regex_a_t] : ( Y4 = Z2 ) ) ) ).

% regex.rel_eq
thf(fact_861_bounded__future__fmla_Osimps_I6_J,axiom,
    ! [I2: i_t,Phi2: formula_a_t] :
      ( ( bounde209865433540700070la_a_t @ ( next_t_a @ I2 @ Phi2 ) )
      = ( bounde209865433540700070la_a_t @ Phi2 ) ) ).

% bounded_future_fmla.simps(6)
thf(fact_862_regex_Orel__intros_I4_J,axiom,
    ! [R2: a > a > $o,X41: regex_a_t,Y41: regex_a_t,X42: regex_a_t,Y42: regex_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ X41 @ Y41 )
     => ( ( rel_regex_a_a_t @ R2 @ X42 @ Y42 )
       => ( rel_regex_a_a_t @ R2 @ ( times_a_t @ X41 @ X42 ) @ ( times_a_t @ Y41 @ Y42 ) ) ) ) ).

% regex.rel_intros(4)
thf(fact_863_regex_Orel__inject_I4_J,axiom,
    ! [R2: a > a > $o,X41: regex_a_t,X42: regex_a_t,Y41: regex_a_t,Y42: regex_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ ( times_a_t @ X41 @ X42 ) @ ( times_a_t @ Y41 @ Y42 ) )
      = ( ( rel_regex_a_a_t @ R2 @ X41 @ Y41 )
        & ( rel_regex_a_a_t @ R2 @ X42 @ Y42 ) ) ) ).

% regex.rel_inject(4)
thf(fact_864_wf__fmla_Osimps_I6_J,axiom,
    ! [I2: i_t,Phi2: formula_a_t] :
      ( ( wf_fmla_a_t @ ( next_t_a @ I2 @ Phi2 ) )
      = ( wf_fmla_a_t @ Phi2 ) ) ).

% wf_fmla.simps(6)
thf(fact_865_regex_Orel__intros_I3_J,axiom,
    ! [R2: a > a > $o,X31: regex_a_t,Y31: regex_a_t,X322: regex_a_t,Y322: regex_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ X31 @ Y31 )
     => ( ( rel_regex_a_a_t @ R2 @ X322 @ Y322 )
       => ( rel_regex_a_a_t @ R2 @ ( plus_a_t @ X31 @ X322 ) @ ( plus_a_t @ Y31 @ Y322 ) ) ) ) ).

% regex.rel_intros(3)
thf(fact_866_regex_Orel__inject_I3_J,axiom,
    ! [R2: a > a > $o,X31: regex_a_t,X322: regex_a_t,Y31: regex_a_t,Y322: regex_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ ( plus_a_t @ X31 @ X322 ) @ ( plus_a_t @ Y31 @ Y322 ) )
      = ( ( rel_regex_a_a_t @ R2 @ X31 @ Y31 )
        & ( rel_regex_a_a_t @ R2 @ X322 @ Y322 ) ) ) ).

% regex.rel_inject(3)
thf(fact_867_formula_Orel__intros_I10_J,axiom,
    ! [X101: i_t,Y101: i_t,R2: a > a > $o,X102: regex_a_t,Y102: regex_a_t] :
      ( ( X101 = Y101 )
     => ( ( rel_regex_a_a_t @ R2 @ X102 @ Y102 )
       => ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ X101 @ X102 ) @ ( matchF_t_a @ Y101 @ Y102 ) ) ) ) ).

% formula.rel_intros(10)
thf(fact_868_formula_Orel__inject_I10_J,axiom,
    ! [R2: a > a > $o,X101: i_t,X102: regex_a_t,Y101: i_t,Y102: regex_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( matchF_t_a @ X101 @ X102 ) @ ( matchF_t_a @ Y101 @ Y102 ) )
      = ( ( X101 = Y101 )
        & ( rel_regex_a_a_t @ R2 @ X102 @ Y102 ) ) ) ).

% formula.rel_inject(10)
thf(fact_869_formula_Orel__intros_I9_J,axiom,
    ! [X91: i_t,Y91: i_t,R2: a > a > $o,X92: regex_a_t,Y92: regex_a_t] :
      ( ( X91 = Y91 )
     => ( ( rel_regex_a_a_t @ R2 @ X92 @ Y92 )
       => ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ X91 @ X92 ) @ ( matchP_t_a @ Y91 @ Y92 ) ) ) ) ).

% formula.rel_intros(9)
thf(fact_870_formula_Orel__inject_I9_J,axiom,
    ! [R2: a > a > $o,X91: i_t,X92: regex_a_t,Y91: i_t,Y92: regex_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ ( matchP_t_a @ X91 @ X92 ) @ ( matchP_t_a @ Y91 @ Y92 ) )
      = ( ( X91 = Y91 )
        & ( rel_regex_a_a_t @ R2 @ X92 @ Y92 ) ) ) ).

% formula.rel_inject(9)
thf(fact_871_regex_Orel__intros_I2_J,axiom,
    ! [R2: a > a > $o,X22: formula_a_t,Y22: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ X22 @ Y22 )
     => ( rel_regex_a_a_t @ R2 @ ( symbol_a_t @ X22 ) @ ( symbol_a_t @ Y22 ) ) ) ).

% regex.rel_intros(2)
thf(fact_872_regex_Orel__inject_I2_J,axiom,
    ! [R2: a > a > $o,X22: formula_a_t,Y22: formula_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ ( symbol_a_t @ X22 ) @ ( symbol_a_t @ Y22 ) )
      = ( rel_formula_a_a_t @ R2 @ X22 @ Y22 ) ) ).

% regex.rel_inject(2)
thf(fact_873_regex_Orel__intros_I1_J,axiom,
    ! [R2: a > a > $o,X1: formula_a_t,Y1: formula_a_t] :
      ( ( rel_formula_a_a_t @ R2 @ X1 @ Y1 )
     => ( rel_regex_a_a_t @ R2 @ ( lookahead_a_t @ X1 ) @ ( lookahead_a_t @ Y1 ) ) ) ).

% regex.rel_intros(1)
thf(fact_874_regex_Orel__inject_I1_J,axiom,
    ! [R2: a > a > $o,X1: formula_a_t,Y1: formula_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ ( lookahead_a_t @ X1 ) @ ( lookahead_a_t @ Y1 ) )
      = ( rel_formula_a_a_t @ R2 @ X1 @ Y1 ) ) ).

% regex.rel_inject(1)
thf(fact_875_regex_Orel__distinct_I12_J,axiom,
    ! [R2: a > a > $o,Y41: regex_a_t,Y42: regex_a_t,X22: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( times_a_t @ Y41 @ Y42 ) @ ( symbol_a_t @ X22 ) ) ).

% regex.rel_distinct(12)
thf(fact_876_regex_Orel__distinct_I11_J,axiom,
    ! [R2: a > a > $o,X22: formula_a_t,Y41: regex_a_t,Y42: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( symbol_a_t @ X22 ) @ ( times_a_t @ Y41 @ Y42 ) ) ).

% regex.rel_distinct(11)
thf(fact_877_regex_Orel__distinct_I20_J,axiom,
    ! [R2: a > a > $o,Y52: regex_a_t,X41: regex_a_t,X42: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( star_a_t @ Y52 ) @ ( times_a_t @ X41 @ X42 ) ) ).

% regex.rel_distinct(20)
thf(fact_878_regex_Orel__distinct_I19_J,axiom,
    ! [R2: a > a > $o,X41: regex_a_t,X42: regex_a_t,Y52: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( times_a_t @ X41 @ X42 ) @ ( star_a_t @ Y52 ) ) ).

% regex.rel_distinct(19)
thf(fact_879_regex_Orel__distinct_I15_J,axiom,
    ! [R2: a > a > $o,X31: regex_a_t,X322: regex_a_t,Y41: regex_a_t,Y42: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( plus_a_t @ X31 @ X322 ) @ ( times_a_t @ Y41 @ Y42 ) ) ).

% regex.rel_distinct(15)
thf(fact_880_regex_Orel__distinct_I16_J,axiom,
    ! [R2: a > a > $o,Y41: regex_a_t,Y42: regex_a_t,X31: regex_a_t,X322: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( times_a_t @ Y41 @ Y42 ) @ ( plus_a_t @ X31 @ X322 ) ) ).

% regex.rel_distinct(16)
thf(fact_881_regex_Orel__distinct_I14_J,axiom,
    ! [R2: a > a > $o,Y52: regex_a_t,X22: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( star_a_t @ Y52 ) @ ( symbol_a_t @ X22 ) ) ).

% regex.rel_distinct(14)
thf(fact_882_regex_Orel__distinct_I13_J,axiom,
    ! [R2: a > a > $o,X22: formula_a_t,Y52: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( symbol_a_t @ X22 ) @ ( star_a_t @ Y52 ) ) ).

% regex.rel_distinct(13)
thf(fact_883_regex_Orel__distinct_I9_J,axiom,
    ! [R2: a > a > $o,X22: formula_a_t,Y31: regex_a_t,Y322: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( symbol_a_t @ X22 ) @ ( plus_a_t @ Y31 @ Y322 ) ) ).

% regex.rel_distinct(9)
thf(fact_884_regex_Orel__distinct_I10_J,axiom,
    ! [R2: a > a > $o,Y31: regex_a_t,Y322: regex_a_t,X22: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( plus_a_t @ Y31 @ Y322 ) @ ( symbol_a_t @ X22 ) ) ).

% regex.rel_distinct(10)
thf(fact_885_regex_Orel__distinct_I17_J,axiom,
    ! [R2: a > a > $o,X31: regex_a_t,X322: regex_a_t,Y52: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( plus_a_t @ X31 @ X322 ) @ ( star_a_t @ Y52 ) ) ).

% regex.rel_distinct(17)
thf(fact_886_regex_Orel__distinct_I18_J,axiom,
    ! [R2: a > a > $o,Y52: regex_a_t,X31: regex_a_t,X322: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( star_a_t @ Y52 ) @ ( plus_a_t @ X31 @ X322 ) ) ).

% regex.rel_distinct(18)
thf(fact_887_regex_Orel__distinct_I6_J,axiom,
    ! [R2: a > a > $o,Y41: regex_a_t,Y42: regex_a_t,X1: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( times_a_t @ Y41 @ Y42 ) @ ( lookahead_a_t @ X1 ) ) ).

% regex.rel_distinct(6)
thf(fact_888_regex_Orel__distinct_I5_J,axiom,
    ! [R2: a > a > $o,X1: formula_a_t,Y41: regex_a_t,Y42: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( lookahead_a_t @ X1 ) @ ( times_a_t @ Y41 @ Y42 ) ) ).

% regex.rel_distinct(5)
thf(fact_889_regex_Orel__distinct_I1_J,axiom,
    ! [R2: a > a > $o,X1: formula_a_t,Y22: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( lookahead_a_t @ X1 ) @ ( symbol_a_t @ Y22 ) ) ).

% regex.rel_distinct(1)
thf(fact_890_regex_Orel__distinct_I2_J,axiom,
    ! [R2: a > a > $o,Y22: formula_a_t,X1: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( symbol_a_t @ Y22 ) @ ( lookahead_a_t @ X1 ) ) ).

% regex.rel_distinct(2)
thf(fact_891_regex_Orel__distinct_I8_J,axiom,
    ! [R2: a > a > $o,Y52: regex_a_t,X1: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( star_a_t @ Y52 ) @ ( lookahead_a_t @ X1 ) ) ).

% regex.rel_distinct(8)
thf(fact_892_regex_Orel__distinct_I7_J,axiom,
    ! [R2: a > a > $o,X1: formula_a_t,Y52: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( lookahead_a_t @ X1 ) @ ( star_a_t @ Y52 ) ) ).

% regex.rel_distinct(7)
thf(fact_893_regex_Orel__distinct_I4_J,axiom,
    ! [R2: a > a > $o,Y31: regex_a_t,Y322: regex_a_t,X1: formula_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( plus_a_t @ Y31 @ Y322 ) @ ( lookahead_a_t @ X1 ) ) ).

% regex.rel_distinct(4)
thf(fact_894_regex_Orel__distinct_I3_J,axiom,
    ! [R2: a > a > $o,X1: formula_a_t,Y31: regex_a_t,Y322: regex_a_t] :
      ~ ( rel_regex_a_a_t @ R2 @ ( lookahead_a_t @ X1 ) @ ( plus_a_t @ Y31 @ Y322 ) ) ).

% regex.rel_distinct(3)
thf(fact_895_wf__regex_Osimps_I2_J,axiom,
    ! [Phi2: formula_a_t] :
      ( ( wf_regex_a_t @ ( symbol_a_t @ Phi2 ) )
      = ( wf_fmla_a_t @ Phi2 ) ) ).

% wf_regex.simps(2)
thf(fact_896_regex_Orel__cases,axiom,
    ! [R2: a > a > $o,A: regex_a_t,B: regex_a_t] :
      ( ( rel_regex_a_a_t @ R2 @ A @ B )
     => ( ! [X3: formula_a_t] :
            ( ( A
              = ( lookahead_a_t @ X3 ) )
           => ! [Y2: formula_a_t] :
                ( ( B
                  = ( lookahead_a_t @ Y2 ) )
               => ~ ( rel_formula_a_a_t @ R2 @ X3 @ Y2 ) ) )
       => ( ! [Xa2: formula_a_t] :
              ( ( A
                = ( symbol_a_t @ Xa2 ) )
             => ! [Ya: formula_a_t] :
                  ( ( B
                    = ( symbol_a_t @ Ya ) )
                 => ~ ( rel_formula_a_a_t @ R2 @ Xa2 @ Ya ) ) )
         => ( ! [X1a: regex_a_t,X2a: regex_a_t] :
                ( ( A
                  = ( plus_a_t @ X1a @ X2a ) )
               => ! [Y1a: regex_a_t,Y2a: regex_a_t] :
                    ( ( B
                      = ( plus_a_t @ Y1a @ Y2a ) )
                   => ( ( rel_regex_a_a_t @ R2 @ X1a @ Y1a )
                     => ~ ( rel_regex_a_a_t @ R2 @ X2a @ Y2a ) ) ) )
           => ( ! [X1b: regex_a_t,X2b: regex_a_t] :
                  ( ( A
                    = ( times_a_t @ X1b @ X2b ) )
                 => ! [Y1b: regex_a_t,Y2b: regex_a_t] :
                      ( ( B
                        = ( times_a_t @ Y1b @ Y2b ) )
                     => ( ( rel_regex_a_a_t @ R2 @ X1b @ Y1b )
                       => ~ ( rel_regex_a_a_t @ R2 @ X2b @ Y2b ) ) ) )
             => ~ ! [Xb: regex_a_t] :
                    ( ( A
                      = ( star_a_t @ Xb ) )
                   => ! [Yb: regex_a_t] :
                        ( ( B
                          = ( star_a_t @ Yb ) )
                       => ~ ( rel_regex_a_a_t @ R2 @ Xb @ Yb ) ) ) ) ) ) ) ) ).

% regex.rel_cases
thf(fact_897_wf__regex_Oelims_I2_J,axiom,
    ! [X: regex_a_t] :
      ( ( wf_regex_a_t @ X )
     => ( ! [Phi4: formula_a_t] :
            ( ( X
              = ( symbol_a_t @ Phi4 ) )
           => ~ ( wf_fmla_a_t @ Phi4 ) )
       => ( ! [R4: regex_a_t,S2: regex_a_t] :
              ( ( X
                = ( plus_a_t @ R4 @ S2 ) )
             => ~ ( ( wf_regex_a_t @ R4 )
                  & ( wf_regex_a_t @ S2 ) ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( ( X
                  = ( times_a_t @ R4 @ S2 ) )
               => ~ ( ( wf_regex_a_t @ S2 )
                    & ( ~ ( eps_a_t @ S2 )
                      | ( wf_regex_a_t @ R4 ) ) ) )
           => ~ ! [R4: regex_a_t] :
                  ( ( X
                    = ( star_a_t @ R4 ) )
                 => ~ ( wf_regex_a_t @ R4 ) ) ) ) ) ) ).

% wf_regex.elims(2)
thf(fact_898_wf__regex_Oelims_I1_J,axiom,
    ! [X: regex_a_t,Y: $o] :
      ( ( ( wf_regex_a_t @ X )
        = Y )
     => ( ( ? [Phi4: formula_a_t] :
              ( X
              = ( lookahead_a_t @ Phi4 ) )
         => Y )
       => ( ! [Phi4: formula_a_t] :
              ( ( X
                = ( symbol_a_t @ Phi4 ) )
             => ( Y
                = ( ~ ( wf_fmla_a_t @ Phi4 ) ) ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( ( X
                  = ( plus_a_t @ R4 @ S2 ) )
               => ( Y
                  = ( ~ ( ( wf_regex_a_t @ R4 )
                        & ( wf_regex_a_t @ S2 ) ) ) ) )
           => ( ! [R4: regex_a_t,S2: regex_a_t] :
                  ( ( X
                    = ( times_a_t @ R4 @ S2 ) )
                 => ( Y
                    = ( ~ ( ( wf_regex_a_t @ S2 )
                          & ( ~ ( eps_a_t @ S2 )
                            | ( wf_regex_a_t @ R4 ) ) ) ) ) )
             => ~ ! [R4: regex_a_t] :
                    ( ( X
                      = ( star_a_t @ R4 ) )
                   => ( Y
                      = ( ~ ( wf_regex_a_t @ R4 ) ) ) ) ) ) ) ) ) ).

% wf_regex.elims(1)
thf(fact_899_wf__regex_Oelims_I3_J,axiom,
    ! [X: regex_a_t] :
      ( ~ ( wf_regex_a_t @ X )
     => ( ! [Phi4: formula_a_t] :
            ( X
           != ( lookahead_a_t @ Phi4 ) )
       => ( ! [Phi4: formula_a_t] :
              ( ( X
                = ( symbol_a_t @ Phi4 ) )
             => ( wf_fmla_a_t @ Phi4 ) )
         => ( ! [R4: regex_a_t,S2: regex_a_t] :
                ( ( X
                  = ( plus_a_t @ R4 @ S2 ) )
               => ( ( wf_regex_a_t @ R4 )
                  & ( wf_regex_a_t @ S2 ) ) )
           => ( ! [R4: regex_a_t,S2: regex_a_t] :
                  ( ( X
                    = ( times_a_t @ R4 @ S2 ) )
                 => ( ( wf_regex_a_t @ S2 )
                    & ( ~ ( eps_a_t @ S2 )
                      | ( wf_regex_a_t @ R4 ) ) ) )
             => ~ ! [R4: regex_a_t] :
                    ( ( X
                      = ( star_a_t @ R4 ) )
                   => ( wf_regex_a_t @ R4 ) ) ) ) ) ) ) ).

% wf_regex.elims(3)
thf(fact_900_ivl__subset,axiom,
    ! [I: product_prod_nat_nat,J: product_prod_nat_nat,M: product_prod_nat_nat,N: product_prod_nat_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( set_or2842531625620587538at_nat @ I @ J ) @ ( set_or2842531625620587538at_nat @ M @ N ) )
      = ( ( ord_le8460144461188290721at_nat @ J @ I )
        | ( ( ord_le8460144461188290721at_nat @ M @ I )
          & ( ord_le8460144461188290721at_nat @ J @ N ) ) ) ) ).

% ivl_subset
thf(fact_901_ivl__subset,axiom,
    ! [I: nat,J: nat,M: nat,N: nat] :
      ( ( ord_less_eq_set_nat @ ( set_or4665077453230672383an_nat @ I @ J ) @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ J @ I )
        | ( ( ord_less_eq_nat @ M @ I )
          & ( ord_less_eq_nat @ J @ N ) ) ) ) ).

% ivl_subset
thf(fact_902_sat_Osimps_I7_J,axiom,
    ! [Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( since_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ J2 @ I )
            & ( mem_t @ ( tau_a_t @ sigma @ J2 ) @ ( tau_a_t @ sigma @ I ) @ I2 )
            & ( sat_a_t @ sigma @ Psi @ J2 )
            & ! [X2: nat] :
                ( ( member_nat @ X2 @ ( set_or6659071591806873216st_nat @ J2 @ I ) )
               => ( sat_a_t @ sigma @ Phi @ X2 ) ) ) ) ) ).

% sat.simps(7)
thf(fact_903_sat_Osimps_I8_J,axiom,
    ! [Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ sigma @ ( until_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ I @ J2 )
            & ( mem_t @ ( tau_a_t @ sigma @ I ) @ ( tau_a_t @ sigma @ J2 ) @ I2 )
            & ( sat_a_t @ sigma @ Psi @ J2 )
            & ! [X2: nat] :
                ( ( member_nat @ X2 @ ( set_or4665077453230672383an_nat @ I @ J2 ) )
               => ( sat_a_t @ sigma @ Phi @ X2 ) ) ) ) ) ).

% sat.simps(8)
thf(fact_904_ivl__diff,axiom,
    ! [I: product_prod_nat_nat,N: product_prod_nat_nat,M: product_prod_nat_nat] :
      ( ( ord_le8460144461188290721at_nat @ I @ N )
     => ( ( minus_1356011639430497352at_nat @ ( set_or2842531625620587538at_nat @ I @ M ) @ ( set_or2842531625620587538at_nat @ I @ N ) )
        = ( set_or2842531625620587538at_nat @ N @ M ) ) ) ).

% ivl_diff
thf(fact_905_ivl__diff,axiom,
    ! [I: nat,N: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_set_nat @ ( set_or4665077453230672383an_nat @ I @ M ) @ ( set_or4665077453230672383an_nat @ I @ N ) )
        = ( set_or4665077453230672383an_nat @ N @ M ) ) ) ).

% ivl_diff
thf(fact_906_bounded__Max__nat,axiom,
    ! [P: nat > $o,X: nat,M6: nat] :
      ( ( P @ X )
     => ( ! [X3: nat] :
            ( ( P @ X3 )
           => ( ord_less_eq_nat @ X3 @ M6 ) )
       => ~ ! [M3: nat] :
              ( ( P @ M3 )
             => ~ ! [X4: nat] :
                    ( ( P @ X4 )
                   => ( ord_less_eq_nat @ X4 @ M3 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_907_MDL_Osat_Osimps_I8_J,axiom,
    ! [Sigma: trace_a_t,Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( until_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ I @ J2 )
            & ( mem_t @ ( tau_a_t @ Sigma @ I ) @ ( tau_a_t @ Sigma @ J2 ) @ I2 )
            & ( sat_a_t @ Sigma @ Psi @ J2 )
            & ! [X2: nat] :
                ( ( member_nat @ X2 @ ( set_or4665077453230672383an_nat @ I @ J2 ) )
               => ( sat_a_t @ Sigma @ Phi @ X2 ) ) ) ) ) ).

% MDL.sat.simps(8)
thf(fact_908_MDL_Osat_Osimps_I7_J,axiom,
    ! [Sigma: trace_a_t,Phi: formula_a_t,I2: i_t,Psi: formula_a_t,I: nat] :
      ( ( sat_a_t @ Sigma @ ( since_a_t @ Phi @ I2 @ Psi ) @ I )
      = ( ? [J2: nat] :
            ( ( ord_less_eq_nat @ J2 @ I )
            & ( mem_t @ ( tau_a_t @ Sigma @ J2 ) @ ( tau_a_t @ Sigma @ I ) @ I2 )
            & ( sat_a_t @ Sigma @ Psi @ J2 )
            & ! [X2: nat] :
                ( ( member_nat @ X2 @ ( set_or6659071591806873216st_nat @ J2 @ I ) )
               => ( sat_a_t @ Sigma @ Phi @ X2 ) ) ) ) ) ).

% MDL.sat.simps(7)
thf(fact_909_Ioc__inj,axiom,
    ! [A: product_prod_nat_nat,B: product_prod_nat_nat,C: product_prod_nat_nat,D: product_prod_nat_nat] :
      ( ( ( set_or6204648988538903121at_nat @ A @ B )
        = ( set_or6204648988538903121at_nat @ C @ D ) )
      = ( ( ( ord_le8460144461188290721at_nat @ B @ A )
          & ( ord_le8460144461188290721at_nat @ D @ C ) )
        | ( ( A = C )
          & ( B = D ) ) ) ) ).

% Ioc_inj
thf(fact_910_Ioc__inj,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ( set_or6659071591806873216st_nat @ A @ B )
        = ( set_or6659071591806873216st_nat @ C @ D ) )
      = ( ( ( ord_less_eq_nat @ B @ A )
          & ( ord_less_eq_nat @ D @ C ) )
        | ( ( A = C )
          & ( B = D ) ) ) ) ).

% Ioc_inj
thf(fact_911_atLeastLessThan__subset__iff,axiom,
    ! [A: product_prod_nat_nat,B: product_prod_nat_nat,C: product_prod_nat_nat,D: product_prod_nat_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( set_or2842531625620587538at_nat @ A @ B ) @ ( set_or2842531625620587538at_nat @ C @ D ) )
     => ( ( ord_le8460144461188290721at_nat @ B @ A )
        | ( ( ord_le8460144461188290721at_nat @ C @ A )
          & ( ord_le8460144461188290721at_nat @ B @ D ) ) ) ) ).

% atLeastLessThan_subset_iff
thf(fact_912_atLeastLessThan__subset__iff,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_set_nat @ ( set_or4665077453230672383an_nat @ A @ B ) @ ( set_or4665077453230672383an_nat @ C @ D ) )
     => ( ( ord_less_eq_nat @ B @ A )
        | ( ( ord_less_eq_nat @ C @ A )
          & ( ord_less_eq_nat @ B @ D ) ) ) ) ).

% atLeastLessThan_subset_iff
thf(fact_913_Ioc__subset__iff,axiom,
    ! [A: product_prod_nat_nat,B: product_prod_nat_nat,C: product_prod_nat_nat,D: product_prod_nat_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( set_or6204648988538903121at_nat @ A @ B ) @ ( set_or6204648988538903121at_nat @ C @ D ) )
      = ( ( ord_le8460144461188290721at_nat @ B @ A )
        | ( ( ord_le8460144461188290721at_nat @ C @ A )
          & ( ord_le8460144461188290721at_nat @ B @ D ) ) ) ) ).

% Ioc_subset_iff
thf(fact_914_Ioc__subset__iff,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_set_nat @ ( set_or6659071591806873216st_nat @ A @ B ) @ ( set_or6659071591806873216st_nat @ C @ D ) )
      = ( ( ord_less_eq_nat @ B @ A )
        | ( ( ord_less_eq_nat @ C @ A )
          & ( ord_less_eq_nat @ B @ D ) ) ) ) ).

% Ioc_subset_iff
thf(fact_915_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 ) ) )
       => ? [X3: nat] :
            ( ( member_nat @ X3 @ ( set_or4665077453230672383an_nat @ I @ J ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ X3 ) @ ( match_a_t @ sigma @ ( star_a_t @ R ) ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ J ) @ ( match_a_t @ sigma @ R ) ) ) ) ) ).

% match_Star_unfold
thf(fact_916_wf__fmla_Oelims_I1_J,axiom,
    ! [X: formula_a_t,Y: $o] :
      ( ( ( wf_fmla_a_t @ X )
        = Y )
     => ( ( ? [B4: $o] :
              ( X
              = ( bool_a_t @ B4 ) )
         => ~ Y )
       => ( ( ? [A4: a] :
                ( X
                = ( atom_a_t @ A4 ) )
           => ~ Y )
         => ( ! [Phi4: formula_a_t] :
                ( ( X
                  = ( neg_a_t @ Phi4 ) )
               => ( Y
                  = ( ~ ( wf_fmla_a_t @ Phi4 ) ) ) )
           => ( ! [F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t] :
                  ( ( X
                    = ( bin_a_t @ F3 @ Phi4 @ Psi3 ) )
                 => ( Y
                    = ( ~ ( ( wf_fmla_a_t @ Phi4 )
                          & ( wf_fmla_a_t @ Psi3 ) ) ) ) )
             => ( ! [I5: i_t,Phi4: formula_a_t] :
                    ( ( X
                      = ( prev_t_a @ I5 @ Phi4 ) )
                   => ( Y
                      = ( ~ ( wf_fmla_a_t @ Phi4 ) ) ) )
               => ( ! [I5: i_t,Phi4: formula_a_t] :
                      ( ( X
                        = ( next_t_a @ I5 @ Phi4 ) )
                     => ( Y
                        = ( ~ ( wf_fmla_a_t @ Phi4 ) ) ) )
                 => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                        ( ( X
                          = ( since_a_t @ Phi4 @ I5 @ Psi3 ) )
                       => ( Y
                          = ( ~ ( ( wf_fmla_a_t @ Phi4 )
                                & ( wf_fmla_a_t @ Psi3 ) ) ) ) )
                   => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                          ( ( X
                            = ( until_a_t @ Phi4 @ I5 @ Psi3 ) )
                         => ( Y
                            = ( ~ ( ( wf_fmla_a_t @ Phi4 )
                                  & ( wf_fmla_a_t @ Psi3 ) ) ) ) )
                     => ( ! [I5: i_t,R4: regex_a_t] :
                            ( ( X
                              = ( matchP_t_a @ I5 @ R4 ) )
                           => ( Y
                              = ( ~ ( ( wf_regex_a_t @ R4 )
                                    & ! [X2: formula_a_t] :
                                        ( ( member_formula_a_t @ X2 @ ( atms_a_t @ R4 ) )
                                       => ( wf_fmla_a_t @ X2 ) ) ) ) ) )
                       => ~ ! [I5: i_t,R4: regex_a_t] :
                              ( ( X
                                = ( matchF_t_a @ I5 @ R4 ) )
                             => ( Y
                                = ( ~ ( ( wf_regex_a_t @ R4 )
                                      & ! [X2: formula_a_t] :
                                          ( ( member_formula_a_t @ X2 @ ( atms_a_t @ R4 ) )
                                         => ( wf_fmla_a_t @ X2 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% wf_fmla.elims(1)
thf(fact_917_wf__fmla_Oelims_I2_J,axiom,
    ! [X: formula_a_t] :
      ( ( wf_fmla_a_t @ X )
     => ( ! [B4: $o] :
            ( X
           != ( bool_a_t @ B4 ) )
       => ( ! [A4: a] :
              ( X
             != ( atom_a_t @ A4 ) )
         => ( ! [Phi4: formula_a_t] :
                ( ( X
                  = ( neg_a_t @ Phi4 ) )
               => ~ ( wf_fmla_a_t @ Phi4 ) )
           => ( ! [F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t] :
                  ( ( X
                    = ( bin_a_t @ F3 @ Phi4 @ Psi3 ) )
                 => ~ ( ( wf_fmla_a_t @ Phi4 )
                      & ( wf_fmla_a_t @ Psi3 ) ) )
             => ( ! [I5: i_t,Phi4: formula_a_t] :
                    ( ( X
                      = ( prev_t_a @ I5 @ Phi4 ) )
                   => ~ ( wf_fmla_a_t @ Phi4 ) )
               => ( ! [I5: i_t,Phi4: formula_a_t] :
                      ( ( X
                        = ( next_t_a @ I5 @ Phi4 ) )
                     => ~ ( wf_fmla_a_t @ Phi4 ) )
                 => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                        ( ( X
                          = ( since_a_t @ Phi4 @ I5 @ Psi3 ) )
                       => ~ ( ( wf_fmla_a_t @ Phi4 )
                            & ( wf_fmla_a_t @ Psi3 ) ) )
                   => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                          ( ( X
                            = ( until_a_t @ Phi4 @ I5 @ Psi3 ) )
                         => ~ ( ( wf_fmla_a_t @ Phi4 )
                              & ( wf_fmla_a_t @ Psi3 ) ) )
                     => ( ! [I5: i_t,R4: regex_a_t] :
                            ( ( X
                              = ( matchP_t_a @ I5 @ R4 ) )
                           => ~ ( ( wf_regex_a_t @ R4 )
                                & ! [X4: formula_a_t] :
                                    ( ( member_formula_a_t @ X4 @ ( atms_a_t @ R4 ) )
                                   => ( wf_fmla_a_t @ X4 ) ) ) )
                       => ~ ! [I5: i_t,R4: regex_a_t] :
                              ( ( X
                                = ( matchF_t_a @ I5 @ R4 ) )
                             => ~ ( ( wf_regex_a_t @ R4 )
                                  & ! [X4: formula_a_t] :
                                      ( ( member_formula_a_t @ X4 @ ( atms_a_t @ R4 ) )
                                     => ( wf_fmla_a_t @ X4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% wf_fmla.elims(2)
thf(fact_918_not__gr__zero,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_919_add__less__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_920_add__less__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_921_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

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

% Suc_mono
thf(fact_923_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_924_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

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

% neq0_conv
thf(fact_926_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_927_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_928_add__less__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

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

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

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

% less_add_same_cancel2
thf(fact_932_atLeastLessThan__iff,axiom,
    ! [I: t,L: t,U2: t] :
      ( ( member_t @ I @ ( set_or5139330845457685154Than_t @ L @ U2 ) )
      = ( ( ord_less_eq_t @ L @ I )
        & ( ord_less_t @ I @ U2 ) ) ) ).

% atLeastLessThan_iff
thf(fact_933_atLeastLessThan__iff,axiom,
    ! [I: product_prod_nat_nat,L: product_prod_nat_nat,U2: product_prod_nat_nat] :
      ( ( member8440522571783428010at_nat @ I @ ( set_or2842531625620587538at_nat @ L @ U2 ) )
      = ( ( ord_le8460144461188290721at_nat @ L @ I )
        & ( ord_le1203424502768444845at_nat @ I @ U2 ) ) ) ).

% atLeastLessThan_iff
thf(fact_934_atLeastLessThan__iff,axiom,
    ! [I: nat,L: nat,U2: nat] :
      ( ( member_nat @ I @ ( set_or4665077453230672383an_nat @ L @ U2 ) )
      = ( ( ord_less_eq_nat @ L @ I )
        & ( ord_less_nat @ I @ U2 ) ) ) ).

% atLeastLessThan_iff
thf(fact_935_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_936_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_937_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_938_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_939_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_940_greaterThanAtMost__iff,axiom,
    ! [I: t,L: t,U2: t] :
      ( ( member_t @ I @ ( set_or4472690218693186657Most_t @ L @ U2 ) )
      = ( ( ord_less_t @ L @ I )
        & ( ord_less_eq_t @ I @ U2 ) ) ) ).

% greaterThanAtMost_iff
thf(fact_941_greaterThanAtMost__iff,axiom,
    ! [I: product_prod_nat_nat,L: product_prod_nat_nat,U2: product_prod_nat_nat] :
      ( ( member8440522571783428010at_nat @ I @ ( set_or6204648988538903121at_nat @ L @ U2 ) )
      = ( ( ord_le1203424502768444845at_nat @ L @ I )
        & ( ord_le8460144461188290721at_nat @ I @ U2 ) ) ) ).

% greaterThanAtMost_iff
thf(fact_942_greaterThanAtMost__iff,axiom,
    ! [I: nat,L: nat,U2: nat] :
      ( ( member_nat @ I @ ( set_or6659071591806873216st_nat @ L @ U2 ) )
      = ( ( ord_less_nat @ L @ I )
        & ( ord_less_eq_nat @ I @ U2 ) ) ) ).

% greaterThanAtMost_iff
thf(fact_943_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_944_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_945_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_946_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_947_order__le__imp__less__or__eq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_nat @ X @ Y )
        | ( X = Y ) ) ) ).

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

% linorder_le_less_linear
thf(fact_949_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_950_order__less__le__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_951_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_952_order__le__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_953_order__less__le__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z )
       => ( ord_less_nat @ X @ Z ) ) ) ).

% order_less_le_trans
thf(fact_954_order__le__less__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_nat @ Y @ Z )
       => ( ord_less_nat @ X @ Z ) ) ) ).

% order_le_less_trans
thf(fact_955_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_956_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_957_order__less__imp__le,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( ord_less_eq_nat @ X @ Y ) ) ).

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

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

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

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

% order_le_less
thf(fact_962_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_963_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_964_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B2 @ A3 )
          & ~ ( ord_less_eq_nat @ A3 @ B2 ) ) ) ) ).

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

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

% dual_order.strict_trans1
thf(fact_967_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B2 @ A3 )
          & ( A3 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_968_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( ord_less_nat @ B2 @ A3 )
          | ( A3 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_969_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A3 @ B2 )
          & ~ ( ord_less_eq_nat @ B2 @ A3 ) ) ) ) ).

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

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

% order.strict_trans1
thf(fact_972_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A3 @ B2 )
          & ( A3 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_973_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B2: nat] :
          ( ( ord_less_nat @ A3 @ B2 )
          | ( A3 = B2 ) ) ) ) ).

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

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

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

% antisym_conv2
thf(fact_977_antisym__conv1,axiom,
    ! [X: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ X @ Y )
        = ( X = Y ) ) ) ).

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

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

% leI
thf(fact_980_leD,axiom,
    ! [Y: nat,X: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ~ ( ord_less_nat @ X @ Y ) ) ).

% leD
thf(fact_981_verit__comp__simplify1_I3_J,axiom,
    ! [B5: nat,A5: nat] :
      ( ( ~ ( ord_less_eq_nat @ B5 @ A5 ) )
      = ( ord_less_nat @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_982_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J: nat] :
      ( ! [I4: nat,J3: nat] :
          ( ( ord_less_nat @ I4 @ J3 )
         => ( ord_less_nat @ ( F @ I4 ) @ ( F @ J3 ) ) )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_983_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_984_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_985_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M2: nat,N2: nat] :
          ( ( ord_less_nat @ M2 @ N2 )
          | ( M2 = N2 ) ) ) ) ).

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

% nat_less_le
thf(fact_988_add__less__le__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_989_add__le__less__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_990_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_991_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_992_pos__add__strict,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_993_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ! [C3: nat] :
            ( ( B
              = ( plus_plus_nat @ A @ C3 ) )
           => ( C3 = zero_zero_nat ) ) ) ).

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

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

% add_neg_neg
thf(fact_996_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% less_numeral_extra(1)
thf(fact_997_not__one__less__zero,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_less_zero
thf(fact_998_zero__less__one,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one
thf(fact_999_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_1000_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_1001_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_1002_gr__implies__not__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

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

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

% gr_zeroI
thf(fact_1005_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_1006_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_1007_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_1008_linorder__neqE__nat,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
     => ( ~ ( ord_less_nat @ X @ Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

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

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

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

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

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

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

% less_not_refl
thf(fact_1015_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_1016_order__less__imp__not__less,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ~ ( ord_less_nat @ Y @ X ) ) ).

% order_less_imp_not_less
thf(fact_1017_order__less__imp__not__eq2,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( Y != X ) ) ).

% order_less_imp_not_eq2
thf(fact_1018_order__less__imp__not__eq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( X != Y ) ) ).

% order_less_imp_not_eq
thf(fact_1019_linorder__less__linear,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
      | ( X = Y )
      | ( ord_less_nat @ Y @ X ) ) ).

% linorder_less_linear
thf(fact_1020_order__less__imp__triv,axiom,
    ! [X: nat,Y: nat,P: $o] :
      ( ( ord_less_nat @ X @ Y )
     => ( ( ord_less_nat @ Y @ X )
       => P ) ) ).

% order_less_imp_triv
thf(fact_1021_order__less__not__sym,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ~ ( ord_less_nat @ Y @ X ) ) ).

% order_less_not_sym
thf(fact_1022_order__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1023_order__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1024_order__less__irrefl,axiom,
    ! [X: nat] :
      ~ ( ord_less_nat @ X @ X ) ).

% order_less_irrefl
thf(fact_1025_ord__less__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1026_ord__eq__less__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_1027_order__less__trans,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( ( ord_less_nat @ Y @ Z )
       => ( ord_less_nat @ X @ Z ) ) ) ).

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

% order_less_asym'
thf(fact_1029_linorder__neq__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
      = ( ( ord_less_nat @ X @ Y )
        | ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_neq_iff
thf(fact_1030_order__less__asym,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ~ ( ord_less_nat @ Y @ X ) ) ).

% order_less_asym
thf(fact_1031_linorder__neqE,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
     => ( ~ ( ord_less_nat @ X @ Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_neqE
thf(fact_1032_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_1033_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_1034_order_Ostrict__implies__not__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( A != B ) ) ).

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

% dual_order.strict_trans
thf(fact_1036_not__less__iff__gr__or__eq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X @ Y ) )
      = ( ( ord_less_nat @ Y @ X )
        | ( X = Y ) ) ) ).

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

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

% linorder_less_wlog
thf(fact_1039_exists__least__iff,axiom,
    ( ( ^ [P3: nat > $o] :
        ? [X6: nat] : ( P3 @ X6 ) )
    = ( ^ [P4: nat > $o] :
        ? [N2: nat] :
          ( ( P4 @ N2 )
          & ! [M2: nat] :
              ( ( ord_less_nat @ M2 @ N2 )
             => ~ ( P4 @ M2 ) ) ) ) ) ).

% exists_least_iff
thf(fact_1040_dual__order_Oirrefl,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% dual_order.irrefl
thf(fact_1041_dual__order_Oasym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ~ ( ord_less_nat @ A @ B ) ) ).

% dual_order.asym
thf(fact_1042_linorder__cases,axiom,
    ! [X: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X @ Y )
     => ( ( X != Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_cases
thf(fact_1043_antisym__conv3,axiom,
    ! [Y: nat,X: nat] :
      ( ~ ( ord_less_nat @ Y @ X )
     => ( ( ~ ( ord_less_nat @ X @ Y ) )
        = ( X = Y ) ) ) ).

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

% less_induct
thf(fact_1045_ord__less__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_1046_ord__eq__less__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A = B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

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

% order.asym
thf(fact_1048_less__imp__neq,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( X != Y ) ) ).

% less_imp_neq
thf(fact_1049_gt__ex,axiom,
    ! [X: nat] :
    ? [X_12: nat] : ( ord_less_nat @ X @ X_12 ) ).

% gt_ex
thf(fact_1050_verit__comp__simplify1_I1_J,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_1051_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M @ L )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% less_add_eq_less
thf(fact_1052_trans__less__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_less_add2
thf(fact_1053_trans__less__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_1054_add__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_1055_not__add__less2,axiom,
    ! [J: nat,I: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I ) @ I ) ).

% not_add_less2
thf(fact_1056_not__add__less1,axiom,
    ! [I: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ I ) ).

% not_add_less1
thf(fact_1057_add__less__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_less_mono
thf(fact_1058_add__lessD1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

% add_lessD1
thf(fact_1059_length__induct,axiom,
    ! [P: list_t > $o,Xs: list_t] :
      ( ! [Xs2: list_t] :
          ( ! [Ys2: list_t] :
              ( ( ord_less_nat @ ( size_size_list_t @ Ys2 ) @ ( size_size_list_t @ Xs2 ) )
             => ( P @ Ys2 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

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

% infinite_descent0
thf(fact_1061_gr__implies__not0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

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

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

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

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

% gr0I
thf(fact_1066_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_1067_Nat_OlessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ I @ K )
     => ( ( K
         != ( suc @ I ) )
       => ~ ! [J3: nat] :
              ( ( ord_less_nat @ I @ J3 )
             => ( K
               != ( suc @ J3 ) ) ) ) ) ).

% Nat.lessE
thf(fact_1068_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_1069_Suc__lessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I ) @ K )
     => ~ ! [J3: nat] :
            ( ( ord_less_nat @ I @ J3 )
           => ( K
             != ( suc @ J3 ) ) ) ) ).

% Suc_lessE
thf(fact_1070_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_1071_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

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

% less_SucI
thf(fact_1073_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I6: nat] :
            ( ( ord_less_nat @ I6 @ ( suc @ N ) )
            & ( P @ I6 ) ) )
      = ( ( P @ N )
        | ? [I6: nat] :
            ( ( ord_less_nat @ I6 @ N )
            & ( P @ I6 ) ) ) ) ).

% Ex_less_Suc
thf(fact_1074_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_1075_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_1076_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I6: nat] :
            ( ( ord_less_nat @ I6 @ ( suc @ N ) )
           => ( P @ I6 ) ) )
      = ( ( P @ N )
        & ! [I6: nat] :
            ( ( ord_less_nat @ I6 @ N )
           => ( P @ I6 ) ) ) ) ).

% All_less_Suc
thf(fact_1077_Suc__less__eq2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M )
      = ( ? [M7: nat] :
            ( ( M
              = ( suc @ M7 ) )
            & ( ord_less_nat @ N @ M7 ) ) ) ) ).

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

% less_antisym
thf(fact_1079_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_1080_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_1081_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I4: nat] : ( P @ I4 @ ( suc @ I4 ) )
       => ( ! [I4: nat,J3: nat,K3: nat] :
              ( ( ord_less_nat @ I4 @ J3 )
             => ( ( ord_less_nat @ J3 @ K3 )
               => ( ( P @ I4 @ J3 )
                 => ( ( P @ J3 @ K3 )
                   => ( P @ I4 @ K3 ) ) ) ) )
         => ( P @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_1082_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I4: nat] :
            ( ( J
              = ( suc @ I4 ) )
           => ( P @ I4 ) )
       => ( ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ J )
             => ( ( P @ ( suc @ I4 ) )
               => ( P @ I4 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_1083_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_1084_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_1085_add__less__imp__less__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_1086_add__less__imp__less__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_nat @ A @ B ) ) ).

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

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

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

% add_strict_mono
thf(fact_1090_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_1091_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_1092_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_1093_add__mono__strict,axiom,
    ! [C: nat,D: nat,A: nat] :
      ( ( ord_less_nat @ C @ D )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ A @ D ) ) ) ).

% add_mono_strict
thf(fact_1094_less__add__one,axiom,
    ! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).

% less_add_one
thf(fact_1095_add__mono1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( plus_plus_nat @ B @ one_one_nat ) ) ) ).

% add_mono1
thf(fact_1096_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ~ ( ord_less_nat @ A @ B )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_1097_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I6: nat] :
            ( ( ord_less_nat @ I6 @ ( suc @ N ) )
            & ( P @ I6 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I6: nat] :
            ( ( ord_less_nat @ I6 @ N )
            & ( P @ ( suc @ I6 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_1098_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M2: nat] :
            ( N
            = ( suc @ M2 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_1099_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I6: nat] :
            ( ( ord_less_nat @ I6 @ ( suc @ N ) )
           => ( P @ I6 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I6: nat] :
            ( ( ord_less_nat @ I6 @ N )
           => ( P @ ( suc @ I6 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_1100_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M3: nat] :
          ( N
          = ( suc @ M3 ) ) ) ).

% gr0_implies_Suc
thf(fact_1101_less__Suc__eq__0__disj,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( M = zero_zero_nat )
        | ? [J2: nat] :
            ( ( M
              = ( suc @ J2 ) )
            & ( ord_less_nat @ J2 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_1102_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_1103_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N2: nat] : ( ord_less_eq_nat @ ( suc @ N2 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_1104_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_1105_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_1106_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_1107_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_1108_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_1109_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_1110_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_1111_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ! [I7: nat] :
                ( ( ord_less_nat @ I7 @ K3 )
               => ~ ( P @ I7 ) )
            & ( P @ K3 ) ) ) ) ).

% ex_least_nat_le
thf(fact_1112_less__natE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ~ ! [Q3: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M @ Q3 ) ) ) ) ).

% less_natE
thf(fact_1113_less__add__Suc1,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M ) ) ) ).

% less_add_Suc1
thf(fact_1114_less__add__Suc2,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M @ I ) ) ) ).

% less_add_Suc2
thf(fact_1115_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M2: nat,N2: nat] :
        ? [K2: nat] :
          ( N2
          = ( suc @ ( plus_plus_nat @ M2 @ K2 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_1116_less__imp__Suc__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ? [K3: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M @ K3 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_1117_less__imp__add__positive,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ? [K3: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K3 )
          & ( ( plus_plus_nat @ I @ K3 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_1118_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_1119_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_1120_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_1121_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_1122_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M3: nat,N3: nat] :
          ( ( ord_less_nat @ M3 @ N3 )
         => ( ord_less_nat @ ( F @ M3 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_1123_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_1124_diff__less__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C ) @ ( minus_minus_nat @ B @ C ) ) ) ) ).

% diff_less_mono
thf(fact_1125_less__diff__conv,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_1126_add__diff__inverse__nat,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
        = M ) ) ).

% add_diff_inverse_nat
thf(fact_1127_all__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M2: nat] :
            ( ( ord_less_nat @ M2 @ N )
           => ( P @ M2 ) ) )
      = ( ! [X2: nat] :
            ( ( member_nat @ X2 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
           => ( P @ X2 ) ) ) ) ).

% all_nat_less_eq
thf(fact_1128_ex__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M2: nat] :
            ( ( ord_less_nat @ M2 @ N )
            & ( P @ M2 ) ) )
      = ( ? [X2: nat] :
            ( ( member_nat @ X2 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
            & ( P @ X2 ) ) ) ) ).

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

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

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

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

% add_pos_nonneg
thf(fact_1133_add__strict__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1134_add__strict__increasing2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1135_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_1136_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_nat @ K3 @ N )
            & ! [I7: nat] :
                ( ( ord_less_eq_nat @ I7 @ K3 )
               => ~ ( P @ I7 ) )
            & ( P @ ( suc @ K3 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_1137_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_1138_length__pos__if__in__set,axiom,
    ! [X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
      ( ( member8440522571783428010at_nat @ X @ ( set_Pr5648618587558075414at_nat @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_s5460976970255530739at_nat @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1139_length__pos__if__in__set,axiom,
    ! [X: a,Xs: list_a] :
      ( ( member_a @ X @ ( set_a2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_a @ Xs ) ) ) ).

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

% length_pos_if_in_set
thf(fact_1141_length__pos__if__in__set,axiom,
    ! [X: t,Xs: list_t] :
      ( ( member_t @ X @ ( set_t2 @ Xs ) )
     => ( ord_less_nat @ zero_zero_nat @ ( size_size_list_t @ Xs ) ) ) ).

% length_pos_if_in_set
thf(fact_1142_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_1143_nat__diff__split,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ( ( ord_less_nat @ A @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D3: nat] :
            ( ( A
              = ( plus_plus_nat @ B @ D3 ) )
           => ( P @ D3 ) ) ) ) ).

% nat_diff_split
thf(fact_1144_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D3: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D3 ) )
                & ~ ( P @ D3 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_1145_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1146_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_1147_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_1148_wf__fmla_Osimps_I10_J,axiom,
    ! [I2: i_t,R: regex_a_t] :
      ( ( wf_fmla_a_t @ ( matchF_t_a @ I2 @ R ) )
      = ( ( wf_regex_a_t @ R )
        & ! [X2: formula_a_t] :
            ( ( member_formula_a_t @ X2 @ ( atms_a_t @ R ) )
           => ( wf_fmla_a_t @ X2 ) ) ) ) ).

% wf_fmla.simps(10)
thf(fact_1149_wf__fmla_Osimps_I9_J,axiom,
    ! [I2: i_t,R: regex_a_t] :
      ( ( wf_fmla_a_t @ ( matchP_t_a @ I2 @ R ) )
      = ( ( wf_regex_a_t @ R )
        & ! [X2: formula_a_t] :
            ( ( member_formula_a_t @ X2 @ ( atms_a_t @ R ) )
           => ( wf_fmla_a_t @ X2 ) ) ) ) ).

% wf_fmla.simps(9)
thf(fact_1150_MDL_Omatch__Star__unfold,axiom,
    ! [I: nat,J: nat,Sigma: trace_a_t,R: regex_a_t] :
      ( ( ord_less_nat @ I @ J )
     => ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ J ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) )
       => ? [X3: nat] :
            ( ( member_nat @ X3 @ ( set_or4665077453230672383an_nat @ I @ J ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ I @ X3 ) @ ( match_a_t @ Sigma @ ( star_a_t @ R ) ) )
            & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ J ) @ ( match_a_t @ Sigma @ R ) ) ) ) ) ).

% MDL.match_Star_unfold
thf(fact_1151_size__rderive,axiom,
    ! [Phi2: formula_a_t,R: regex_a_t] :
      ( ( member_formula_a_t @ Phi2 @ ( atms_a_t @ ( rderive_a_t @ R ) ) )
     => ( ord_less_nat @ ( size_s4016968051272393527la_a_t @ Phi2 ) @ ( size_size_regex_a_t @ R ) ) ) ).

% size_rderive
thf(fact_1152_wf__fmla_Oelims_I3_J,axiom,
    ! [X: formula_a_t] :
      ( ~ ( wf_fmla_a_t @ X )
     => ( ! [Phi4: formula_a_t] :
            ( ( X
              = ( neg_a_t @ Phi4 ) )
           => ( wf_fmla_a_t @ Phi4 ) )
       => ( ! [F3: $o > $o > $o,Phi4: formula_a_t,Psi3: formula_a_t] :
              ( ( X
                = ( bin_a_t @ F3 @ Phi4 @ Psi3 ) )
             => ( ( wf_fmla_a_t @ Phi4 )
                & ( wf_fmla_a_t @ Psi3 ) ) )
         => ( ! [I5: i_t,Phi4: formula_a_t] :
                ( ( X
                  = ( prev_t_a @ I5 @ Phi4 ) )
               => ( wf_fmla_a_t @ Phi4 ) )
           => ( ! [I5: i_t,Phi4: formula_a_t] :
                  ( ( X
                    = ( next_t_a @ I5 @ Phi4 ) )
                 => ( wf_fmla_a_t @ Phi4 ) )
             => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                    ( ( X
                      = ( since_a_t @ Phi4 @ I5 @ Psi3 ) )
                   => ( ( wf_fmla_a_t @ Phi4 )
                      & ( wf_fmla_a_t @ Psi3 ) ) )
               => ( ! [Phi4: formula_a_t,I5: i_t,Psi3: formula_a_t] :
                      ( ( X
                        = ( until_a_t @ Phi4 @ I5 @ Psi3 ) )
                     => ( ( wf_fmla_a_t @ Phi4 )
                        & ( wf_fmla_a_t @ Psi3 ) ) )
                 => ( ! [I5: i_t,R4: regex_a_t] :
                        ( ( X
                          = ( matchP_t_a @ I5 @ R4 ) )
                       => ( ( wf_regex_a_t @ R4 )
                          & ! [X3: formula_a_t] :
                              ( ( member_formula_a_t @ X3 @ ( atms_a_t @ R4 ) )
                             => ( wf_fmla_a_t @ X3 ) ) ) )
                   => ~ ! [I5: i_t,R4: regex_a_t] :
                          ( ( X
                            = ( matchF_t_a @ I5 @ R4 ) )
                         => ( ( wf_regex_a_t @ R4 )
                            & ! [X3: formula_a_t] :
                                ( ( member_formula_a_t @ X3 @ ( atms_a_t @ R4 ) )
                               => ( wf_fmla_a_t @ X3 ) ) ) ) ) ) ) ) ) ) ) ) ).

% wf_fmla.elims(3)
thf(fact_1153_less__prod__simp,axiom,
    ! [X1: t,Y1: product_prod_o_o,X22: t,Y22: product_prod_o_o] :
      ( ( ord_le5151895322379853865od_o_o @ ( produc1891450550985068525od_o_o @ X1 @ Y1 ) @ ( produc1891450550985068525od_o_o @ X22 @ Y22 ) )
      = ( ( ord_less_t @ X1 @ X22 )
        | ( ( ord_less_eq_t @ X1 @ X22 )
          & ( ord_le637433070719144915od_o_o @ Y1 @ Y22 ) ) ) ) ).

% less_prod_simp
thf(fact_1154_less__prod__simp,axiom,
    ! [X1: $o,Y1: $o,X22: $o,Y22: $o] :
      ( ( ord_le637433070719144915od_o_o @ ( product_Pair_o_o @ X1 @ Y1 ) @ ( product_Pair_o_o @ X22 @ Y22 ) )
      = ( ( ord_less_o @ X1 @ X22 )
        | ( ( ord_less_eq_o @ X1 @ X22 )
          & ( ord_less_o @ Y1 @ Y22 ) ) ) ) ).

% less_prod_simp
thf(fact_1155_less__prod__simp,axiom,
    ! [X1: nat > $o,Y1: nat,X22: nat > $o,Y22: nat] :
      ( ( ord_le1440161272000278354_o_nat @ ( produc7277522915581678840_o_nat @ X1 @ Y1 ) @ ( produc7277522915581678840_o_nat @ X22 @ Y22 ) )
      = ( ( ord_less_nat_o @ X1 @ X22 )
        | ( ( ord_less_eq_nat_o @ X1 @ X22 )
          & ( ord_less_nat @ Y1 @ Y22 ) ) ) ) ).

% less_prod_simp
thf(fact_1156_less__prod__simp,axiom,
    ! [X1: nat,Y1: nat,X22: nat,Y22: nat] :
      ( ( ord_le1203424502768444845at_nat @ ( product_Pair_nat_nat @ X1 @ Y1 ) @ ( product_Pair_nat_nat @ X22 @ Y22 ) )
      = ( ( ord_less_nat @ X1 @ X22 )
        | ( ( ord_less_eq_nat @ X1 @ X22 )
          & ( ord_less_nat @ Y1 @ Y22 ) ) ) ) ).

% less_prod_simp
thf(fact_1157_less__eq__prod__simp,axiom,
    ! [X1: t,Y1: product_prod_o_o,X22: t,Y22: product_prod_o_o] :
      ( ( ord_le386858854047861021od_o_o @ ( produc1891450550985068525od_o_o @ X1 @ Y1 ) @ ( produc1891450550985068525od_o_o @ X22 @ Y22 ) )
      = ( ( ord_less_t @ X1 @ X22 )
        | ( ( ord_less_eq_t @ X1 @ X22 )
          & ( ord_le2636248316962427079od_o_o @ Y1 @ Y22 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_1158_less__eq__prod__simp,axiom,
    ! [X1: $o,Y1: $o,X22: $o,Y22: $o] :
      ( ( ord_le2636248316962427079od_o_o @ ( product_Pair_o_o @ X1 @ Y1 ) @ ( product_Pair_o_o @ X22 @ Y22 ) )
      = ( ( ord_less_o @ X1 @ X22 )
        | ( ( ord_less_eq_o @ X1 @ X22 )
          & ( ord_less_eq_o @ Y1 @ Y22 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_1159_less__eq__prod__simp,axiom,
    ! [X1: nat > $o,Y1: nat,X22: nat > $o,Y22: nat] :
      ( ( ord_le1595970101268698462_o_nat @ ( produc7277522915581678840_o_nat @ X1 @ Y1 ) @ ( produc7277522915581678840_o_nat @ X22 @ Y22 ) )
      = ( ( ord_less_nat_o @ X1 @ X22 )
        | ( ( ord_less_eq_nat_o @ X1 @ X22 )
          & ( ord_less_eq_nat @ Y1 @ Y22 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_1160_less__eq__prod__simp,axiom,
    ! [X1: nat,Y1: nat,X22: nat,Y22: nat] :
      ( ( ord_le8460144461188290721at_nat @ ( product_Pair_nat_nat @ X1 @ Y1 ) @ ( product_Pair_nat_nat @ X22 @ Y22 ) )
      = ( ( ord_less_nat @ X1 @ X22 )
        | ( ( ord_less_eq_nat @ X1 @ X22 )
          & ( ord_less_eq_nat @ Y1 @ Y22 ) ) ) ) ).

% less_eq_prod_simp
thf(fact_1161_match_Osimps_I3_J,axiom,
    ! [R: regex_a_t,S: regex_a_t] :
      ( ( match_a_t @ sigma @ ( plus_a_t @ R @ S ) )
      = ( sup_su6327502436637775413at_nat @ ( match_a_t @ sigma @ R ) @ ( match_a_t @ sigma @ S ) ) ) ).

% match.simps(3)
thf(fact_1162_v__def_I12_J,axiom,
    ! [K: nat] :
      ( ( member_nat @ K @ ( set_or4665077453230672383an_nat @ ia @ ( minus_minus_nat @ j2 @ 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_1163_Until_Oprems_I3_J,axiom,
    bounde209865433540700070la_a_t @ ( until_a_t @ phi2 @ i @ psi ) ).

% Until.prems(3)
thf(fact_1164_Until_Oprems_I4_J,axiom,
    wf_fmla_a_t @ ( until_a_t @ phi2 @ i @ psi ) ).

% Until.prems(4)
thf(fact_1165_sup_Oright__idem,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ ( sup_su6327502436637775413at_nat @ A @ B ) @ B )
      = ( sup_su6327502436637775413at_nat @ A @ B ) ) ).

% sup.right_idem
thf(fact_1166_sup__left__idem,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ X @ ( sup_su6327502436637775413at_nat @ X @ Y ) )
      = ( sup_su6327502436637775413at_nat @ X @ Y ) ) ).

% sup_left_idem
thf(fact_1167_sup_Oleft__idem,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ A @ ( sup_su6327502436637775413at_nat @ A @ B ) )
      = ( sup_su6327502436637775413at_nat @ A @ B ) ) ).

% sup.left_idem
thf(fact_1168_sup__idem,axiom,
    ! [X: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ X @ X )
      = X ) ).

% sup_idem
thf(fact_1169_sup_Oidem,axiom,
    ! [A: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ A @ A )
      = A ) ).

% sup.idem
thf(fact_1170_le__sup__iff,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat,Z: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ X @ Y ) @ Z )
      = ( ( ord_le3146513528884898305at_nat @ X @ Z )
        & ( ord_le3146513528884898305at_nat @ Y @ Z ) ) ) ).

% le_sup_iff
thf(fact_1171_le__sup__iff,axiom,
    ! [X: nat,Y: nat,Z: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ X @ Y ) @ Z )
      = ( ( ord_less_eq_nat @ X @ Z )
        & ( ord_less_eq_nat @ Y @ Z ) ) ) ).

% le_sup_iff
thf(fact_1172_sup_Obounded__iff,axiom,
    ! [B: set_Pr1261947904930325089at_nat,C: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ B @ C ) @ A )
      = ( ( ord_le3146513528884898305at_nat @ B @ A )
        & ( ord_le3146513528884898305at_nat @ C @ A ) ) ) ).

% sup.bounded_iff
thf(fact_1173_sup_Obounded__iff,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ B @ C ) @ A )
      = ( ( ord_less_eq_nat @ B @ A )
        & ( ord_less_eq_nat @ C @ A ) ) ) ).

% sup.bounded_iff
thf(fact_1174_Until_Ohyps_I2_J,axiom,
    ord_less_eq_nat @ ( msize_fmla_a_t @ psi ) @ na ).

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

% Until.hyps(1)
thf(fact_1176_sup_Ostrict__coboundedI2,axiom,
    ! [C: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le7866589430770878221at_nat @ C @ B )
     => ( ord_le7866589430770878221at_nat @ C @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% sup.strict_coboundedI2
thf(fact_1177_sup_Ostrict__coboundedI2,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ord_less_nat @ C @ B )
     => ( ord_less_nat @ C @ ( sup_sup_nat @ A @ B ) ) ) ).

% sup.strict_coboundedI2
thf(fact_1178_sup_Ostrict__coboundedI1,axiom,
    ! [C: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le7866589430770878221at_nat @ C @ A )
     => ( ord_le7866589430770878221at_nat @ C @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% sup.strict_coboundedI1
thf(fact_1179_sup_Ostrict__coboundedI1,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ C @ A )
     => ( ord_less_nat @ C @ ( sup_sup_nat @ A @ B ) ) ) ).

% sup.strict_coboundedI1
thf(fact_1180_sup_Ostrict__order__iff,axiom,
    ( ord_le7866589430770878221at_nat
    = ( ^ [B2: set_Pr1261947904930325089at_nat,A3: set_Pr1261947904930325089at_nat] :
          ( ( A3
            = ( sup_su6327502436637775413at_nat @ A3 @ B2 ) )
          & ( A3 != B2 ) ) ) ) ).

% sup.strict_order_iff
thf(fact_1181_sup_Ostrict__order__iff,axiom,
    ( ord_less_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( A3
            = ( sup_sup_nat @ A3 @ B2 ) )
          & ( A3 != B2 ) ) ) ) ).

% sup.strict_order_iff
thf(fact_1182_sup_Ostrict__boundedE,axiom,
    ! [B: set_Pr1261947904930325089at_nat,C: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le7866589430770878221at_nat @ ( sup_su6327502436637775413at_nat @ B @ C ) @ A )
     => ~ ( ( ord_le7866589430770878221at_nat @ B @ A )
         => ~ ( ord_le7866589430770878221at_nat @ C @ A ) ) ) ).

% sup.strict_boundedE
thf(fact_1183_sup_Ostrict__boundedE,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( ord_less_nat @ ( sup_sup_nat @ B @ C ) @ A )
     => ~ ( ( ord_less_nat @ B @ A )
         => ~ ( ord_less_nat @ C @ A ) ) ) ).

% sup.strict_boundedE
thf(fact_1184_sup_Oabsorb4,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le7866589430770878221at_nat @ A @ B )
     => ( ( sup_su6327502436637775413at_nat @ A @ B )
        = B ) ) ).

% sup.absorb4
thf(fact_1185_sup_Oabsorb4,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( sup_sup_nat @ A @ B )
        = B ) ) ).

% sup.absorb4
thf(fact_1186_sup_Oabsorb3,axiom,
    ! [B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le7866589430770878221at_nat @ B @ A )
     => ( ( sup_su6327502436637775413at_nat @ A @ B )
        = A ) ) ).

% sup.absorb3
thf(fact_1187_sup_Oabsorb3,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( sup_sup_nat @ A @ B )
        = A ) ) ).

% sup.absorb3
thf(fact_1188_less__supI2,axiom,
    ! [X: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le7866589430770878221at_nat @ X @ B )
     => ( ord_le7866589430770878221at_nat @ X @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% less_supI2
thf(fact_1189_less__supI2,axiom,
    ! [X: nat,B: nat,A: nat] :
      ( ( ord_less_nat @ X @ B )
     => ( ord_less_nat @ X @ ( sup_sup_nat @ A @ B ) ) ) ).

% less_supI2
thf(fact_1190_less__supI1,axiom,
    ! [X: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le7866589430770878221at_nat @ X @ A )
     => ( ord_le7866589430770878221at_nat @ X @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% less_supI1
thf(fact_1191_less__supI1,axiom,
    ! [X: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ X @ A )
     => ( ord_less_nat @ X @ ( sup_sup_nat @ A @ B ) ) ) ).

% less_supI1
thf(fact_1192_ivl__disj__un__two_I3_J,axiom,
    ! [L: product_prod_nat_nat,M: product_prod_nat_nat,U2: product_prod_nat_nat] :
      ( ( ord_le8460144461188290721at_nat @ L @ M )
     => ( ( ord_le8460144461188290721at_nat @ M @ U2 )
       => ( ( sup_su6327502436637775413at_nat @ ( set_or2842531625620587538at_nat @ L @ M ) @ ( set_or2842531625620587538at_nat @ M @ U2 ) )
          = ( set_or2842531625620587538at_nat @ L @ U2 ) ) ) ) ).

% ivl_disj_un_two(3)
thf(fact_1193_ivl__disj__un__two_I3_J,axiom,
    ! [L: nat,M: nat,U2: nat] :
      ( ( ord_less_eq_nat @ L @ M )
     => ( ( ord_less_eq_nat @ M @ U2 )
       => ( ( sup_sup_set_nat @ ( set_or4665077453230672383an_nat @ L @ M ) @ ( set_or4665077453230672383an_nat @ M @ U2 ) )
          = ( set_or4665077453230672383an_nat @ L @ U2 ) ) ) ) ).

% ivl_disj_un_two(3)
thf(fact_1194_inf__sup__ord_I4_J,axiom,
    ! [Y: set_Pr1261947904930325089at_nat,X: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ Y @ ( sup_su6327502436637775413at_nat @ X @ Y ) ) ).

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

% inf_sup_ord(4)
thf(fact_1196_inf__sup__ord_I3_J,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ X @ ( sup_su6327502436637775413at_nat @ X @ Y ) ) ).

% inf_sup_ord(3)
thf(fact_1197_inf__sup__ord_I3_J,axiom,
    ! [X: nat,Y: nat] : ( ord_less_eq_nat @ X @ ( sup_sup_nat @ X @ Y ) ) ).

% inf_sup_ord(3)
thf(fact_1198_le__supE,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat,X: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ A @ B ) @ X )
     => ~ ( ( ord_le3146513528884898305at_nat @ A @ X )
         => ~ ( ord_le3146513528884898305at_nat @ B @ X ) ) ) ).

% le_supE
thf(fact_1199_le__supE,axiom,
    ! [A: nat,B: nat,X: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ A @ B ) @ X )
     => ~ ( ( ord_less_eq_nat @ A @ X )
         => ~ ( ord_less_eq_nat @ B @ X ) ) ) ).

% le_supE
thf(fact_1200_le__supI,axiom,
    ! [A: set_Pr1261947904930325089at_nat,X: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ A @ X )
     => ( ( ord_le3146513528884898305at_nat @ B @ X )
       => ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ A @ B ) @ X ) ) ) ).

% le_supI
thf(fact_1201_le__supI,axiom,
    ! [A: nat,X: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ X )
     => ( ( ord_less_eq_nat @ B @ X )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ A @ B ) @ X ) ) ) ).

% le_supI
thf(fact_1202_sup__ge1,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ X @ ( sup_su6327502436637775413at_nat @ X @ Y ) ) ).

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

% sup_ge1
thf(fact_1204_sup__ge2,axiom,
    ! [Y: set_Pr1261947904930325089at_nat,X: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ Y @ ( sup_su6327502436637775413at_nat @ X @ Y ) ) ).

% sup_ge2
thf(fact_1205_sup__ge2,axiom,
    ! [Y: nat,X: nat] : ( ord_less_eq_nat @ Y @ ( sup_sup_nat @ X @ Y ) ) ).

% sup_ge2
thf(fact_1206_le__supI1,axiom,
    ! [X: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ X @ A )
     => ( ord_le3146513528884898305at_nat @ X @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% le_supI1
thf(fact_1207_le__supI1,axiom,
    ! [X: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ X @ A )
     => ( ord_less_eq_nat @ X @ ( sup_sup_nat @ A @ B ) ) ) ).

% le_supI1
thf(fact_1208_le__supI2,axiom,
    ! [X: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ X @ B )
     => ( ord_le3146513528884898305at_nat @ X @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% le_supI2
thf(fact_1209_le__supI2,axiom,
    ! [X: nat,B: nat,A: nat] :
      ( ( ord_less_eq_nat @ X @ B )
     => ( ord_less_eq_nat @ X @ ( sup_sup_nat @ A @ B ) ) ) ).

% le_supI2
thf(fact_1210_sup_Omono,axiom,
    ! [C: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat,D: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ C @ A )
     => ( ( ord_le3146513528884898305at_nat @ D @ B )
       => ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ C @ D ) @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ) ).

% sup.mono
thf(fact_1211_sup_Omono,axiom,
    ! [C: nat,A: nat,D: nat,B: nat] :
      ( ( ord_less_eq_nat @ C @ A )
     => ( ( ord_less_eq_nat @ D @ B )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ C @ D ) @ ( sup_sup_nat @ A @ B ) ) ) ) ).

% sup.mono
thf(fact_1212_sup__mono,axiom,
    ! [A: set_Pr1261947904930325089at_nat,C: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat,D: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ A @ C )
     => ( ( ord_le3146513528884898305at_nat @ B @ D )
       => ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ A @ B ) @ ( sup_su6327502436637775413at_nat @ C @ D ) ) ) ) ).

% sup_mono
thf(fact_1213_sup__mono,axiom,
    ! [A: nat,C: nat,B: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ D )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ A @ B ) @ ( sup_sup_nat @ C @ D ) ) ) ) ).

% sup_mono
thf(fact_1214_sup__least,axiom,
    ! [Y: set_Pr1261947904930325089at_nat,X: set_Pr1261947904930325089at_nat,Z: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ Y @ X )
     => ( ( ord_le3146513528884898305at_nat @ Z @ X )
       => ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ Y @ Z ) @ X ) ) ) ).

% sup_least
thf(fact_1215_sup__least,axiom,
    ! [Y: nat,X: nat,Z: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ( ( ord_less_eq_nat @ Z @ X )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ Y @ Z ) @ X ) ) ) ).

% sup_least
thf(fact_1216_le__iff__sup,axiom,
    ( ord_le3146513528884898305at_nat
    = ( ^ [X2: set_Pr1261947904930325089at_nat,Y5: set_Pr1261947904930325089at_nat] :
          ( ( sup_su6327502436637775413at_nat @ X2 @ Y5 )
          = Y5 ) ) ) ).

% le_iff_sup
thf(fact_1217_le__iff__sup,axiom,
    ( ord_less_eq_nat
    = ( ^ [X2: nat,Y5: nat] :
          ( ( sup_sup_nat @ X2 @ Y5 )
          = Y5 ) ) ) ).

% le_iff_sup
thf(fact_1218_sup_OorderE,axiom,
    ! [B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ B @ A )
     => ( A
        = ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

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

% sup.orderE
thf(fact_1220_sup_OorderI,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( A
        = ( sup_su6327502436637775413at_nat @ A @ B ) )
     => ( ord_le3146513528884898305at_nat @ B @ A ) ) ).

% sup.orderI
thf(fact_1221_sup_OorderI,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( sup_sup_nat @ A @ B ) )
     => ( ord_less_eq_nat @ B @ A ) ) ).

% sup.orderI
thf(fact_1222_sup__unique,axiom,
    ! [F: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat,X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat] :
      ( ! [X3: set_Pr1261947904930325089at_nat,Y2: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ X3 @ ( F @ X3 @ Y2 ) )
     => ( ! [X3: set_Pr1261947904930325089at_nat,Y2: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ Y2 @ ( F @ X3 @ Y2 ) )
       => ( ! [X3: set_Pr1261947904930325089at_nat,Y2: set_Pr1261947904930325089at_nat,Z3: set_Pr1261947904930325089at_nat] :
              ( ( ord_le3146513528884898305at_nat @ Y2 @ X3 )
             => ( ( ord_le3146513528884898305at_nat @ Z3 @ X3 )
               => ( ord_le3146513528884898305at_nat @ ( F @ Y2 @ Z3 ) @ X3 ) ) )
         => ( ( sup_su6327502436637775413at_nat @ X @ Y )
            = ( F @ X @ Y ) ) ) ) ) ).

% sup_unique
thf(fact_1223_sup__unique,axiom,
    ! [F: nat > nat > nat,X: nat,Y: nat] :
      ( ! [X3: nat,Y2: nat] : ( ord_less_eq_nat @ X3 @ ( F @ X3 @ Y2 ) )
     => ( ! [X3: nat,Y2: nat] : ( ord_less_eq_nat @ Y2 @ ( F @ X3 @ Y2 ) )
       => ( ! [X3: nat,Y2: nat,Z3: nat] :
              ( ( ord_less_eq_nat @ Y2 @ X3 )
             => ( ( ord_less_eq_nat @ Z3 @ X3 )
               => ( ord_less_eq_nat @ ( F @ Y2 @ Z3 ) @ X3 ) ) )
         => ( ( sup_sup_nat @ X @ Y )
            = ( F @ X @ Y ) ) ) ) ) ).

% sup_unique
thf(fact_1224_sup_Oabsorb1,axiom,
    ! [B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ B @ A )
     => ( ( sup_su6327502436637775413at_nat @ A @ B )
        = A ) ) ).

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

% sup.absorb1
thf(fact_1226_sup_Oabsorb2,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ A @ B )
     => ( ( sup_su6327502436637775413at_nat @ A @ B )
        = B ) ) ).

% sup.absorb2
thf(fact_1227_sup_Oabsorb2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( sup_sup_nat @ A @ B )
        = B ) ) ).

% sup.absorb2
thf(fact_1228_sup__absorb1,axiom,
    ! [Y: set_Pr1261947904930325089at_nat,X: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ Y @ X )
     => ( ( sup_su6327502436637775413at_nat @ X @ Y )
        = X ) ) ).

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

% sup_absorb1
thf(fact_1230_sup__absorb2,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ X @ Y )
     => ( ( sup_su6327502436637775413at_nat @ X @ Y )
        = Y ) ) ).

% sup_absorb2
thf(fact_1231_sup__absorb2,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( sup_sup_nat @ X @ Y )
        = Y ) ) ).

% sup_absorb2
thf(fact_1232_sup_OboundedE,axiom,
    ! [B: set_Pr1261947904930325089at_nat,C: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ B @ C ) @ A )
     => ~ ( ( ord_le3146513528884898305at_nat @ B @ A )
         => ~ ( ord_le3146513528884898305at_nat @ C @ A ) ) ) ).

% sup.boundedE
thf(fact_1233_sup_OboundedE,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ B @ C ) @ A )
     => ~ ( ( ord_less_eq_nat @ B @ A )
         => ~ ( ord_less_eq_nat @ C @ A ) ) ) ).

% sup.boundedE
thf(fact_1234_sup_OboundedI,axiom,
    ! [B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat,C: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ B @ A )
     => ( ( ord_le3146513528884898305at_nat @ C @ A )
       => ( ord_le3146513528884898305at_nat @ ( sup_su6327502436637775413at_nat @ B @ C ) @ A ) ) ) ).

% sup.boundedI
thf(fact_1235_sup_OboundedI,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ B @ C ) @ A ) ) ) ).

% sup.boundedI
thf(fact_1236_sup_Oorder__iff,axiom,
    ( ord_le3146513528884898305at_nat
    = ( ^ [B2: set_Pr1261947904930325089at_nat,A3: set_Pr1261947904930325089at_nat] :
          ( A3
          = ( sup_su6327502436637775413at_nat @ A3 @ B2 ) ) ) ) ).

% sup.order_iff
thf(fact_1237_sup_Oorder__iff,axiom,
    ( ord_less_eq_nat
    = ( ^ [B2: nat,A3: nat] :
          ( A3
          = ( sup_sup_nat @ A3 @ B2 ) ) ) ) ).

% sup.order_iff
thf(fact_1238_sup_Ocobounded1,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ A @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ).

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

% sup.cobounded1
thf(fact_1240_sup_Ocobounded2,axiom,
    ! [B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] : ( ord_le3146513528884898305at_nat @ B @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ).

% sup.cobounded2
thf(fact_1241_sup_Ocobounded2,axiom,
    ! [B: nat,A: nat] : ( ord_less_eq_nat @ B @ ( sup_sup_nat @ A @ B ) ) ).

% sup.cobounded2
thf(fact_1242_sup_Oabsorb__iff1,axiom,
    ( ord_le3146513528884898305at_nat
    = ( ^ [B2: set_Pr1261947904930325089at_nat,A3: set_Pr1261947904930325089at_nat] :
          ( ( sup_su6327502436637775413at_nat @ A3 @ B2 )
          = A3 ) ) ) ).

% sup.absorb_iff1
thf(fact_1243_sup_Oabsorb__iff1,axiom,
    ( ord_less_eq_nat
    = ( ^ [B2: nat,A3: nat] :
          ( ( sup_sup_nat @ A3 @ B2 )
          = A3 ) ) ) ).

% sup.absorb_iff1
thf(fact_1244_sup_Oabsorb__iff2,axiom,
    ( ord_le3146513528884898305at_nat
    = ( ^ [A3: set_Pr1261947904930325089at_nat,B2: set_Pr1261947904930325089at_nat] :
          ( ( sup_su6327502436637775413at_nat @ A3 @ B2 )
          = B2 ) ) ) ).

% sup.absorb_iff2
thf(fact_1245_sup_Oabsorb__iff2,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B2: nat] :
          ( ( sup_sup_nat @ A3 @ B2 )
          = B2 ) ) ) ).

% sup.absorb_iff2
thf(fact_1246_sup_OcoboundedI1,axiom,
    ! [C: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ C @ A )
     => ( ord_le3146513528884898305at_nat @ C @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% sup.coboundedI1
thf(fact_1247_sup_OcoboundedI1,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ C @ A )
     => ( ord_less_eq_nat @ C @ ( sup_sup_nat @ A @ B ) ) ) ).

% sup.coboundedI1
thf(fact_1248_sup_OcoboundedI2,axiom,
    ! [C: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat] :
      ( ( ord_le3146513528884898305at_nat @ C @ B )
     => ( ord_le3146513528884898305at_nat @ C @ ( sup_su6327502436637775413at_nat @ A @ B ) ) ) ).

% sup.coboundedI2
thf(fact_1249_sup_OcoboundedI2,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ord_less_eq_nat @ C @ B )
     => ( ord_less_eq_nat @ C @ ( sup_sup_nat @ A @ B ) ) ) ).

% sup.coboundedI2
thf(fact_1250_ivl__disj__un__two_I6_J,axiom,
    ! [L: product_prod_nat_nat,M: product_prod_nat_nat,U2: product_prod_nat_nat] :
      ( ( ord_le8460144461188290721at_nat @ L @ M )
     => ( ( ord_le8460144461188290721at_nat @ M @ U2 )
       => ( ( sup_su6327502436637775413at_nat @ ( set_or6204648988538903121at_nat @ L @ M ) @ ( set_or6204648988538903121at_nat @ M @ U2 ) )
          = ( set_or6204648988538903121at_nat @ L @ U2 ) ) ) ) ).

% ivl_disj_un_two(6)
thf(fact_1251_ivl__disj__un__two_I6_J,axiom,
    ! [L: nat,M: nat,U2: nat] :
      ( ( ord_less_eq_nat @ L @ M )
     => ( ( ord_less_eq_nat @ M @ U2 )
       => ( ( sup_sup_set_nat @ ( set_or6659071591806873216st_nat @ L @ M ) @ ( set_or6659071591806873216st_nat @ M @ U2 ) )
          = ( set_or6659071591806873216st_nat @ L @ U2 ) ) ) ) ).

% ivl_disj_un_two(6)
thf(fact_1252_MDL_Omatch_Osimps_I3_J,axiom,
    ! [Sigma: trace_a_t,R: regex_a_t,S: regex_a_t] :
      ( ( match_a_t @ Sigma @ ( plus_a_t @ R @ S ) )
      = ( sup_su6327502436637775413at_nat @ ( match_a_t @ Sigma @ R ) @ ( match_a_t @ Sigma @ S ) ) ) ).

% MDL.match.simps(3)
thf(fact_1253_sup__left__commute,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat,Z: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ X @ ( sup_su6327502436637775413at_nat @ Y @ Z ) )
      = ( sup_su6327502436637775413at_nat @ Y @ ( sup_su6327502436637775413at_nat @ X @ Z ) ) ) ).

% sup_left_commute
thf(fact_1254_sup_Oleft__commute,axiom,
    ! [B: set_Pr1261947904930325089at_nat,A: set_Pr1261947904930325089at_nat,C: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ B @ ( sup_su6327502436637775413at_nat @ A @ C ) )
      = ( sup_su6327502436637775413at_nat @ A @ ( sup_su6327502436637775413at_nat @ B @ C ) ) ) ).

% sup.left_commute
thf(fact_1255_sup__commute,axiom,
    ( sup_su6327502436637775413at_nat
    = ( ^ [X2: set_Pr1261947904930325089at_nat,Y5: set_Pr1261947904930325089at_nat] : ( sup_su6327502436637775413at_nat @ Y5 @ X2 ) ) ) ).

% sup_commute
thf(fact_1256_sup_Ocommute,axiom,
    ( sup_su6327502436637775413at_nat
    = ( ^ [A3: set_Pr1261947904930325089at_nat,B2: set_Pr1261947904930325089at_nat] : ( sup_su6327502436637775413at_nat @ B2 @ A3 ) ) ) ).

% sup.commute
thf(fact_1257_sup__assoc,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat,Z: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ ( sup_su6327502436637775413at_nat @ X @ Y ) @ Z )
      = ( sup_su6327502436637775413at_nat @ X @ ( sup_su6327502436637775413at_nat @ Y @ Z ) ) ) ).

% sup_assoc
thf(fact_1258_sup_Oassoc,axiom,
    ! [A: set_Pr1261947904930325089at_nat,B: set_Pr1261947904930325089at_nat,C: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ ( sup_su6327502436637775413at_nat @ A @ B ) @ C )
      = ( sup_su6327502436637775413at_nat @ A @ ( sup_su6327502436637775413at_nat @ B @ C ) ) ) ).

% sup.assoc
thf(fact_1259_inf__sup__aci_I5_J,axiom,
    ( sup_su6327502436637775413at_nat
    = ( ^ [X2: set_Pr1261947904930325089at_nat,Y5: set_Pr1261947904930325089at_nat] : ( sup_su6327502436637775413at_nat @ Y5 @ X2 ) ) ) ).

% inf_sup_aci(5)
thf(fact_1260_inf__sup__aci_I6_J,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat,Z: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ ( sup_su6327502436637775413at_nat @ X @ Y ) @ Z )
      = ( sup_su6327502436637775413at_nat @ X @ ( sup_su6327502436637775413at_nat @ Y @ Z ) ) ) ).

% inf_sup_aci(6)
thf(fact_1261_inf__sup__aci_I7_J,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat,Z: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ X @ ( sup_su6327502436637775413at_nat @ Y @ Z ) )
      = ( sup_su6327502436637775413at_nat @ Y @ ( sup_su6327502436637775413at_nat @ X @ Z ) ) ) ).

% inf_sup_aci(7)
thf(fact_1262_inf__sup__aci_I8_J,axiom,
    ! [X: set_Pr1261947904930325089at_nat,Y: set_Pr1261947904930325089at_nat] :
      ( ( sup_su6327502436637775413at_nat @ X @ ( sup_su6327502436637775413at_nat @ X @ Y ) )
      = ( sup_su6327502436637775413at_nat @ X @ Y ) ) ).

% inf_sup_aci(8)
thf(fact_1263_set__union,axiom,
    ! [Xs: list_t,Ys: list_t] :
      ( ( set_t2 @ ( union_t @ Xs @ Ys ) )
      = ( sup_sup_set_t @ ( set_t2 @ Xs ) @ ( set_t2 @ Ys ) ) ) ).

% set_union
thf(fact_1264_set__union,axiom,
    ! [Xs: list_P6011104703257516679at_nat,Ys: list_P6011104703257516679at_nat] :
      ( ( set_Pr5648618587558075414at_nat @ ( union_3235296681157640187at_nat @ Xs @ Ys ) )
      = ( sup_su6327502436637775413at_nat @ ( set_Pr5648618587558075414at_nat @ Xs ) @ ( set_Pr5648618587558075414at_nat @ Ys ) ) ) ).

% set_union
thf(fact_1265_sat_Oelims_I3_J,axiom,
    ! [X: formula_a_t,Xa: nat] :
      ( ~ ( sat_a_t @ sigma @ X @ Xa )
     => ( ! [B4: $o] :
            ( ( X
              = ( bool_a_t @ B4 ) )
           => B4 )
       => ( ! [A4: a] :
              ( ( X
                = ( atom_a_t @ A4 ) )
             => ( member_a @ A4 @ ( gamma_a_t @ sigma @ Xa ) ) )
         => ( ! [Phi3: formula_a_t] :
                ( ( X
                  = ( neg_a_t @ Phi3 ) )
               => ~ ( sat_a_t @ sigma @ Phi3 @ Xa ) )
           => ( ! [F3: $o > $o > $o,Phi3: formula_a_t,Psi2: formula_a_t] :
                  ( ( X
                    = ( bin_a_t @ F3 @ Phi3 @ Psi2 ) )
                 => ( F3 @ ( sat_a_t @ sigma @ Phi3 @ Xa ) @ ( sat_a_t @ sigma @ Psi2 @ Xa ) ) )
             => ( ! [I5: i_t,Phi3: formula_a_t] :
                    ( ( X
                      = ( prev_t_a @ I5 @ Phi3 ) )
                   => ( case_nat_o @ $false
                      @ ^ [J2: nat] :
                          ( ( mem_t @ ( tau_a_t @ sigma @ J2 ) @ ( tau_a_t @ sigma @ Xa ) @ I5 )
                          & ( sat_a_t @ sigma @ Phi3 @ J2 ) )
                      @ Xa ) )
               => ( ! [I5: i_t,Phi3: formula_a_t] :
                      ( ( X
                        = ( next_t_a @ I5 @ Phi3 ) )
                     => ( ( mem_t @ ( tau_a_t @ sigma @ Xa ) @ ( tau_a_t @ sigma @ ( suc @ Xa ) ) @ I5 )
                        & ( sat_a_t @ sigma @ Phi3 @ ( suc @ Xa ) ) ) )
                 => ( ! [Phi3: formula_a_t,I5: i_t,Psi2: formula_a_t] :
                        ( ( X
                          = ( since_a_t @ Phi3 @ I5 @ Psi2 ) )
                       => ? [J4: nat] :
                            ( ( ord_less_eq_nat @ J4 @ Xa )
                            & ( mem_t @ ( tau_a_t @ sigma @ J4 ) @ ( tau_a_t @ sigma @ Xa ) @ I5 )
                            & ( sat_a_t @ sigma @ Psi2 @ J4 )
                            & ! [X3: nat] :
                                ( ( member_nat @ X3 @ ( set_or6659071591806873216st_nat @ J4 @ Xa ) )
                               => ( sat_a_t @ sigma @ Phi3 @ X3 ) ) ) )
                   => ( ! [Phi3: formula_a_t,I5: i_t,Psi2: formula_a_t] :
                          ( ( X
                            = ( until_a_t @ Phi3 @ I5 @ Psi2 ) )
                         => ? [J4: nat] :
                              ( ( ord_less_eq_nat @ Xa @ J4 )
                              & ( mem_t @ ( tau_a_t @ sigma @ Xa ) @ ( tau_a_t @ sigma @ J4 ) @ I5 )
                              & ( sat_a_t @ sigma @ Psi2 @ J4 )
                              & ! [X3: nat] :
                                  ( ( member_nat @ X3 @ ( set_or4665077453230672383an_nat @ Xa @ J4 ) )
                                 => ( sat_a_t @ sigma @ Phi3 @ X3 ) ) ) )
                     => ( ! [I5: i_t,R4: regex_a_t] :
                            ( ( X
                              = ( matchP_t_a @ I5 @ R4 ) )
                           => ? [J4: nat] :
                                ( ( ord_less_eq_nat @ J4 @ Xa )
                                & ( mem_t @ ( tau_a_t @ sigma @ J4 ) @ ( tau_a_t @ sigma @ Xa ) @ I5 )
                                & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ J4 @ ( suc @ Xa ) ) @ ( match_a_t @ sigma @ R4 ) ) ) )
                       => ~ ! [I5: i_t,R4: regex_a_t] :
                              ( ( X
                                = ( matchF_t_a @ I5 @ R4 ) )
                             => ? [J4: nat] :
                                  ( ( ord_less_eq_nat @ Xa @ J4 )
                                  & ( mem_t @ ( tau_a_t @ sigma @ Xa ) @ ( tau_a_t @ sigma @ J4 ) @ I5 )
                                  & ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Xa @ ( suc @ J4 ) ) @ ( match_a_t @ sigma @ R4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% sat.elims(3)

% Helper facts (5)
thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $true @ X @ Y )
      = X ) ).

thf(help_If_3_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $true @ X @ Y )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( ta
    = ( tau_a_t @ sigma @ ia ) ) ).

%------------------------------------------------------------------------------