TPTP Problem File: SLH0726^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    : Separation_Logic_Unbounded/0003_FixedPoint/prob_00428_013037__6850928_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1526 ( 477 unt; 245 typ;   0 def)
%            Number of atoms       : 4182 (1195 equ;   0 cnn)
%            Maximal formula atoms :   12 (   3 avg)
%            Number of connectives : 15010 ( 340   ~;  36   |; 233   &;12645   @)
%                                         (   0 <=>;1756  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   9 avg)
%            Number of types       :   27 (  26 usr)
%            Number of type conns  : 3624 (3624   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  222 ( 219 usr;  22 con; 0-7 aty)
%            Number of variables   : 5179 ( 210   ^;4893   !;  76   ?;5179   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 16:05:25.709
%------------------------------------------------------------------------------
% Could-be-implicit typings (26)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_J_J_J,type,
    set_Pr1275464188344874039_a_c_d: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_J_J,type,
    produc5278197477302038359_a_c_d: $tType ).

thf(ty_n_t__UnboundedLogic__Oassertion_Itf__a_Mtf__b_Mt__Option__Ooption_Itf__a_J_Mt__Nat__Onat_J,type,
    assert7591039163618688690_a_nat: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_J,type,
    option6413918287372586467_a_c_d: $tType ).

thf(ty_n_t__UnboundedLogic__Oassertion_Itf__a_Mtf__b_Mt__Nat__Onat_Mt__Nat__Onat_J,type,
    assert8917056066125641810at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Option__Ooption_It__Option__Ooption_It__Nat__Onat_J_J_J,type,
    set_op6961666426309957030on_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Option__Ooption_It__Option__Ooption_Itf__a_J_J_J,type,
    set_option_option_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J_J,type,
    set_Pr4193341848836149977_nat_a: $tType ).

thf(ty_n_t__UnboundedLogic__Oassertion_Itf__a_Mtf__b_Mtf__d_Mtf__c_J,type,
    assertion_a_b_d_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J,type,
    product_prod_a_c_d: $tType ).

thf(ty_n_t__Option__Ooption_It__Option__Ooption_It__Nat__Onat_J_J,type,
    option_option_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Option__Ooption_It__Nat__Onat_J_J,type,
    set_option_nat: $tType ).

thf(ty_n_t__Option__Ooption_It__Option__Ooption_Itf__a_J_J,type,
    option_option_a: $tType ).

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

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    set_set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    set_option_a: $tType ).

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

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

thf(ty_n_t__Option__Ooption_Itf__a_J,type,
    option_a: $tType ).

thf(ty_n_t__Set__Oset_Itf__c_J,type,
    set_c: $tType ).

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

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

thf(ty_n_tf__d,type,
    d: $tType ).

thf(ty_n_tf__c,type,
    c: $tType ).

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

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

% Explicit typings (219)
thf(sy_c_Combinability_Ologic_Ocombinable_001tf__a_001tf__b_001tf__c_001tf__d,type,
    combinable_a_b_c_d: ( a > a > option_a ) > ( b > a > a ) > ( b > b > b ) > ( a > $o ) > ( ( c > d ) > set_a ) > assertion_a_b_d_c > $o ).

thf(sy_c_Combinability_Ologic_Ounambiguous_001tf__a_001tf__b_001t__Nat__Onat_001t__Nat__Onat,type,
    unambi8219075153562652768at_nat: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > ( ( nat > nat ) > set_a ) > assert8917056066125641810at_nat > nat > $o ).

thf(sy_c_Combinability_Ologic_Ounambiguous_001tf__a_001tf__b_001t__Nat__Onat_001t__Option__Ooption_Itf__a_J,type,
    unambi1007057386542835892tion_a: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > ( ( nat > option_a ) > set_a ) > assert7591039163618688690_a_nat > nat > $o ).

thf(sy_c_Combinability_Ologic_Ounambiguous_001tf__a_001tf__b_001tf__c_001tf__d,type,
    unambiguous_a_b_c_d: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > ( ( c > d ) > set_a ) > assertion_a_b_d_c > c > $o ).

thf(sy_c_Finite__Set_Ocard_001t__Nat__Onat,type,
    finite_card_nat: set_nat > nat ).

thf(sy_c_Finite__Set_Ofinite_001t__Nat__Onat,type,
    finite_finite_nat: set_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Option__Ooption_It__Nat__Onat_J,type,
    finite5523153139673422903on_nat: set_option_nat > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Option__Ooption_Itf__a_J,type,
    finite1674126218327898605tion_a: set_option_a > $o ).

thf(sy_c_Finite__Set_Ofinite_001tf__a,type,
    finite_finite_a: set_a > $o ).

thf(sy_c_FixedPoint_Ologic_Oapplies__eq_001tf__a_001tf__b_001tf__d_001tf__c,type,
    applies_eq_a_b_d_c: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > assertion_a_b_d_c > ( ( c > d ) > set_a ) > ( c > d ) > set_a ).

thf(sy_c_FixedPoint_Ologic_Oempty__interp_001_062_Itf__c_Mtf__d_J_001tf__a,type,
    empty_interp_c_d_a: ( c > d ) > set_a ).

thf(sy_c_FixedPoint_Ologic_Oindep__interp_001tf__a_001tf__b_001tf__d_001tf__c,type,
    indep_interp_a_b_d_c: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > assertion_a_b_d_c > $o ).

thf(sy_c_FixedPoint_Ologic_Omonotonic_001tf__c_001tf__d_001tf__a,type,
    monotonic_c_d_a: ( ( ( c > d ) > set_a ) > ( c > d ) > set_a ) > $o ).

thf(sy_c_FixedPoint_Ologic_Onon__increasing_001tf__c_001tf__d_001tf__a,type,
    non_increasing_c_d_a: ( ( ( c > d ) > set_a ) > ( c > d ) > set_a ) > $o ).

thf(sy_c_FixedPoint_Ologic_Osmaller__interp_001tf__c_001tf__d_001tf__a,type,
    smaller_interp_c_d_a: ( ( c > d ) > set_a ) > ( ( c > d ) > set_a ) > $o ).

thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001t__Nat__Onat,type,
    fun_upd_nat_nat: ( nat > nat ) > nat > nat > nat > nat ).

thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001t__Option__Ooption_It__Nat__Onat_J,type,
    fun_up1493157387958331631on_nat: ( nat > option_nat ) > nat > option_nat > nat > option_nat ).

thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001t__Option__Ooption_Itf__a_J,type,
    fun_upd_nat_option_a: ( nat > option_a ) > nat > option_a > nat > option_a ).

thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001tf__a,type,
    fun_upd_nat_a: ( nat > a ) > nat > a > nat > a ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_It__Nat__Onat_J_001t__Nat__Onat,type,
    fun_up5413720054234441327at_nat: ( option_nat > nat ) > option_nat > nat > option_nat > nat ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_It__Nat__Onat_J_001t__Option__Ooption_It__Nat__Onat_J,type,
    fun_up5972625598298123583on_nat: ( option_nat > option_nat ) > option_nat > option_nat > option_nat > option_nat ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_It__Nat__Onat_J_001t__Option__Ooption_Itf__a_J,type,
    fun_up1391842941490748133tion_a: ( option_nat > option_a ) > option_nat > option_a > option_nat > option_a ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_It__Nat__Onat_J_001tf__a,type,
    fun_upd_option_nat_a: ( option_nat > a ) > option_nat > a > option_nat > a ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_Itf__a_J_001t__Nat__Onat,type,
    fun_upd_option_a_nat: ( option_a > nat ) > option_a > nat > option_a > nat ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_It__Nat__Onat_J,type,
    fun_up6006905707138584359on_nat: ( option_a > option_nat ) > option_a > option_nat > option_a > option_nat ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    fun_up1079276522633388797tion_a: ( option_a > option_a ) > option_a > option_a > option_a > option_a ).

thf(sy_c_Fun_Ofun__upd_001t__Option__Ooption_Itf__a_J_001tf__a,type,
    fun_upd_option_a_a: ( option_a > a ) > option_a > a > option_a > a ).

thf(sy_c_Fun_Ofun__upd_001tf__a_001t__Nat__Onat,type,
    fun_upd_a_nat: ( a > nat ) > a > nat > a > nat ).

thf(sy_c_Fun_Ofun__upd_001tf__a_001t__Option__Ooption_It__Nat__Onat_J,type,
    fun_upd_a_option_nat: ( a > option_nat ) > a > option_nat > a > option_nat ).

thf(sy_c_Fun_Ofun__upd_001tf__a_001t__Option__Ooption_Itf__a_J,type,
    fun_upd_a_option_a: ( a > option_a ) > a > option_a > a > option_a ).

thf(sy_c_Fun_Ofun__upd_001tf__a_001tf__a,type,
    fun_upd_a_a: ( a > a ) > a > a > a > a ).

thf(sy_c_Fun_Ofun__upd_001tf__c_001tf__d,type,
    fun_upd_c_d: ( c > d ) > c > d > c > d ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Nat__Onat,type,
    inj_on_nat_nat: ( nat > nat ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001tf__a_001t__Option__Ooption_Itf__a_J,type,
    inj_on_a_option_a: ( a > option_a ) > set_a > $o ).

thf(sy_c_Fun_Omonotone__on_001t__Nat__Onat_001t__Nat__Onat,type,
    monotone_on_nat_nat: set_nat > ( nat > nat > $o ) > ( nat > nat > $o ) > ( nat > nat ) > $o ).

thf(sy_c_Fun_Omonotone__on_001t__Set__Oset_It__Nat__Onat_J_001t__Set__Oset_It__Nat__Onat_J,type,
    monoto1748750089227133045et_nat: set_set_nat > ( set_nat > set_nat > $o ) > ( set_nat > set_nat > $o ) > ( set_nat > set_nat ) > $o ).

thf(sy_c_Fun_Ooverride__on_001t__Nat__Onat_001t__Nat__Onat,type,
    override_on_nat_nat: ( nat > nat ) > ( nat > nat ) > set_nat > nat > nat ).

thf(sy_c_Fun_Ooverride__on_001t__Nat__Onat_001t__Option__Ooption_Itf__a_J,type,
    overri807160167190409524tion_a: ( nat > option_a ) > ( nat > option_a ) > set_nat > nat > option_a ).

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

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__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__Option__Ooption_It__Nat__Onat_J_J,type,
    minus_5999362281193037231on_nat: set_option_nat > set_option_nat > set_option_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    minus_1574173051537231627tion_a: set_option_a > set_option_a > set_option_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_Itf__a_J,type,
    minus_minus_set_a: set_a > set_a > set_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Nat__Onat_J,type,
    uminus5710092332889474511et_nat: set_nat > set_nat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Option__Ooption_It__Nat__Onat_J_J,type,
    uminus2023361477510803743on_nat: set_option_nat > set_option_nat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    uminus6205308855922866075tion_a: set_option_a > set_option_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_Itf__a_J,type,
    uminus_uminus_set_a: set_a > set_a ).

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

thf(sy_c_If_001t__Option__Ooption_It__Nat__Onat_J,type,
    if_option_nat: $o > option_nat > option_nat > option_nat ).

thf(sy_c_If_001t__Option__Ooption_Itf__a_J,type,
    if_option_a: $o > option_a > option_a > option_a ).

thf(sy_c_Inductive_Ocomplete__lattice__class_Ogfp_001t__Set__Oset_It__Nat__Onat_J,type,
    comple1596078789208929544et_nat: ( set_nat > set_nat ) > set_nat ).

thf(sy_c_Inductive_Ocomplete__lattice__class_Olfp_001t__Set__Oset_It__Nat__Onat_J,type,
    comple7975543026063415949et_nat: ( set_nat > set_nat ) > set_nat ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Nat__Onat,type,
    inf_inf_nat: nat > nat > nat ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_It__Nat__Onat_J,type,
    inf_inf_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Lattices_Osemilattice__neutr__order_001t__Set__Oset_It__Nat__Onat_J,type,
    semila1667268886620078168et_nat: ( set_nat > set_nat > set_nat ) > set_nat > ( set_nat > set_nat > $o ) > ( set_nat > set_nat > $o ) > $o ).

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__Big_Olinorder__class_OMax_001t__Nat__Onat,type,
    lattic8265883725875713057ax_nat: set_nat > nat ).

thf(sy_c_Lattices__Big_Olinorder__class_OMin_001t__Nat__Onat,type,
    lattic8721135487736765967in_nat: set_nat > nat ).

thf(sy_c_Lattices__Big_Oord__class_Oarg__min__on_001t__Nat__Onat_001t__Nat__Onat,type,
    lattic7446932960582359483at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Lattices__Big_Osemilattice__inf__class_OInf__fin_001t__Nat__Onat,type,
    lattic5238388535129920115in_nat: set_nat > nat ).

thf(sy_c_Lattices__Big_Osemilattice__order__set_001t__Nat__Onat,type,
    lattic6009151579333465974et_nat: ( nat > nat > nat ) > ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_Lattices__Big_Osemilattice__set_001t__Nat__Onat,type,
    lattic1029310888574255042et_nat: ( nat > nat > nat ) > $o ).

thf(sy_c_Lattices__Big_Osemilattice__set_001tf__a,type,
    lattic5961991414251573132_set_a: ( a > a > a ) > $o ).

thf(sy_c_Lattices__Big_Osemilattice__set_OF_001t__Nat__Onat,type,
    lattic7742739596368939638_F_nat: ( nat > nat > nat ) > set_nat > nat ).

thf(sy_c_Lattices__Big_Osemilattice__set_OF_001tf__a,type,
    lattic5116578512385870296ce_F_a: ( a > a > a ) > set_a > a ).

thf(sy_c_Lattices__Big_Osemilattice__sup__class_OSup__fin_001t__Nat__Onat,type,
    lattic1093996805478795353in_nat: set_nat > nat ).

thf(sy_c_Map_Odom_001t__Nat__Onat_001t__Nat__Onat,type,
    dom_nat_nat: ( nat > option_nat ) > set_nat ).

thf(sy_c_Map_Odom_001t__Nat__Onat_001tf__a,type,
    dom_nat_a: ( nat > option_a ) > set_nat ).

thf(sy_c_Map_Odom_001t__Option__Ooption_It__Nat__Onat_J_001t__Nat__Onat,type,
    dom_option_nat_nat: ( option_nat > option_nat ) > set_option_nat ).

thf(sy_c_Map_Odom_001t__Option__Ooption_It__Nat__Onat_J_001tf__a,type,
    dom_option_nat_a: ( option_nat > option_a ) > set_option_nat ).

thf(sy_c_Map_Odom_001t__Option__Ooption_Itf__a_J_001t__Nat__Onat,type,
    dom_option_a_nat: ( option_a > option_nat ) > set_option_a ).

thf(sy_c_Map_Odom_001t__Option__Ooption_Itf__a_J_001tf__a,type,
    dom_option_a_a: ( option_a > option_a ) > set_option_a ).

thf(sy_c_Map_Odom_001tf__a_001t__Nat__Onat,type,
    dom_a_nat: ( a > option_nat ) > set_a ).

thf(sy_c_Map_Odom_001tf__a_001tf__a,type,
    dom_a_a: ( a > option_a ) > set_a ).

thf(sy_c_Map_Ograph_001t__Nat__Onat_001tf__a,type,
    graph_nat_a: ( nat > option_a ) > set_Pr4193341848836149977_nat_a ).

thf(sy_c_Map_Omap__le_001t__Nat__Onat_001tf__a,type,
    map_le_nat_a: ( nat > option_a ) > ( nat > option_a ) > $o ).

thf(sy_c_Map_Oran_001t__Nat__Onat_001tf__a,type,
    ran_nat_a: ( nat > option_a ) > set_a ).

thf(sy_c_Map_Orestrict__map_001t__Nat__Onat_001t__Nat__Onat,type,
    restrict_map_nat_nat: ( nat > option_nat ) > set_nat > nat > option_nat ).

thf(sy_c_Map_Orestrict__map_001t__Nat__Onat_001tf__a,type,
    restrict_map_nat_a: ( nat > option_a ) > set_nat > nat > option_a ).

thf(sy_c_Map_Orestrict__map_001t__Option__Ooption_It__Nat__Onat_J_001t__Nat__Onat,type,
    restri4097862903755581090at_nat: ( option_nat > option_nat ) > set_option_nat > option_nat > option_nat ).

thf(sy_c_Map_Orestrict__map_001t__Option__Ooption_It__Nat__Onat_J_001tf__a,type,
    restri5828758267375362220_nat_a: ( option_nat > option_a ) > set_option_nat > option_nat > option_a ).

thf(sy_c_Map_Orestrict__map_001t__Option__Ooption_Itf__a_J_001t__Nat__Onat,type,
    restri8223220002595875556_a_nat: ( option_a > option_nat ) > set_option_a > option_a > option_nat ).

thf(sy_c_Map_Orestrict__map_001t__Option__Ooption_Itf__a_J_001tf__a,type,
    restri3984065703976872170on_a_a: ( option_a > option_a ) > set_option_a > option_a > option_a ).

thf(sy_c_Map_Orestrict__map_001tf__a_001t__Nat__Onat,type,
    restrict_map_a_nat: ( a > option_nat ) > set_a > a > option_nat ).

thf(sy_c_Map_Orestrict__map_001tf__a_001tf__a,type,
    restrict_map_a_a: ( a > option_a ) > set_a > a > option_a ).

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

thf(sy_c_Nat_Ocompow_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    compow_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Ocompow_001_062_It__Set__Oset_It__Nat__Onat_J_Mt__Set__Oset_It__Nat__Onat_J_J,type,
    compow8708494347934031032et_nat: nat > ( set_nat > set_nat ) > set_nat > set_nat ).

thf(sy_c_Option_Ooption_ONone_001t__Nat__Onat,type,
    none_nat: option_nat ).

thf(sy_c_Option_Ooption_ONone_001t__Option__Ooption_It__Nat__Onat_J,type,
    none_option_nat: option_option_nat ).

thf(sy_c_Option_Ooption_ONone_001t__Option__Ooption_Itf__a_J,type,
    none_option_a: option_option_a ).

thf(sy_c_Option_Ooption_ONone_001tf__a,type,
    none_a: option_a ).

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__Option__Ooption_Itf__a_J,type,
    some_option_a: option_a > option_option_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J,type,
    some_P1084500821511757806_a_c_d: product_prod_a_c_d > option6413918287372586467_a_c_d ).

thf(sy_c_Option_Ooption_OSome_001tf__a,type,
    some_a: a > option_a ).

thf(sy_c_Option_Ooption_Oset__option_001t__Nat__Onat,type,
    set_option_nat2: option_nat > set_nat ).

thf(sy_c_Option_Ooption_Oset__option_001t__Option__Ooption_It__Nat__Onat_J,type,
    set_op3360498428384587026on_nat: option_option_nat > set_option_nat ).

thf(sy_c_Option_Ooption_Oset__option_001t__Option__Ooption_Itf__a_J,type,
    set_option_option_a2: option_option_a > set_option_a ).

thf(sy_c_Option_Ooption_Oset__option_001tf__a,type,
    set_option_a2: option_a > set_a ).

thf(sy_c_Option_Ooption_Othe_001t__Nat__Onat,type,
    the_nat: option_nat > nat ).

thf(sy_c_Option_Ooption_Othe_001tf__a,type,
    the_a: option_a > a ).

thf(sy_c_Option_Othese_001t__Nat__Onat,type,
    these_nat: set_option_nat > set_nat ).

thf(sy_c_Option_Othese_001t__Option__Ooption_It__Nat__Onat_J,type,
    these_option_nat: set_op6961666426309957030on_nat > set_option_nat ).

thf(sy_c_Option_Othese_001t__Option__Ooption_Itf__a_J,type,
    these_option_a: set_option_option_a > set_option_a ).

thf(sy_c_Option_Othese_001tf__a,type,
    these_a: set_option_a > set_a ).

thf(sy_c_Orderings_Obot__class_Obot_001_062_I_Eo_Mt__Nat__Onat_J,type,
    bot_bot_o_nat: $o > nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Nat__Onat,type,
    bot_bot_nat: nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Nat__Onat_J,type,
    bot_bot_set_nat: set_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Option__Ooption_It__Nat__Onat_J_J,type,
    bot_bo5009843511495006442on_nat: set_option_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Option__Ooption_It__Option__Ooption_It__Nat__Onat_J_J_J,type,
    bot_bo6737470738027213882on_nat: set_op6961666426309957030on_nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Option__Ooption_It__Option__Ooption_Itf__a_J_J_J,type,
    bot_bo4163488203964334806tion_a: set_option_option_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    bot_bot_set_option_a: set_option_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_Itf__a_J,type,
    bot_bot_set_a: set_a ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_I_Eo_Mt__Nat__Onat_J,type,
    ord_less_o_nat: ( $o > nat ) > ( $o > nat ) > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Option__Ooption_It__Nat__Onat_J_J,type,
    ord_le1792839605950587050on_nat: set_option_nat > set_option_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    ord_le5631237216984945872tion_a: set_option_a > set_option_a > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Nat__Onat_J,type,
    ord_less_eq_o_nat: ( $o > nat ) > ( $o > nat ) > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__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__Option__Ooption_It__Nat__Onat_J_J,type,
    ord_le6937355464348597430on_nat: set_option_nat > set_option_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    ord_le1955136853071979460tion_a: set_option_a > set_option_a > $o ).

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

thf(sy_c_Orderings_Oorder__class_OGreatest_001_062_I_Eo_Mt__Nat__Onat_J,type,
    order_Greatest_o_nat: ( ( $o > nat ) > $o ) > $o > nat ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Nat__Onat,type,
    order_Greatest_nat: ( nat > $o ) > nat ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Set__Oset_It__Nat__Onat_J,type,
    order_5724808138429204845et_nat: ( set_nat > $o ) > set_nat ).

thf(sy_c_Orderings_Oordering__top_001t__Set__Oset_It__Nat__Onat_J,type,
    ordering_top_set_nat: ( set_nat > set_nat > $o ) > ( set_nat > set_nat > $o ) > set_nat > $o ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Nat__Onat_J,type,
    top_top_set_nat: set_nat ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Option__Ooption_It__Nat__Onat_J_J,type,
    top_to8920198386146353926on_nat: set_option_nat ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    top_top_set_option_a: set_option_a ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    top_top_set_set_nat: set_set_nat ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_Itf__a_J,type,
    top_top_set_a: set_a ).

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

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_001t__Option__Ooption_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_J,type,
    produc8093790510458973071_a_c_d: product_prod_a_c_d > option6413918287372586467_a_c_d > produc5278197477302038359_a_c_d ).

thf(sy_c_Product__Type_OPair_001tf__a_001_062_Itf__c_Mtf__d_J,type,
    product_Pair_a_c_d: a > ( c > d ) > product_prod_a_c_d ).

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

thf(sy_c_Set_OCollect_001t__Option__Ooption_It__Nat__Onat_J,type,
    collect_option_nat: ( option_nat > $o ) > set_option_nat ).

thf(sy_c_Set_OCollect_001t__Option__Ooption_Itf__a_J,type,
    collect_option_a: ( option_a > $o ) > set_option_a ).

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

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

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Option__Ooption_It__Nat__Onat_J,type,
    image_nat_option_nat: ( nat > option_nat ) > set_nat > set_option_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Option__Ooption_Itf__a_J,type,
    image_nat_option_a: ( nat > option_a ) > set_nat > set_option_a ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001tf__a,type,
    image_nat_a: ( nat > a ) > set_nat > set_a ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_It__Nat__Onat_J_001t__Nat__Onat,type,
    image_option_nat_nat: ( option_nat > nat ) > set_option_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_It__Nat__Onat_J_001t__Option__Ooption_It__Nat__Onat_J,type,
    image_2533357264035992775on_nat: ( option_nat > option_nat ) > set_option_nat > set_option_nat ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_It__Nat__Onat_J_001t__Option__Ooption_Itf__a_J,type,
    image_7592925988527752541tion_a: ( option_nat > option_a ) > set_option_nat > set_option_a ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_It__Nat__Onat_J_001tf__a,type,
    image_option_nat_a: ( option_nat > a ) > set_option_nat > set_a ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_Itf__a_J_001t__Nat__Onat,type,
    image_option_a_nat: ( option_a > nat ) > set_option_a > set_nat ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_It__Nat__Onat_J,type,
    image_2984616717320812959on_nat: ( option_a > option_nat ) > set_option_a > set_option_nat ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    image_7439109396645324421tion_a: ( option_a > option_a ) > set_option_a > set_option_a ).

thf(sy_c_Set_Oimage_001t__Option__Ooption_Itf__a_J_001tf__a,type,
    image_option_a_a: ( option_a > a ) > set_option_a > set_a ).

thf(sy_c_Set_Oimage_001tf__a_001t__Nat__Onat,type,
    image_a_nat: ( a > nat ) > set_a > set_nat ).

thf(sy_c_Set_Oimage_001tf__a_001t__Option__Ooption_It__Nat__Onat_J,type,
    image_a_option_nat: ( a > option_nat ) > set_a > set_option_nat ).

thf(sy_c_Set_Oimage_001tf__a_001t__Option__Ooption_Itf__a_J,type,
    image_a_option_a: ( a > option_a ) > set_a > set_option_a ).

thf(sy_c_Set_Oimage_001tf__a_001tf__a,type,
    image_a_a: ( a > a ) > set_a > set_a ).

thf(sy_c_Set_Oinsert_001t__Nat__Onat,type,
    insert_nat: nat > set_nat > set_nat ).

thf(sy_c_Set_Oinsert_001t__Option__Ooption_It__Nat__Onat_J,type,
    insert_option_nat: option_nat > set_option_nat > set_option_nat ).

thf(sy_c_Set_Oinsert_001t__Option__Ooption_It__Option__Ooption_It__Nat__Onat_J_J,type,
    insert504548404241883424on_nat: option_option_nat > set_op6961666426309957030on_nat > set_op6961666426309957030on_nat ).

thf(sy_c_Set_Oinsert_001t__Option__Ooption_It__Option__Ooption_Itf__a_J_J,type,
    insert605063979879581146tion_a: option_option_a > set_option_option_a > set_option_option_a ).

thf(sy_c_Set_Oinsert_001t__Option__Ooption_Itf__a_J,type,
    insert_option_a: option_a > set_option_a > set_option_a ).

thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J,type,
    insert2069394850462650835_nat_a: product_prod_nat_a > set_Pr4193341848836149977_nat_a > set_Pr4193341848836149977_nat_a ).

thf(sy_c_Set_Oinsert_001tf__a,type,
    insert_a: a > set_a > set_a ).

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

thf(sy_c_UnboundedLogic_Oassertion_OAnd_001tf__a_001tf__b_001tf__d_001tf__c,type,
    and_a_b_d_c: assertion_a_b_d_c > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OBounded_001tf__a_001tf__b_001tf__d_001tf__c,type,
    bounded_a_b_d_c: assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OExists_001t__Nat__Onat_001tf__a_001tf__b_001t__Nat__Onat,type,
    exists_nat_a_b_nat: nat > assert8917056066125641810at_nat > assert8917056066125641810at_nat ).

thf(sy_c_UnboundedLogic_Oassertion_OExists_001t__Nat__Onat_001tf__a_001tf__b_001t__Option__Ooption_Itf__a_J,type,
    exists4241335424236015753tion_a: nat > assert7591039163618688690_a_nat > assert7591039163618688690_a_nat ).

thf(sy_c_UnboundedLogic_Oassertion_OExists_001tf__c_001tf__a_001tf__b_001tf__d,type,
    exists_c_a_b_d: c > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OForall_001t__Nat__Onat_001tf__a_001tf__b_001t__Nat__Onat,type,
    forall_nat_a_b_nat: nat > assert8917056066125641810at_nat > assert8917056066125641810at_nat ).

thf(sy_c_UnboundedLogic_Oassertion_OForall_001t__Nat__Onat_001tf__a_001tf__b_001t__Option__Ooption_Itf__a_J,type,
    forall5842784834562080685tion_a: nat > assert7591039163618688690_a_nat > assert7591039163618688690_a_nat ).

thf(sy_c_UnboundedLogic_Oassertion_OForall_001tf__c_001tf__a_001tf__b_001tf__d,type,
    forall_c_a_b_d: c > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OImp_001tf__a_001tf__b_001tf__d_001tf__c,type,
    imp_a_b_d_c: assertion_a_b_d_c > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OMult_001tf__b_001tf__a_001tf__d_001tf__c,type,
    mult_b_a_d_c: b > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OOr_001tf__a_001tf__b_001tf__d_001tf__c,type,
    or_a_b_d_c: assertion_a_b_d_c > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OPred_001tf__a_001tf__b_001tf__d_001tf__c,type,
    pred_a_b_d_c: assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OSem_001tf__c_001tf__d_001tf__a_001tf__b,type,
    sem_c_d_a_b: ( ( c > d ) > a > $o ) > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OStar_001tf__a_001tf__b_001tf__d_001tf__c,type,
    star_a_b_d_c: assertion_a_b_d_c > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OWand_001tf__a_001tf__b_001tf__d_001tf__c,type,
    wand_a_b_d_c: assertion_a_b_d_c > assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Oassertion_OWildcard_001tf__a_001tf__b_001tf__d_001tf__c,type,
    wildcard_a_b_d_c: assertion_a_b_d_c > assertion_a_b_d_c ).

thf(sy_c_UnboundedLogic_Ologic_001tf__a_001tf__b,type,
    logic_a_b: ( a > a > option_a ) > ( b > a > a ) > ( b > b > b ) > ( b > b > b ) > ( b > b ) > b > ( a > $o ) > $o ).

thf(sy_c_UnboundedLogic_Ologic_Oentails_001tf__a_001tf__b_001tf__d_001tf__c,type,
    entails_a_b_d_c: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > assertion_a_b_d_c > ( ( c > d ) > set_a ) > assertion_a_b_d_c > $o ).

thf(sy_c_UnboundedLogic_Ologic_Oequal__outside_001tf__c_001tf__d,type,
    equal_outside_c_d: ( c > d ) > ( c > d ) > set_c > $o ).

thf(sy_c_UnboundedLogic_Ologic_Oequivalent_001tf__a_001tf__b_001tf__d_001tf__c,type,
    equivalent_a_b_d_c: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > assertion_a_b_d_c > ( ( c > d ) > set_a ) > assertion_a_b_d_c > $o ).

thf(sy_c_UnboundedLogic_Ologic_Oframe__property_001tf__a_001tf__c_001tf__d,type,
    frame_property_a_c_d: ( a > a > option_a ) > ( a > $o ) > set_Pr1275464188344874039_a_c_d > $o ).

thf(sy_c_UnboundedLogic_Ologic_Ointuitionistic_001tf__a_001tf__b_001tf__c_001tf__d,type,
    intuit7508411120625971703_b_c_d: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > ( c > d ) > ( ( c > d ) > set_a ) > assertion_a_b_d_c > $o ).

thf(sy_c_UnboundedLogic_Ologic_Omodified_001tf__a_001tf__c_001tf__d,type,
    modified_a_c_d: set_Pr1275464188344874039_a_c_d > set_c ).

thf(sy_c_UnboundedLogic_Ologic_Onot__in__fv_001tf__a_001tf__b_001tf__d_001tf__c,type,
    not_in_fv_a_b_d_c: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > assertion_a_b_d_c > set_c > $o ).

thf(sy_c_UnboundedLogic_Ologic_Opure_001tf__a_001tf__b_001tf__d_001tf__c,type,
    pure_a_b_d_c: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > assertion_a_b_d_c > $o ).

thf(sy_c_UnboundedLogic_Ologic_Osafe_001tf__a_001tf__c_001tf__d,type,
    safe_a_c_d: set_Pr1275464188344874039_a_c_d > product_prod_a_c_d > $o ).

thf(sy_c_UnboundedLogic_Ologic_Osafety__monotonicity_001tf__a_001tf__c_001tf__d,type,
    safety844553430189520448_a_c_d: ( a > a > option_a ) > ( a > $o ) > set_Pr1275464188344874039_a_c_d > $o ).

thf(sy_c_UnboundedLogic_Ologic_Osat_001tf__a_001tf__b_001t__Nat__Onat_001t__Nat__Onat,type,
    sat_a_b_nat_nat: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > a > ( nat > nat ) > ( ( nat > nat ) > set_a ) > assert8917056066125641810at_nat > $o ).

thf(sy_c_UnboundedLogic_Ologic_Osat_001tf__a_001tf__b_001t__Nat__Onat_001t__Option__Ooption_Itf__a_J,type,
    sat_a_b_nat_option_a: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > a > ( nat > option_a ) > ( ( nat > option_a ) > set_a ) > assert7591039163618688690_a_nat > $o ).

thf(sy_c_UnboundedLogic_Ologic_Osat_001tf__a_001tf__b_001tf__c_001tf__d,type,
    sat_a_b_c_d: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > a > ( c > d ) > ( ( c > d ) > set_a ) > assertion_a_b_d_c > $o ).

thf(sy_c_UnboundedLogic_Ologic_Ovalid__command_001tf__a_001tf__c_001tf__d,type,
    valid_command_a_c_d: ( a > $o ) > set_Pr1275464188344874039_a_c_d > $o ).

thf(sy_c_UnboundedLogic_Ologic_Ovalid__hoare__triple_001tf__a_001tf__b_001tf__d_001tf__c,type,
    valid_6037315502795721655_b_d_c: ( a > a > option_a ) > ( b > a > a ) > ( a > $o ) > assertion_a_b_d_c > set_Pr1275464188344874039_a_c_d > assertion_a_b_d_c > ( ( c > d ) > set_a ) > $o ).

thf(sy_c_UnboundedLogic_Opre__logic_Ocompatible_001t__Nat__Onat,type,
    pre_compatible_nat: ( nat > nat > option_nat ) > nat > nat > $o ).

thf(sy_c_UnboundedLogic_Opre__logic_Ocompatible_001tf__a,type,
    pre_compatible_a: ( a > a > option_a ) > a > a > $o ).

thf(sy_c_UnboundedLogic_Opre__logic_Olarger_001t__Nat__Onat,type,
    pre_larger_nat: ( nat > nat > option_nat ) > nat > nat > $o ).

thf(sy_c_UnboundedLogic_Opre__logic_Olarger_001tf__a,type,
    pre_larger_a: ( a > a > option_a ) > a > a > $o ).

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

thf(sy_c_member_001t__Option__Ooption_It__Nat__Onat_J,type,
    member_option_nat: option_nat > set_option_nat > $o ).

thf(sy_c_member_001t__Option__Ooption_Itf__a_J,type,
    member_option_a: option_a > set_option_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J,type,
    member8962352052110095674_nat_a: product_prod_nat_a > set_Pr4193341848836149977_nat_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_Itf__a_M_062_Itf__c_Mtf__d_J_J_J_J,type,
    member1180172933830803072_a_c_d: produc5278197477302038359_a_c_d > set_Pr1275464188344874039_a_c_d > $o ).

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

thf(sy_v_A,type,
    a2: assertion_a_b_d_c ).

thf(sy_v_B,type,
    b2: assertion_a_b_d_c ).

thf(sy_v_mult,type,
    mult: b > a > a ).

thf(sy_v_one,type,
    one: b ).

thf(sy_v_plus,type,
    plus: a > a > option_a ).

thf(sy_v_sadd,type,
    sadd: b > b > b ).

thf(sy_v_sinv,type,
    sinv: b > b ).

thf(sy_v_smult,type,
    smult: b > b > b ).

thf(sy_v_valid,type,
    valid: a > $o ).

% Relevant facts (1273)
thf(fact_0_commutative,axiom,
    ! [A: a,B: a] :
      ( ( plus @ A @ B )
      = ( plus @ B @ A ) ) ).

% commutative
thf(fact_1_can__divide,axiom,
    ! [P: b,A: a,B: a] :
      ( ( ( mult @ P @ A )
        = ( mult @ P @ B ) )
     => ( A = B ) ) ).

% can_divide
thf(fact_2_assms_I2_J,axiom,
    non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ b2 ) ).

% assms(2)
thf(fact_3_assms_I1_J,axiom,
    non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ a2 ) ).

% assms(1)
thf(fact_4_unique__inv,axiom,
    ! [A: a,P: b,B: a] :
      ( ( A
        = ( mult @ P @ B ) )
      = ( B
        = ( mult @ ( sinv @ P ) @ A ) ) ) ).

% unique_inv
thf(fact_5_indep__implies__non__increasing,axiom,
    ! [A2: assertion_a_b_d_c] :
      ( ( indep_interp_a_b_d_c @ plus @ mult @ valid @ A2 )
     => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) ) ) ).

% indep_implies_non_increasing
thf(fact_6_logic_Oapplies__eq_Ocong,axiom,
    applies_eq_a_b_d_c = applies_eq_a_b_d_c ).

% logic.applies_eq.cong
thf(fact_7_non__increasing__instantiate,axiom,
    ! [A2: assertion_a_b_d_c,X: a,Delta: ( c > d ) > set_a,S: c > d,Delta2: ( c > d ) > set_a] :
      ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( member_a @ X @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta @ S ) )
       => ( ( smaller_interp_c_d_a @ Delta2 @ Delta )
         => ( member_a @ X @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ S ) ) ) ) ) ).

% non_increasing_instantiate
thf(fact_8_non__increasing__and,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% non_increasing_and
thf(fact_9_non__inc__star,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% non_inc_star
thf(fact_10_mono__or,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( or_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% mono_or
thf(fact_11_valid__mono,axiom,
    ! [A: a,B: a] :
      ( ( ( valid @ A )
        & ( pre_larger_a @ plus @ A @ B ) )
     => ( valid @ B ) ) ).

% valid_mono
thf(fact_12_larger__same,axiom,
    ! [A: a,B: a,P: b] :
      ( ( pre_larger_a @ plus @ A @ B )
      = ( pre_larger_a @ plus @ ( mult @ P @ A ) @ ( mult @ P @ B ) ) ) ).

% larger_same
thf(fact_13_compatible__iff,axiom,
    ! [A: a,B: a,P: b] :
      ( ( pre_compatible_a @ plus @ A @ B )
      = ( pre_compatible_a @ plus @ ( mult @ P @ A ) @ ( mult @ P @ B ) ) ) ).

% compatible_iff
thf(fact_14_compatible__imp,axiom,
    ! [A: a,B: a,P: b] :
      ( ( pre_compatible_a @ plus @ A @ B )
     => ( pre_compatible_a @ plus @ ( mult @ P @ A ) @ ( mult @ P @ B ) ) ) ).

% compatible_imp
thf(fact_15_compatible__multiples,axiom,
    ! [P: b,A: a,Q: b,B: a] :
      ( ( pre_compatible_a @ plus @ ( mult @ P @ A ) @ ( mult @ Q @ B ) )
     => ( pre_compatible_a @ plus @ A @ B ) ) ).

% compatible_multiples
thf(fact_16_sat_Osimps_I6_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( or_a_b_d_c @ A2 @ B2 ) )
      = ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ A2 )
        | ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ B2 ) ) ) ).

% sat.simps(6)
thf(fact_17_one__neutral,axiom,
    ! [A: a] :
      ( ( mult @ one @ A )
      = A ) ).

% one_neutral
thf(fact_18_assertion_Oinject_I5_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c,Y51: assertion_a_b_d_c,Y52: assertion_a_b_d_c] :
      ( ( ( or_a_b_d_c @ X51 @ X52 )
        = ( or_a_b_d_c @ Y51 @ Y52 ) )
      = ( ( X51 = Y51 )
        & ( X52 = Y52 ) ) ) ).

% assertion.inject(5)
thf(fact_19_smaller__interp__trans,axiom,
    ! [A: ( c > d ) > set_a,B: ( c > d ) > set_a,C: ( c > d ) > set_a] :
      ( ( smaller_interp_c_d_a @ A @ B )
     => ( ( smaller_interp_c_d_a @ B @ C )
       => ( smaller_interp_c_d_a @ A @ C ) ) ) ).

% smaller_interp_trans
thf(fact_20_smaller__interp__refl,axiom,
    ! [Delta2: ( c > d ) > set_a] : ( smaller_interp_c_d_a @ Delta2 @ Delta2 ) ).

% smaller_interp_refl
thf(fact_21_smaller__interpI,axiom,
    ! [Delta2: ( c > d ) > set_a,Delta: ( c > d ) > set_a] :
      ( ! [S2: c > d,X2: a] :
          ( ( member_a @ X2 @ ( Delta2 @ S2 ) )
         => ( member_a @ X2 @ ( Delta @ S2 ) ) )
     => ( smaller_interp_c_d_a @ Delta2 @ Delta ) ) ).

% smaller_interpI
thf(fact_22_monotonicI,axiom,
    ! [F: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
      ( ! [Delta3: ( c > d ) > set_a,Delta4: ( c > d ) > set_a] :
          ( ( smaller_interp_c_d_a @ Delta3 @ Delta4 )
         => ( smaller_interp_c_d_a @ ( F @ Delta3 ) @ ( F @ Delta4 ) ) )
     => ( monotonic_c_d_a @ F ) ) ).

% monotonicI
thf(fact_23_monotonic__def,axiom,
    ( monotonic_c_d_a
    = ( ^ [F2: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
        ! [Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
          ( ( smaller_interp_c_d_a @ Delta5 @ Delta6 )
         => ( smaller_interp_c_d_a @ ( F2 @ Delta5 ) @ ( F2 @ Delta6 ) ) ) ) ) ).

% monotonic_def
thf(fact_24_non__increasing__def,axiom,
    ( non_increasing_c_d_a
    = ( ^ [F2: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
        ! [Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
          ( ( smaller_interp_c_d_a @ Delta5 @ Delta6 )
         => ( smaller_interp_c_d_a @ ( F2 @ Delta6 ) @ ( F2 @ Delta5 ) ) ) ) ) ).

% non_increasing_def
thf(fact_25_non__increasingI,axiom,
    ! [F: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
      ( ! [Delta3: ( c > d ) > set_a,Delta4: ( c > d ) > set_a] :
          ( ( smaller_interp_c_d_a @ Delta3 @ Delta4 )
         => ( smaller_interp_c_d_a @ ( F @ Delta4 ) @ ( F @ Delta3 ) ) )
     => ( non_increasing_c_d_a @ F ) ) ).

% non_increasingI
thf(fact_26_larger__implies__compatible,axiom,
    ! [X: a,Y: a] :
      ( ( pre_larger_a @ plus @ X @ Y )
     => ( pre_compatible_a @ plus @ X @ Y ) ) ).

% larger_implies_compatible
thf(fact_27_compatible__smaller,axiom,
    ! [A: a,B: a,X: a] :
      ( ( pre_larger_a @ plus @ A @ B )
     => ( ( pre_compatible_a @ plus @ X @ A )
       => ( pre_compatible_a @ plus @ X @ B ) ) ) ).

% compatible_smaller
thf(fact_28_smaller__empty,axiom,
    ! [X: ( c > d ) > set_a] : ( smaller_interp_c_d_a @ empty_interp_c_d_a @ X ) ).

% smaller_empty
thf(fact_29_assertion_Oinject_I3_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,Y31: assertion_a_b_d_c,Y32: assertion_a_b_d_c] :
      ( ( ( star_a_b_d_c @ X31 @ X32 )
        = ( star_a_b_d_c @ Y31 @ Y32 ) )
      = ( ( X31 = Y31 )
        & ( X32 = Y32 ) ) ) ).

% assertion.inject(3)
thf(fact_30_assertion_Oinject_I6_J,axiom,
    ! [X61: assertion_a_b_d_c,X62: assertion_a_b_d_c,Y61: assertion_a_b_d_c,Y62: assertion_a_b_d_c] :
      ( ( ( and_a_b_d_c @ X61 @ X62 )
        = ( and_a_b_d_c @ Y61 @ Y62 ) )
      = ( ( X61 = Y61 )
        & ( X62 = Y62 ) ) ) ).

% assertion.inject(6)
thf(fact_31_sat_Osimps_I7_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( and_a_b_d_c @ A2 @ B2 ) )
      = ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ A2 )
        & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ B2 ) ) ) ).

% sat.simps(7)
thf(fact_32_indep__interp__def,axiom,
    ! [A2: assertion_a_b_d_c] :
      ( ( indep_interp_a_b_d_c @ plus @ mult @ valid @ A2 )
      = ( ! [X3: a,S3: c > d,Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
            ( ( sat_a_b_c_d @ plus @ mult @ valid @ X3 @ S3 @ Delta5 @ A2 )
            = ( sat_a_b_c_d @ plus @ mult @ valid @ X3 @ S3 @ Delta6 @ A2 ) ) ) ) ).

% indep_interp_def
thf(fact_33_smaller__interp__applies__cons,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,Delta: ( c > d ) > set_a,A: a,S: c > d] :
      ( ( smaller_interp_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 ) @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta ) )
     => ( ( sat_a_b_c_d @ plus @ mult @ valid @ A @ S @ Delta2 @ A2 )
       => ( sat_a_b_c_d @ plus @ mult @ valid @ A @ S @ Delta @ A2 ) ) ) ).

% smaller_interp_applies_cons
thf(fact_34_mono__instantiate,axiom,
    ! [A2: assertion_a_b_d_c,X: a,Delta2: ( c > d ) > set_a,S: c > d,Delta: ( c > d ) > set_a] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( member_a @ X @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ S ) )
       => ( ( smaller_interp_c_d_a @ Delta2 @ Delta )
         => ( member_a @ X @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta @ S ) ) ) ) ) ).

% mono_instantiate
thf(fact_35_mono__star,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% mono_star
thf(fact_36_mono__and,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% mono_and
thf(fact_37_intuitionistic__def,axiom,
    ! [S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( intuit7508411120625971703_b_c_d @ plus @ mult @ valid @ S @ Delta2 @ A2 )
      = ( ! [A3: a,B3: a] :
            ( ( ( pre_larger_a @ plus @ A3 @ B3 )
              & ( sat_a_b_c_d @ plus @ mult @ valid @ B3 @ S @ Delta2 @ A2 ) )
           => ( sat_a_b_c_d @ plus @ mult @ valid @ A3 @ S @ Delta2 @ A2 ) ) ) ) ).

% intuitionistic_def
thf(fact_38_intuitionisticI,axiom,
    ! [S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ! [A4: a,B4: a] :
          ( ( ( pre_larger_a @ plus @ A4 @ B4 )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ B4 @ S @ Delta2 @ A2 ) )
         => ( sat_a_b_c_d @ plus @ mult @ valid @ A4 @ S @ Delta2 @ A2 ) )
     => ( intuit7508411120625971703_b_c_d @ plus @ mult @ valid @ S @ Delta2 @ A2 ) ) ).

% intuitionisticI
thf(fact_39_not__in__fv__def,axiom,
    ! [A2: assertion_a_b_d_c,S4: set_c] :
      ( ( not_in_fv_a_b_d_c @ plus @ mult @ valid @ A2 @ S4 )
      = ( ! [Sigma2: a,S3: c > d,Delta5: ( c > d ) > set_a,S5: c > d] :
            ( ( equal_outside_c_d @ S3 @ S5 @ S4 )
           => ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma2 @ S3 @ Delta5 @ A2 )
              = ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma2 @ S5 @ Delta5 @ A2 ) ) ) ) ) ).

% not_in_fv_def
thf(fact_40_assertion_Odistinct_I47_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X61: assertion_a_b_d_c,X62: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( and_a_b_d_c @ X61 @ X62 ) ) ).

% assertion.distinct(47)
thf(fact_41_logic_Osat_Ocong,axiom,
    sat_a_b_c_d = sat_a_b_c_d ).

% logic.sat.cong
thf(fact_42_mem__Collect__eq,axiom,
    ! [A: a,P2: a > $o] :
      ( ( member_a @ A @ ( collect_a @ P2 ) )
      = ( P2 @ A ) ) ).

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

% mem_Collect_eq
thf(fact_44_mem__Collect__eq,axiom,
    ! [A: option_a,P2: option_a > $o] :
      ( ( member_option_a @ A @ ( collect_option_a @ P2 ) )
      = ( P2 @ A ) ) ).

% mem_Collect_eq
thf(fact_45_mem__Collect__eq,axiom,
    ! [A: option_nat,P2: option_nat > $o] :
      ( ( member_option_nat @ A @ ( collect_option_nat @ P2 ) )
      = ( P2 @ A ) ) ).

% mem_Collect_eq
thf(fact_46_Collect__mem__eq,axiom,
    ! [A2: set_a] :
      ( ( collect_a
        @ ^ [X3: a] : ( member_a @ X3 @ A2 ) )
      = A2 ) ).

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

% Collect_mem_eq
thf(fact_48_Collect__mem__eq,axiom,
    ! [A2: set_option_a] :
      ( ( collect_option_a
        @ ^ [X3: option_a] : ( member_option_a @ X3 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_49_Collect__mem__eq,axiom,
    ! [A2: set_option_nat] :
      ( ( collect_option_nat
        @ ^ [X3: option_nat] : ( member_option_nat @ X3 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_50_pre__logic_Olarger_Ocong,axiom,
    pre_larger_a = pre_larger_a ).

% pre_logic.larger.cong
thf(fact_51_pre__logic_Ocompatible_Ocong,axiom,
    pre_compatible_a = pre_compatible_a ).

% pre_logic.compatible.cong
thf(fact_52_assertion_Odistinct_I45_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X51: assertion_a_b_d_c,X52: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( or_a_b_d_c @ X51 @ X52 ) ) ).

% assertion.distinct(45)
thf(fact_53_assertion_Odistinct_I77_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c,X61: assertion_a_b_d_c,X62: assertion_a_b_d_c] :
      ( ( or_a_b_d_c @ X51 @ X52 )
     != ( and_a_b_d_c @ X61 @ X62 ) ) ).

% assertion.distinct(77)
thf(fact_54_logic_Oindep__interp_Ocong,axiom,
    indep_interp_a_b_d_c = indep_interp_a_b_d_c ).

% logic.indep_interp.cong
thf(fact_55_unambiguous__star,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c,B2: assertion_a_b_d_c] :
      ( ( unambiguous_a_b_c_d @ plus @ mult @ valid @ Delta2 @ A2 @ X )
     => ( unambiguous_a_b_c_d @ plus @ mult @ valid @ Delta2 @ ( star_a_b_d_c @ A2 @ B2 ) @ X ) ) ).

% unambiguous_star
thf(fact_56_pure__def,axiom,
    ! [A2: assertion_a_b_d_c] :
      ( ( pure_a_b_d_c @ plus @ mult @ valid @ A2 )
      = ( ! [Sigma2: a,Sigma3: a,S3: c > d,Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
            ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma2 @ S3 @ Delta5 @ A2 )
            = ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma3 @ S3 @ Delta6 @ A2 ) ) ) ) ).

% pure_def
thf(fact_57_mono__interp,axiom,
    monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ pred_a_b_d_c ) ).

% mono_interp
thf(fact_58_sat_Osimps_I10_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ pred_a_b_d_c )
      = ( member_a @ Sigma @ ( Delta2 @ S ) ) ) ).

% sat.simps(10)
thf(fact_59_mono__imp,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% mono_imp
thf(fact_60_non__increasing__wand,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% non_increasing_wand
thf(fact_61_mono__wand,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ B2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% mono_wand
thf(fact_62_mono__bounded,axiom,
    ! [A2: assertion_a_b_d_c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( bounded_a_b_d_c @ A2 ) ) ) ) ).

% mono_bounded
thf(fact_63_mono__exists,axiom,
    ! [A2: assertion_a_b_d_c,V: c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( exists_c_a_b_d @ V @ A2 ) ) ) ) ).

% mono_exists
thf(fact_64_mono__forall,axiom,
    ! [A2: assertion_a_b_d_c,V: c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( forall_c_a_b_d @ V @ A2 ) ) ) ) ).

% mono_forall
thf(fact_65_equivalentI,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ! [Sigma4: a,S2: c > d] :
          ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ A2 )
         => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ B2 ) )
     => ( ! [Sigma4: a,S2: c > d] :
            ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ B2 )
           => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ A2 ) )
       => ( equivalent_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ B2 ) ) ) ).

% equivalentI
thf(fact_66_assertion_Oinject_I9_J,axiom,
    ! [X91: c,X92: assertion_a_b_d_c,Y91: c,Y92: assertion_a_b_d_c] :
      ( ( ( forall_c_a_b_d @ X91 @ X92 )
        = ( forall_c_a_b_d @ Y91 @ Y92 ) )
      = ( ( X91 = Y91 )
        & ( X92 = Y92 ) ) ) ).

% assertion.inject(9)
thf(fact_67_assertion_Oinject_I4_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,Y41: assertion_a_b_d_c,Y42: assertion_a_b_d_c] :
      ( ( ( wand_a_b_d_c @ X41 @ X42 )
        = ( wand_a_b_d_c @ Y41 @ Y42 ) )
      = ( ( X41 = Y41 )
        & ( X42 = Y42 ) ) ) ).

% assertion.inject(4)
thf(fact_68_assertion_Oinject_I8_J,axiom,
    ! [X81: c,X82: assertion_a_b_d_c,Y81: c,Y82: assertion_a_b_d_c] :
      ( ( ( exists_c_a_b_d @ X81 @ X82 )
        = ( exists_c_a_b_d @ Y81 @ Y82 ) )
      = ( ( X81 = Y81 )
        & ( X82 = Y82 ) ) ) ).

% assertion.inject(8)
thf(fact_69_assertion_Oinject_I7_J,axiom,
    ! [X71: assertion_a_b_d_c,X72: assertion_a_b_d_c,Y71: assertion_a_b_d_c,Y72: assertion_a_b_d_c] :
      ( ( ( imp_a_b_d_c @ X71 @ X72 )
        = ( imp_a_b_d_c @ Y71 @ Y72 ) )
      = ( ( X71 = Y71 )
        & ( X72 = Y72 ) ) ) ).

% assertion.inject(7)
thf(fact_70_assertion_Oinject_I10_J,axiom,
    ! [X11: assertion_a_b_d_c,Y11: assertion_a_b_d_c] :
      ( ( ( bounded_a_b_d_c @ X11 )
        = ( bounded_a_b_d_c @ Y11 ) )
      = ( X11 = Y11 ) ) ).

% assertion.inject(10)
thf(fact_71_sat_Osimps_I5_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( imp_a_b_d_c @ A2 @ B2 ) )
      = ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ A2 )
       => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ B2 ) ) ) ).

% sat.simps(5)
thf(fact_72_sat__imp,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ A2 )
       => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ B2 ) )
     => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ).

% sat_imp
thf(fact_73_sat_Osimps_I11_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( bounded_a_b_d_c @ A2 ) )
      = ( ( valid @ Sigma )
       => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ A2 ) ) ) ).

% sat.simps(11)
thf(fact_74_assertion_Odistinct_I127_J,axiom,
    ! [X11: assertion_a_b_d_c] :
      ( pred_a_b_d_c
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(127)
thf(fact_75_assertion_Odistinct_I123_J,axiom,
    ! [X91: c,X92: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( forall_c_a_b_d @ X91 @ X92 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(123)
thf(fact_76_assertion_Odistinct_I121_J,axiom,
    ! [X91: c,X92: assertion_a_b_d_c] :
      ( ( forall_c_a_b_d @ X91 @ X92 )
     != pred_a_b_d_c ) ).

% assertion.distinct(121)
thf(fact_77_assertion_Odistinct_I117_J,axiom,
    ! [X81: c,X82: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( exists_c_a_b_d @ X81 @ X82 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(117)
thf(fact_78_assertion_Odistinct_I115_J,axiom,
    ! [X81: c,X82: assertion_a_b_d_c] :
      ( ( exists_c_a_b_d @ X81 @ X82 )
     != pred_a_b_d_c ) ).

% assertion.distinct(115)
thf(fact_79_assertion_Odistinct_I113_J,axiom,
    ! [X81: c,X82: assertion_a_b_d_c,X91: c,X92: assertion_a_b_d_c] :
      ( ( exists_c_a_b_d @ X81 @ X82 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(113)
thf(fact_80_assertion_Odistinct_I109_J,axiom,
    ! [X71: assertion_a_b_d_c,X72: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( imp_a_b_d_c @ X71 @ X72 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(109)
thf(fact_81_assertion_Odistinct_I107_J,axiom,
    ! [X71: assertion_a_b_d_c,X72: assertion_a_b_d_c] :
      ( ( imp_a_b_d_c @ X71 @ X72 )
     != pred_a_b_d_c ) ).

% assertion.distinct(107)
thf(fact_82_assertion_Odistinct_I105_J,axiom,
    ! [X71: assertion_a_b_d_c,X72: assertion_a_b_d_c,X91: c,X92: assertion_a_b_d_c] :
      ( ( imp_a_b_d_c @ X71 @ X72 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(105)
thf(fact_83_assertion_Odistinct_I103_J,axiom,
    ! [X71: assertion_a_b_d_c,X72: assertion_a_b_d_c,X81: c,X82: assertion_a_b_d_c] :
      ( ( imp_a_b_d_c @ X71 @ X72 )
     != ( exists_c_a_b_d @ X81 @ X82 ) ) ).

% assertion.distinct(103)
thf(fact_84_assertion_Odistinct_I73_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(73)
thf(fact_85_assertion_Odistinct_I71_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != pred_a_b_d_c ) ).

% assertion.distinct(71)
thf(fact_86_assertion_Odistinct_I69_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,X91: c,X92: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(69)
thf(fact_87_assertion_Odistinct_I67_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,X81: c,X82: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != ( exists_c_a_b_d @ X81 @ X82 ) ) ).

% assertion.distinct(67)
thf(fact_88_assertion_Odistinct_I65_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,X71: assertion_a_b_d_c,X72: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != ( imp_a_b_d_c @ X71 @ X72 ) ) ).

% assertion.distinct(65)
thf(fact_89_logic_Oequivalent_Ocong,axiom,
    equivalent_a_b_d_c = equivalent_a_b_d_c ).

% logic.equivalent.cong
thf(fact_90_assertion_Odistinct_I43_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X41: assertion_a_b_d_c,X42: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( wand_a_b_d_c @ X41 @ X42 ) ) ).

% assertion.distinct(43)
thf(fact_91_assertion_Odistinct_I53_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X91: c,X92: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(53)
thf(fact_92_assertion_Odistinct_I49_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X71: assertion_a_b_d_c,X72: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( imp_a_b_d_c @ X71 @ X72 ) ) ).

% assertion.distinct(49)
thf(fact_93_assertion_Odistinct_I51_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X81: c,X82: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( exists_c_a_b_d @ X81 @ X82 ) ) ).

% assertion.distinct(51)
thf(fact_94_assertion_Odistinct_I63_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,X61: assertion_a_b_d_c,X62: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != ( and_a_b_d_c @ X61 @ X62 ) ) ).

% assertion.distinct(63)
thf(fact_95_assertion_Odistinct_I95_J,axiom,
    ! [X61: assertion_a_b_d_c,X62: assertion_a_b_d_c,X91: c,X92: assertion_a_b_d_c] :
      ( ( and_a_b_d_c @ X61 @ X62 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(95)
thf(fact_96_assertion_Odistinct_I83_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c,X91: c,X92: assertion_a_b_d_c] :
      ( ( or_a_b_d_c @ X51 @ X52 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(83)
thf(fact_97_assertion_Odistinct_I61_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,X51: assertion_a_b_d_c,X52: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != ( or_a_b_d_c @ X51 @ X52 ) ) ).

% assertion.distinct(61)
thf(fact_98_assertion_Odistinct_I91_J,axiom,
    ! [X61: assertion_a_b_d_c,X62: assertion_a_b_d_c,X71: assertion_a_b_d_c,X72: assertion_a_b_d_c] :
      ( ( and_a_b_d_c @ X61 @ X62 )
     != ( imp_a_b_d_c @ X71 @ X72 ) ) ).

% assertion.distinct(91)
thf(fact_99_assertion_Odistinct_I93_J,axiom,
    ! [X61: assertion_a_b_d_c,X62: assertion_a_b_d_c,X81: c,X82: assertion_a_b_d_c] :
      ( ( and_a_b_d_c @ X61 @ X62 )
     != ( exists_c_a_b_d @ X81 @ X82 ) ) ).

% assertion.distinct(93)
thf(fact_100_assertion_Odistinct_I81_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c,X81: c,X82: assertion_a_b_d_c] :
      ( ( or_a_b_d_c @ X51 @ X52 )
     != ( exists_c_a_b_d @ X81 @ X82 ) ) ).

% assertion.distinct(81)
thf(fact_101_assertion_Odistinct_I79_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c,X71: assertion_a_b_d_c,X72: assertion_a_b_d_c] :
      ( ( or_a_b_d_c @ X51 @ X52 )
     != ( imp_a_b_d_c @ X71 @ X72 ) ) ).

% assertion.distinct(79)
thf(fact_102_assertion_Odistinct_I57_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(57)
thf(fact_103_assertion_Odistinct_I99_J,axiom,
    ! [X61: assertion_a_b_d_c,X62: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( and_a_b_d_c @ X61 @ X62 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(99)
thf(fact_104_assertion_Odistinct_I87_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( or_a_b_d_c @ X51 @ X52 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(87)
thf(fact_105_assertion_Odistinct_I55_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != pred_a_b_d_c ) ).

% assertion.distinct(55)
thf(fact_106_assertion_Odistinct_I97_J,axiom,
    ! [X61: assertion_a_b_d_c,X62: assertion_a_b_d_c] :
      ( ( and_a_b_d_c @ X61 @ X62 )
     != pred_a_b_d_c ) ).

% assertion.distinct(97)
thf(fact_107_assertion_Odistinct_I85_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c] :
      ( ( or_a_b_d_c @ X51 @ X52 )
     != pred_a_b_d_c ) ).

% assertion.distinct(85)
thf(fact_108_hoare__triple__input,axiom,
    ! [P2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ P2 @ C @ Q2 @ Delta2 )
      = ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ ( bounded_a_b_d_c @ P2 ) @ C @ Q2 @ Delta2 ) ) ).

% hoare_triple_input
thf(fact_109_unambiguousI,axiom,
    ! [X: nat,Delta2: ( nat > option_a ) > set_a,A2: assert7591039163618688690_a_nat] :
      ( ! [Sigma_1: a,Sigma_2: a,V1: option_a,V2: option_a,S2: nat > option_a] :
          ( ( ( pre_compatible_a @ plus @ Sigma_1 @ Sigma_2 )
            & ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma_1 @ ( fun_upd_nat_option_a @ S2 @ X @ V1 ) @ Delta2 @ A2 )
            & ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma_2 @ ( fun_upd_nat_option_a @ S2 @ X @ V2 ) @ Delta2 @ A2 ) )
         => ( V1 = V2 ) )
     => ( unambi1007057386542835892tion_a @ plus @ mult @ valid @ Delta2 @ A2 @ X ) ) ).

% unambiguousI
thf(fact_110_unambiguousI,axiom,
    ! [X: nat,Delta2: ( nat > nat ) > set_a,A2: assert8917056066125641810at_nat] :
      ( ! [Sigma_1: a,Sigma_2: a,V1: nat,V2: nat,S2: nat > nat] :
          ( ( ( pre_compatible_a @ plus @ Sigma_1 @ Sigma_2 )
            & ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma_1 @ ( fun_upd_nat_nat @ S2 @ X @ V1 ) @ Delta2 @ A2 )
            & ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma_2 @ ( fun_upd_nat_nat @ S2 @ X @ V2 ) @ Delta2 @ A2 ) )
         => ( V1 = V2 ) )
     => ( unambi8219075153562652768at_nat @ plus @ mult @ valid @ Delta2 @ A2 @ X ) ) ).

% unambiguousI
thf(fact_111_unambiguousI,axiom,
    ! [X: c,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ! [Sigma_1: a,Sigma_2: a,V1: d,V2: d,S2: c > d] :
          ( ( ( pre_compatible_a @ plus @ Sigma_1 @ Sigma_2 )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma_1 @ ( fun_upd_c_d @ S2 @ X @ V1 ) @ Delta2 @ A2 )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma_2 @ ( fun_upd_c_d @ S2 @ X @ V2 ) @ Delta2 @ A2 ) )
         => ( V1 = V2 ) )
     => ( unambiguous_a_b_c_d @ plus @ mult @ valid @ Delta2 @ A2 @ X ) ) ).

% unambiguousI
thf(fact_112_unambiguous__def,axiom,
    ! [Delta2: ( nat > option_a ) > set_a,A2: assert7591039163618688690_a_nat,X: nat] :
      ( ( unambi1007057386542835892tion_a @ plus @ mult @ valid @ Delta2 @ A2 @ X )
      = ( ! [Sigma_12: a,Sigma_22: a,V12: option_a,V22: option_a,S3: nat > option_a] :
            ( ( ( pre_compatible_a @ plus @ Sigma_12 @ Sigma_22 )
              & ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma_12 @ ( fun_upd_nat_option_a @ S3 @ X @ V12 ) @ Delta2 @ A2 )
              & ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma_22 @ ( fun_upd_nat_option_a @ S3 @ X @ V22 ) @ Delta2 @ A2 ) )
           => ( V12 = V22 ) ) ) ) ).

% unambiguous_def
thf(fact_113_unambiguous__def,axiom,
    ! [Delta2: ( nat > nat ) > set_a,A2: assert8917056066125641810at_nat,X: nat] :
      ( ( unambi8219075153562652768at_nat @ plus @ mult @ valid @ Delta2 @ A2 @ X )
      = ( ! [Sigma_12: a,Sigma_22: a,V12: nat,V22: nat,S3: nat > nat] :
            ( ( ( pre_compatible_a @ plus @ Sigma_12 @ Sigma_22 )
              & ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma_12 @ ( fun_upd_nat_nat @ S3 @ X @ V12 ) @ Delta2 @ A2 )
              & ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma_22 @ ( fun_upd_nat_nat @ S3 @ X @ V22 ) @ Delta2 @ A2 ) )
           => ( V12 = V22 ) ) ) ) ).

% unambiguous_def
thf(fact_114_unambiguous__def,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c] :
      ( ( unambiguous_a_b_c_d @ plus @ mult @ valid @ Delta2 @ A2 @ X )
      = ( ! [Sigma_12: a,Sigma_22: a,V12: d,V22: d,S3: c > d] :
            ( ( ( pre_compatible_a @ plus @ Sigma_12 @ Sigma_22 )
              & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma_12 @ ( fun_upd_c_d @ S3 @ X @ V12 ) @ Delta2 @ A2 )
              & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma_22 @ ( fun_upd_c_d @ S3 @ X @ V22 ) @ Delta2 @ A2 ) )
           => ( V12 = V22 ) ) ) ) ).

% unambiguous_def
thf(fact_115_sat_Osimps_I8_J,axiom,
    ! [Sigma: a,S: nat > option_a,Delta2: ( nat > option_a ) > set_a,X: nat,A2: assert7591039163618688690_a_nat] :
      ( ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( exists4241335424236015753tion_a @ X @ A2 ) )
      = ( ? [V3: option_a] : ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma @ ( fun_upd_nat_option_a @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ).

% sat.simps(8)
thf(fact_116_sat_Osimps_I8_J,axiom,
    ! [Sigma: a,S: nat > nat,Delta2: ( nat > nat ) > set_a,X: nat,A2: assert8917056066125641810at_nat] :
      ( ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( exists_nat_a_b_nat @ X @ A2 ) )
      = ( ? [V3: nat] : ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma @ ( fun_upd_nat_nat @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ).

% sat.simps(8)
thf(fact_117_sat_Osimps_I8_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,X: c,A2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( exists_c_a_b_d @ X @ A2 ) )
      = ( ? [V3: d] : ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ ( fun_upd_c_d @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ).

% sat.simps(8)
thf(fact_118_sat_Osimps_I9_J,axiom,
    ! [Sigma: a,S: nat > option_a,Delta2: ( nat > option_a ) > set_a,X: nat,A2: assert7591039163618688690_a_nat] :
      ( ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( forall5842784834562080685tion_a @ X @ A2 ) )
      = ( ! [V3: option_a] : ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma @ ( fun_upd_nat_option_a @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ).

% sat.simps(9)
thf(fact_119_sat_Osimps_I9_J,axiom,
    ! [Sigma: a,S: nat > nat,Delta2: ( nat > nat ) > set_a,X: nat,A2: assert8917056066125641810at_nat] :
      ( ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( forall_nat_a_b_nat @ X @ A2 ) )
      = ( ! [V3: nat] : ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma @ ( fun_upd_nat_nat @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ).

% sat.simps(9)
thf(fact_120_sat_Osimps_I9_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,X: c,A2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( forall_c_a_b_d @ X @ A2 ) )
      = ( ! [V3: d] : ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ ( fun_upd_c_d @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ).

% sat.simps(9)
thf(fact_121_sat__forall,axiom,
    ! [Sigma: a,S: nat > option_a,X: nat,Delta2: ( nat > option_a ) > set_a,A2: assert7591039163618688690_a_nat] :
      ( ! [V4: option_a] : ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma @ ( fun_upd_nat_option_a @ S @ X @ V4 ) @ Delta2 @ A2 )
     => ( sat_a_b_nat_option_a @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( forall5842784834562080685tion_a @ X @ A2 ) ) ) ).

% sat_forall
thf(fact_122_sat__forall,axiom,
    ! [Sigma: a,S: nat > nat,X: nat,Delta2: ( nat > nat ) > set_a,A2: assert8917056066125641810at_nat] :
      ( ! [V4: nat] : ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma @ ( fun_upd_nat_nat @ S @ X @ V4 ) @ Delta2 @ A2 )
     => ( sat_a_b_nat_nat @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( forall_nat_a_b_nat @ X @ A2 ) ) ) ).

% sat_forall
thf(fact_123_sat__forall,axiom,
    ! [Sigma: a,S: c > d,X: c,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ! [V4: d] : ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ ( fun_upd_c_d @ S @ X @ V4 ) @ Delta2 @ A2 )
     => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( forall_c_a_b_d @ X @ A2 ) ) ) ).

% sat_forall
thf(fact_124_DotFull,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ one @ A2 ) @ Delta2 @ A2 ) ).

% DotFull
thf(fact_125_DotPure,axiom,
    ! [A2: assertion_a_b_d_c,P: b,Delta2: ( c > d ) > set_a] :
      ( ( pure_a_b_d_c @ plus @ mult @ valid @ A2 )
     => ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ A2 ) @ Delta2 @ A2 ) ) ).

% DotPure
thf(fact_126_DotImp,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( imp_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( imp_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% DotImp
thf(fact_127_DotOr,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( or_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( or_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% DotOr
thf(fact_128_assertion_Oinject_I2_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,Y21: b,Y22: assertion_a_b_d_c] :
      ( ( ( mult_b_a_d_c @ X21 @ X22 )
        = ( mult_b_a_d_c @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% assertion.inject(2)
thf(fact_129_sat__mult,axiom,
    ! [Sigma: a,P: b,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ! [A4: a] :
          ( ( Sigma
            = ( mult @ P @ A4 ) )
         => ( sat_a_b_c_d @ plus @ mult @ valid @ A4 @ S @ Delta2 @ A2 ) )
     => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( mult_b_a_d_c @ P @ A2 ) ) ) ).

% sat_mult
thf(fact_130_sat_Osimps_I1_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,P: b,A2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( mult_b_a_d_c @ P @ A2 ) )
      = ( ? [A3: a] :
            ( ( Sigma
              = ( mult @ P @ A3 ) )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ A3 @ S @ Delta2 @ A2 ) ) ) ) ).

% sat.simps(1)
thf(fact_131_local_Omono__mult,axiom,
    ! [A2: assertion_a_b_d_c,Pi: b] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ Pi @ A2 ) ) ) ) ).

% local.mono_mult
thf(fact_132_DotStar,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( star_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% DotStar
thf(fact_133_DotAnd,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( and_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ).

% DotAnd
thf(fact_134_DotForall,axiom,
    ! [P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( forall_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( forall_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ).

% DotForall
thf(fact_135_DotExists,axiom,
    ! [P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( exists_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( exists_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ).

% DotExists
thf(fact_136_DotWand,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( wand_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( wand_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% DotWand
thf(fact_137_hoare__triple__output,axiom,
    ! [C: set_Pr1275464188344874039_a_c_d,P2: assertion_a_b_d_c,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( valid_command_a_c_d @ valid @ C )
     => ( ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ P2 @ C @ Q2 @ Delta2 )
        = ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ P2 @ C @ ( bounded_a_b_d_c @ Q2 ) @ Delta2 ) ) ) ).

% hoare_triple_output
thf(fact_138_assertion_Odistinct_I23_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X31: assertion_a_b_d_c,X32: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( star_a_b_d_c @ X31 @ X32 ) ) ).

% assertion.distinct(23)
thf(fact_139_assertion_Odistinct_I29_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X61: assertion_a_b_d_c,X62: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( and_a_b_d_c @ X61 @ X62 ) ) ).

% assertion.distinct(29)
thf(fact_140_assertion_Odistinct_I35_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X91: c,X92: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(35)
thf(fact_141_assertion_Odistinct_I25_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X41: assertion_a_b_d_c,X42: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( wand_a_b_d_c @ X41 @ X42 ) ) ).

% assertion.distinct(25)
thf(fact_142_assertion_Odistinct_I33_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X81: c,X82: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( exists_c_a_b_d @ X81 @ X82 ) ) ).

% assertion.distinct(33)
thf(fact_143_assertion_Odistinct_I27_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X51: assertion_a_b_d_c,X52: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( or_a_b_d_c @ X51 @ X52 ) ) ).

% assertion.distinct(27)
thf(fact_144_assertion_Odistinct_I31_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X71: assertion_a_b_d_c,X72: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( imp_a_b_d_c @ X71 @ X72 ) ) ).

% assertion.distinct(31)
thf(fact_145_assertion_Odistinct_I39_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X11: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(39)
thf(fact_146_assertion_Odistinct_I37_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != pred_a_b_d_c ) ).

% assertion.distinct(37)
thf(fact_147_DotDot,axiom,
    ! [P: b,Q: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( mult_b_a_d_c @ Q @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ ( smult @ P @ Q ) @ A2 ) ) ).

% DotDot
thf(fact_148_sat__wand,axiom,
    ! [S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,Sigma: a,B2: assertion_a_b_d_c] :
      ( ! [A4: a,Sigma5: a] :
          ( ( ( sat_a_b_c_d @ plus @ mult @ valid @ A4 @ S @ Delta2 @ A2 )
            & ( ( some_a @ Sigma5 )
              = ( plus @ Sigma @ A4 ) ) )
         => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma5 @ S @ Delta2 @ B2 ) )
     => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ).

% sat_wand
thf(fact_149_sat_Osimps_I3_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( wand_a_b_d_c @ A2 @ B2 ) )
      = ( ! [A3: a,Sigma3: a] :
            ( ( ( sat_a_b_c_d @ plus @ mult @ valid @ A3 @ S @ Delta2 @ A2 )
              & ( ( some_a @ Sigma3 )
                = ( plus @ Sigma @ A3 ) ) )
           => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma3 @ S @ Delta2 @ B2 ) ) ) ) ).

% sat.simps(3)
thf(fact_150_sat_Osimps_I2_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( star_a_b_d_c @ A2 @ B2 ) )
      = ( ? [A3: a,B3: a] :
            ( ( ( some_a @ Sigma )
              = ( plus @ A3 @ B3 ) )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ A3 @ S @ Delta2 @ A2 )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ B3 @ S @ Delta2 @ B2 ) ) ) ) ).

% sat.simps(2)
thf(fact_151_mult__one__same2,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ ( mult_b_a_d_c @ one @ A2 ) ) ).

% mult_one_same2
thf(fact_152_mult__one__same1,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ one @ A2 ) @ Delta2 @ A2 ) ).

% mult_one_same1
thf(fact_153_mono__sem,axiom,
    ! [B2: ( c > d ) > a > $o] : ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( sem_c_d_a_b @ B2 ) ) ) ).

% mono_sem
thf(fact_154_WildPure,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( pure_a_b_d_c @ plus @ mult @ valid @ A2 )
     => ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ A2 ) @ Delta2 @ A2 ) ) ).

% WildPure
thf(fact_155_WildOr,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ ( or_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( or_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) @ ( wildcard_a_b_d_c @ B2 ) ) ) ).

% WildOr
thf(fact_156_can__factorize,axiom,
    ! [Q: b,P: b] :
    ? [R: b] :
      ( Q
      = ( smult @ R @ P ) ) ).

% can_factorize
thf(fact_157_smult__asso,axiom,
    ! [P: b,Q: b,R2: b] :
      ( ( smult @ ( smult @ P @ Q ) @ R2 )
      = ( smult @ P @ ( smult @ Q @ R2 ) ) ) ).

% smult_asso
thf(fact_158_smult__comm,axiom,
    ! [P: b,Q: b] :
      ( ( smult @ P @ Q )
      = ( smult @ Q @ P ) ) ).

% smult_comm
thf(fact_159_asso1,axiom,
    ! [A: a,B: a,Ab: a,C: a,Bc: a] :
      ( ( ( ( plus @ A @ B )
          = ( some_a @ Ab ) )
        & ( ( plus @ B @ C )
          = ( some_a @ Bc ) ) )
     => ( ( plus @ Ab @ C )
        = ( plus @ A @ Bc ) ) ) ).

% asso1
thf(fact_160_move__sum,axiom,
    ! [A: a,A1: a,A22: a,B: a,B1: a,B22: a,X: a,X1: a,X23: a] :
      ( ( ( some_a @ A )
        = ( plus @ A1 @ A22 ) )
     => ( ( ( some_a @ B )
          = ( plus @ B1 @ B22 ) )
       => ( ( ( some_a @ X )
            = ( plus @ A @ B ) )
         => ( ( ( some_a @ X1 )
              = ( plus @ A1 @ B1 ) )
           => ( ( ( some_a @ X23 )
                = ( plus @ A22 @ B22 ) )
             => ( ( some_a @ X )
                = ( plus @ X1 @ X23 ) ) ) ) ) ) ) ).

% move_sum
thf(fact_161_double__mult,axiom,
    ! [P: b,Q: b,A: a] :
      ( ( mult @ P @ ( mult @ Q @ A ) )
      = ( mult @ ( smult @ P @ Q ) @ A ) ) ).

% double_mult
thf(fact_162_asso2,axiom,
    ! [A: a,B: a,Ab: a,C: a] :
      ( ( ( ( plus @ A @ B )
          = ( some_a @ Ab ) )
        & ~ ( pre_compatible_a @ plus @ B @ C ) )
     => ~ ( pre_compatible_a @ plus @ Ab @ C ) ) ).

% asso2
thf(fact_163_asso3,axiom,
    ! [A: a,B: a,C: a,Bc: a] :
      ( ~ ( pre_compatible_a @ plus @ A @ B )
     => ( ( ( plus @ B @ C )
          = ( some_a @ Bc ) )
       => ~ ( pre_compatible_a @ plus @ A @ Bc ) ) ) ).

% asso3
thf(fact_164_sone__neutral,axiom,
    ! [P: b] :
      ( ( smult @ one @ P )
      = P ) ).

% sone_neutral
thf(fact_165_larger__def,axiom,
    ! [A: a,B: a] :
      ( ( pre_larger_a @ plus @ A @ B )
      = ( ? [C2: a] :
            ( ( some_a @ A )
            = ( plus @ B @ C2 ) ) ) ) ).

% larger_def
thf(fact_166_larger__first__sum,axiom,
    ! [Y: a,A: a,B: a,X: a] :
      ( ( ( some_a @ Y )
        = ( plus @ A @ B ) )
     => ( ( pre_larger_a @ plus @ X @ Y )
       => ? [A5: a] :
            ( ( ( some_a @ X )
              = ( plus @ A5 @ B ) )
            & ( pre_larger_a @ plus @ A5 @ A ) ) ) ) ).

% larger_first_sum
thf(fact_167_sum__both__larger,axiom,
    ! [X4: a,A6: a,B5: a,X: a,A: a,B: a] :
      ( ( ( some_a @ X4 )
        = ( plus @ A6 @ B5 ) )
     => ( ( ( some_a @ X )
          = ( plus @ A @ B ) )
       => ( ( pre_larger_a @ plus @ A6 @ A )
         => ( ( pre_larger_a @ plus @ B5 @ B )
           => ( pre_larger_a @ plus @ X4 @ X ) ) ) ) ) ).

% sum_both_larger
thf(fact_168_plus__mult,axiom,
    ! [A: a,B: a,C: a,P: b] :
      ( ( ( some_a @ A )
        = ( plus @ B @ C ) )
     => ( ( some_a @ ( mult @ P @ A ) )
        = ( plus @ ( mult @ P @ B ) @ ( mult @ P @ C ) ) ) ) ).

% plus_mult
thf(fact_169_assertion_Oinject_I11_J,axiom,
    ! [X12: assertion_a_b_d_c,Y12: assertion_a_b_d_c] :
      ( ( ( wildcard_a_b_d_c @ X12 )
        = ( wildcard_a_b_d_c @ Y12 ) )
      = ( X12 = Y12 ) ) ).

% assertion.inject(11)
thf(fact_170_assertion_Oinject_I1_J,axiom,
    ! [X1: ( c > d ) > a > $o,Y1: ( c > d ) > a > $o] :
      ( ( ( sem_c_d_a_b @ X1 )
        = ( sem_c_d_a_b @ Y1 ) )
      = ( X1 = Y1 ) ) ).

% assertion.inject(1)
thf(fact_171_sinv__inverse,axiom,
    ! [P: b] :
      ( ( smult @ P @ ( sinv @ P ) )
      = one ) ).

% sinv_inverse
thf(fact_172_DotPos,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c,Pi: b] :
      ( ( entails_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ B2 )
      = ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ Pi @ A2 ) @ Delta2 @ ( mult_b_a_d_c @ Pi @ B2 ) ) ) ).

% DotPos
thf(fact_173_entailsI,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ! [Sigma4: a,S2: c > d] :
          ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ A2 )
         => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ B2 ) )
     => ( entails_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ B2 ) ) ).

% entailsI
thf(fact_174_entails__def,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( entails_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ B2 )
      = ( ! [Sigma2: a,S3: c > d] :
            ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma2 @ S3 @ Delta2 @ A2 )
           => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma2 @ S3 @ Delta2 @ B2 ) ) ) ) ).

% entails_def
thf(fact_175_sat_Osimps_I12_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) )
      = ( ? [A3: a,P3: b] :
            ( ( Sigma
              = ( mult @ P3 @ A3 ) )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ A3 @ S @ Delta2 @ A2 ) ) ) ) ).

% sat.simps(12)
thf(fact_176_WildPos,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( entails_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ B2 )
     => ( entails_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ A2 ) @ Delta2 @ ( wildcard_a_b_d_c @ B2 ) ) ) ).

% WildPos
thf(fact_177_equivalent__def,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( equivalent_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ B2 )
      = ( ( entails_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ B2 )
        & ( entails_a_b_d_c @ plus @ mult @ valid @ B2 @ Delta2 @ A2 ) ) ) ).

% equivalent_def
thf(fact_178_WildWild,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) ) @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ).

% WildWild
thf(fact_179_sat_Osimps_I4_J,axiom,
    ! [Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,B: ( c > d ) > a > $o] :
      ( ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma @ S @ Delta2 @ ( sem_c_d_a_b @ B ) )
      = ( B @ S @ Sigma ) ) ).

% sat.simps(4)
thf(fact_180_mono__wild,axiom,
    ! [A2: assertion_a_b_d_c] :
      ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ A2 ) )
     => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ A2 ) ) ) ) ).

% mono_wild
thf(fact_181_dot__star1,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( star_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% dot_star1
thf(fact_182_dot__star2,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ).

% dot_star2
thf(fact_183_DotWild,axiom,
    ! [P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( wildcard_a_b_d_c @ A2 ) ) @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ).

% DotWild
thf(fact_184_WildDot,axiom,
    ! [P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) ) @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ).

% WildDot
thf(fact_185_dot__forall1,axiom,
    ! [P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( forall_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( forall_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ).

% dot_forall1
thf(fact_186_dot__forall2,axiom,
    ! [X: c,P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( forall_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( forall_c_a_b_d @ X @ A2 ) ) ) ).

% dot_forall2
thf(fact_187_dot__and1,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( and_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( and_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% dot_and1
thf(fact_188_dot__and2,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( and_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ).

% dot_and2
thf(fact_189_dot__wand1,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( wand_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( wand_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% dot_wand1
thf(fact_190_dot__wand2,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( wand_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ).

% dot_wand2
thf(fact_191_dot__exists1,axiom,
    ! [P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( exists_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( exists_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ).

% dot_exists1
thf(fact_192_dot__exists2,axiom,
    ! [X: c,P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( exists_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( exists_c_a_b_d @ X @ A2 ) ) ) ).

% dot_exists2
thf(fact_193_dot__imp1,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( imp_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ).

% dot_imp1
thf(fact_194_dot__imp2,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( imp_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( imp_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% dot_imp2
thf(fact_195_dot__or1,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( or_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( or_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ).

% dot_or1
thf(fact_196_dot__or2,axiom,
    ! [P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( or_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( or_a_b_d_c @ A2 @ B2 ) ) ) ).

% dot_or2
thf(fact_197_WildStar1,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ ( star_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( star_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) @ ( wildcard_a_b_d_c @ B2 ) ) ) ).

% WildStar1
thf(fact_198_WildForall,axiom,
    ! [X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ ( forall_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( forall_c_a_b_d @ X @ ( wildcard_a_b_d_c @ A2 ) ) ) ).

% WildForall
thf(fact_199_WildAnd,axiom,
    ! [A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ ( and_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( and_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) @ ( wildcard_a_b_d_c @ B2 ) ) ) ).

% WildAnd
thf(fact_200_pure__mult1,axiom,
    ! [A2: assertion_a_b_d_c,P: b,Delta2: ( c > d ) > set_a] :
      ( ( pure_a_b_d_c @ plus @ mult @ valid @ A2 )
     => ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ A2 ) @ Delta2 @ A2 ) ) ).

% pure_mult1
thf(fact_201_pure__mult2,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,P: b] :
      ( ( pure_a_b_d_c @ plus @ mult @ valid @ A2 )
     => ( entails_a_b_d_c @ plus @ mult @ valid @ A2 @ Delta2 @ ( mult_b_a_d_c @ P @ A2 ) ) ) ).

% pure_mult2
thf(fact_202_WildExists,axiom,
    ! [X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( equivalent_a_b_d_c @ plus @ mult @ valid @ ( wildcard_a_b_d_c @ ( exists_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( exists_c_a_b_d @ X @ ( wildcard_a_b_d_c @ A2 ) ) ) ).

% WildExists
thf(fact_203_dot__mult1,axiom,
    ! [P: b,Q: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ P @ ( mult_b_a_d_c @ Q @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ ( smult @ P @ Q ) @ A2 ) ) ).

% dot_mult1
thf(fact_204_dot__mult2,axiom,
    ! [P: b,Q: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( mult_b_a_d_c @ ( smult @ P @ Q ) @ A2 ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( mult_b_a_d_c @ Q @ A2 ) ) ) ).

% dot_mult2
thf(fact_205_assertion_Odistinct_I21_J,axiom,
    ! [X1: ( c > d ) > a > $o,X12: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(21)
thf(fact_206_logic_Oentails_Ocong,axiom,
    entails_a_b_d_c = entails_a_b_d_c ).

% logic.entails.cong
thf(fact_207_assertion_Odistinct_I1_J,axiom,
    ! [X1: ( c > d ) > a > $o,X21: b,X22: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( mult_b_a_d_c @ X21 @ X22 ) ) ).

% assertion.distinct(1)
thf(fact_208_assertion_Odistinct_I41_J,axiom,
    ! [X21: b,X22: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( mult_b_a_d_c @ X21 @ X22 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(41)
thf(fact_209_assertion_Odistinct_I3_J,axiom,
    ! [X1: ( c > d ) > a > $o,X31: assertion_a_b_d_c,X32: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( star_a_b_d_c @ X31 @ X32 ) ) ).

% assertion.distinct(3)
thf(fact_210_assertion_Odistinct_I9_J,axiom,
    ! [X1: ( c > d ) > a > $o,X61: assertion_a_b_d_c,X62: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( and_a_b_d_c @ X61 @ X62 ) ) ).

% assertion.distinct(9)
thf(fact_211_assertion_Odistinct_I15_J,axiom,
    ! [X1: ( c > d ) > a > $o,X91: c,X92: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( forall_c_a_b_d @ X91 @ X92 ) ) ).

% assertion.distinct(15)
thf(fact_212_assertion_Odistinct_I59_J,axiom,
    ! [X31: assertion_a_b_d_c,X32: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( star_a_b_d_c @ X31 @ X32 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(59)
thf(fact_213_assertion_Odistinct_I5_J,axiom,
    ! [X1: ( c > d ) > a > $o,X41: assertion_a_b_d_c,X42: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( wand_a_b_d_c @ X41 @ X42 ) ) ).

% assertion.distinct(5)
thf(fact_214_assertion_Odistinct_I13_J,axiom,
    ! [X1: ( c > d ) > a > $o,X81: c,X82: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( exists_c_a_b_d @ X81 @ X82 ) ) ).

% assertion.distinct(13)
thf(fact_215_assertion_Odistinct_I11_J,axiom,
    ! [X1: ( c > d ) > a > $o,X71: assertion_a_b_d_c,X72: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( imp_a_b_d_c @ X71 @ X72 ) ) ).

% assertion.distinct(11)
thf(fact_216_assertion_Odistinct_I7_J,axiom,
    ! [X1: ( c > d ) > a > $o,X51: assertion_a_b_d_c,X52: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( or_a_b_d_c @ X51 @ X52 ) ) ).

% assertion.distinct(7)
thf(fact_217_assertion_Odistinct_I101_J,axiom,
    ! [X61: assertion_a_b_d_c,X62: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( and_a_b_d_c @ X61 @ X62 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(101)
thf(fact_218_assertion_Odistinct_I125_J,axiom,
    ! [X91: c,X92: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( forall_c_a_b_d @ X91 @ X92 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(125)
thf(fact_219_assertion_Odistinct_I75_J,axiom,
    ! [X41: assertion_a_b_d_c,X42: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( wand_a_b_d_c @ X41 @ X42 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(75)
thf(fact_220_assertion_Odistinct_I119_J,axiom,
    ! [X81: c,X82: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( exists_c_a_b_d @ X81 @ X82 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(119)
thf(fact_221_assertion_Odistinct_I111_J,axiom,
    ! [X71: assertion_a_b_d_c,X72: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( imp_a_b_d_c @ X71 @ X72 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(111)
thf(fact_222_assertion_Odistinct_I89_J,axiom,
    ! [X51: assertion_a_b_d_c,X52: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( or_a_b_d_c @ X51 @ X52 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(89)
thf(fact_223_assertion_Odistinct_I19_J,axiom,
    ! [X1: ( c > d ) > a > $o,X11: assertion_a_b_d_c] :
      ( ( sem_c_d_a_b @ X1 )
     != ( bounded_a_b_d_c @ X11 ) ) ).

% assertion.distinct(19)
thf(fact_224_assertion_Odistinct_I131_J,axiom,
    ! [X11: assertion_a_b_d_c,X12: assertion_a_b_d_c] :
      ( ( bounded_a_b_d_c @ X11 )
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(131)
thf(fact_225_assertion_Odistinct_I17_J,axiom,
    ! [X1: ( c > d ) > a > $o] :
      ( ( sem_c_d_a_b @ X1 )
     != pred_a_b_d_c ) ).

% assertion.distinct(17)
thf(fact_226_assertion_Odistinct_I129_J,axiom,
    ! [X12: assertion_a_b_d_c] :
      ( pred_a_b_d_c
     != ( wildcard_a_b_d_c @ X12 ) ) ).

% assertion.distinct(129)
thf(fact_227_pre__logic_Olarger__def,axiom,
    ( pre_larger_nat
    = ( ^ [Plus: nat > nat > option_nat,A3: nat,B3: nat] :
        ? [C2: nat] :
          ( ( some_nat @ A3 )
          = ( Plus @ B3 @ C2 ) ) ) ) ).

% pre_logic.larger_def
thf(fact_228_pre__logic_Olarger__def,axiom,
    ( pre_larger_a
    = ( ^ [Plus: a > a > option_a,A3: a,B3: a] :
        ? [C2: a] :
          ( ( some_a @ A3 )
          = ( Plus @ B3 @ C2 ) ) ) ) ).

% pre_logic.larger_def
thf(fact_229_assertion_Oexhaust,axiom,
    ! [Y: assertion_a_b_d_c] :
      ( ! [X13: ( c > d ) > a > $o] :
          ( Y
         != ( sem_c_d_a_b @ X13 ) )
     => ( ! [X212: b,X222: assertion_a_b_d_c] :
            ( Y
           != ( mult_b_a_d_c @ X212 @ X222 ) )
       => ( ! [X312: assertion_a_b_d_c,X322: assertion_a_b_d_c] :
              ( Y
             != ( star_a_b_d_c @ X312 @ X322 ) )
         => ( ! [X412: assertion_a_b_d_c,X422: assertion_a_b_d_c] :
                ( Y
               != ( wand_a_b_d_c @ X412 @ X422 ) )
           => ( ! [X512: assertion_a_b_d_c,X522: assertion_a_b_d_c] :
                  ( Y
                 != ( or_a_b_d_c @ X512 @ X522 ) )
             => ( ! [X612: assertion_a_b_d_c,X622: assertion_a_b_d_c] :
                    ( Y
                   != ( and_a_b_d_c @ X612 @ X622 ) )
               => ( ! [X712: assertion_a_b_d_c,X722: assertion_a_b_d_c] :
                      ( Y
                     != ( imp_a_b_d_c @ X712 @ X722 ) )
                 => ( ! [X812: c,X822: assertion_a_b_d_c] :
                        ( Y
                       != ( exists_c_a_b_d @ X812 @ X822 ) )
                   => ( ! [X912: c,X922: assertion_a_b_d_c] :
                          ( Y
                         != ( forall_c_a_b_d @ X912 @ X922 ) )
                     => ( ( Y != pred_a_b_d_c )
                       => ( ! [X112: assertion_a_b_d_c] :
                              ( Y
                             != ( bounded_a_b_d_c @ X112 ) )
                         => ~ ! [X122: assertion_a_b_d_c] :
                                ( Y
                               != ( wildcard_a_b_d_c @ X122 ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% assertion.exhaust
thf(fact_230_frame__rule,axiom,
    ! [C: set_Pr1275464188344874039_a_c_d,P2: assertion_a_b_d_c,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,R3: assertion_a_b_d_c] :
      ( ( valid_command_a_c_d @ valid @ C )
     => ( ( safety844553430189520448_a_c_d @ plus @ valid @ C )
       => ( ( frame_property_a_c_d @ plus @ valid @ C )
         => ( ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ P2 @ C @ Q2 @ Delta2 )
           => ( ( not_in_fv_a_b_d_c @ plus @ mult @ valid @ R3 @ ( modified_a_c_d @ C ) )
             => ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ ( star_a_b_d_c @ P2 @ R3 ) @ C @ ( star_a_b_d_c @ Q2 @ R3 ) @ Delta2 ) ) ) ) ) ) ).

% frame_rule
thf(fact_231_fun__upd__apply,axiom,
    ( fun_upd_nat_option_a
    = ( ^ [F2: nat > option_a,X3: nat,Y2: option_a,Z: nat] : ( if_option_a @ ( Z = X3 ) @ Y2 @ ( F2 @ Z ) ) ) ) ).

% fun_upd_apply
thf(fact_232_fun__upd__apply,axiom,
    ( fun_upd_nat_nat
    = ( ^ [F2: nat > nat,X3: nat,Y2: nat,Z: nat] : ( if_nat @ ( Z = X3 ) @ Y2 @ ( F2 @ Z ) ) ) ) ).

% fun_upd_apply
thf(fact_233_fun__upd__triv,axiom,
    ! [F: nat > option_a,X: nat] :
      ( ( fun_upd_nat_option_a @ F @ X @ ( F @ X ) )
      = F ) ).

% fun_upd_triv
thf(fact_234_fun__upd__triv,axiom,
    ! [F: nat > nat,X: nat] :
      ( ( fun_upd_nat_nat @ F @ X @ ( F @ X ) )
      = F ) ).

% fun_upd_triv
thf(fact_235_fun__upd__upd,axiom,
    ! [F: nat > option_a,X: nat,Y: option_a,Z2: option_a] :
      ( ( fun_upd_nat_option_a @ ( fun_upd_nat_option_a @ F @ X @ Y ) @ X @ Z2 )
      = ( fun_upd_nat_option_a @ F @ X @ Z2 ) ) ).

% fun_upd_upd
thf(fact_236_fun__upd__upd,axiom,
    ! [F: nat > nat,X: nat,Y: nat,Z2: nat] :
      ( ( fun_upd_nat_nat @ ( fun_upd_nat_nat @ F @ X @ Y ) @ X @ Z2 )
      = ( fun_upd_nat_nat @ F @ X @ Z2 ) ) ).

% fun_upd_upd
thf(fact_237_logic__axioms,axiom,
    logic_a_b @ plus @ mult @ smult @ sadd @ sinv @ one @ valid ).

% logic_axioms
thf(fact_238_option_Oinject,axiom,
    ! [X23: nat,Y23: nat] :
      ( ( ( some_nat @ X23 )
        = ( some_nat @ Y23 ) )
      = ( X23 = Y23 ) ) ).

% option.inject
thf(fact_239_option_Oinject,axiom,
    ! [X23: a,Y23: a] :
      ( ( ( some_a @ X23 )
        = ( some_a @ Y23 ) )
      = ( X23 = Y23 ) ) ).

% option.inject
thf(fact_240_compatible__def,axiom,
    ! [A: a,B: a] :
      ( ( pre_compatible_a @ plus @ A @ B )
      = ( ( plus @ A @ B )
       != none_a ) ) ).

% compatible_def
thf(fact_241_distrib__mult,axiom,
    ! [P: b,Q: b,X: a] :
      ( ( some_a @ ( mult @ ( sadd @ P @ Q ) @ X ) )
      = ( plus @ ( mult @ P @ X ) @ ( mult @ Q @ X ) ) ) ).

% distrib_mult
thf(fact_242_sadd__comm,axiom,
    ! [P: b,Q: b] :
      ( ( sadd @ P @ Q )
      = ( sadd @ Q @ P ) ) ).

% sadd_comm
thf(fact_243_smaller__interp__def,axiom,
    ( smaller_interp_c_d_a
    = ( ^ [Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
        ! [S3: c > d] : ( ord_less_eq_set_a @ ( Delta5 @ S3 ) @ ( Delta6 @ S3 ) ) ) ) ).

% smaller_interp_def
thf(fact_244_smult__distrib,axiom,
    ! [P: b,Q: b,R2: b] :
      ( ( smult @ P @ ( sadd @ Q @ R2 ) )
      = ( sadd @ ( smult @ P @ Q ) @ ( smult @ P @ R2 ) ) ) ).

% smult_distrib
thf(fact_245_not__None__eq,axiom,
    ! [X: option_nat] :
      ( ( X != none_nat )
      = ( ? [Y2: nat] :
            ( X
            = ( some_nat @ Y2 ) ) ) ) ).

% not_None_eq
thf(fact_246_not__None__eq,axiom,
    ! [X: option_a] :
      ( ( X != none_a )
      = ( ? [Y2: a] :
            ( X
            = ( some_a @ Y2 ) ) ) ) ).

% not_None_eq
thf(fact_247_not__Some__eq,axiom,
    ! [X: option_nat] :
      ( ( ! [Y2: nat] :
            ( X
           != ( some_nat @ Y2 ) ) )
      = ( X = none_nat ) ) ).

% not_Some_eq
thf(fact_248_not__Some__eq,axiom,
    ! [X: option_a] :
      ( ( ! [Y2: a] :
            ( X
           != ( some_a @ Y2 ) ) )
      = ( X = none_a ) ) ).

% not_Some_eq
thf(fact_249_combine__options__cases,axiom,
    ! [X: option_a,P2: option_a > option_nat > $o,Y: option_nat] :
      ( ( ( X = none_a )
       => ( P2 @ X @ Y ) )
     => ( ( ( Y = none_nat )
         => ( P2 @ X @ Y ) )
       => ( ! [A4: a,B4: nat] :
              ( ( X
                = ( some_a @ A4 ) )
             => ( ( Y
                  = ( some_nat @ B4 ) )
               => ( P2 @ X @ Y ) ) )
         => ( P2 @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_250_combine__options__cases,axiom,
    ! [X: option_nat,P2: option_nat > option_a > $o,Y: option_a] :
      ( ( ( X = none_nat )
       => ( P2 @ X @ Y ) )
     => ( ( ( Y = none_a )
         => ( P2 @ X @ Y ) )
       => ( ! [A4: nat,B4: a] :
              ( ( X
                = ( some_nat @ A4 ) )
             => ( ( Y
                  = ( some_a @ B4 ) )
               => ( P2 @ X @ Y ) ) )
         => ( P2 @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_251_combine__options__cases,axiom,
    ! [X: option_nat,P2: option_nat > option_nat > $o,Y: option_nat] :
      ( ( ( X = none_nat )
       => ( P2 @ X @ Y ) )
     => ( ( ( Y = none_nat )
         => ( P2 @ X @ Y ) )
       => ( ! [A4: nat,B4: nat] :
              ( ( X
                = ( some_nat @ A4 ) )
             => ( ( Y
                  = ( some_nat @ B4 ) )
               => ( P2 @ X @ Y ) ) )
         => ( P2 @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_252_combine__options__cases,axiom,
    ! [X: option_a,P2: option_a > option_a > $o,Y: option_a] :
      ( ( ( X = none_a )
       => ( P2 @ X @ Y ) )
     => ( ( ( Y = none_a )
         => ( P2 @ X @ Y ) )
       => ( ! [A4: a,B4: a] :
              ( ( X
                = ( some_a @ A4 ) )
             => ( ( Y
                  = ( some_a @ B4 ) )
               => ( P2 @ X @ Y ) ) )
         => ( P2 @ X @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_253_split__option__all,axiom,
    ( ( ^ [P4: option_nat > $o] :
        ! [X5: option_nat] : ( P4 @ X5 ) )
    = ( ^ [P5: option_nat > $o] :
          ( ( P5 @ none_nat )
          & ! [X3: nat] : ( P5 @ ( some_nat @ X3 ) ) ) ) ) ).

% split_option_all
thf(fact_254_split__option__all,axiom,
    ( ( ^ [P4: option_a > $o] :
        ! [X5: option_a] : ( P4 @ X5 ) )
    = ( ^ [P5: option_a > $o] :
          ( ( P5 @ none_a )
          & ! [X3: a] : ( P5 @ ( some_a @ X3 ) ) ) ) ) ).

% split_option_all
thf(fact_255_split__option__ex,axiom,
    ( ( ^ [P4: option_nat > $o] :
        ? [X5: option_nat] : ( P4 @ X5 ) )
    = ( ^ [P5: option_nat > $o] :
          ( ( P5 @ none_nat )
          | ? [X3: nat] : ( P5 @ ( some_nat @ X3 ) ) ) ) ) ).

% split_option_ex
thf(fact_256_split__option__ex,axiom,
    ( ( ^ [P4: option_a > $o] :
        ? [X5: option_a] : ( P4 @ X5 ) )
    = ( ^ [P5: option_a > $o] :
          ( ( P5 @ none_a )
          | ? [X3: a] : ( P5 @ ( some_a @ X3 ) ) ) ) ) ).

% split_option_ex
thf(fact_257_option_Oexhaust,axiom,
    ! [Y: option_nat] :
      ( ( Y != none_nat )
     => ~ ! [X24: nat] :
            ( Y
           != ( some_nat @ X24 ) ) ) ).

% option.exhaust
thf(fact_258_option_Oexhaust,axiom,
    ! [Y: option_a] :
      ( ( Y != none_a )
     => ~ ! [X24: a] :
            ( Y
           != ( some_a @ X24 ) ) ) ).

% option.exhaust
thf(fact_259_option_OdiscI,axiom,
    ! [Option: option_nat,X23: nat] :
      ( ( Option
        = ( some_nat @ X23 ) )
     => ( Option != none_nat ) ) ).

% option.discI
thf(fact_260_option_OdiscI,axiom,
    ! [Option: option_a,X23: a] :
      ( ( Option
        = ( some_a @ X23 ) )
     => ( Option != none_a ) ) ).

% option.discI
thf(fact_261_option_Odistinct_I1_J,axiom,
    ! [X23: nat] :
      ( none_nat
     != ( some_nat @ X23 ) ) ).

% option.distinct(1)
thf(fact_262_option_Odistinct_I1_J,axiom,
    ! [X23: a] :
      ( none_a
     != ( some_a @ X23 ) ) ).

% option.distinct(1)
thf(fact_263_logic_Osmult__distrib,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b,R2: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Smult @ P @ ( Sadd @ Q @ R2 ) )
        = ( Sadd @ ( Smult @ P @ Q ) @ ( Smult @ P @ R2 ) ) ) ) ).

% logic.smult_distrib
thf(fact_264_logic_Osone__neutral,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Smult @ One @ P )
        = P ) ) ).

% logic.sone_neutral
thf(fact_265_logic_Osinv__inverse,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Smult @ P @ ( Sinv @ P ) )
        = One ) ) ).

% logic.sinv_inverse
thf(fact_266_logic_Oone__neutral,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Mult @ One @ A )
        = A ) ) ).

% logic.one_neutral
thf(fact_267_logic_Odouble__mult,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b,A: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Mult @ P @ ( Mult @ Q @ A ) )
        = ( Mult @ ( Smult @ P @ Q ) @ A ) ) ) ).

% logic.double_mult
thf(fact_268_logic_Ocommutative,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Plus2 @ A @ B )
        = ( Plus2 @ B @ A ) ) ) ).

% logic.commutative
thf(fact_269_logic_Ounique__inv,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,P: b,B: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( A
          = ( Mult @ P @ B ) )
        = ( B
          = ( Mult @ ( Sinv @ P ) @ A ) ) ) ) ).

% logic.unique_inv
thf(fact_270_logic_Osmult__comm,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Smult @ P @ Q )
        = ( Smult @ Q @ P ) ) ) ).

% logic.smult_comm
thf(fact_271_logic_Osmult__asso,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b,R2: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Smult @ ( Smult @ P @ Q ) @ R2 )
        = ( Smult @ P @ ( Smult @ Q @ R2 ) ) ) ) ).

% logic.smult_asso
thf(fact_272_logic_Ocan__divide,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A: a,B: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( Mult @ P @ A )
          = ( Mult @ P @ B ) )
       => ( A = B ) ) ) ).

% logic.can_divide
thf(fact_273_logic_Osadd__comm,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( Sadd @ P @ Q )
        = ( Sadd @ Q @ P ) ) ) ).

% logic.sadd_comm
thf(fact_274_logic_Osmaller__interp__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,Delta: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( smaller_interp_c_d_a @ Delta2 @ Delta )
        = ( ! [S3: c > d] : ( ord_less_eq_set_a @ ( Delta2 @ S3 ) @ ( Delta @ S3 ) ) ) ) ) ).

% logic.smaller_interp_def
thf(fact_275_logic_Odistrib__mult,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b,X: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( some_a @ ( Mult @ ( Sadd @ P @ Q ) @ X ) )
        = ( Plus2 @ ( Mult @ P @ X ) @ ( Mult @ Q @ X ) ) ) ) ).

% logic.distrib_mult
thf(fact_276_logic_Oplus__mult,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,C: a,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( some_a @ A )
          = ( Plus2 @ B @ C ) )
       => ( ( some_a @ ( Mult @ P @ A ) )
          = ( Plus2 @ ( Mult @ P @ B ) @ ( Mult @ P @ C ) ) ) ) ) ).

% logic.plus_mult
thf(fact_277_logic_Omove__sum,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,A1: a,A22: a,B: a,B1: a,B22: a,X: a,X1: a,X23: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( some_a @ A )
          = ( Plus2 @ A1 @ A22 ) )
       => ( ( ( some_a @ B )
            = ( Plus2 @ B1 @ B22 ) )
         => ( ( ( some_a @ X )
              = ( Plus2 @ A @ B ) )
           => ( ( ( some_a @ X1 )
                = ( Plus2 @ A1 @ B1 ) )
             => ( ( ( some_a @ X23 )
                  = ( Plus2 @ A22 @ B22 ) )
               => ( ( some_a @ X )
                  = ( Plus2 @ X1 @ X23 ) ) ) ) ) ) ) ) ).

% logic.move_sum
thf(fact_278_logic_Oasso1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,Ab: a,C: a,Bc: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( ( Plus2 @ A @ B )
            = ( some_a @ Ab ) )
          & ( ( Plus2 @ B @ C )
            = ( some_a @ Bc ) ) )
       => ( ( Plus2 @ Ab @ C )
          = ( Plus2 @ A @ Bc ) ) ) ) ).

% logic.asso1
thf(fact_279_logic_Osmaller__interpI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,Delta: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [S2: c > d,X2: a] :
            ( ( member_a @ X2 @ ( Delta2 @ S2 ) )
           => ( member_a @ X2 @ ( Delta @ S2 ) ) )
       => ( smaller_interp_c_d_a @ Delta2 @ Delta ) ) ) ).

% logic.smaller_interpI
thf(fact_280_logic_Ocompatible__iff,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pre_compatible_a @ Plus2 @ A @ B )
        = ( pre_compatible_a @ Plus2 @ ( Mult @ P @ A ) @ ( Mult @ P @ B ) ) ) ) ).

% logic.compatible_iff
thf(fact_281_logic_Ocompatible__imp,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pre_compatible_a @ Plus2 @ A @ B )
       => ( pre_compatible_a @ Plus2 @ ( Mult @ P @ A ) @ ( Mult @ P @ B ) ) ) ) ).

% logic.compatible_imp
thf(fact_282_logic_Osmaller__interp__refl,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( smaller_interp_c_d_a @ Delta2 @ Delta2 ) ) ).

% logic.smaller_interp_refl
thf(fact_283_logic_Osmaller__interp__trans,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: ( c > d ) > set_a,B: ( c > d ) > set_a,C: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( smaller_interp_c_d_a @ A @ B )
       => ( ( smaller_interp_c_d_a @ B @ C )
         => ( smaller_interp_c_d_a @ A @ C ) ) ) ) ).

% logic.smaller_interp_trans
thf(fact_284_logic_Ocompatible__multiples,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A: a,Q: b,B: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pre_compatible_a @ Plus2 @ ( Mult @ P @ A ) @ ( Mult @ Q @ B ) )
       => ( pre_compatible_a @ Plus2 @ A @ B ) ) ) ).

% logic.compatible_multiples
thf(fact_285_logic_Ovalid__mono,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( Valid @ A )
          & ( pre_larger_a @ Plus2 @ A @ B ) )
       => ( Valid @ B ) ) ) ).

% logic.valid_mono
thf(fact_286_logic_Olarger__same,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pre_larger_a @ Plus2 @ A @ B )
        = ( pre_larger_a @ Plus2 @ ( Mult @ P @ A ) @ ( Mult @ P @ B ) ) ) ) ).

% logic.larger_same
thf(fact_287_pre__logic_Ocompatible__def,axiom,
    ( pre_compatible_nat
    = ( ^ [Plus: nat > nat > option_nat,A3: nat,B3: nat] :
          ( ( Plus @ A3 @ B3 )
         != none_nat ) ) ) ).

% pre_logic.compatible_def
thf(fact_288_pre__logic_Ocompatible__def,axiom,
    ( pre_compatible_a
    = ( ^ [Plus: a > a > option_a,A3: a,B3: a] :
          ( ( Plus @ A3 @ B3 )
         != none_a ) ) ) ).

% pre_logic.compatible_def
thf(fact_289_logic_Osat__mult,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,P: b,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [A4: a] :
            ( ( Sigma
              = ( Mult @ P @ A4 ) )
           => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A4 @ S @ Delta2 @ A2 ) )
       => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( mult_b_a_d_c @ P @ A2 ) ) ) ) ).

% logic.sat_mult
thf(fact_290_logic_Osat_Osimps_I1_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,P: b,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( mult_b_a_d_c @ P @ A2 ) )
        = ( ? [A3: a] :
              ( ( Sigma
                = ( Mult @ P @ A3 ) )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A3 @ S @ Delta2 @ A2 ) ) ) ) ) ).

% logic.sat.simps(1)
thf(fact_291_logic_Osat_Osimps_I12_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) )
        = ( ? [A3: a,P3: b] :
              ( ( Sigma
                = ( Mult @ P3 @ A3 ) )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A3 @ S @ Delta2 @ A2 ) ) ) ) ) ).

% logic.sat.simps(12)
thf(fact_292_logic_Osat_Osimps_I7_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( and_a_b_d_c @ A2 @ B2 ) )
        = ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ A2 )
          & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ B2 ) ) ) ) ).

% logic.sat.simps(7)
thf(fact_293_logic_Osat_Osimps_I6_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( or_a_b_d_c @ A2 @ B2 ) )
        = ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ A2 )
          | ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ B2 ) ) ) ) ).

% logic.sat.simps(6)
thf(fact_294_logic_Osat_Osimps_I5_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( imp_a_b_d_c @ A2 @ B2 ) )
        = ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ A2 )
         => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ B2 ) ) ) ) ).

% logic.sat.simps(5)
thf(fact_295_logic_Osat__imp,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ A2 )
         => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ B2 ) )
       => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.sat_imp
thf(fact_296_logic_Oentails__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ B2 )
        = ( ! [Sigma2: a,S3: c > d] :
              ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma2 @ S3 @ Delta2 @ A2 )
             => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma2 @ S3 @ Delta2 @ B2 ) ) ) ) ) ).

% logic.entails_def
thf(fact_297_logic_OentailsI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Sigma4: a,S2: c > d] :
            ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ A2 )
           => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ B2 ) )
       => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ B2 ) ) ) ).

% logic.entailsI
thf(fact_298_logic_Osat_Osimps_I11_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( bounded_a_b_d_c @ A2 ) )
        = ( ( Valid @ Sigma )
         => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ A2 ) ) ) ) ).

% logic.sat.simps(11)
thf(fact_299_logic_Osat_Osimps_I4_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,B: ( c > d ) > a > $o] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( sem_c_d_a_b @ B ) )
        = ( B @ S @ Sigma ) ) ) ).

% logic.sat.simps(4)
thf(fact_300_logic_Osat_Osimps_I10_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ pred_a_b_d_c )
        = ( member_a @ Sigma @ ( Delta2 @ S ) ) ) ) ).

% logic.sat.simps(10)
thf(fact_301_logic_Oasso3,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,C: a,Bc: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ~ ( pre_compatible_a @ Plus2 @ A @ B )
       => ( ( ( Plus2 @ B @ C )
            = ( some_a @ Bc ) )
         => ~ ( pre_compatible_a @ Plus2 @ A @ Bc ) ) ) ) ).

% logic.asso3
thf(fact_302_logic_Oasso2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,Ab: a,C: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( ( Plus2 @ A @ B )
            = ( some_a @ Ab ) )
          & ~ ( pre_compatible_a @ Plus2 @ B @ C ) )
       => ~ ( pre_compatible_a @ Plus2 @ Ab @ C ) ) ) ).

% logic.asso2
thf(fact_303_logic_Olarger__first__sum,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Y: a,A: a,B: a,X: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( some_a @ Y )
          = ( Plus2 @ A @ B ) )
       => ( ( pre_larger_a @ Plus2 @ X @ Y )
         => ? [A5: a] :
              ( ( ( some_a @ X )
                = ( Plus2 @ A5 @ B ) )
              & ( pre_larger_a @ Plus2 @ A5 @ A ) ) ) ) ) ).

% logic.larger_first_sum
thf(fact_304_logic_Osum__both__larger,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X4: a,A6: a,B5: a,X: a,A: a,B: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( ( some_a @ X4 )
          = ( Plus2 @ A6 @ B5 ) )
       => ( ( ( some_a @ X )
            = ( Plus2 @ A @ B ) )
         => ( ( pre_larger_a @ Plus2 @ A6 @ A )
           => ( ( pre_larger_a @ Plus2 @ B5 @ B )
             => ( pre_larger_a @ Plus2 @ X4 @ X ) ) ) ) ) ) ).

% logic.sum_both_larger
thf(fact_305_logic_OequivalentI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Sigma4: a,S2: c > d] :
            ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ A2 )
           => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ B2 ) )
       => ( ! [Sigma4: a,S2: c > d] :
              ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ B2 )
             => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ A2 ) )
         => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ B2 ) ) ) ) ).

% logic.equivalentI
thf(fact_306_logic_Oequivalent__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ B2 )
        = ( ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ B2 )
          & ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 @ Delta2 @ A2 ) ) ) ) ).

% logic.equivalent_def
thf(fact_307_logic_OmonotonicI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,F: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Delta3: ( c > d ) > set_a,Delta4: ( c > d ) > set_a] :
            ( ( smaller_interp_c_d_a @ Delta3 @ Delta4 )
           => ( smaller_interp_c_d_a @ ( F @ Delta3 ) @ ( F @ Delta4 ) ) )
       => ( monotonic_c_d_a @ F ) ) ) ).

% logic.monotonicI
thf(fact_308_logic_Omonotonic__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,F: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ F )
        = ( ! [Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
              ( ( smaller_interp_c_d_a @ Delta5 @ Delta6 )
             => ( smaller_interp_c_d_a @ ( F @ Delta5 ) @ ( F @ Delta6 ) ) ) ) ) ) ).

% logic.monotonic_def
thf(fact_309_logic_Opure__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pure_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
        = ( ! [Sigma2: a,Sigma3: a,S3: c > d,Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
              ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma2 @ S3 @ Delta5 @ A2 )
              = ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma3 @ S3 @ Delta6 @ A2 ) ) ) ) ) ).

% logic.pure_def
thf(fact_310_logic_Ocompatible__smaller,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A: a,B: a,X: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pre_larger_a @ Plus2 @ A @ B )
       => ( ( pre_compatible_a @ Plus2 @ X @ A )
         => ( pre_compatible_a @ Plus2 @ X @ B ) ) ) ) ).

% logic.compatible_smaller
thf(fact_311_logic_Olarger__implies__compatible,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: a,Y: a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pre_larger_a @ Plus2 @ X @ Y )
       => ( pre_compatible_a @ Plus2 @ X @ Y ) ) ) ).

% logic.larger_implies_compatible
thf(fact_312_logic_Onon__increasing__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,F: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( non_increasing_c_d_a @ F )
        = ( ! [Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
              ( ( smaller_interp_c_d_a @ Delta5 @ Delta6 )
             => ( smaller_interp_c_d_a @ ( F @ Delta6 ) @ ( F @ Delta5 ) ) ) ) ) ) ).

% logic.non_increasing_def
thf(fact_313_logic_Onon__increasingI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,F: ( ( c > d ) > set_a ) > ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Delta3: ( c > d ) > set_a,Delta4: ( c > d ) > set_a] :
            ( ( smaller_interp_c_d_a @ Delta3 @ Delta4 )
           => ( smaller_interp_c_d_a @ ( F @ Delta4 ) @ ( F @ Delta3 ) ) )
       => ( non_increasing_c_d_a @ F ) ) ) ).

% logic.non_increasingI
thf(fact_314_logic_Ohoare__triple__input,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ P2 @ C @ Q2 @ Delta2 )
        = ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ ( bounded_a_b_d_c @ P2 ) @ C @ Q2 @ Delta2 ) ) ) ).

% logic.hoare_triple_input
thf(fact_315_logic_Oframe__rule,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,C: set_Pr1275464188344874039_a_c_d,P2: assertion_a_b_d_c,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,R3: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( valid_command_a_c_d @ Valid @ C )
       => ( ( safety844553430189520448_a_c_d @ Plus2 @ Valid @ C )
         => ( ( frame_property_a_c_d @ Plus2 @ Valid @ C )
           => ( ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ P2 @ C @ Q2 @ Delta2 )
             => ( ( not_in_fv_a_b_d_c @ Plus2 @ Mult @ Valid @ R3 @ ( modified_a_c_d @ C ) )
               => ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ ( star_a_b_d_c @ P2 @ R3 ) @ C @ ( star_a_b_d_c @ Q2 @ R3 ) @ Delta2 ) ) ) ) ) ) ) ).

% logic.frame_rule
thf(fact_316_logic_Oindep__interp__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( indep_interp_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
        = ( ! [X3: a,S3: c > d,Delta5: ( c > d ) > set_a,Delta6: ( c > d ) > set_a] :
              ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ X3 @ S3 @ Delta5 @ A2 )
              = ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ X3 @ S3 @ Delta6 @ A2 ) ) ) ) ) ).

% logic.indep_interp_def
thf(fact_317_logic_Osat_Osimps_I2_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( star_a_b_d_c @ A2 @ B2 ) )
        = ( ? [A3: a,B3: a] :
              ( ( ( some_a @ Sigma )
                = ( Plus2 @ A3 @ B3 ) )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A3 @ S @ Delta2 @ A2 )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ B3 @ S @ Delta2 @ B2 ) ) ) ) ) ).

% logic.sat.simps(2)
thf(fact_318_logic_Osat__wand,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,Sigma: a,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [A4: a,Sigma5: a] :
            ( ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A4 @ S @ Delta2 @ A2 )
              & ( ( some_a @ Sigma5 )
                = ( Plus2 @ Sigma @ A4 ) ) )
           => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma5 @ S @ Delta2 @ B2 ) )
       => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.sat_wand
thf(fact_319_logic_Osat_Osimps_I3_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( wand_a_b_d_c @ A2 @ B2 ) )
        = ( ! [A3: a,Sigma3: a] :
              ( ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A3 @ S @ Delta2 @ A2 )
                & ( ( some_a @ Sigma3 )
                  = ( Plus2 @ Sigma @ A3 ) ) )
             => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma3 @ S @ Delta2 @ B2 ) ) ) ) ) ).

% logic.sat.simps(3)
thf(fact_320_logic_Osat__forall,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: nat > option_a,X: nat,Delta2: ( nat > option_a ) > set_a,A2: assert7591039163618688690_a_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [V4: option_a] : ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_nat_option_a @ S @ X @ V4 ) @ Delta2 @ A2 )
       => ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( forall5842784834562080685tion_a @ X @ A2 ) ) ) ) ).

% logic.sat_forall
thf(fact_321_logic_Osat__forall,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: nat > nat,X: nat,Delta2: ( nat > nat ) > set_a,A2: assert8917056066125641810at_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [V4: nat] : ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_nat_nat @ S @ X @ V4 ) @ Delta2 @ A2 )
       => ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( forall_nat_a_b_nat @ X @ A2 ) ) ) ) ).

% logic.sat_forall
thf(fact_322_logic_Osat__forall,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,X: c,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [V4: d] : ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_c_d @ S @ X @ V4 ) @ Delta2 @ A2 )
       => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( forall_c_a_b_d @ X @ A2 ) ) ) ) ).

% logic.sat_forall
thf(fact_323_logic_Osat_Osimps_I9_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: nat > option_a,Delta2: ( nat > option_a ) > set_a,X: nat,A2: assert7591039163618688690_a_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( forall5842784834562080685tion_a @ X @ A2 ) )
        = ( ! [V3: option_a] : ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_nat_option_a @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ) ).

% logic.sat.simps(9)
thf(fact_324_logic_Osat_Osimps_I9_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: nat > nat,Delta2: ( nat > nat ) > set_a,X: nat,A2: assert8917056066125641810at_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( forall_nat_a_b_nat @ X @ A2 ) )
        = ( ! [V3: nat] : ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_nat_nat @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ) ).

% logic.sat.simps(9)
thf(fact_325_logic_Osat_Osimps_I9_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,X: c,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( forall_c_a_b_d @ X @ A2 ) )
        = ( ! [V3: d] : ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_c_d @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ) ).

% logic.sat.simps(9)
thf(fact_326_logic_Omono__mult,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Pi: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ Pi @ A2 ) ) ) ) ) ).

% logic.mono_mult
thf(fact_327_logic_Osat_Osimps_I8_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: nat > option_a,Delta2: ( nat > option_a ) > set_a,X: nat,A2: assert7591039163618688690_a_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( exists4241335424236015753tion_a @ X @ A2 ) )
        = ( ? [V3: option_a] : ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_nat_option_a @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ) ).

% logic.sat.simps(8)
thf(fact_328_logic_Osat_Osimps_I8_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: nat > nat,Delta2: ( nat > nat ) > set_a,X: nat,A2: assert8917056066125641810at_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( exists_nat_a_b_nat @ X @ A2 ) )
        = ( ? [V3: nat] : ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_nat_nat @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ) ).

% logic.sat.simps(8)
thf(fact_329_logic_Osat_Osimps_I8_J,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Sigma: a,S: c > d,Delta2: ( c > d ) > set_a,X: c,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ S @ Delta2 @ ( exists_c_a_b_d @ X @ A2 ) )
        = ( ? [V3: d] : ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma @ ( fun_upd_c_d @ S @ X @ V3 ) @ Delta2 @ A2 ) ) ) ) ).

% logic.sat.simps(8)
thf(fact_330_logic_Omono__wild,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ A2 ) ) ) ) ) ).

% logic.mono_wild
thf(fact_331_logic_Omono__star,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.mono_star
thf(fact_332_logic_Osmaller__empty,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( smaller_interp_c_d_a @ empty_interp_c_d_a @ X ) ) ).

% logic.smaller_empty
thf(fact_333_logic_Osmaller__interp__applies__cons,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,Delta: ( c > d ) > set_a,A: a,S: c > d] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( smaller_interp_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 ) @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta ) )
       => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A @ S @ Delta2 @ A2 )
         => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A @ S @ Delta @ A2 ) ) ) ) ).

% logic.smaller_interp_applies_cons
thf(fact_334_logic_Omono__and,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.mono_and
thf(fact_335_logic_Omono__forall,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,V: c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( forall_c_a_b_d @ V @ A2 ) ) ) ) ) ).

% logic.mono_forall
thf(fact_336_logic_Omono__exists,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,V: c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( exists_c_a_b_d @ V @ A2 ) ) ) ) ) ).

% logic.mono_exists
thf(fact_337_logic_Omono__or,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( or_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.mono_or
thf(fact_338_logic_Omono__bounded,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( bounded_a_b_d_c @ A2 ) ) ) ) ) ).

% logic.mono_bounded
thf(fact_339_logic_Omono__sem,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,B2: ( c > d ) > a > $o] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( sem_c_d_a_b @ B2 ) ) ) ) ).

% logic.mono_sem
thf(fact_340_logic_Omono__interp,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ pred_a_b_d_c ) ) ) ).

% logic.mono_interp
thf(fact_341_logic_Onon__inc__star,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.non_inc_star
thf(fact_342_logic_Onon__increasing__and,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.non_increasing_and
thf(fact_343_logic_Omono__instantiate,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,X: a,Delta2: ( c > d ) > set_a,S: c > d,Delta: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( member_a @ X @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ S ) )
         => ( ( smaller_interp_c_d_a @ Delta2 @ Delta )
           => ( member_a @ X @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta @ S ) ) ) ) ) ) ).

% logic.mono_instantiate
thf(fact_344_logic__def,axiom,
    ( logic_a_b
    = ( ^ [Plus: a > a > option_a,Mult2: b > a > a,Smult2: b > b > b,Sadd2: b > b > b,Sinv2: b > b,One2: b,Valid2: a > $o] :
          ( ! [A3: a,B3: a] :
              ( ( Plus @ A3 @ B3 )
              = ( Plus @ B3 @ A3 ) )
          & ! [A3: a,B3: a,Ab2: a,C2: a,Bc2: a] :
              ( ( ( ( Plus @ A3 @ B3 )
                  = ( some_a @ Ab2 ) )
                & ( ( Plus @ B3 @ C2 )
                  = ( some_a @ Bc2 ) ) )
             => ( ( Plus @ Ab2 @ C2 )
                = ( Plus @ A3 @ Bc2 ) ) )
          & ! [A3: a,B3: a,Ab2: a,C2: a] :
              ( ( ( ( Plus @ A3 @ B3 )
                  = ( some_a @ Ab2 ) )
                & ~ ( pre_compatible_a @ Plus @ B3 @ C2 ) )
             => ~ ( pre_compatible_a @ Plus @ Ab2 @ C2 ) )
          & ! [P3: b] :
              ( ( Smult2 @ P3 @ ( Sinv2 @ P3 ) )
              = One2 )
          & ! [P3: b] :
              ( ( Smult2 @ One2 @ P3 )
              = P3 )
          & ! [P3: b,Q3: b] :
              ( ( Sadd2 @ P3 @ Q3 )
              = ( Sadd2 @ Q3 @ P3 ) )
          & ! [P3: b,Q3: b] :
              ( ( Smult2 @ P3 @ Q3 )
              = ( Smult2 @ Q3 @ P3 ) )
          & ! [P3: b,Q3: b,R4: b] :
              ( ( Smult2 @ P3 @ ( Sadd2 @ Q3 @ R4 ) )
              = ( Sadd2 @ ( Smult2 @ P3 @ Q3 ) @ ( Smult2 @ P3 @ R4 ) ) )
          & ! [P3: b,Q3: b,R4: b] :
              ( ( Smult2 @ ( Smult2 @ P3 @ Q3 ) @ R4 )
              = ( Smult2 @ P3 @ ( Smult2 @ Q3 @ R4 ) ) )
          & ! [P3: b,Q3: b,A3: a] :
              ( ( Mult2 @ P3 @ ( Mult2 @ Q3 @ A3 ) )
              = ( Mult2 @ ( Smult2 @ P3 @ Q3 ) @ A3 ) )
          & ! [A3: a,B3: a,C2: a,P3: b] :
              ( ( ( some_a @ A3 )
                = ( Plus @ B3 @ C2 ) )
             => ( ( some_a @ ( Mult2 @ P3 @ A3 ) )
                = ( Plus @ ( Mult2 @ P3 @ B3 ) @ ( Mult2 @ P3 @ C2 ) ) ) )
          & ! [P3: b,Q3: b,X3: a] :
              ( ( some_a @ ( Mult2 @ ( Sadd2 @ P3 @ Q3 ) @ X3 ) )
              = ( Plus @ ( Mult2 @ P3 @ X3 ) @ ( Mult2 @ Q3 @ X3 ) ) )
          & ! [A3: a] :
              ( ( Mult2 @ One2 @ A3 )
              = A3 )
          & ! [A3: a,B3: a] :
              ( ( ( Valid2 @ A3 )
                & ( pre_larger_a @ Plus @ A3 @ B3 ) )
             => ( Valid2 @ B3 ) ) ) ) ) ).

% logic_def
thf(fact_345_logic_Onon__increasing__instantiate,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,X: a,Delta: ( c > d ) > set_a,S: c > d,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( member_a @ X @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta @ S ) )
         => ( ( smaller_interp_c_d_a @ Delta2 @ Delta )
           => ( member_a @ X @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ S ) ) ) ) ) ) ).

% logic.non_increasing_instantiate
thf(fact_346_logic_OintuitionisticI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [A4: a,B4: a] :
            ( ( ( pre_larger_a @ Plus2 @ A4 @ B4 )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ B4 @ S @ Delta2 @ A2 ) )
           => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A4 @ S @ Delta2 @ A2 ) )
       => ( intuit7508411120625971703_b_c_d @ Plus2 @ Mult @ Valid @ S @ Delta2 @ A2 ) ) ) ).

% logic.intuitionisticI
thf(fact_347_logic_Ointuitionistic__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,S: c > d,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( intuit7508411120625971703_b_c_d @ Plus2 @ Mult @ Valid @ S @ Delta2 @ A2 )
        = ( ! [A3: a,B3: a] :
              ( ( ( pre_larger_a @ Plus2 @ A3 @ B3 )
                & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ B3 @ S @ Delta2 @ A2 ) )
             => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A3 @ S @ Delta2 @ A2 ) ) ) ) ) ).

% logic.intuitionistic_def
thf(fact_348_logic_Oindep__implies__non__increasing,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( indep_interp_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
       => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) ) ) ) ).

% logic.indep_implies_non_increasing
thf(fact_349_logic_Ohoare__triple__output,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,C: set_Pr1275464188344874039_a_c_d,P2: assertion_a_b_d_c,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( valid_command_a_c_d @ Valid @ C )
       => ( ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ P2 @ C @ Q2 @ Delta2 )
          = ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ P2 @ C @ ( bounded_a_b_d_c @ Q2 ) @ Delta2 ) ) ) ) ).

% logic.hoare_triple_output
thf(fact_350_fun__upd__def,axiom,
    ( fun_upd_nat_option_a
    = ( ^ [F2: nat > option_a,A3: nat,B3: option_a,X3: nat] : ( if_option_a @ ( X3 = A3 ) @ B3 @ ( F2 @ X3 ) ) ) ) ).

% fun_upd_def
thf(fact_351_fun__upd__def,axiom,
    ( fun_upd_nat_nat
    = ( ^ [F2: nat > nat,A3: nat,B3: nat,X3: nat] : ( if_nat @ ( X3 = A3 ) @ B3 @ ( F2 @ X3 ) ) ) ) ).

% fun_upd_def
thf(fact_352_fun__upd__eqD,axiom,
    ! [F: nat > option_a,X: nat,Y: option_a,G: nat > option_a,Z2: option_a] :
      ( ( ( fun_upd_nat_option_a @ F @ X @ Y )
        = ( fun_upd_nat_option_a @ G @ X @ Z2 ) )
     => ( Y = Z2 ) ) ).

% fun_upd_eqD
thf(fact_353_fun__upd__eqD,axiom,
    ! [F: nat > nat,X: nat,Y: nat,G: nat > nat,Z2: nat] :
      ( ( ( fun_upd_nat_nat @ F @ X @ Y )
        = ( fun_upd_nat_nat @ G @ X @ Z2 ) )
     => ( Y = Z2 ) ) ).

% fun_upd_eqD
thf(fact_354_fun__upd__idem,axiom,
    ! [F: nat > option_a,X: nat,Y: option_a] :
      ( ( ( F @ X )
        = Y )
     => ( ( fun_upd_nat_option_a @ F @ X @ Y )
        = F ) ) ).

% fun_upd_idem
thf(fact_355_fun__upd__idem,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( ( F @ X )
        = Y )
     => ( ( fun_upd_nat_nat @ F @ X @ Y )
        = F ) ) ).

% fun_upd_idem
thf(fact_356_fun__upd__same,axiom,
    ! [F: nat > option_a,X: nat,Y: option_a] :
      ( ( fun_upd_nat_option_a @ F @ X @ Y @ X )
      = Y ) ).

% fun_upd_same
thf(fact_357_fun__upd__same,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( fun_upd_nat_nat @ F @ X @ Y @ X )
      = Y ) ).

% fun_upd_same
thf(fact_358_fun__upd__other,axiom,
    ! [Z2: nat,X: nat,F: nat > option_a,Y: option_a] :
      ( ( Z2 != X )
     => ( ( fun_upd_nat_option_a @ F @ X @ Y @ Z2 )
        = ( F @ Z2 ) ) ) ).

% fun_upd_other
thf(fact_359_fun__upd__other,axiom,
    ! [Z2: nat,X: nat,F: nat > nat,Y: nat] :
      ( ( Z2 != X )
     => ( ( fun_upd_nat_nat @ F @ X @ Y @ Z2 )
        = ( F @ Z2 ) ) ) ).

% fun_upd_other
thf(fact_360_fun__upd__twist,axiom,
    ! [A: nat,C: nat,M: nat > option_a,B: option_a,D: option_a] :
      ( ( A != C )
     => ( ( fun_upd_nat_option_a @ ( fun_upd_nat_option_a @ M @ A @ B ) @ C @ D )
        = ( fun_upd_nat_option_a @ ( fun_upd_nat_option_a @ M @ C @ D ) @ A @ B ) ) ) ).

% fun_upd_twist
thf(fact_361_fun__upd__twist,axiom,
    ! [A: nat,C: nat,M: nat > nat,B: nat,D: nat] :
      ( ( A != C )
     => ( ( fun_upd_nat_nat @ ( fun_upd_nat_nat @ M @ A @ B ) @ C @ D )
        = ( fun_upd_nat_nat @ ( fun_upd_nat_nat @ M @ C @ D ) @ A @ B ) ) ) ).

% fun_upd_twist
thf(fact_362_fun__upd__idem__iff,axiom,
    ! [F: nat > option_a,X: nat,Y: option_a] :
      ( ( ( fun_upd_nat_option_a @ F @ X @ Y )
        = F )
      = ( ( F @ X )
        = Y ) ) ).

% fun_upd_idem_iff
thf(fact_363_fun__upd__idem__iff,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( ( fun_upd_nat_nat @ F @ X @ Y )
        = F )
      = ( ( F @ X )
        = Y ) ) ).

% fun_upd_idem_iff
thf(fact_364_logic_Onot__in__fv__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,S4: set_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( not_in_fv_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ S4 )
        = ( ! [Sigma2: a,S3: c > d,Delta5: ( c > d ) > set_a,S5: c > d] :
              ( ( equal_outside_c_d @ S3 @ S5 @ S4 )
             => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma2 @ S3 @ Delta5 @ A2 )
                = ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma2 @ S5 @ Delta5 @ A2 ) ) ) ) ) ) ).

% logic.not_in_fv_def
thf(fact_365_logic_Onon__increasing__wand,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.non_increasing_wand
thf(fact_366_logic_Omono__wand,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.mono_wand
thf(fact_367_logic_Omono__imp,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 ) )
       => ( ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ B2 ) )
         => ( monotonic_c_d_a @ ( applies_eq_a_b_d_c @ Plus2 @ Mult @ Valid @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ) ) ) ).

% logic.mono_imp
thf(fact_368_combinable__instantiate__one,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,A: a,S: c > d,B: a,X: a,P: b,Q: b] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( ( sat_a_b_c_d @ plus @ mult @ valid @ A @ S @ Delta2 @ A2 )
       => ( ( sat_a_b_c_d @ plus @ mult @ valid @ B @ S @ Delta2 @ A2 )
         => ( ( ( some_a @ X )
              = ( plus @ ( mult @ P @ A ) @ ( mult @ Q @ B ) ) )
           => ( ( ( sadd @ P @ Q )
                = one )
             => ( sat_a_b_c_d @ plus @ mult @ valid @ X @ S @ Delta2 @ A2 ) ) ) ) ) ) ).

% combinable_instantiate_one
thf(fact_369_combinable__def,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
      = ( ! [P3: b,Q3: b] : ( entails_a_b_d_c @ plus @ mult @ valid @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P3 @ A2 ) @ ( mult_b_a_d_c @ Q3 @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ ( sadd @ P3 @ Q3 ) @ A2 ) ) ) ) ).

% combinable_def
thf(fact_370_combinable__instantiate,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,A: a,S: c > d,B: a,X: a,P: b,Q: b] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( ( sat_a_b_c_d @ plus @ mult @ valid @ A @ S @ Delta2 @ A2 )
       => ( ( sat_a_b_c_d @ plus @ mult @ valid @ B @ S @ Delta2 @ A2 )
         => ( ( ( some_a @ X )
              = ( plus @ ( mult @ P @ A ) @ ( mult @ Q @ B ) ) )
           => ( sat_a_b_c_d @ plus @ mult @ valid @ X @ S @ Delta2 @ ( mult_b_a_d_c @ ( sadd @ P @ Q ) @ A2 ) ) ) ) ) ) ).

% combinable_instantiate
thf(fact_371_combinable__exists,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( ( unambiguous_a_b_c_d @ plus @ mult @ valid @ Delta2 @ A2 @ X )
       => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( exists_c_a_b_d @ X @ A2 ) ) ) ) ).

% combinable_exists
thf(fact_372_combinable__imp,axiom,
    ! [A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( pure_a_b_d_c @ plus @ mult @ valid @ A2 )
     => ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ B2 )
       => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% combinable_imp
thf(fact_373_combinableI__old,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ! [A4: a,B4: a,P6: b,Q4: b,X2: a,Sigma4: a,S2: c > d] :
          ( ( ( sat_a_b_c_d @ plus @ mult @ valid @ A4 @ S2 @ Delta2 @ A2 )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ B4 @ S2 @ Delta2 @ A2 )
            & ( ( some_a @ Sigma4 )
              = ( plus @ ( mult @ P6 @ A4 ) @ ( mult @ Q4 @ B4 ) ) )
            & ( Sigma4
              = ( mult @ ( sadd @ P6 @ Q4 ) @ X2 ) ) )
         => ( sat_a_b_c_d @ plus @ mult @ valid @ X2 @ S2 @ Delta2 @ A2 ) )
     => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 ) ) ).

% combinableI_old
thf(fact_374_combinable__mult,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,Pi: b] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( mult_b_a_d_c @ Pi @ A2 ) ) ) ).

% combinable_mult
thf(fact_375_combinable__wildcard,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ) ).

% combinable_wildcard
thf(fact_376_combinable__star,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ B2 )
       => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% combinable_star
thf(fact_377_combinable__forall,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( forall_c_a_b_d @ X @ A2 ) ) ) ).

% combinable_forall
thf(fact_378_combinable__and,axiom,
    ! [Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ A2 )
     => ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ B2 )
       => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% combinable_and
thf(fact_379_combinable__wand,axiom,
    ! [Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c,A2: assertion_a_b_d_c] :
      ( ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ B2 )
     => ( combinable_a_b_c_d @ plus @ mult @ sadd @ valid @ Delta2 @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ).

% combinable_wand
thf(fact_380_logic_Ounambiguous__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( nat > option_a ) > set_a,A2: assert7591039163618688690_a_nat,X: nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( unambi1007057386542835892tion_a @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X )
        = ( ! [Sigma_12: a,Sigma_22: a,V12: option_a,V22: option_a,S3: nat > option_a] :
              ( ( ( pre_compatible_a @ Plus2 @ Sigma_12 @ Sigma_22 )
                & ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma_12 @ ( fun_upd_nat_option_a @ S3 @ X @ V12 ) @ Delta2 @ A2 )
                & ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma_22 @ ( fun_upd_nat_option_a @ S3 @ X @ V22 ) @ Delta2 @ A2 ) )
             => ( V12 = V22 ) ) ) ) ) ).

% logic.unambiguous_def
thf(fact_381_logic_Ounambiguous__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( nat > nat ) > set_a,A2: assert8917056066125641810at_nat,X: nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( unambi8219075153562652768at_nat @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X )
        = ( ! [Sigma_12: a,Sigma_22: a,V12: nat,V22: nat,S3: nat > nat] :
              ( ( ( pre_compatible_a @ Plus2 @ Sigma_12 @ Sigma_22 )
                & ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma_12 @ ( fun_upd_nat_nat @ S3 @ X @ V12 ) @ Delta2 @ A2 )
                & ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma_22 @ ( fun_upd_nat_nat @ S3 @ X @ V22 ) @ Delta2 @ A2 ) )
             => ( V12 = V22 ) ) ) ) ) ).

% logic.unambiguous_def
thf(fact_382_logic_Ounambiguous__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( unambiguous_a_b_c_d @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X )
        = ( ! [Sigma_12: a,Sigma_22: a,V12: d,V22: d,S3: c > d] :
              ( ( ( pre_compatible_a @ Plus2 @ Sigma_12 @ Sigma_22 )
                & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma_12 @ ( fun_upd_c_d @ S3 @ X @ V12 ) @ Delta2 @ A2 )
                & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma_22 @ ( fun_upd_c_d @ S3 @ X @ V22 ) @ Delta2 @ A2 ) )
             => ( V12 = V22 ) ) ) ) ) ).

% logic.unambiguous_def
thf(fact_383_logic_OunambiguousI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: nat,Delta2: ( nat > option_a ) > set_a,A2: assert7591039163618688690_a_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Sigma_1: a,Sigma_2: a,V1: option_a,V2: option_a,S2: nat > option_a] :
            ( ( ( pre_compatible_a @ Plus2 @ Sigma_1 @ Sigma_2 )
              & ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma_1 @ ( fun_upd_nat_option_a @ S2 @ X @ V1 ) @ Delta2 @ A2 )
              & ( sat_a_b_nat_option_a @ Plus2 @ Mult @ Valid @ Sigma_2 @ ( fun_upd_nat_option_a @ S2 @ X @ V2 ) @ Delta2 @ A2 ) )
           => ( V1 = V2 ) )
       => ( unambi1007057386542835892tion_a @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X ) ) ) ).

% logic.unambiguousI
thf(fact_384_logic_OunambiguousI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: nat,Delta2: ( nat > nat ) > set_a,A2: assert8917056066125641810at_nat] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Sigma_1: a,Sigma_2: a,V1: nat,V2: nat,S2: nat > nat] :
            ( ( ( pre_compatible_a @ Plus2 @ Sigma_1 @ Sigma_2 )
              & ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma_1 @ ( fun_upd_nat_nat @ S2 @ X @ V1 ) @ Delta2 @ A2 )
              & ( sat_a_b_nat_nat @ Plus2 @ Mult @ Valid @ Sigma_2 @ ( fun_upd_nat_nat @ S2 @ X @ V2 ) @ Delta2 @ A2 ) )
           => ( V1 = V2 ) )
       => ( unambi8219075153562652768at_nat @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X ) ) ) ).

% logic.unambiguousI
thf(fact_385_logic_OunambiguousI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: c,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Sigma_1: a,Sigma_2: a,V1: d,V2: d,S2: c > d] :
            ( ( ( pre_compatible_a @ Plus2 @ Sigma_1 @ Sigma_2 )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma_1 @ ( fun_upd_c_d @ S2 @ X @ V1 ) @ Delta2 @ A2 )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma_2 @ ( fun_upd_c_d @ S2 @ X @ V2 ) @ Delta2 @ A2 ) )
           => ( V1 = V2 ) )
       => ( unambiguous_a_b_c_d @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X ) ) ) ).

% logic.unambiguousI
thf(fact_386_logic_Ocombinable__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
        = ( ! [P3: b,Q3: b] : ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P3 @ A2 ) @ ( mult_b_a_d_c @ Q3 @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ ( Sadd @ P3 @ Q3 ) @ A2 ) ) ) ) ) ).

% logic.combinable_def
thf(fact_387_logic_Ocombinable__instantiate,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,A: a,S: c > d,B: a,X: a,P: b,Q: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A @ S @ Delta2 @ A2 )
         => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ B @ S @ Delta2 @ A2 )
           => ( ( ( some_a @ X )
                = ( Plus2 @ ( Mult @ P @ A ) @ ( Mult @ Q @ B ) ) )
             => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ X @ S @ Delta2 @ ( mult_b_a_d_c @ ( Sadd @ P @ Q ) @ A2 ) ) ) ) ) ) ) ).

% logic.combinable_instantiate
thf(fact_388_logic_Ocombinable__exists,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( ( unambiguous_a_b_c_d @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X )
         => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( exists_c_a_b_d @ X @ A2 ) ) ) ) ) ).

% logic.combinable_exists
thf(fact_389_logic_OWildPure,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pure_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
       => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ A2 ) @ Delta2 @ A2 ) ) ) ).

% logic.WildPure
thf(fact_390_logic_Ocan__factorize,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Q: b,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ? [R: b] :
          ( Q
          = ( Smult @ R @ P ) ) ) ).

% logic.can_factorize
thf(fact_391_logic_Omult__one__same2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ ( mult_b_a_d_c @ One @ A2 ) ) ) ).

% logic.mult_one_same2
thf(fact_392_logic_Omult__one__same1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ One @ A2 ) @ Delta2 @ A2 ) ) ).

% logic.mult_one_same1
thf(fact_393_logic_Odot__mult2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ ( Smult @ P @ Q ) @ A2 ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( mult_b_a_d_c @ Q @ A2 ) ) ) ) ).

% logic.dot_mult2
thf(fact_394_logic_Odot__mult1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( mult_b_a_d_c @ Q @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ ( Smult @ P @ Q ) @ A2 ) ) ) ).

% logic.dot_mult1
thf(fact_395_logic_ODotPos,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c,Pi: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ B2 )
        = ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ Pi @ A2 ) @ Delta2 @ ( mult_b_a_d_c @ Pi @ B2 ) ) ) ) ).

% logic.DotPos
thf(fact_396_logic_Ocombinable__mult,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,Pi: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( mult_b_a_d_c @ Pi @ A2 ) ) ) ) ).

% logic.combinable_mult
thf(fact_397_logic_OWildPos,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ B2 )
       => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ A2 ) @ Delta2 @ ( wildcard_a_b_d_c @ B2 ) ) ) ) ).

% logic.WildPos
thf(fact_398_logic_ODotFull,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ One @ A2 ) @ Delta2 @ A2 ) ) ).

% logic.DotFull
thf(fact_399_logic_ODotDot,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,Q: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( mult_b_a_d_c @ Q @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ ( Smult @ P @ Q ) @ A2 ) ) ) ).

% logic.DotDot
thf(fact_400_logic_Ocombinable__wildcard,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ) ) ).

% logic.combinable_wildcard
thf(fact_401_logic_Ocombinable__star,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ B2 )
         => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% logic.combinable_star
thf(fact_402_logic_Ocombinable__and,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ B2 )
         => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% logic.combinable_and
thf(fact_403_logic_Ocombinable__forall,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( forall_c_a_b_d @ X @ A2 ) ) ) ) ).

% logic.combinable_forall
thf(fact_404_logic_Ocombinable__wand,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ B2 )
       => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.combinable_wand
thf(fact_405_logic_OWildWild,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) ) @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ) ).

% logic.WildWild
thf(fact_406_logic_Ounambiguous__star,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,X: c,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( unambiguous_a_b_c_d @ Plus2 @ Mult @ Valid @ Delta2 @ A2 @ X )
       => ( unambiguous_a_b_c_d @ Plus2 @ Mult @ Valid @ Delta2 @ ( star_a_b_d_c @ A2 @ B2 ) @ X ) ) ) ).

% logic.unambiguous_star
thf(fact_407_logic_OcombinableI__old,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [A4: a,B4: a,P6: b,Q4: b,X2: a,Sigma4: a,S2: c > d] :
            ( ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A4 @ S2 @ Delta2 @ A2 )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ B4 @ S2 @ Delta2 @ A2 )
              & ( ( some_a @ Sigma4 )
                = ( Plus2 @ ( Mult @ P6 @ A4 ) @ ( Mult @ Q4 @ B4 ) ) )
              & ( Sigma4
                = ( Mult @ ( Sadd @ P6 @ Q4 ) @ X2 ) ) )
           => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ X2 @ S2 @ Delta2 @ A2 ) )
       => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 ) ) ) ).

% logic.combinableI_old
thf(fact_408_logic_Ocombinable__instantiate__one,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,A2: assertion_a_b_d_c,A: a,S: c > d,B: a,X: a,P: b,Q: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ A2 )
       => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ A @ S @ Delta2 @ A2 )
         => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ B @ S @ Delta2 @ A2 )
           => ( ( ( some_a @ X )
                = ( Plus2 @ ( Mult @ P @ A ) @ ( Mult @ Q @ B ) ) )
             => ( ( ( Sadd @ P @ Q )
                  = One )
               => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ X @ S @ Delta2 @ A2 ) ) ) ) ) ) ) ).

% logic.combinable_instantiate_one
thf(fact_409_logic_Odot__star1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( star_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.dot_star1
thf(fact_410_logic_Odot__star2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( star_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.dot_star2
thf(fact_411_logic_Odot__and1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( and_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( and_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.dot_and1
thf(fact_412_logic_Odot__and2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( and_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.dot_and2
thf(fact_413_logic_Odot__forall2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: c,P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( forall_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( forall_c_a_b_d @ X @ A2 ) ) ) ) ).

% logic.dot_forall2
thf(fact_414_logic_Odot__forall1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( forall_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( forall_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ) ).

% logic.dot_forall1
thf(fact_415_logic_Odot__wand2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wand_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( wand_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.dot_wand2
thf(fact_416_logic_Odot__wand1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( wand_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( wand_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.dot_wand1
thf(fact_417_logic_Odot__exists2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: c,P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( exists_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( exists_c_a_b_d @ X @ A2 ) ) ) ) ).

% logic.dot_exists2
thf(fact_418_logic_Odot__exists1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( exists_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( exists_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ) ).

% logic.dot_exists1
thf(fact_419_logic_Odot__imp2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( imp_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( imp_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.dot_imp2
thf(fact_420_logic_Odot__imp1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( imp_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.dot_imp1
thf(fact_421_logic_Odot__or2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( or_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( or_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.dot_or2
thf(fact_422_logic_Odot__or1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( or_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( or_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.dot_or1
thf(fact_423_logic_OWildDot,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) ) @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ) ).

% logic.WildDot
thf(fact_424_logic_ODotWild,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( wildcard_a_b_d_c @ A2 ) ) @ Delta2 @ ( wildcard_a_b_d_c @ A2 ) ) ) ).

% logic.DotWild
thf(fact_425_logic_OWildStar1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ ( star_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( star_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) @ ( wildcard_a_b_d_c @ B2 ) ) ) ) ).

% logic.WildStar1
thf(fact_426_logic_OWildAnd,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ ( and_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( and_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) @ ( wildcard_a_b_d_c @ B2 ) ) ) ) ).

% logic.WildAnd
thf(fact_427_logic_ODotStar,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( star_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( star_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.DotStar
thf(fact_428_logic_OWildForall,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ ( forall_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( forall_c_a_b_d @ X @ ( wildcard_a_b_d_c @ A2 ) ) ) ) ).

% logic.WildForall
thf(fact_429_logic_ODotAnd,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( and_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) @ Delta2 @ ( mult_b_a_d_c @ P @ ( and_a_b_d_c @ A2 @ B2 ) ) ) ) ).

% logic.DotAnd
thf(fact_430_logic_ODotForall,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( forall_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( forall_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ) ).

% logic.DotForall
thf(fact_431_logic_ODotWand,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( wand_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( wand_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.DotWand
thf(fact_432_logic_ODotExists,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( exists_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( exists_c_a_b_d @ X @ ( mult_b_a_d_c @ P @ A2 ) ) ) ) ).

% logic.DotExists
thf(fact_433_logic_ODotImp,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( imp_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( imp_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.DotImp
thf(fact_434_logic_ODotOr,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P: b,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ ( or_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( or_a_b_d_c @ ( mult_b_a_d_c @ P @ A2 ) @ ( mult_b_a_d_c @ P @ B2 ) ) ) ) ).

% logic.DotOr
thf(fact_435_logic_OWildExists,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,X: c,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ ( exists_c_a_b_d @ X @ A2 ) ) @ Delta2 @ ( exists_c_a_b_d @ X @ ( wildcard_a_b_d_c @ A2 ) ) ) ) ).

% logic.WildExists
thf(fact_436_logic_OWildOr,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,B2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( wildcard_a_b_d_c @ ( or_a_b_d_c @ A2 @ B2 ) ) @ Delta2 @ ( or_a_b_d_c @ ( wildcard_a_b_d_c @ A2 ) @ ( wildcard_a_b_d_c @ B2 ) ) ) ) ).

% logic.WildOr
thf(fact_437_logic_Opure__mult2,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,P: b] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pure_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
       => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ Delta2 @ ( mult_b_a_d_c @ P @ A2 ) ) ) ) ).

% logic.pure_mult2
thf(fact_438_logic_Opure__mult1,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,P: b,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pure_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
       => ( entails_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ A2 ) @ Delta2 @ A2 ) ) ) ).

% logic.pure_mult1
thf(fact_439_logic_ODotPure,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,P: b,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pure_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
       => ( equivalent_a_b_d_c @ Plus2 @ Mult @ Valid @ ( mult_b_a_d_c @ P @ A2 ) @ Delta2 @ A2 ) ) ) ).

% logic.DotPure
thf(fact_440_logic_Ocombinable__imp,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a,B2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( pure_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 )
       => ( ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ B2 )
         => ( combinable_a_b_c_d @ Plus2 @ Mult @ Sadd @ Valid @ Delta2 @ ( imp_a_b_d_c @ A2 @ B2 ) ) ) ) ) ).

% logic.combinable_imp
thf(fact_441_subsetI,axiom,
    ! [A2: set_a,B2: set_a] :
      ( ! [X2: a] :
          ( ( member_a @ X2 @ A2 )
         => ( member_a @ X2 @ B2 ) )
     => ( ord_less_eq_set_a @ A2 @ B2 ) ) ).

% subsetI
thf(fact_442_subsetI,axiom,
    ! [A2: set_option_a,B2: set_option_a] :
      ( ! [X2: option_a] :
          ( ( member_option_a @ X2 @ A2 )
         => ( member_option_a @ X2 @ B2 ) )
     => ( ord_le1955136853071979460tion_a @ A2 @ B2 ) ) ).

% subsetI
thf(fact_443_subsetI,axiom,
    ! [A2: set_option_nat,B2: set_option_nat] :
      ( ! [X2: option_nat] :
          ( ( member_option_nat @ X2 @ A2 )
         => ( member_option_nat @ X2 @ B2 ) )
     => ( ord_le6937355464348597430on_nat @ A2 @ B2 ) ) ).

% subsetI
thf(fact_444_subsetI,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_nat @ X2 @ B2 ) )
     => ( ord_less_eq_set_nat @ A2 @ B2 ) ) ).

% subsetI
thf(fact_445_subset__antisym,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( ord_less_eq_set_nat @ B2 @ A2 )
       => ( A2 = B2 ) ) ) ).

% subset_antisym
thf(fact_446_order__refl,axiom,
    ! [X: set_nat] : ( ord_less_eq_set_nat @ X @ X ) ).

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

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

% order_refl
thf(fact_449_dual__order_Orefl,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

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

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

% dual_order.refl
thf(fact_452_map__upd__nonempty,axiom,
    ! [T: nat > option_a,K: nat,X: a] :
      ( ( fun_upd_nat_option_a @ T @ K @ ( some_a @ X ) )
     != ( ^ [X3: nat] : none_a ) ) ).

% map_upd_nonempty
thf(fact_453_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_454_order__antisym__conv,axiom,
    ! [Y: $o > nat,X: $o > nat] :
      ( ( ord_less_eq_o_nat @ Y @ X )
     => ( ( ord_less_eq_o_nat @ X @ Y )
        = ( X = Y ) ) ) ).

% order_antisym_conv
thf(fact_455_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_456_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_457_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_458_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_459_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 )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_460_ord__le__eq__subst,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_461_ord__le__eq__subst,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_462_ord__le__eq__subst,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > nat,C: nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_463_ord__le__eq__subst,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > set_nat,C: set_nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_464_ord__le__eq__subst,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_465_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_466_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_467_ord__eq__le__subst,axiom,
    ! [A: $o > nat,F: nat > $o > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_468_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 )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_469_ord__eq__le__subst,axiom,
    ! [A: set_nat,F: set_nat > set_nat,B: set_nat,C: set_nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_470_ord__eq__le__subst,axiom,
    ! [A: $o > nat,F: set_nat > $o > nat,B: set_nat,C: set_nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_471_ord__eq__le__subst,axiom,
    ! [A: nat,F: ( $o > nat ) > nat,B: $o > nat,C: $o > nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_472_ord__eq__le__subst,axiom,
    ! [A: set_nat,F: ( $o > nat ) > set_nat,B: $o > nat,C: $o > nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_473_ord__eq__le__subst,axiom,
    ! [A: $o > nat,F: ( $o > nat ) > $o > nat,B: $o > nat,C: $o > nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_474_ord__eq__le__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

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

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

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

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

% order_eq_refl
thf(fact_479_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_480_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_481_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 )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_482_order__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_483_order__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_484_order__subst2,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > nat,C: nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_485_order__subst2,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > set_nat,C: set_nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_486_order__subst2,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_eq_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_487_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_488_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 )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_489_order__subst1,axiom,
    ! [A: nat,F: ( $o > nat ) > nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_490_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_491_order__subst1,axiom,
    ! [A: set_nat,F: set_nat > set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_492_order__subst1,axiom,
    ! [A: set_nat,F: ( $o > nat ) > set_nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_493_order__subst1,axiom,
    ! [A: $o > nat,F: nat > $o > nat,B: nat,C: nat] :
      ( ( ord_less_eq_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_494_order__subst1,axiom,
    ! [A: $o > nat,F: set_nat > $o > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_495_order__subst1,axiom,
    ! [A: $o > nat,F: ( $o > nat ) > $o > nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_496_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_497_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z3: set_nat] : ( Y4 = Z3 ) )
    = ( ^ [A3: set_nat,B3: set_nat] :
          ( ( ord_less_eq_set_nat @ A3 @ B3 )
          & ( ord_less_eq_set_nat @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_498_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: $o > nat,Z3: $o > nat] : ( Y4 = Z3 ) )
    = ( ^ [A3: $o > nat,B3: $o > nat] :
          ( ( ord_less_eq_o_nat @ A3 @ B3 )
          & ( ord_less_eq_o_nat @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_499_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z3: nat] : ( Y4 = Z3 ) )
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
          & ( ord_less_eq_nat @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_500_le__fun__def,axiom,
    ( ord_less_eq_o_nat
    = ( ^ [F2: $o > nat,G2: $o > nat] :
        ! [X3: $o] : ( ord_less_eq_nat @ ( F2 @ X3 ) @ ( G2 @ X3 ) ) ) ) ).

% le_fun_def
thf(fact_501_le__funI,axiom,
    ! [F: $o > nat,G: $o > nat] :
      ( ! [X2: $o] : ( ord_less_eq_nat @ ( F @ X2 ) @ ( G @ X2 ) )
     => ( ord_less_eq_o_nat @ F @ G ) ) ).

% le_funI
thf(fact_502_le__funE,axiom,
    ! [F: $o > nat,G: $o > nat,X: $o] :
      ( ( ord_less_eq_o_nat @ F @ G )
     => ( ord_less_eq_nat @ ( F @ X ) @ ( G @ X ) ) ) ).

% le_funE
thf(fact_503_le__funD,axiom,
    ! [F: $o > nat,G: $o > nat,X: $o] :
      ( ( ord_less_eq_o_nat @ F @ G )
     => ( ord_less_eq_nat @ ( F @ X ) @ ( G @ X ) ) ) ).

% le_funD
thf(fact_504_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_505_antisym,axiom,
    ! [A: $o > nat,B: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_eq_o_nat @ B @ A )
       => ( A = B ) ) ) ).

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

% antisym
thf(fact_507_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_508_dual__order_Otrans,axiom,
    ! [B: $o > nat,A: $o > nat,C: $o > nat] :
      ( ( ord_less_eq_o_nat @ B @ A )
     => ( ( ord_less_eq_o_nat @ C @ B )
       => ( ord_less_eq_o_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_509_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_510_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_511_dual__order_Oantisym,axiom,
    ! [B: $o > nat,A: $o > nat] :
      ( ( ord_less_eq_o_nat @ B @ A )
     => ( ( ord_less_eq_o_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_512_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_513_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z3: set_nat] : ( Y4 = Z3 ) )
    = ( ^ [A3: set_nat,B3: set_nat] :
          ( ( ord_less_eq_set_nat @ B3 @ A3 )
          & ( ord_less_eq_set_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_514_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: $o > nat,Z3: $o > nat] : ( Y4 = Z3 ) )
    = ( ^ [A3: $o > nat,B3: $o > nat] :
          ( ( ord_less_eq_o_nat @ B3 @ A3 )
          & ( ord_less_eq_o_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_515_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: nat,Z3: nat] : ( Y4 = Z3 ) )
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ B3 @ A3 )
          & ( ord_less_eq_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_516_linorder__wlog,axiom,
    ! [P2: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B4: nat] :
          ( ( ord_less_eq_nat @ A4 @ B4 )
         => ( P2 @ A4 @ B4 ) )
     => ( ! [A4: nat,B4: nat] :
            ( ( P2 @ B4 @ A4 )
           => ( P2 @ A4 @ B4 ) )
       => ( P2 @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_517_order__trans,axiom,
    ! [X: set_nat,Y: set_nat,Z2: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ Z2 )
       => ( ord_less_eq_set_nat @ X @ Z2 ) ) ) ).

% order_trans
thf(fact_518_order__trans,axiom,
    ! [X: $o > nat,Y: $o > nat,Z2: $o > nat] :
      ( ( ord_less_eq_o_nat @ X @ Y )
     => ( ( ord_less_eq_o_nat @ Y @ Z2 )
       => ( ord_less_eq_o_nat @ X @ Z2 ) ) ) ).

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

% order_trans
thf(fact_520_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_521_order_Otrans,axiom,
    ! [A: $o > nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ord_less_eq_o_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_522_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_523_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_524_order__antisym,axiom,
    ! [X: $o > nat,Y: $o > nat] :
      ( ( ord_less_eq_o_nat @ X @ Y )
     => ( ( ord_less_eq_o_nat @ Y @ X )
       => ( X = Y ) ) ) ).

% order_antisym
thf(fact_525_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_526_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_527_ord__le__eq__trans,axiom,
    ! [A: $o > nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_o_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_528_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_529_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_530_ord__eq__le__trans,axiom,
    ! [A: $o > nat,B: $o > nat,C: $o > nat] :
      ( ( A = B )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ord_less_eq_o_nat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_531_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_532_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z3: set_nat] : ( Y4 = Z3 ) )
    = ( ^ [X3: set_nat,Y2: set_nat] :
          ( ( ord_less_eq_set_nat @ X3 @ Y2 )
          & ( ord_less_eq_set_nat @ Y2 @ X3 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_533_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: $o > nat,Z3: $o > nat] : ( Y4 = Z3 ) )
    = ( ^ [X3: $o > nat,Y2: $o > nat] :
          ( ( ord_less_eq_o_nat @ X3 @ Y2 )
          & ( ord_less_eq_o_nat @ Y2 @ X3 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_534_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z3: nat] : ( Y4 = Z3 ) )
    = ( ^ [X3: nat,Y2: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y2 )
          & ( ord_less_eq_nat @ Y2 @ X3 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_535_le__cases3,axiom,
    ! [X: nat,Y: nat,Z2: nat] :
      ( ( ( ord_less_eq_nat @ X @ Y )
       => ~ ( ord_less_eq_nat @ Y @ Z2 ) )
     => ( ( ( ord_less_eq_nat @ Y @ X )
         => ~ ( ord_less_eq_nat @ X @ Z2 ) )
       => ( ( ( ord_less_eq_nat @ X @ Z2 )
           => ~ ( ord_less_eq_nat @ Z2 @ Y ) )
         => ( ( ( ord_less_eq_nat @ Z2 @ Y )
             => ~ ( ord_less_eq_nat @ Y @ X ) )
           => ( ( ( ord_less_eq_nat @ Y @ Z2 )
               => ~ ( ord_less_eq_nat @ Z2 @ X ) )
             => ~ ( ( ord_less_eq_nat @ Z2 @ X )
                 => ~ ( ord_less_eq_nat @ X @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_536_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_537_Collect__mono__iff,axiom,
    ! [P2: nat > $o,Q2: nat > $o] :
      ( ( ord_less_eq_set_nat @ ( collect_nat @ P2 ) @ ( collect_nat @ Q2 ) )
      = ( ! [X3: nat] :
            ( ( P2 @ X3 )
           => ( Q2 @ X3 ) ) ) ) ).

% Collect_mono_iff
thf(fact_538_set__eq__subset,axiom,
    ( ( ^ [Y4: set_nat,Z3: set_nat] : ( Y4 = Z3 ) )
    = ( ^ [A7: set_nat,B6: set_nat] :
          ( ( ord_less_eq_set_nat @ A7 @ B6 )
          & ( ord_less_eq_set_nat @ B6 @ A7 ) ) ) ) ).

% set_eq_subset
thf(fact_539_subset__trans,axiom,
    ! [A2: set_nat,B2: set_nat,C3: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( ord_less_eq_set_nat @ B2 @ C3 )
       => ( ord_less_eq_set_nat @ A2 @ C3 ) ) ) ).

% subset_trans
thf(fact_540_Collect__mono,axiom,
    ! [P2: nat > $o,Q2: nat > $o] :
      ( ! [X2: nat] :
          ( ( P2 @ X2 )
         => ( Q2 @ X2 ) )
     => ( ord_less_eq_set_nat @ ( collect_nat @ P2 ) @ ( collect_nat @ Q2 ) ) ) ).

% Collect_mono
thf(fact_541_subset__refl,axiom,
    ! [A2: set_nat] : ( ord_less_eq_set_nat @ A2 @ A2 ) ).

% subset_refl
thf(fact_542_subset__iff,axiom,
    ( ord_less_eq_set_a
    = ( ^ [A7: set_a,B6: set_a] :
        ! [T2: a] :
          ( ( member_a @ T2 @ A7 )
         => ( member_a @ T2 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_543_subset__iff,axiom,
    ( ord_le1955136853071979460tion_a
    = ( ^ [A7: set_option_a,B6: set_option_a] :
        ! [T2: option_a] :
          ( ( member_option_a @ T2 @ A7 )
         => ( member_option_a @ T2 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_544_subset__iff,axiom,
    ( ord_le6937355464348597430on_nat
    = ( ^ [A7: set_option_nat,B6: set_option_nat] :
        ! [T2: option_nat] :
          ( ( member_option_nat @ T2 @ A7 )
         => ( member_option_nat @ T2 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_545_subset__iff,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A7: set_nat,B6: set_nat] :
        ! [T2: nat] :
          ( ( member_nat @ T2 @ A7 )
         => ( member_nat @ T2 @ B6 ) ) ) ) ).

% subset_iff
thf(fact_546_equalityD2,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( A2 = B2 )
     => ( ord_less_eq_set_nat @ B2 @ A2 ) ) ).

% equalityD2
thf(fact_547_equalityD1,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( A2 = B2 )
     => ( ord_less_eq_set_nat @ A2 @ B2 ) ) ).

% equalityD1
thf(fact_548_subset__eq,axiom,
    ( ord_less_eq_set_a
    = ( ^ [A7: set_a,B6: set_a] :
        ! [X3: a] :
          ( ( member_a @ X3 @ A7 )
         => ( member_a @ X3 @ B6 ) ) ) ) ).

% subset_eq
thf(fact_549_subset__eq,axiom,
    ( ord_le1955136853071979460tion_a
    = ( ^ [A7: set_option_a,B6: set_option_a] :
        ! [X3: option_a] :
          ( ( member_option_a @ X3 @ A7 )
         => ( member_option_a @ X3 @ B6 ) ) ) ) ).

% subset_eq
thf(fact_550_subset__eq,axiom,
    ( ord_le6937355464348597430on_nat
    = ( ^ [A7: set_option_nat,B6: set_option_nat] :
        ! [X3: option_nat] :
          ( ( member_option_nat @ X3 @ A7 )
         => ( member_option_nat @ X3 @ B6 ) ) ) ) ).

% subset_eq
thf(fact_551_subset__eq,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A7: set_nat,B6: set_nat] :
        ! [X3: nat] :
          ( ( member_nat @ X3 @ A7 )
         => ( member_nat @ X3 @ B6 ) ) ) ) ).

% subset_eq
thf(fact_552_equalityE,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( A2 = B2 )
     => ~ ( ( ord_less_eq_set_nat @ A2 @ B2 )
         => ~ ( ord_less_eq_set_nat @ B2 @ A2 ) ) ) ).

% equalityE
thf(fact_553_subsetD,axiom,
    ! [A2: set_a,B2: set_a,C: a] :
      ( ( ord_less_eq_set_a @ A2 @ B2 )
     => ( ( member_a @ C @ A2 )
       => ( member_a @ C @ B2 ) ) ) ).

% subsetD
thf(fact_554_subsetD,axiom,
    ! [A2: set_option_a,B2: set_option_a,C: option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ B2 )
     => ( ( member_option_a @ C @ A2 )
       => ( member_option_a @ C @ B2 ) ) ) ).

% subsetD
thf(fact_555_subsetD,axiom,
    ! [A2: set_option_nat,B2: set_option_nat,C: option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ B2 )
     => ( ( member_option_nat @ C @ A2 )
       => ( member_option_nat @ C @ B2 ) ) ) ).

% subsetD
thf(fact_556_subsetD,axiom,
    ! [A2: set_nat,B2: set_nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( member_nat @ C @ A2 )
       => ( member_nat @ C @ B2 ) ) ) ).

% subsetD
thf(fact_557_in__mono,axiom,
    ! [A2: set_a,B2: set_a,X: a] :
      ( ( ord_less_eq_set_a @ A2 @ B2 )
     => ( ( member_a @ X @ A2 )
       => ( member_a @ X @ B2 ) ) ) ).

% in_mono
thf(fact_558_in__mono,axiom,
    ! [A2: set_option_a,B2: set_option_a,X: option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ B2 )
     => ( ( member_option_a @ X @ A2 )
       => ( member_option_a @ X @ B2 ) ) ) ).

% in_mono
thf(fact_559_in__mono,axiom,
    ! [A2: set_option_nat,B2: set_option_nat,X: option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ B2 )
     => ( ( member_option_nat @ X @ A2 )
       => ( member_option_nat @ X @ B2 ) ) ) ).

% in_mono
thf(fact_560_in__mono,axiom,
    ! [A2: set_nat,B2: set_nat,X: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( member_nat @ X @ A2 )
       => ( member_nat @ X @ B2 ) ) ) ).

% in_mono
thf(fact_561_map__upd__eqD1,axiom,
    ! [M: nat > option_a,A: nat,X: a,N: nat > option_a,Y: a] :
      ( ( ( fun_upd_nat_option_a @ M @ A @ ( some_a @ X ) )
        = ( fun_upd_nat_option_a @ N @ A @ ( some_a @ Y ) ) )
     => ( X = Y ) ) ).

% map_upd_eqD1
thf(fact_562_map__upd__triv,axiom,
    ! [T: nat > option_a,K: nat,X: a] :
      ( ( ( T @ K )
        = ( some_a @ X ) )
     => ( ( fun_upd_nat_option_a @ T @ K @ ( some_a @ X ) )
        = T ) ) ).

% map_upd_triv
thf(fact_563_map__upd__Some__unfold,axiom,
    ! [M: nat > option_a,A: nat,B: a,X: nat,Y: a] :
      ( ( ( fun_upd_nat_option_a @ M @ A @ ( some_a @ B ) @ X )
        = ( some_a @ Y ) )
      = ( ( ( X = A )
          & ( B = Y ) )
        | ( ( X != A )
          & ( ( M @ X )
            = ( some_a @ Y ) ) ) ) ) ).

% map_upd_Some_unfold
thf(fact_564_not__in__fv__mod,axiom,
    ! [A2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Sigma: a,S: c > d,Sigma6: a,S6: c > d,X: a,Delta2: ( c > d ) > set_a] :
      ( ( not_in_fv_a_b_d_c @ plus @ mult @ valid @ A2 @ ( modified_a_c_d @ C ) )
     => ( ( member1180172933830803072_a_c_d @ ( produc8093790510458973071_a_c_d @ ( product_Pair_a_c_d @ Sigma @ S ) @ ( some_P1084500821511757806_a_c_d @ ( product_Pair_a_c_d @ Sigma6 @ S6 ) ) ) @ C )
       => ( ( sat_a_b_c_d @ plus @ mult @ valid @ X @ S @ Delta2 @ A2 )
          = ( sat_a_b_c_d @ plus @ mult @ valid @ X @ S6 @ Delta2 @ A2 ) ) ) ) ).

% not_in_fv_mod
thf(fact_565_map__le__imp__upd__le,axiom,
    ! [M1: nat > option_a,M2: nat > option_a,X: nat,Y: a] :
      ( ( map_le_nat_a @ M1 @ M2 )
     => ( map_le_nat_a @ ( fun_upd_nat_option_a @ M1 @ X @ none_a ) @ ( fun_upd_nat_option_a @ M2 @ X @ ( some_a @ Y ) ) ) ) ).

% map_le_imp_upd_le
thf(fact_566_subset__empty,axiom,
    ! [A2: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ bot_bot_set_a )
      = ( A2 = bot_bot_set_a ) ) ).

% subset_empty
thf(fact_567_subset__empty,axiom,
    ! [A2: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ bot_bo5009843511495006442on_nat )
      = ( A2 = bot_bo5009843511495006442on_nat ) ) ).

% subset_empty
thf(fact_568_subset__empty,axiom,
    ! [A2: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ bot_bot_set_option_a )
      = ( A2 = bot_bot_set_option_a ) ) ).

% subset_empty
thf(fact_569_subset__empty,axiom,
    ! [A2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ bot_bot_set_nat )
      = ( A2 = bot_bot_set_nat ) ) ).

% subset_empty
thf(fact_570_empty__subsetI,axiom,
    ! [A2: set_a] : ( ord_less_eq_set_a @ bot_bot_set_a @ A2 ) ).

% empty_subsetI
thf(fact_571_empty__subsetI,axiom,
    ! [A2: set_option_nat] : ( ord_le6937355464348597430on_nat @ bot_bo5009843511495006442on_nat @ A2 ) ).

% empty_subsetI
thf(fact_572_empty__subsetI,axiom,
    ! [A2: set_option_a] : ( ord_le1955136853071979460tion_a @ bot_bot_set_option_a @ A2 ) ).

% empty_subsetI
thf(fact_573_empty__subsetI,axiom,
    ! [A2: set_nat] : ( ord_less_eq_set_nat @ bot_bot_set_nat @ A2 ) ).

% empty_subsetI
thf(fact_574_valid__hoare__triple__def,axiom,
    ! [P2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ P2 @ C @ Q2 @ Delta2 )
      = ( ! [Sigma2: a,S3: c > d] :
            ( ( ( valid @ Sigma2 )
              & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma2 @ S3 @ Delta2 @ P2 ) )
           => ( ( safe_a_c_d @ C @ ( product_Pair_a_c_d @ Sigma2 @ S3 ) )
              & ! [Sigma3: a,S5: c > d] :
                  ( ( member1180172933830803072_a_c_d @ ( produc8093790510458973071_a_c_d @ ( product_Pair_a_c_d @ Sigma2 @ S3 ) @ ( some_P1084500821511757806_a_c_d @ ( product_Pair_a_c_d @ Sigma3 @ S5 ) ) ) @ C )
                 => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma3 @ S5 @ Delta2 @ Q2 ) ) ) ) ) ) ).

% valid_hoare_triple_def
thf(fact_575_valid__hoare__tripleI,axiom,
    ! [Delta2: ( c > d ) > set_a,P2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Q2: assertion_a_b_d_c] :
      ( ! [Sigma4: a,S2: c > d] :
          ( ( ( valid @ Sigma4 )
            & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ P2 ) )
         => ( safe_a_c_d @ C @ ( product_Pair_a_c_d @ Sigma4 @ S2 ) ) )
     => ( ! [Sigma4: a,S2: c > d,Sigma5: a,S7: c > d] :
            ( ( ( valid @ Sigma4 )
              & ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma4 @ S2 @ Delta2 @ P2 ) )
           => ( ( member1180172933830803072_a_c_d @ ( produc8093790510458973071_a_c_d @ ( product_Pair_a_c_d @ Sigma4 @ S2 ) @ ( some_P1084500821511757806_a_c_d @ ( product_Pair_a_c_d @ Sigma5 @ S7 ) ) ) @ C )
             => ( sat_a_b_c_d @ plus @ mult @ valid @ Sigma5 @ S7 @ Delta2 @ Q2 ) ) )
       => ( valid_6037315502795721655_b_d_c @ plus @ mult @ valid @ P2 @ C @ Q2 @ Delta2 ) ) ) ).

% valid_hoare_tripleI
thf(fact_576_bot_Oextremum__uniqueI,axiom,
    ! [A: set_a] :
      ( ( ord_less_eq_set_a @ A @ bot_bot_set_a )
     => ( A = bot_bot_set_a ) ) ).

% bot.extremum_uniqueI
thf(fact_577_bot_Oextremum__uniqueI,axiom,
    ! [A: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A @ bot_bo5009843511495006442on_nat )
     => ( A = bot_bo5009843511495006442on_nat ) ) ).

% bot.extremum_uniqueI
thf(fact_578_bot_Oextremum__uniqueI,axiom,
    ! [A: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ A @ bot_bot_set_option_a )
     => ( A = bot_bot_set_option_a ) ) ).

% bot.extremum_uniqueI
thf(fact_579_bot_Oextremum__uniqueI,axiom,
    ! [A: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ bot_bot_o_nat )
     => ( A = bot_bot_o_nat ) ) ).

% bot.extremum_uniqueI
thf(fact_580_bot_Oextremum__uniqueI,axiom,
    ! [A: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ bot_bot_set_nat )
     => ( A = bot_bot_set_nat ) ) ).

% bot.extremum_uniqueI
thf(fact_581_bot_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ bot_bot_nat )
     => ( A = bot_bot_nat ) ) ).

% bot.extremum_uniqueI
thf(fact_582_bot_Oextremum__unique,axiom,
    ! [A: set_a] :
      ( ( ord_less_eq_set_a @ A @ bot_bot_set_a )
      = ( A = bot_bot_set_a ) ) ).

% bot.extremum_unique
thf(fact_583_bot_Oextremum__unique,axiom,
    ! [A: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A @ bot_bo5009843511495006442on_nat )
      = ( A = bot_bo5009843511495006442on_nat ) ) ).

% bot.extremum_unique
thf(fact_584_bot_Oextremum__unique,axiom,
    ! [A: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ A @ bot_bot_set_option_a )
      = ( A = bot_bot_set_option_a ) ) ).

% bot.extremum_unique
thf(fact_585_bot_Oextremum__unique,axiom,
    ! [A: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ bot_bot_o_nat )
      = ( A = bot_bot_o_nat ) ) ).

% bot.extremum_unique
thf(fact_586_bot_Oextremum__unique,axiom,
    ! [A: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ bot_bot_set_nat )
      = ( A = bot_bot_set_nat ) ) ).

% bot.extremum_unique
thf(fact_587_bot_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ bot_bot_nat )
      = ( A = bot_bot_nat ) ) ).

% bot.extremum_unique
thf(fact_588_bot_Oextremum,axiom,
    ! [A: set_a] : ( ord_less_eq_set_a @ bot_bot_set_a @ A ) ).

% bot.extremum
thf(fact_589_bot_Oextremum,axiom,
    ! [A: set_option_nat] : ( ord_le6937355464348597430on_nat @ bot_bo5009843511495006442on_nat @ A ) ).

% bot.extremum
thf(fact_590_bot_Oextremum,axiom,
    ! [A: set_option_a] : ( ord_le1955136853071979460tion_a @ bot_bot_set_option_a @ A ) ).

% bot.extremum
thf(fact_591_bot_Oextremum,axiom,
    ! [A: $o > nat] : ( ord_less_eq_o_nat @ bot_bot_o_nat @ A ) ).

% bot.extremum
thf(fact_592_bot_Oextremum,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ bot_bot_set_nat @ A ) ).

% bot.extremum
thf(fact_593_bot_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ bot_bot_nat @ A ) ).

% bot.extremum
thf(fact_594_logic_Ovalid__hoare__tripleI,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,Delta2: ( c > d ) > set_a,P2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Q2: assertion_a_b_d_c] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ! [Sigma4: a,S2: c > d] :
            ( ( ( Valid @ Sigma4 )
              & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ P2 ) )
           => ( safe_a_c_d @ C @ ( product_Pair_a_c_d @ Sigma4 @ S2 ) ) )
       => ( ! [Sigma4: a,S2: c > d,Sigma5: a,S7: c > d] :
              ( ( ( Valid @ Sigma4 )
                & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma4 @ S2 @ Delta2 @ P2 ) )
             => ( ( member1180172933830803072_a_c_d @ ( produc8093790510458973071_a_c_d @ ( product_Pair_a_c_d @ Sigma4 @ S2 ) @ ( some_P1084500821511757806_a_c_d @ ( product_Pair_a_c_d @ Sigma5 @ S7 ) ) ) @ C )
               => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma5 @ S7 @ Delta2 @ Q2 ) ) )
         => ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ P2 @ C @ Q2 @ Delta2 ) ) ) ) ).

% logic.valid_hoare_tripleI
thf(fact_595_logic_Ovalid__hoare__triple__def,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,P2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Q2: assertion_a_b_d_c,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( valid_6037315502795721655_b_d_c @ Plus2 @ Mult @ Valid @ P2 @ C @ Q2 @ Delta2 )
        = ( ! [Sigma2: a,S3: c > d] :
              ( ( ( Valid @ Sigma2 )
                & ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma2 @ S3 @ Delta2 @ P2 ) )
             => ( ( safe_a_c_d @ C @ ( product_Pair_a_c_d @ Sigma2 @ S3 ) )
                & ! [Sigma3: a,S5: c > d] :
                    ( ( member1180172933830803072_a_c_d @ ( produc8093790510458973071_a_c_d @ ( product_Pair_a_c_d @ Sigma2 @ S3 ) @ ( some_P1084500821511757806_a_c_d @ ( product_Pair_a_c_d @ Sigma3 @ S5 ) ) ) @ C )
                   => ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ Sigma3 @ S5 @ Delta2 @ Q2 ) ) ) ) ) ) ) ).

% logic.valid_hoare_triple_def
thf(fact_596_logic_Onot__in__fv__mod,axiom,
    ! [Plus2: a > a > option_a,Mult: b > a > a,Smult: b > b > b,Sadd: b > b > b,Sinv: b > b,One: b,Valid: a > $o,A2: assertion_a_b_d_c,C: set_Pr1275464188344874039_a_c_d,Sigma: a,S: c > d,Sigma6: a,S6: c > d,X: a,Delta2: ( c > d ) > set_a] :
      ( ( logic_a_b @ Plus2 @ Mult @ Smult @ Sadd @ Sinv @ One @ Valid )
     => ( ( not_in_fv_a_b_d_c @ Plus2 @ Mult @ Valid @ A2 @ ( modified_a_c_d @ C ) )
       => ( ( member1180172933830803072_a_c_d @ ( produc8093790510458973071_a_c_d @ ( product_Pair_a_c_d @ Sigma @ S ) @ ( some_P1084500821511757806_a_c_d @ ( product_Pair_a_c_d @ Sigma6 @ S6 ) ) ) @ C )
         => ( ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ X @ S @ Delta2 @ A2 )
            = ( sat_a_b_c_d @ Plus2 @ Mult @ Valid @ X @ S6 @ Delta2 @ A2 ) ) ) ) ) ).

% logic.not_in_fv_mod
thf(fact_597_upd__None__map__le,axiom,
    ! [F: nat > option_a,X: nat] : ( map_le_nat_a @ ( fun_upd_nat_option_a @ F @ X @ none_a ) @ F ) ).

% upd_None_map_le
thf(fact_598_subset__emptyI,axiom,
    ! [A2: set_a] :
      ( ! [X2: a] :
          ~ ( member_a @ X2 @ A2 )
     => ( ord_less_eq_set_a @ A2 @ bot_bot_set_a ) ) ).

% subset_emptyI
thf(fact_599_subset__emptyI,axiom,
    ! [A2: set_option_nat] :
      ( ! [X2: option_nat] :
          ~ ( member_option_nat @ X2 @ A2 )
     => ( ord_le6937355464348597430on_nat @ A2 @ bot_bo5009843511495006442on_nat ) ) ).

% subset_emptyI
thf(fact_600_subset__emptyI,axiom,
    ! [A2: set_option_a] :
      ( ! [X2: option_a] :
          ~ ( member_option_a @ X2 @ A2 )
     => ( ord_le1955136853071979460tion_a @ A2 @ bot_bot_set_option_a ) ) ).

% subset_emptyI
thf(fact_601_subset__emptyI,axiom,
    ! [A2: set_nat] :
      ( ! [X2: nat] :
          ~ ( member_nat @ X2 @ A2 )
     => ( ord_less_eq_set_nat @ A2 @ bot_bot_set_nat ) ) ).

% subset_emptyI
thf(fact_602_GreatestI2__order,axiom,
    ! [P2: set_nat > $o,X: set_nat,Q2: set_nat > $o] :
      ( ( P2 @ X )
     => ( ! [Y3: set_nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_set_nat @ Y3 @ X ) )
       => ( ! [X2: set_nat] :
              ( ( P2 @ X2 )
             => ( ! [Y5: set_nat] :
                    ( ( P2 @ Y5 )
                   => ( ord_less_eq_set_nat @ Y5 @ X2 ) )
               => ( Q2 @ X2 ) ) )
         => ( Q2 @ ( order_5724808138429204845et_nat @ P2 ) ) ) ) ) ).

% GreatestI2_order
thf(fact_603_GreatestI2__order,axiom,
    ! [P2: ( $o > nat ) > $o,X: $o > nat,Q2: ( $o > nat ) > $o] :
      ( ( P2 @ X )
     => ( ! [Y3: $o > nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_o_nat @ Y3 @ X ) )
       => ( ! [X2: $o > nat] :
              ( ( P2 @ X2 )
             => ( ! [Y5: $o > nat] :
                    ( ( P2 @ Y5 )
                   => ( ord_less_eq_o_nat @ Y5 @ X2 ) )
               => ( Q2 @ X2 ) ) )
         => ( Q2 @ ( order_Greatest_o_nat @ P2 ) ) ) ) ) ).

% GreatestI2_order
thf(fact_604_GreatestI2__order,axiom,
    ! [P2: nat > $o,X: nat,Q2: nat > $o] :
      ( ( P2 @ X )
     => ( ! [Y3: nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ X ) )
       => ( ! [X2: nat] :
              ( ( P2 @ X2 )
             => ( ! [Y5: nat] :
                    ( ( P2 @ Y5 )
                   => ( ord_less_eq_nat @ Y5 @ X2 ) )
               => ( Q2 @ X2 ) ) )
         => ( Q2 @ ( order_Greatest_nat @ P2 ) ) ) ) ) ).

% GreatestI2_order
thf(fact_605_Greatest__equality,axiom,
    ! [P2: set_nat > $o,X: set_nat] :
      ( ( P2 @ X )
     => ( ! [Y3: set_nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_set_nat @ Y3 @ X ) )
       => ( ( order_5724808138429204845et_nat @ P2 )
          = X ) ) ) ).

% Greatest_equality
thf(fact_606_Greatest__equality,axiom,
    ! [P2: ( $o > nat ) > $o,X: $o > nat] :
      ( ( P2 @ X )
     => ( ! [Y3: $o > nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_o_nat @ Y3 @ X ) )
       => ( ( order_Greatest_o_nat @ P2 )
          = X ) ) ) ).

% Greatest_equality
thf(fact_607_Greatest__equality,axiom,
    ! [P2: nat > $o,X: nat] :
      ( ( P2 @ X )
     => ( ! [Y3: nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ X ) )
       => ( ( order_Greatest_nat @ P2 )
          = X ) ) ) ).

% Greatest_equality
thf(fact_608_set__empty__eq,axiom,
    ! [Xo: option_option_nat] :
      ( ( ( set_op3360498428384587026on_nat @ Xo )
        = bot_bo5009843511495006442on_nat )
      = ( Xo = none_option_nat ) ) ).

% set_empty_eq
thf(fact_609_set__empty__eq,axiom,
    ! [Xo: option_option_a] :
      ( ( ( set_option_option_a2 @ Xo )
        = bot_bot_set_option_a )
      = ( Xo = none_option_a ) ) ).

% set_empty_eq
thf(fact_610_set__empty__eq,axiom,
    ! [Xo: option_a] :
      ( ( ( set_option_a2 @ Xo )
        = bot_bot_set_a )
      = ( Xo = none_a ) ) ).

% set_empty_eq
thf(fact_611_set__empty__eq,axiom,
    ! [Xo: option_nat] :
      ( ( ( set_option_nat2 @ Xo )
        = bot_bot_set_nat )
      = ( Xo = none_nat ) ) ).

% set_empty_eq
thf(fact_612_restrict__map__to__empty,axiom,
    ! [M: nat > option_nat] :
      ( ( restrict_map_nat_nat @ M @ bot_bot_set_nat )
      = ( ^ [X3: nat] : none_nat ) ) ).

% restrict_map_to_empty
thf(fact_613_restrict__map__to__empty,axiom,
    ! [M: a > option_a] :
      ( ( restrict_map_a_a @ M @ bot_bot_set_a )
      = ( ^ [X3: a] : none_a ) ) ).

% restrict_map_to_empty
thf(fact_614_restrict__map__to__empty,axiom,
    ! [M: a > option_nat] :
      ( ( restrict_map_a_nat @ M @ bot_bot_set_a )
      = ( ^ [X3: a] : none_nat ) ) ).

% restrict_map_to_empty
thf(fact_615_restrict__map__to__empty,axiom,
    ! [M: option_nat > option_a] :
      ( ( restri5828758267375362220_nat_a @ M @ bot_bo5009843511495006442on_nat )
      = ( ^ [X3: option_nat] : none_a ) ) ).

% restrict_map_to_empty
thf(fact_616_restrict__map__to__empty,axiom,
    ! [M: option_nat > option_nat] :
      ( ( restri4097862903755581090at_nat @ M @ bot_bo5009843511495006442on_nat )
      = ( ^ [X3: option_nat] : none_nat ) ) ).

% restrict_map_to_empty
thf(fact_617_restrict__map__to__empty,axiom,
    ! [M: option_a > option_a] :
      ( ( restri3984065703976872170on_a_a @ M @ bot_bot_set_option_a )
      = ( ^ [X3: option_a] : none_a ) ) ).

% restrict_map_to_empty
thf(fact_618_restrict__map__to__empty,axiom,
    ! [M: option_a > option_nat] :
      ( ( restri8223220002595875556_a_nat @ M @ bot_bot_set_option_a )
      = ( ^ [X3: option_a] : none_nat ) ) ).

% restrict_map_to_empty
thf(fact_619_restrict__map__to__empty,axiom,
    ! [M: nat > option_a] :
      ( ( restrict_map_nat_a @ M @ bot_bot_set_nat )
      = ( ^ [X3: nat] : none_a ) ) ).

% restrict_map_to_empty
thf(fact_620_elem__set,axiom,
    ! [X: option_a,Xo: option_option_a] :
      ( ( member_option_a @ X @ ( set_option_option_a2 @ Xo ) )
      = ( Xo
        = ( some_option_a @ X ) ) ) ).

% elem_set
thf(fact_621_elem__set,axiom,
    ! [X: option_nat,Xo: option_option_nat] :
      ( ( member_option_nat @ X @ ( set_op3360498428384587026on_nat @ Xo ) )
      = ( Xo
        = ( some_option_nat @ X ) ) ) ).

% elem_set
thf(fact_622_elem__set,axiom,
    ! [X: nat,Xo: option_nat] :
      ( ( member_nat @ X @ ( set_option_nat2 @ Xo ) )
      = ( Xo
        = ( some_nat @ X ) ) ) ).

% elem_set
thf(fact_623_elem__set,axiom,
    ! [X: a,Xo: option_a] :
      ( ( member_a @ X @ ( set_option_a2 @ Xo ) )
      = ( Xo
        = ( some_a @ X ) ) ) ).

% elem_set
thf(fact_624_restrict__out,axiom,
    ! [X: a,A2: set_a,M: a > option_a] :
      ( ~ ( member_a @ X @ A2 )
     => ( ( restrict_map_a_a @ M @ A2 @ X )
        = none_a ) ) ).

% restrict_out
thf(fact_625_restrict__out,axiom,
    ! [X: option_a,A2: set_option_a,M: option_a > option_a] :
      ( ~ ( member_option_a @ X @ A2 )
     => ( ( restri3984065703976872170on_a_a @ M @ A2 @ X )
        = none_a ) ) ).

% restrict_out
thf(fact_626_restrict__out,axiom,
    ! [X: option_nat,A2: set_option_nat,M: option_nat > option_a] :
      ( ~ ( member_option_nat @ X @ A2 )
     => ( ( restri5828758267375362220_nat_a @ M @ A2 @ X )
        = none_a ) ) ).

% restrict_out
thf(fact_627_restrict__out,axiom,
    ! [X: nat,A2: set_nat,M: nat > option_a] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ( restrict_map_nat_a @ M @ A2 @ X )
        = none_a ) ) ).

% restrict_out
thf(fact_628_restrict__out,axiom,
    ! [X: a,A2: set_a,M: a > option_nat] :
      ( ~ ( member_a @ X @ A2 )
     => ( ( restrict_map_a_nat @ M @ A2 @ X )
        = none_nat ) ) ).

% restrict_out
thf(fact_629_restrict__out,axiom,
    ! [X: nat,A2: set_nat,M: nat > option_nat] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ( restrict_map_nat_nat @ M @ A2 @ X )
        = none_nat ) ) ).

% restrict_out
thf(fact_630_restrict__out,axiom,
    ! [X: option_a,A2: set_option_a,M: option_a > option_nat] :
      ( ~ ( member_option_a @ X @ A2 )
     => ( ( restri8223220002595875556_a_nat @ M @ A2 @ X )
        = none_nat ) ) ).

% restrict_out
thf(fact_631_restrict__out,axiom,
    ! [X: option_nat,A2: set_option_nat,M: option_nat > option_nat] :
      ( ~ ( member_option_nat @ X @ A2 )
     => ( ( restri4097862903755581090at_nat @ M @ A2 @ X )
        = none_nat ) ) ).

% restrict_out
thf(fact_632_restrict__map__def,axiom,
    ( restrict_map_a_a
    = ( ^ [M3: a > option_a,A7: set_a,X3: a] : ( if_option_a @ ( member_a @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_a ) ) ) ).

% restrict_map_def
thf(fact_633_restrict__map__def,axiom,
    ( restri3984065703976872170on_a_a
    = ( ^ [M3: option_a > option_a,A7: set_option_a,X3: option_a] : ( if_option_a @ ( member_option_a @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_a ) ) ) ).

% restrict_map_def
thf(fact_634_restrict__map__def,axiom,
    ( restri5828758267375362220_nat_a
    = ( ^ [M3: option_nat > option_a,A7: set_option_nat,X3: option_nat] : ( if_option_a @ ( member_option_nat @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_a ) ) ) ).

% restrict_map_def
thf(fact_635_restrict__map__def,axiom,
    ( restrict_map_nat_a
    = ( ^ [M3: nat > option_a,A7: set_nat,X3: nat] : ( if_option_a @ ( member_nat @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_a ) ) ) ).

% restrict_map_def
thf(fact_636_restrict__map__def,axiom,
    ( restrict_map_a_nat
    = ( ^ [M3: a > option_nat,A7: set_a,X3: a] : ( if_option_nat @ ( member_a @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_nat ) ) ) ).

% restrict_map_def
thf(fact_637_restrict__map__def,axiom,
    ( restrict_map_nat_nat
    = ( ^ [M3: nat > option_nat,A7: set_nat,X3: nat] : ( if_option_nat @ ( member_nat @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_nat ) ) ) ).

% restrict_map_def
thf(fact_638_restrict__map__def,axiom,
    ( restri8223220002595875556_a_nat
    = ( ^ [M3: option_a > option_nat,A7: set_option_a,X3: option_a] : ( if_option_nat @ ( member_option_a @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_nat ) ) ) ).

% restrict_map_def
thf(fact_639_restrict__map__def,axiom,
    ( restri4097862903755581090at_nat
    = ( ^ [M3: option_nat > option_nat,A7: set_option_nat,X3: option_nat] : ( if_option_nat @ ( member_option_nat @ X3 @ A7 ) @ ( M3 @ X3 ) @ none_nat ) ) ) ).

% restrict_map_def
thf(fact_640_option_Oset__cases,axiom,
    ! [E: option_a,A: option_option_a] :
      ( ( member_option_a @ E @ ( set_option_option_a2 @ A ) )
     => ( A
        = ( some_option_a @ E ) ) ) ).

% option.set_cases
thf(fact_641_option_Oset__cases,axiom,
    ! [E: option_nat,A: option_option_nat] :
      ( ( member_option_nat @ E @ ( set_op3360498428384587026on_nat @ A ) )
     => ( A
        = ( some_option_nat @ E ) ) ) ).

% option.set_cases
thf(fact_642_option_Oset__cases,axiom,
    ! [E: nat,A: option_nat] :
      ( ( member_nat @ E @ ( set_option_nat2 @ A ) )
     => ( A
        = ( some_nat @ E ) ) ) ).

% option.set_cases
thf(fact_643_option_Oset__cases,axiom,
    ! [E: a,A: option_a] :
      ( ( member_a @ E @ ( set_option_a2 @ A ) )
     => ( A
        = ( some_a @ E ) ) ) ).

% option.set_cases
thf(fact_644_option_Oset__intros,axiom,
    ! [X23: option_a] : ( member_option_a @ X23 @ ( set_option_option_a2 @ ( some_option_a @ X23 ) ) ) ).

% option.set_intros
thf(fact_645_option_Oset__intros,axiom,
    ! [X23: option_nat] : ( member_option_nat @ X23 @ ( set_op3360498428384587026on_nat @ ( some_option_nat @ X23 ) ) ) ).

% option.set_intros
thf(fact_646_option_Oset__intros,axiom,
    ! [X23: nat] : ( member_nat @ X23 @ ( set_option_nat2 @ ( some_nat @ X23 ) ) ) ).

% option.set_intros
thf(fact_647_option_Oset__intros,axiom,
    ! [X23: a] : ( member_a @ X23 @ ( set_option_a2 @ ( some_a @ X23 ) ) ) ).

% option.set_intros
thf(fact_648_ospec,axiom,
    ! [A2: option_nat,P2: nat > $o,X: nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ ( set_option_nat2 @ A2 ) )
         => ( P2 @ X2 ) )
     => ( ( A2
          = ( some_nat @ X ) )
       => ( P2 @ X ) ) ) ).

% ospec
thf(fact_649_ospec,axiom,
    ! [A2: option_a,P2: a > $o,X: a] :
      ( ! [X2: a] :
          ( ( member_a @ X2 @ ( set_option_a2 @ A2 ) )
         => ( P2 @ X2 ) )
     => ( ( A2
          = ( some_a @ X ) )
       => ( P2 @ X ) ) ) ).

% ospec
thf(fact_650_option_Osimps_I14_J,axiom,
    ( ( set_op3360498428384587026on_nat @ none_option_nat )
    = bot_bo5009843511495006442on_nat ) ).

% option.simps(14)
thf(fact_651_option_Osimps_I14_J,axiom,
    ( ( set_option_option_a2 @ none_option_a )
    = bot_bot_set_option_a ) ).

% option.simps(14)
thf(fact_652_option_Osimps_I14_J,axiom,
    ( ( set_option_a2 @ none_a )
    = bot_bot_set_a ) ).

% option.simps(14)
thf(fact_653_option_Osimps_I14_J,axiom,
    ( ( set_option_nat2 @ none_nat )
    = bot_bot_set_nat ) ).

% option.simps(14)
thf(fact_654_graph__restrictD_I2_J,axiom,
    ! [K: nat,V: a,M: nat > option_a,A2: set_nat] :
      ( ( member8962352052110095674_nat_a @ ( product_Pair_nat_a @ K @ V ) @ ( graph_nat_a @ ( restrict_map_nat_a @ M @ A2 ) ) )
     => ( ( M @ K )
        = ( some_a @ V ) ) ) ).

% graph_restrictD(2)
thf(fact_655_option_Osimps_I15_J,axiom,
    ! [X23: option_nat] :
      ( ( set_op3360498428384587026on_nat @ ( some_option_nat @ X23 ) )
      = ( insert_option_nat @ X23 @ bot_bo5009843511495006442on_nat ) ) ).

% option.simps(15)
thf(fact_656_option_Osimps_I15_J,axiom,
    ! [X23: option_a] :
      ( ( set_option_option_a2 @ ( some_option_a @ X23 ) )
      = ( insert_option_a @ X23 @ bot_bot_set_option_a ) ) ).

% option.simps(15)
thf(fact_657_option_Osimps_I15_J,axiom,
    ! [X23: a] :
      ( ( set_option_a2 @ ( some_a @ X23 ) )
      = ( insert_a @ X23 @ bot_bot_set_a ) ) ).

% option.simps(15)
thf(fact_658_option_Osimps_I15_J,axiom,
    ! [X23: nat] :
      ( ( set_option_nat2 @ ( some_nat @ X23 ) )
      = ( insert_nat @ X23 @ bot_bot_set_nat ) ) ).

% option.simps(15)
thf(fact_659_verit__comp__simplify1_I2_J,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

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

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

% verit_comp_simplify1(2)
thf(fact_662_insert__subset,axiom,
    ! [X: a,A2: set_a,B2: set_a] :
      ( ( ord_less_eq_set_a @ ( insert_a @ X @ A2 ) @ B2 )
      = ( ( member_a @ X @ B2 )
        & ( ord_less_eq_set_a @ A2 @ B2 ) ) ) ).

% insert_subset
thf(fact_663_insert__subset,axiom,
    ! [X: option_a,A2: set_option_a,B2: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ ( insert_option_a @ X @ A2 ) @ B2 )
      = ( ( member_option_a @ X @ B2 )
        & ( ord_le1955136853071979460tion_a @ A2 @ B2 ) ) ) ).

% insert_subset
thf(fact_664_insert__subset,axiom,
    ! [X: option_nat,A2: set_option_nat,B2: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ ( insert_option_nat @ X @ A2 ) @ B2 )
      = ( ( member_option_nat @ X @ B2 )
        & ( ord_le6937355464348597430on_nat @ A2 @ B2 ) ) ) ).

% insert_subset
thf(fact_665_insert__subset,axiom,
    ! [X: nat,A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ ( insert_nat @ X @ A2 ) @ B2 )
      = ( ( member_nat @ X @ B2 )
        & ( ord_less_eq_set_nat @ A2 @ B2 ) ) ) ).

% insert_subset
thf(fact_666_singleton__insert__inj__eq,axiom,
    ! [B: a,A: a,A2: set_a] :
      ( ( ( insert_a @ B @ bot_bot_set_a )
        = ( insert_a @ A @ A2 ) )
      = ( ( A = B )
        & ( ord_less_eq_set_a @ A2 @ ( insert_a @ B @ bot_bot_set_a ) ) ) ) ).

% singleton_insert_inj_eq
thf(fact_667_singleton__insert__inj__eq,axiom,
    ! [B: option_nat,A: option_nat,A2: set_option_nat] :
      ( ( ( insert_option_nat @ B @ bot_bo5009843511495006442on_nat )
        = ( insert_option_nat @ A @ A2 ) )
      = ( ( A = B )
        & ( ord_le6937355464348597430on_nat @ A2 @ ( insert_option_nat @ B @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% singleton_insert_inj_eq
thf(fact_668_singleton__insert__inj__eq,axiom,
    ! [B: option_a,A: option_a,A2: set_option_a] :
      ( ( ( insert_option_a @ B @ bot_bot_set_option_a )
        = ( insert_option_a @ A @ A2 ) )
      = ( ( A = B )
        & ( ord_le1955136853071979460tion_a @ A2 @ ( insert_option_a @ B @ bot_bot_set_option_a ) ) ) ) ).

% singleton_insert_inj_eq
thf(fact_669_singleton__insert__inj__eq,axiom,
    ! [B: nat,A: nat,A2: set_nat] :
      ( ( ( insert_nat @ B @ bot_bot_set_nat )
        = ( insert_nat @ A @ A2 ) )
      = ( ( A = B )
        & ( ord_less_eq_set_nat @ A2 @ ( insert_nat @ B @ bot_bot_set_nat ) ) ) ) ).

% singleton_insert_inj_eq
thf(fact_670_singleton__insert__inj__eq_H,axiom,
    ! [A: a,A2: set_a,B: a] :
      ( ( ( insert_a @ A @ A2 )
        = ( insert_a @ B @ bot_bot_set_a ) )
      = ( ( A = B )
        & ( ord_less_eq_set_a @ A2 @ ( insert_a @ B @ bot_bot_set_a ) ) ) ) ).

% singleton_insert_inj_eq'
thf(fact_671_singleton__insert__inj__eq_H,axiom,
    ! [A: option_nat,A2: set_option_nat,B: option_nat] :
      ( ( ( insert_option_nat @ A @ A2 )
        = ( insert_option_nat @ B @ bot_bo5009843511495006442on_nat ) )
      = ( ( A = B )
        & ( ord_le6937355464348597430on_nat @ A2 @ ( insert_option_nat @ B @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% singleton_insert_inj_eq'
thf(fact_672_singleton__insert__inj__eq_H,axiom,
    ! [A: option_a,A2: set_option_a,B: option_a] :
      ( ( ( insert_option_a @ A @ A2 )
        = ( insert_option_a @ B @ bot_bot_set_option_a ) )
      = ( ( A = B )
        & ( ord_le1955136853071979460tion_a @ A2 @ ( insert_option_a @ B @ bot_bot_set_option_a ) ) ) ) ).

% singleton_insert_inj_eq'
thf(fact_673_singleton__insert__inj__eq_H,axiom,
    ! [A: nat,A2: set_nat,B: nat] :
      ( ( ( insert_nat @ A @ A2 )
        = ( insert_nat @ B @ bot_bot_set_nat ) )
      = ( ( A = B )
        & ( ord_less_eq_set_nat @ A2 @ ( insert_nat @ B @ bot_bot_set_nat ) ) ) ) ).

% singleton_insert_inj_eq'
thf(fact_674_graph__map__upd,axiom,
    ! [M: nat > option_a,K: nat,V: a] :
      ( ( graph_nat_a @ ( fun_upd_nat_option_a @ M @ K @ ( some_a @ V ) ) )
      = ( insert2069394850462650835_nat_a @ ( product_Pair_nat_a @ K @ V ) @ ( graph_nat_a @ ( fun_upd_nat_option_a @ M @ K @ none_a ) ) ) ) ).

% graph_map_upd
thf(fact_675_insert__subsetI,axiom,
    ! [X: a,A2: set_a,X6: set_a] :
      ( ( member_a @ X @ A2 )
     => ( ( ord_less_eq_set_a @ X6 @ A2 )
       => ( ord_less_eq_set_a @ ( insert_a @ X @ X6 ) @ A2 ) ) ) ).

% insert_subsetI
thf(fact_676_insert__subsetI,axiom,
    ! [X: option_a,A2: set_option_a,X6: set_option_a] :
      ( ( member_option_a @ X @ A2 )
     => ( ( ord_le1955136853071979460tion_a @ X6 @ A2 )
       => ( ord_le1955136853071979460tion_a @ ( insert_option_a @ X @ X6 ) @ A2 ) ) ) ).

% insert_subsetI
thf(fact_677_insert__subsetI,axiom,
    ! [X: option_nat,A2: set_option_nat,X6: set_option_nat] :
      ( ( member_option_nat @ X @ A2 )
     => ( ( ord_le6937355464348597430on_nat @ X6 @ A2 )
       => ( ord_le6937355464348597430on_nat @ ( insert_option_nat @ X @ X6 ) @ A2 ) ) ) ).

% insert_subsetI
thf(fact_678_insert__subsetI,axiom,
    ! [X: nat,A2: set_nat,X6: set_nat] :
      ( ( member_nat @ X @ A2 )
     => ( ( ord_less_eq_set_nat @ X6 @ A2 )
       => ( ord_less_eq_set_nat @ ( insert_nat @ X @ X6 ) @ A2 ) ) ) ).

% insert_subsetI
thf(fact_679_insert__mono,axiom,
    ! [C3: set_a,D2: set_a,A: a] :
      ( ( ord_less_eq_set_a @ C3 @ D2 )
     => ( ord_less_eq_set_a @ ( insert_a @ A @ C3 ) @ ( insert_a @ A @ D2 ) ) ) ).

% insert_mono
thf(fact_680_insert__mono,axiom,
    ! [C3: set_option_a,D2: set_option_a,A: option_a] :
      ( ( ord_le1955136853071979460tion_a @ C3 @ D2 )
     => ( ord_le1955136853071979460tion_a @ ( insert_option_a @ A @ C3 ) @ ( insert_option_a @ A @ D2 ) ) ) ).

% insert_mono
thf(fact_681_insert__mono,axiom,
    ! [C3: set_option_nat,D2: set_option_nat,A: option_nat] :
      ( ( ord_le6937355464348597430on_nat @ C3 @ D2 )
     => ( ord_le6937355464348597430on_nat @ ( insert_option_nat @ A @ C3 ) @ ( insert_option_nat @ A @ D2 ) ) ) ).

% insert_mono
thf(fact_682_insert__mono,axiom,
    ! [C3: set_nat,D2: set_nat,A: nat] :
      ( ( ord_less_eq_set_nat @ C3 @ D2 )
     => ( ord_less_eq_set_nat @ ( insert_nat @ A @ C3 ) @ ( insert_nat @ A @ D2 ) ) ) ).

% insert_mono
thf(fact_683_subset__insert,axiom,
    ! [X: a,A2: set_a,B2: set_a] :
      ( ~ ( member_a @ X @ A2 )
     => ( ( ord_less_eq_set_a @ A2 @ ( insert_a @ X @ B2 ) )
        = ( ord_less_eq_set_a @ A2 @ B2 ) ) ) ).

% subset_insert
thf(fact_684_subset__insert,axiom,
    ! [X: option_a,A2: set_option_a,B2: set_option_a] :
      ( ~ ( member_option_a @ X @ A2 )
     => ( ( ord_le1955136853071979460tion_a @ A2 @ ( insert_option_a @ X @ B2 ) )
        = ( ord_le1955136853071979460tion_a @ A2 @ B2 ) ) ) ).

% subset_insert
thf(fact_685_subset__insert,axiom,
    ! [X: option_nat,A2: set_option_nat,B2: set_option_nat] :
      ( ~ ( member_option_nat @ X @ A2 )
     => ( ( ord_le6937355464348597430on_nat @ A2 @ ( insert_option_nat @ X @ B2 ) )
        = ( ord_le6937355464348597430on_nat @ A2 @ B2 ) ) ) ).

% subset_insert
thf(fact_686_subset__insert,axiom,
    ! [X: nat,A2: set_nat,B2: set_nat] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ( ord_less_eq_set_nat @ A2 @ ( insert_nat @ X @ B2 ) )
        = ( ord_less_eq_set_nat @ A2 @ B2 ) ) ) ).

% subset_insert
thf(fact_687_subset__insertI,axiom,
    ! [B2: set_a,A: a] : ( ord_less_eq_set_a @ B2 @ ( insert_a @ A @ B2 ) ) ).

% subset_insertI
thf(fact_688_subset__insertI,axiom,
    ! [B2: set_option_a,A: option_a] : ( ord_le1955136853071979460tion_a @ B2 @ ( insert_option_a @ A @ B2 ) ) ).

% subset_insertI
thf(fact_689_subset__insertI,axiom,
    ! [B2: set_option_nat,A: option_nat] : ( ord_le6937355464348597430on_nat @ B2 @ ( insert_option_nat @ A @ B2 ) ) ).

% subset_insertI
thf(fact_690_subset__insertI,axiom,
    ! [B2: set_nat,A: nat] : ( ord_less_eq_set_nat @ B2 @ ( insert_nat @ A @ B2 ) ) ).

% subset_insertI
thf(fact_691_subset__insertI2,axiom,
    ! [A2: set_a,B2: set_a,B: a] :
      ( ( ord_less_eq_set_a @ A2 @ B2 )
     => ( ord_less_eq_set_a @ A2 @ ( insert_a @ B @ B2 ) ) ) ).

% subset_insertI2
thf(fact_692_subset__insertI2,axiom,
    ! [A2: set_option_a,B2: set_option_a,B: option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ B2 )
     => ( ord_le1955136853071979460tion_a @ A2 @ ( insert_option_a @ B @ B2 ) ) ) ).

% subset_insertI2
thf(fact_693_subset__insertI2,axiom,
    ! [A2: set_option_nat,B2: set_option_nat,B: option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ B2 )
     => ( ord_le6937355464348597430on_nat @ A2 @ ( insert_option_nat @ B @ B2 ) ) ) ).

% subset_insertI2
thf(fact_694_subset__insertI2,axiom,
    ! [A2: set_nat,B2: set_nat,B: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ord_less_eq_set_nat @ A2 @ ( insert_nat @ B @ B2 ) ) ) ).

% subset_insertI2
thf(fact_695_subset__singletonD,axiom,
    ! [A2: set_a,X: a] :
      ( ( ord_less_eq_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) )
     => ( ( A2 = bot_bot_set_a )
        | ( A2
          = ( insert_a @ X @ bot_bot_set_a ) ) ) ) ).

% subset_singletonD
thf(fact_696_subset__singletonD,axiom,
    ! [A2: set_option_nat,X: option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) )
     => ( ( A2 = bot_bo5009843511495006442on_nat )
        | ( A2
          = ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% subset_singletonD
thf(fact_697_subset__singletonD,axiom,
    ! [A2: set_option_a,X: option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) )
     => ( ( A2 = bot_bot_set_option_a )
        | ( A2
          = ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) ) ).

% subset_singletonD
thf(fact_698_subset__singletonD,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( insert_nat @ X @ bot_bot_set_nat ) )
     => ( ( A2 = bot_bot_set_nat )
        | ( A2
          = ( insert_nat @ X @ bot_bot_set_nat ) ) ) ) ).

% subset_singletonD
thf(fact_699_subset__singleton__iff,axiom,
    ! [X6: set_a,A: a] :
      ( ( ord_less_eq_set_a @ X6 @ ( insert_a @ A @ bot_bot_set_a ) )
      = ( ( X6 = bot_bot_set_a )
        | ( X6
          = ( insert_a @ A @ bot_bot_set_a ) ) ) ) ).

% subset_singleton_iff
thf(fact_700_subset__singleton__iff,axiom,
    ! [X6: set_option_nat,A: option_nat] :
      ( ( ord_le6937355464348597430on_nat @ X6 @ ( insert_option_nat @ A @ bot_bo5009843511495006442on_nat ) )
      = ( ( X6 = bot_bo5009843511495006442on_nat )
        | ( X6
          = ( insert_option_nat @ A @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% subset_singleton_iff
thf(fact_701_subset__singleton__iff,axiom,
    ! [X6: set_option_a,A: option_a] :
      ( ( ord_le1955136853071979460tion_a @ X6 @ ( insert_option_a @ A @ bot_bot_set_option_a ) )
      = ( ( X6 = bot_bot_set_option_a )
        | ( X6
          = ( insert_option_a @ A @ bot_bot_set_option_a ) ) ) ) ).

% subset_singleton_iff
thf(fact_702_subset__singleton__iff,axiom,
    ! [X6: set_nat,A: nat] :
      ( ( ord_less_eq_set_nat @ X6 @ ( insert_nat @ A @ bot_bot_set_nat ) )
      = ( ( X6 = bot_bot_set_nat )
        | ( X6
          = ( insert_nat @ A @ bot_bot_set_nat ) ) ) ) ).

% subset_singleton_iff
thf(fact_703_override__on__insert,axiom,
    ! [F: nat > option_a,G: nat > option_a,X: nat,X6: set_nat] :
      ( ( overri807160167190409524tion_a @ F @ G @ ( insert_nat @ X @ X6 ) )
      = ( fun_upd_nat_option_a @ ( overri807160167190409524tion_a @ F @ G @ X6 ) @ X @ ( G @ X ) ) ) ).

% override_on_insert
thf(fact_704_override__on__insert,axiom,
    ! [F: nat > nat,G: nat > nat,X: nat,X6: set_nat] :
      ( ( override_on_nat_nat @ F @ G @ ( insert_nat @ X @ X6 ) )
      = ( fun_upd_nat_nat @ ( override_on_nat_nat @ F @ G @ X6 ) @ X @ ( G @ X ) ) ) ).

% override_on_insert
thf(fact_705_override__on__insert_H,axiom,
    ! [F: nat > option_a,G: nat > option_a,X: nat,X6: set_nat] :
      ( ( overri807160167190409524tion_a @ F @ G @ ( insert_nat @ X @ X6 ) )
      = ( overri807160167190409524tion_a @ ( fun_upd_nat_option_a @ F @ X @ ( G @ X ) ) @ G @ X6 ) ) ).

% override_on_insert'
thf(fact_706_override__on__insert_H,axiom,
    ! [F: nat > nat,G: nat > nat,X: nat,X6: set_nat] :
      ( ( override_on_nat_nat @ F @ G @ ( insert_nat @ X @ X6 ) )
      = ( override_on_nat_nat @ ( fun_upd_nat_nat @ F @ X @ ( G @ X ) ) @ G @ X6 ) ) ).

% override_on_insert'
thf(fact_707_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_708_ran__map__upd,axiom,
    ! [M: nat > option_a,A: nat,B: a] :
      ( ( ( M @ A )
        = none_a )
     => ( ( ran_nat_a @ ( fun_upd_nat_option_a @ M @ A @ ( some_a @ B ) ) )
        = ( insert_a @ B @ ( ran_nat_a @ M ) ) ) ) ).

% ran_map_upd
thf(fact_709_restrict__upd__same,axiom,
    ! [M: a > option_a,X: a,Y: a] :
      ( ( restrict_map_a_a @ ( fun_upd_a_option_a @ M @ X @ ( some_a @ Y ) ) @ ( uminus_uminus_set_a @ ( insert_a @ X @ bot_bot_set_a ) ) )
      = ( restrict_map_a_a @ M @ ( uminus_uminus_set_a @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) ).

% restrict_upd_same
thf(fact_710_restrict__upd__same,axiom,
    ! [M: a > option_nat,X: a,Y: nat] :
      ( ( restrict_map_a_nat @ ( fun_upd_a_option_nat @ M @ X @ ( some_nat @ Y ) ) @ ( uminus_uminus_set_a @ ( insert_a @ X @ bot_bot_set_a ) ) )
      = ( restrict_map_a_nat @ M @ ( uminus_uminus_set_a @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) ).

% restrict_upd_same
thf(fact_711_restrict__upd__same,axiom,
    ! [M: option_nat > option_a,X: option_nat,Y: a] :
      ( ( restri5828758267375362220_nat_a @ ( fun_up1391842941490748133tion_a @ M @ X @ ( some_a @ Y ) ) @ ( uminus2023361477510803743on_nat @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) )
      = ( restri5828758267375362220_nat_a @ M @ ( uminus2023361477510803743on_nat @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% restrict_upd_same
thf(fact_712_restrict__upd__same,axiom,
    ! [M: option_nat > option_nat,X: option_nat,Y: nat] :
      ( ( restri4097862903755581090at_nat @ ( fun_up5972625598298123583on_nat @ M @ X @ ( some_nat @ Y ) ) @ ( uminus2023361477510803743on_nat @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) )
      = ( restri4097862903755581090at_nat @ M @ ( uminus2023361477510803743on_nat @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% restrict_upd_same
thf(fact_713_restrict__upd__same,axiom,
    ! [M: option_a > option_a,X: option_a,Y: a] :
      ( ( restri3984065703976872170on_a_a @ ( fun_up1079276522633388797tion_a @ M @ X @ ( some_a @ Y ) ) @ ( uminus6205308855922866075tion_a @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) )
      = ( restri3984065703976872170on_a_a @ M @ ( uminus6205308855922866075tion_a @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) ) ).

% restrict_upd_same
thf(fact_714_restrict__upd__same,axiom,
    ! [M: option_a > option_nat,X: option_a,Y: nat] :
      ( ( restri8223220002595875556_a_nat @ ( fun_up6006905707138584359on_nat @ M @ X @ ( some_nat @ Y ) ) @ ( uminus6205308855922866075tion_a @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) )
      = ( restri8223220002595875556_a_nat @ M @ ( uminus6205308855922866075tion_a @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) ) ).

% restrict_upd_same
thf(fact_715_restrict__upd__same,axiom,
    ! [M: nat > option_nat,X: nat,Y: nat] :
      ( ( restrict_map_nat_nat @ ( fun_up1493157387958331631on_nat @ M @ X @ ( some_nat @ Y ) ) @ ( uminus5710092332889474511et_nat @ ( insert_nat @ X @ bot_bot_set_nat ) ) )
      = ( restrict_map_nat_nat @ M @ ( uminus5710092332889474511et_nat @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) ) ).

% restrict_upd_same
thf(fact_716_restrict__upd__same,axiom,
    ! [M: nat > option_a,X: nat,Y: a] :
      ( ( restrict_map_nat_a @ ( fun_upd_nat_option_a @ M @ X @ ( some_a @ Y ) ) @ ( uminus5710092332889474511et_nat @ ( insert_nat @ X @ bot_bot_set_nat ) ) )
      = ( restrict_map_nat_a @ M @ ( uminus5710092332889474511et_nat @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) ) ).

% restrict_upd_same
thf(fact_717_fun__upd__None__restrict,axiom,
    ! [X: a,D2: set_a,M: a > option_a] :
      ( ( ( member_a @ X @ D2 )
       => ( ( fun_upd_a_option_a @ ( restrict_map_a_a @ M @ D2 ) @ X @ none_a )
          = ( restrict_map_a_a @ M @ ( minus_minus_set_a @ D2 @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) )
      & ( ~ ( member_a @ X @ D2 )
       => ( ( fun_upd_a_option_a @ ( restrict_map_a_a @ M @ D2 ) @ X @ none_a )
          = ( restrict_map_a_a @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_718_fun__upd__None__restrict,axiom,
    ! [X: a,D2: set_a,M: a > option_nat] :
      ( ( ( member_a @ X @ D2 )
       => ( ( fun_upd_a_option_nat @ ( restrict_map_a_nat @ M @ D2 ) @ X @ none_nat )
          = ( restrict_map_a_nat @ M @ ( minus_minus_set_a @ D2 @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) )
      & ( ~ ( member_a @ X @ D2 )
       => ( ( fun_upd_a_option_nat @ ( restrict_map_a_nat @ M @ D2 ) @ X @ none_nat )
          = ( restrict_map_a_nat @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_719_fun__upd__None__restrict,axiom,
    ! [X: option_nat,D2: set_option_nat,M: option_nat > option_a] :
      ( ( ( member_option_nat @ X @ D2 )
       => ( ( fun_up1391842941490748133tion_a @ ( restri5828758267375362220_nat_a @ M @ D2 ) @ X @ none_a )
          = ( restri5828758267375362220_nat_a @ M @ ( minus_5999362281193037231on_nat @ D2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) ) )
      & ( ~ ( member_option_nat @ X @ D2 )
       => ( ( fun_up1391842941490748133tion_a @ ( restri5828758267375362220_nat_a @ M @ D2 ) @ X @ none_a )
          = ( restri5828758267375362220_nat_a @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_720_fun__upd__None__restrict,axiom,
    ! [X: option_nat,D2: set_option_nat,M: option_nat > option_nat] :
      ( ( ( member_option_nat @ X @ D2 )
       => ( ( fun_up5972625598298123583on_nat @ ( restri4097862903755581090at_nat @ M @ D2 ) @ X @ none_nat )
          = ( restri4097862903755581090at_nat @ M @ ( minus_5999362281193037231on_nat @ D2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) ) )
      & ( ~ ( member_option_nat @ X @ D2 )
       => ( ( fun_up5972625598298123583on_nat @ ( restri4097862903755581090at_nat @ M @ D2 ) @ X @ none_nat )
          = ( restri4097862903755581090at_nat @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_721_fun__upd__None__restrict,axiom,
    ! [X: option_a,D2: set_option_a,M: option_a > option_a] :
      ( ( ( member_option_a @ X @ D2 )
       => ( ( fun_up1079276522633388797tion_a @ ( restri3984065703976872170on_a_a @ M @ D2 ) @ X @ none_a )
          = ( restri3984065703976872170on_a_a @ M @ ( minus_1574173051537231627tion_a @ D2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) ) )
      & ( ~ ( member_option_a @ X @ D2 )
       => ( ( fun_up1079276522633388797tion_a @ ( restri3984065703976872170on_a_a @ M @ D2 ) @ X @ none_a )
          = ( restri3984065703976872170on_a_a @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_722_fun__upd__None__restrict,axiom,
    ! [X: option_a,D2: set_option_a,M: option_a > option_nat] :
      ( ( ( member_option_a @ X @ D2 )
       => ( ( fun_up6006905707138584359on_nat @ ( restri8223220002595875556_a_nat @ M @ D2 ) @ X @ none_nat )
          = ( restri8223220002595875556_a_nat @ M @ ( minus_1574173051537231627tion_a @ D2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) ) )
      & ( ~ ( member_option_a @ X @ D2 )
       => ( ( fun_up6006905707138584359on_nat @ ( restri8223220002595875556_a_nat @ M @ D2 ) @ X @ none_nat )
          = ( restri8223220002595875556_a_nat @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_723_fun__upd__None__restrict,axiom,
    ! [X: nat,D2: set_nat,M: nat > option_nat] :
      ( ( ( member_nat @ X @ D2 )
       => ( ( fun_up1493157387958331631on_nat @ ( restrict_map_nat_nat @ M @ D2 ) @ X @ none_nat )
          = ( restrict_map_nat_nat @ M @ ( minus_minus_set_nat @ D2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) ) )
      & ( ~ ( member_nat @ X @ D2 )
       => ( ( fun_up1493157387958331631on_nat @ ( restrict_map_nat_nat @ M @ D2 ) @ X @ none_nat )
          = ( restrict_map_nat_nat @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_724_fun__upd__None__restrict,axiom,
    ! [X: nat,D2: set_nat,M: nat > option_a] :
      ( ( ( member_nat @ X @ D2 )
       => ( ( fun_upd_nat_option_a @ ( restrict_map_nat_a @ M @ D2 ) @ X @ none_a )
          = ( restrict_map_nat_a @ M @ ( minus_minus_set_nat @ D2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) ) )
      & ( ~ ( member_nat @ X @ D2 )
       => ( ( fun_upd_nat_option_a @ ( restrict_map_nat_a @ M @ D2 ) @ X @ none_a )
          = ( restrict_map_nat_a @ M @ D2 ) ) ) ) ).

% fun_upd_None_restrict
thf(fact_725_restrict__complement__singleton__eq,axiom,
    ! [F: a > option_a,X: a] :
      ( ( restrict_map_a_a @ F @ ( uminus_uminus_set_a @ ( insert_a @ X @ bot_bot_set_a ) ) )
      = ( fun_upd_a_option_a @ F @ X @ none_a ) ) ).

% restrict_complement_singleton_eq
thf(fact_726_restrict__complement__singleton__eq,axiom,
    ! [F: a > option_nat,X: a] :
      ( ( restrict_map_a_nat @ F @ ( uminus_uminus_set_a @ ( insert_a @ X @ bot_bot_set_a ) ) )
      = ( fun_upd_a_option_nat @ F @ X @ none_nat ) ) ).

% restrict_complement_singleton_eq
thf(fact_727_restrict__complement__singleton__eq,axiom,
    ! [F: option_nat > option_a,X: option_nat] :
      ( ( restri5828758267375362220_nat_a @ F @ ( uminus2023361477510803743on_nat @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) )
      = ( fun_up1391842941490748133tion_a @ F @ X @ none_a ) ) ).

% restrict_complement_singleton_eq
thf(fact_728_restrict__complement__singleton__eq,axiom,
    ! [F: option_nat > option_nat,X: option_nat] :
      ( ( restri4097862903755581090at_nat @ F @ ( uminus2023361477510803743on_nat @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) )
      = ( fun_up5972625598298123583on_nat @ F @ X @ none_nat ) ) ).

% restrict_complement_singleton_eq
thf(fact_729_restrict__complement__singleton__eq,axiom,
    ! [F: option_a > option_a,X: option_a] :
      ( ( restri3984065703976872170on_a_a @ F @ ( uminus6205308855922866075tion_a @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) )
      = ( fun_up1079276522633388797tion_a @ F @ X @ none_a ) ) ).

% restrict_complement_singleton_eq
thf(fact_730_restrict__complement__singleton__eq,axiom,
    ! [F: option_a > option_nat,X: option_a] :
      ( ( restri8223220002595875556_a_nat @ F @ ( uminus6205308855922866075tion_a @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) )
      = ( fun_up6006905707138584359on_nat @ F @ X @ none_nat ) ) ).

% restrict_complement_singleton_eq
thf(fact_731_restrict__complement__singleton__eq,axiom,
    ! [F: nat > option_nat,X: nat] :
      ( ( restrict_map_nat_nat @ F @ ( uminus5710092332889474511et_nat @ ( insert_nat @ X @ bot_bot_set_nat ) ) )
      = ( fun_up1493157387958331631on_nat @ F @ X @ none_nat ) ) ).

% restrict_complement_singleton_eq
thf(fact_732_restrict__complement__singleton__eq,axiom,
    ! [F: nat > option_a,X: nat] :
      ( ( restrict_map_nat_a @ F @ ( uminus5710092332889474511et_nat @ ( insert_nat @ X @ bot_bot_set_nat ) ) )
      = ( fun_upd_nat_option_a @ F @ X @ none_a ) ) ).

% restrict_complement_singleton_eq
thf(fact_733_Compl__subset__Compl__iff,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ A2 ) @ ( uminus5710092332889474511et_nat @ B2 ) )
      = ( ord_less_eq_set_nat @ B2 @ A2 ) ) ).

% Compl_subset_Compl_iff
thf(fact_734_Compl__anti__mono,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ B2 ) @ ( uminus5710092332889474511et_nat @ A2 ) ) ) ).

% Compl_anti_mono
thf(fact_735_Diff__eq__empty__iff,axiom,
    ! [A2: set_a,B2: set_a] :
      ( ( ( minus_minus_set_a @ A2 @ B2 )
        = bot_bot_set_a )
      = ( ord_less_eq_set_a @ A2 @ B2 ) ) ).

% Diff_eq_empty_iff
thf(fact_736_Diff__eq__empty__iff,axiom,
    ! [A2: set_option_nat,B2: set_option_nat] :
      ( ( ( minus_5999362281193037231on_nat @ A2 @ B2 )
        = bot_bo5009843511495006442on_nat )
      = ( ord_le6937355464348597430on_nat @ A2 @ B2 ) ) ).

% Diff_eq_empty_iff
thf(fact_737_Diff__eq__empty__iff,axiom,
    ! [A2: set_option_a,B2: set_option_a] :
      ( ( ( minus_1574173051537231627tion_a @ A2 @ B2 )
        = bot_bot_set_option_a )
      = ( ord_le1955136853071979460tion_a @ A2 @ B2 ) ) ).

% Diff_eq_empty_iff
thf(fact_738_Diff__eq__empty__iff,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ( minus_minus_set_nat @ A2 @ B2 )
        = bot_bot_set_nat )
      = ( ord_less_eq_set_nat @ A2 @ B2 ) ) ).

% Diff_eq_empty_iff
thf(fact_739_subset__Compl__singleton,axiom,
    ! [A2: set_a,B: a] :
      ( ( ord_less_eq_set_a @ A2 @ ( uminus_uminus_set_a @ ( insert_a @ B @ bot_bot_set_a ) ) )
      = ( ~ ( member_a @ B @ A2 ) ) ) ).

% subset_Compl_singleton
thf(fact_740_subset__Compl__singleton,axiom,
    ! [A2: set_option_nat,B: option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ ( uminus2023361477510803743on_nat @ ( insert_option_nat @ B @ bot_bo5009843511495006442on_nat ) ) )
      = ( ~ ( member_option_nat @ B @ A2 ) ) ) ).

% subset_Compl_singleton
thf(fact_741_subset__Compl__singleton,axiom,
    ! [A2: set_option_a,B: option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ ( uminus6205308855922866075tion_a @ ( insert_option_a @ B @ bot_bot_set_option_a ) ) )
      = ( ~ ( member_option_a @ B @ A2 ) ) ) ).

% subset_Compl_singleton
thf(fact_742_subset__Compl__singleton,axiom,
    ! [A2: set_nat,B: nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( uminus5710092332889474511et_nat @ ( insert_nat @ B @ bot_bot_set_nat ) ) )
      = ( ~ ( member_nat @ B @ A2 ) ) ) ).

% subset_Compl_singleton
thf(fact_743_double__diff,axiom,
    ! [A2: set_nat,B2: set_nat,C3: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( ord_less_eq_set_nat @ B2 @ C3 )
       => ( ( minus_minus_set_nat @ B2 @ ( minus_minus_set_nat @ C3 @ A2 ) )
          = A2 ) ) ) ).

% double_diff
thf(fact_744_Diff__subset,axiom,
    ! [A2: set_nat,B2: set_nat] : ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ A2 @ B2 ) @ A2 ) ).

% Diff_subset
thf(fact_745_Diff__mono,axiom,
    ! [A2: set_nat,C3: set_nat,D2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ C3 )
     => ( ( ord_less_eq_set_nat @ D2 @ B2 )
       => ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ A2 @ B2 ) @ ( minus_minus_set_nat @ C3 @ D2 ) ) ) ) ).

% Diff_mono
thf(fact_746_subset__Compl__self__eq,axiom,
    ! [A2: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ ( uminus_uminus_set_a @ A2 ) )
      = ( A2 = bot_bot_set_a ) ) ).

% subset_Compl_self_eq
thf(fact_747_subset__Compl__self__eq,axiom,
    ! [A2: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ ( uminus2023361477510803743on_nat @ A2 ) )
      = ( A2 = bot_bo5009843511495006442on_nat ) ) ).

% subset_Compl_self_eq
thf(fact_748_subset__Compl__self__eq,axiom,
    ! [A2: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ ( uminus6205308855922866075tion_a @ A2 ) )
      = ( A2 = bot_bot_set_option_a ) ) ).

% subset_Compl_self_eq
thf(fact_749_subset__Compl__self__eq,axiom,
    ! [A2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( uminus5710092332889474511et_nat @ A2 ) )
      = ( A2 = bot_bot_set_nat ) ) ).

% subset_Compl_self_eq
thf(fact_750_subset__Diff__insert,axiom,
    ! [A2: set_a,B2: set_a,X: a,C3: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ ( minus_minus_set_a @ B2 @ ( insert_a @ X @ C3 ) ) )
      = ( ( ord_less_eq_set_a @ A2 @ ( minus_minus_set_a @ B2 @ C3 ) )
        & ~ ( member_a @ X @ A2 ) ) ) ).

% subset_Diff_insert
thf(fact_751_subset__Diff__insert,axiom,
    ! [A2: set_option_a,B2: set_option_a,X: option_a,C3: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ ( minus_1574173051537231627tion_a @ B2 @ ( insert_option_a @ X @ C3 ) ) )
      = ( ( ord_le1955136853071979460tion_a @ A2 @ ( minus_1574173051537231627tion_a @ B2 @ C3 ) )
        & ~ ( member_option_a @ X @ A2 ) ) ) ).

% subset_Diff_insert
thf(fact_752_subset__Diff__insert,axiom,
    ! [A2: set_option_nat,B2: set_option_nat,X: option_nat,C3: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ ( minus_5999362281193037231on_nat @ B2 @ ( insert_option_nat @ X @ C3 ) ) )
      = ( ( ord_le6937355464348597430on_nat @ A2 @ ( minus_5999362281193037231on_nat @ B2 @ C3 ) )
        & ~ ( member_option_nat @ X @ A2 ) ) ) ).

% subset_Diff_insert
thf(fact_753_subset__Diff__insert,axiom,
    ! [A2: set_nat,B2: set_nat,X: nat,C3: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( minus_minus_set_nat @ B2 @ ( insert_nat @ X @ C3 ) ) )
      = ( ( ord_less_eq_set_nat @ A2 @ ( minus_minus_set_nat @ B2 @ C3 ) )
        & ~ ( member_nat @ X @ A2 ) ) ) ).

% subset_Diff_insert
thf(fact_754_subset__insert__iff,axiom,
    ! [A2: set_a,X: a,B2: set_a] :
      ( ( ord_less_eq_set_a @ A2 @ ( insert_a @ X @ B2 ) )
      = ( ( ( member_a @ X @ A2 )
         => ( ord_less_eq_set_a @ ( minus_minus_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) ) @ B2 ) )
        & ( ~ ( member_a @ X @ A2 )
         => ( ord_less_eq_set_a @ A2 @ B2 ) ) ) ) ).

% subset_insert_iff
thf(fact_755_subset__insert__iff,axiom,
    ! [A2: set_option_nat,X: option_nat,B2: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ A2 @ ( insert_option_nat @ X @ B2 ) )
      = ( ( ( member_option_nat @ X @ A2 )
         => ( ord_le6937355464348597430on_nat @ ( minus_5999362281193037231on_nat @ A2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) @ B2 ) )
        & ( ~ ( member_option_nat @ X @ A2 )
         => ( ord_le6937355464348597430on_nat @ A2 @ B2 ) ) ) ) ).

% subset_insert_iff
thf(fact_756_subset__insert__iff,axiom,
    ! [A2: set_option_a,X: option_a,B2: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ A2 @ ( insert_option_a @ X @ B2 ) )
      = ( ( ( member_option_a @ X @ A2 )
         => ( ord_le1955136853071979460tion_a @ ( minus_1574173051537231627tion_a @ A2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) @ B2 ) )
        & ( ~ ( member_option_a @ X @ A2 )
         => ( ord_le1955136853071979460tion_a @ A2 @ B2 ) ) ) ) ).

% subset_insert_iff
thf(fact_757_subset__insert__iff,axiom,
    ! [A2: set_nat,X: nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ ( insert_nat @ X @ B2 ) )
      = ( ( ( member_nat @ X @ A2 )
         => ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ A2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) @ B2 ) )
        & ( ~ ( member_nat @ X @ A2 )
         => ( ord_less_eq_set_nat @ A2 @ B2 ) ) ) ) ).

% subset_insert_iff
thf(fact_758_Diff__single__insert,axiom,
    ! [A2: set_a,X: a,B2: set_a] :
      ( ( ord_less_eq_set_a @ ( minus_minus_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) ) @ B2 )
     => ( ord_less_eq_set_a @ A2 @ ( insert_a @ X @ B2 ) ) ) ).

% Diff_single_insert
thf(fact_759_Diff__single__insert,axiom,
    ! [A2: set_option_nat,X: option_nat,B2: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ ( minus_5999362281193037231on_nat @ A2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) @ B2 )
     => ( ord_le6937355464348597430on_nat @ A2 @ ( insert_option_nat @ X @ B2 ) ) ) ).

% Diff_single_insert
thf(fact_760_Diff__single__insert,axiom,
    ! [A2: set_option_a,X: option_a,B2: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ ( minus_1574173051537231627tion_a @ A2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) @ B2 )
     => ( ord_le1955136853071979460tion_a @ A2 @ ( insert_option_a @ X @ B2 ) ) ) ).

% Diff_single_insert
thf(fact_761_Diff__single__insert,axiom,
    ! [A2: set_nat,X: nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ ( minus_minus_set_nat @ A2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) @ B2 )
     => ( ord_less_eq_set_nat @ A2 @ ( insert_nat @ X @ B2 ) ) ) ).

% Diff_single_insert
thf(fact_762_ran__restrictD,axiom,
    ! [Y: a,M: nat > option_a,A2: set_nat] :
      ( ( member_a @ Y @ ( ran_nat_a @ ( restrict_map_nat_a @ M @ A2 ) ) )
     => ? [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
          & ( ( M @ X2 )
            = ( some_a @ Y ) ) ) ) ).

% ran_restrictD
thf(fact_763_compl__le__compl__iff,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ X ) @ ( uminus5710092332889474511et_nat @ Y ) )
      = ( ord_less_eq_set_nat @ Y @ X ) ) ).

% compl_le_compl_iff
thf(fact_764_diff__shunt__var,axiom,
    ! [X: set_a,Y: set_a] :
      ( ( ( minus_minus_set_a @ X @ Y )
        = bot_bot_set_a )
      = ( ord_less_eq_set_a @ X @ Y ) ) ).

% diff_shunt_var
thf(fact_765_diff__shunt__var,axiom,
    ! [X: set_option_nat,Y: set_option_nat] :
      ( ( ( minus_5999362281193037231on_nat @ X @ Y )
        = bot_bo5009843511495006442on_nat )
      = ( ord_le6937355464348597430on_nat @ X @ Y ) ) ).

% diff_shunt_var
thf(fact_766_diff__shunt__var,axiom,
    ! [X: set_option_a,Y: set_option_a] :
      ( ( ( minus_1574173051537231627tion_a @ X @ Y )
        = bot_bot_set_option_a )
      = ( ord_le1955136853071979460tion_a @ X @ Y ) ) ).

% diff_shunt_var
thf(fact_767_diff__shunt__var,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ( minus_minus_set_nat @ X @ Y )
        = bot_bot_set_nat )
      = ( ord_less_eq_set_nat @ X @ Y ) ) ).

% diff_shunt_var
thf(fact_768_compl__le__swap2,axiom,
    ! [Y: set_nat,X: set_nat] :
      ( ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ Y ) @ X )
     => ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ X ) @ Y ) ) ).

% compl_le_swap2
thf(fact_769_compl__mono,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ Y ) @ ( uminus5710092332889474511et_nat @ X ) ) ) ).

% compl_mono
thf(fact_770_compl__le__swap1,axiom,
    ! [Y: set_nat,X: set_nat] :
      ( ( ord_less_eq_set_nat @ Y @ ( uminus5710092332889474511et_nat @ X ) )
     => ( ord_less_eq_set_nat @ X @ ( uminus5710092332889474511et_nat @ Y ) ) ) ).

% compl_le_swap1
thf(fact_771_dom__fun__upd,axiom,
    ! [Y: option_a,F: a > option_a,X: a] :
      ( ( ( Y = none_a )
       => ( ( dom_a_a @ ( fun_upd_a_option_a @ F @ X @ Y ) )
          = ( minus_minus_set_a @ ( dom_a_a @ F ) @ ( insert_a @ X @ bot_bot_set_a ) ) ) )
      & ( ( Y != none_a )
       => ( ( dom_a_a @ ( fun_upd_a_option_a @ F @ X @ Y ) )
          = ( insert_a @ X @ ( dom_a_a @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_772_dom__fun__upd,axiom,
    ! [Y: option_nat,F: a > option_nat,X: a] :
      ( ( ( Y = none_nat )
       => ( ( dom_a_nat @ ( fun_upd_a_option_nat @ F @ X @ Y ) )
          = ( minus_minus_set_a @ ( dom_a_nat @ F ) @ ( insert_a @ X @ bot_bot_set_a ) ) ) )
      & ( ( Y != none_nat )
       => ( ( dom_a_nat @ ( fun_upd_a_option_nat @ F @ X @ Y ) )
          = ( insert_a @ X @ ( dom_a_nat @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_773_dom__fun__upd,axiom,
    ! [Y: option_a,F: option_nat > option_a,X: option_nat] :
      ( ( ( Y = none_a )
       => ( ( dom_option_nat_a @ ( fun_up1391842941490748133tion_a @ F @ X @ Y ) )
          = ( minus_5999362281193037231on_nat @ ( dom_option_nat_a @ F ) @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) )
      & ( ( Y != none_a )
       => ( ( dom_option_nat_a @ ( fun_up1391842941490748133tion_a @ F @ X @ Y ) )
          = ( insert_option_nat @ X @ ( dom_option_nat_a @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_774_dom__fun__upd,axiom,
    ! [Y: option_nat,F: option_nat > option_nat,X: option_nat] :
      ( ( ( Y = none_nat )
       => ( ( dom_option_nat_nat @ ( fun_up5972625598298123583on_nat @ F @ X @ Y ) )
          = ( minus_5999362281193037231on_nat @ ( dom_option_nat_nat @ F ) @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) )
      & ( ( Y != none_nat )
       => ( ( dom_option_nat_nat @ ( fun_up5972625598298123583on_nat @ F @ X @ Y ) )
          = ( insert_option_nat @ X @ ( dom_option_nat_nat @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_775_dom__fun__upd,axiom,
    ! [Y: option_a,F: option_a > option_a,X: option_a] :
      ( ( ( Y = none_a )
       => ( ( dom_option_a_a @ ( fun_up1079276522633388797tion_a @ F @ X @ Y ) )
          = ( minus_1574173051537231627tion_a @ ( dom_option_a_a @ F ) @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) )
      & ( ( Y != none_a )
       => ( ( dom_option_a_a @ ( fun_up1079276522633388797tion_a @ F @ X @ Y ) )
          = ( insert_option_a @ X @ ( dom_option_a_a @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_776_dom__fun__upd,axiom,
    ! [Y: option_nat,F: option_a > option_nat,X: option_a] :
      ( ( ( Y = none_nat )
       => ( ( dom_option_a_nat @ ( fun_up6006905707138584359on_nat @ F @ X @ Y ) )
          = ( minus_1574173051537231627tion_a @ ( dom_option_a_nat @ F ) @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) )
      & ( ( Y != none_nat )
       => ( ( dom_option_a_nat @ ( fun_up6006905707138584359on_nat @ F @ X @ Y ) )
          = ( insert_option_a @ X @ ( dom_option_a_nat @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_777_dom__fun__upd,axiom,
    ! [Y: option_nat,F: nat > option_nat,X: nat] :
      ( ( ( Y = none_nat )
       => ( ( dom_nat_nat @ ( fun_up1493157387958331631on_nat @ F @ X @ Y ) )
          = ( minus_minus_set_nat @ ( dom_nat_nat @ F ) @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) )
      & ( ( Y != none_nat )
       => ( ( dom_nat_nat @ ( fun_up1493157387958331631on_nat @ F @ X @ Y ) )
          = ( insert_nat @ X @ ( dom_nat_nat @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_778_dom__fun__upd,axiom,
    ! [Y: option_a,F: nat > option_a,X: nat] :
      ( ( ( Y = none_a )
       => ( ( dom_nat_a @ ( fun_upd_nat_option_a @ F @ X @ Y ) )
          = ( minus_minus_set_nat @ ( dom_nat_a @ F ) @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) )
      & ( ( Y != none_a )
       => ( ( dom_nat_a @ ( fun_upd_nat_option_a @ F @ X @ Y ) )
          = ( insert_nat @ X @ ( dom_nat_a @ F ) ) ) ) ) ).

% dom_fun_upd
thf(fact_779_these__insert__Some,axiom,
    ! [X: option_a,A2: set_option_option_a] :
      ( ( these_option_a @ ( insert605063979879581146tion_a @ ( some_option_a @ X ) @ A2 ) )
      = ( insert_option_a @ X @ ( these_option_a @ A2 ) ) ) ).

% these_insert_Some
thf(fact_780_these__insert__Some,axiom,
    ! [X: option_nat,A2: set_op6961666426309957030on_nat] :
      ( ( these_option_nat @ ( insert504548404241883424on_nat @ ( some_option_nat @ X ) @ A2 ) )
      = ( insert_option_nat @ X @ ( these_option_nat @ A2 ) ) ) ).

% these_insert_Some
thf(fact_781_these__insert__Some,axiom,
    ! [X: nat,A2: set_option_nat] :
      ( ( these_nat @ ( insert_option_nat @ ( some_nat @ X ) @ A2 ) )
      = ( insert_nat @ X @ ( these_nat @ A2 ) ) ) ).

% these_insert_Some
thf(fact_782_these__insert__Some,axiom,
    ! [X: a,A2: set_option_a] :
      ( ( these_a @ ( insert_option_a @ ( some_a @ X ) @ A2 ) )
      = ( insert_a @ X @ ( these_a @ A2 ) ) ) ).

% these_insert_Some
thf(fact_783_psubset__insert__iff,axiom,
    ! [A2: set_a,X: a,B2: set_a] :
      ( ( ord_less_set_a @ A2 @ ( insert_a @ X @ B2 ) )
      = ( ( ( member_a @ X @ B2 )
         => ( ord_less_set_a @ A2 @ B2 ) )
        & ( ~ ( member_a @ X @ B2 )
         => ( ( ( member_a @ X @ A2 )
             => ( ord_less_set_a @ ( minus_minus_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) ) @ B2 ) )
            & ( ~ ( member_a @ X @ A2 )
             => ( ord_less_eq_set_a @ A2 @ B2 ) ) ) ) ) ) ).

% psubset_insert_iff
thf(fact_784_psubset__insert__iff,axiom,
    ! [A2: set_option_nat,X: option_nat,B2: set_option_nat] :
      ( ( ord_le1792839605950587050on_nat @ A2 @ ( insert_option_nat @ X @ B2 ) )
      = ( ( ( member_option_nat @ X @ B2 )
         => ( ord_le1792839605950587050on_nat @ A2 @ B2 ) )
        & ( ~ ( member_option_nat @ X @ B2 )
         => ( ( ( member_option_nat @ X @ A2 )
             => ( ord_le1792839605950587050on_nat @ ( minus_5999362281193037231on_nat @ A2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) @ B2 ) )
            & ( ~ ( member_option_nat @ X @ A2 )
             => ( ord_le6937355464348597430on_nat @ A2 @ B2 ) ) ) ) ) ) ).

% psubset_insert_iff
thf(fact_785_psubset__insert__iff,axiom,
    ! [A2: set_option_a,X: option_a,B2: set_option_a] :
      ( ( ord_le5631237216984945872tion_a @ A2 @ ( insert_option_a @ X @ B2 ) )
      = ( ( ( member_option_a @ X @ B2 )
         => ( ord_le5631237216984945872tion_a @ A2 @ B2 ) )
        & ( ~ ( member_option_a @ X @ B2 )
         => ( ( ( member_option_a @ X @ A2 )
             => ( ord_le5631237216984945872tion_a @ ( minus_1574173051537231627tion_a @ A2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) @ B2 ) )
            & ( ~ ( member_option_a @ X @ A2 )
             => ( ord_le1955136853071979460tion_a @ A2 @ B2 ) ) ) ) ) ) ).

% psubset_insert_iff
thf(fact_786_psubset__insert__iff,axiom,
    ! [A2: set_nat,X: nat,B2: set_nat] :
      ( ( ord_less_set_nat @ A2 @ ( insert_nat @ X @ B2 ) )
      = ( ( ( member_nat @ X @ B2 )
         => ( ord_less_set_nat @ A2 @ B2 ) )
        & ( ~ ( member_nat @ X @ B2 )
         => ( ( ( member_nat @ X @ A2 )
             => ( ord_less_set_nat @ ( minus_minus_set_nat @ A2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) @ B2 ) )
            & ( ~ ( member_nat @ X @ A2 )
             => ( ord_less_eq_set_nat @ A2 @ B2 ) ) ) ) ) ) ).

% psubset_insert_iff
thf(fact_787_fun__upd__image,axiom,
    ! [X: nat,A2: set_nat,F: nat > nat,Y: nat] :
      ( ( ( member_nat @ X @ A2 )
       => ( ( image_nat_nat @ ( fun_upd_nat_nat @ F @ X @ Y ) @ A2 )
          = ( insert_nat @ Y @ ( image_nat_nat @ F @ ( minus_minus_set_nat @ A2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) ) ) )
      & ( ~ ( member_nat @ X @ A2 )
       => ( ( image_nat_nat @ ( fun_upd_nat_nat @ F @ X @ Y ) @ A2 )
          = ( image_nat_nat @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_788_fun__upd__image,axiom,
    ! [X: a,A2: set_a,F: a > nat,Y: nat] :
      ( ( ( member_a @ X @ A2 )
       => ( ( image_a_nat @ ( fun_upd_a_nat @ F @ X @ Y ) @ A2 )
          = ( insert_nat @ Y @ ( image_a_nat @ F @ ( minus_minus_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) ) )
      & ( ~ ( member_a @ X @ A2 )
       => ( ( image_a_nat @ ( fun_upd_a_nat @ F @ X @ Y ) @ A2 )
          = ( image_a_nat @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_789_fun__upd__image,axiom,
    ! [X: a,A2: set_a,F: a > a,Y: a] :
      ( ( ( member_a @ X @ A2 )
       => ( ( image_a_a @ ( fun_upd_a_a @ F @ X @ Y ) @ A2 )
          = ( insert_a @ Y @ ( image_a_a @ F @ ( minus_minus_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) ) )
      & ( ~ ( member_a @ X @ A2 )
       => ( ( image_a_a @ ( fun_upd_a_a @ F @ X @ Y ) @ A2 )
          = ( image_a_a @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_790_fun__upd__image,axiom,
    ! [X: nat,A2: set_nat,F: nat > a,Y: a] :
      ( ( ( member_nat @ X @ A2 )
       => ( ( image_nat_a @ ( fun_upd_nat_a @ F @ X @ Y ) @ A2 )
          = ( insert_a @ Y @ ( image_nat_a @ F @ ( minus_minus_set_nat @ A2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) ) ) )
      & ( ~ ( member_nat @ X @ A2 )
       => ( ( image_nat_a @ ( fun_upd_nat_a @ F @ X @ Y ) @ A2 )
          = ( image_nat_a @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_791_fun__upd__image,axiom,
    ! [X: a,A2: set_a,F: a > option_a,Y: option_a] :
      ( ( ( member_a @ X @ A2 )
       => ( ( image_a_option_a @ ( fun_upd_a_option_a @ F @ X @ Y ) @ A2 )
          = ( insert_option_a @ Y @ ( image_a_option_a @ F @ ( minus_minus_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) ) )
      & ( ~ ( member_a @ X @ A2 )
       => ( ( image_a_option_a @ ( fun_upd_a_option_a @ F @ X @ Y ) @ A2 )
          = ( image_a_option_a @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_792_fun__upd__image,axiom,
    ! [X: a,A2: set_a,F: a > option_nat,Y: option_nat] :
      ( ( ( member_a @ X @ A2 )
       => ( ( image_a_option_nat @ ( fun_upd_a_option_nat @ F @ X @ Y ) @ A2 )
          = ( insert_option_nat @ Y @ ( image_a_option_nat @ F @ ( minus_minus_set_a @ A2 @ ( insert_a @ X @ bot_bot_set_a ) ) ) ) ) )
      & ( ~ ( member_a @ X @ A2 )
       => ( ( image_a_option_nat @ ( fun_upd_a_option_nat @ F @ X @ Y ) @ A2 )
          = ( image_a_option_nat @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_793_fun__upd__image,axiom,
    ! [X: option_nat,A2: set_option_nat,F: option_nat > nat,Y: nat] :
      ( ( ( member_option_nat @ X @ A2 )
       => ( ( image_option_nat_nat @ ( fun_up5413720054234441327at_nat @ F @ X @ Y ) @ A2 )
          = ( insert_nat @ Y @ ( image_option_nat_nat @ F @ ( minus_5999362281193037231on_nat @ A2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) ) ) )
      & ( ~ ( member_option_nat @ X @ A2 )
       => ( ( image_option_nat_nat @ ( fun_up5413720054234441327at_nat @ F @ X @ Y ) @ A2 )
          = ( image_option_nat_nat @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_794_fun__upd__image,axiom,
    ! [X: option_nat,A2: set_option_nat,F: option_nat > a,Y: a] :
      ( ( ( member_option_nat @ X @ A2 )
       => ( ( image_option_nat_a @ ( fun_upd_option_nat_a @ F @ X @ Y ) @ A2 )
          = ( insert_a @ Y @ ( image_option_nat_a @ F @ ( minus_5999362281193037231on_nat @ A2 @ ( insert_option_nat @ X @ bot_bo5009843511495006442on_nat ) ) ) ) ) )
      & ( ~ ( member_option_nat @ X @ A2 )
       => ( ( image_option_nat_a @ ( fun_upd_option_nat_a @ F @ X @ Y ) @ A2 )
          = ( image_option_nat_a @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_795_fun__upd__image,axiom,
    ! [X: option_a,A2: set_option_a,F: option_a > nat,Y: nat] :
      ( ( ( member_option_a @ X @ A2 )
       => ( ( image_option_a_nat @ ( fun_upd_option_a_nat @ F @ X @ Y ) @ A2 )
          = ( insert_nat @ Y @ ( image_option_a_nat @ F @ ( minus_1574173051537231627tion_a @ A2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) ) ) )
      & ( ~ ( member_option_a @ X @ A2 )
       => ( ( image_option_a_nat @ ( fun_upd_option_a_nat @ F @ X @ Y ) @ A2 )
          = ( image_option_a_nat @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_796_fun__upd__image,axiom,
    ! [X: option_a,A2: set_option_a,F: option_a > a,Y: a] :
      ( ( ( member_option_a @ X @ A2 )
       => ( ( image_option_a_a @ ( fun_upd_option_a_a @ F @ X @ Y ) @ A2 )
          = ( insert_a @ Y @ ( image_option_a_a @ F @ ( minus_1574173051537231627tion_a @ A2 @ ( insert_option_a @ X @ bot_bot_set_option_a ) ) ) ) ) )
      & ( ~ ( member_option_a @ X @ A2 )
       => ( ( image_option_a_a @ ( fun_upd_option_a_a @ F @ X @ Y ) @ A2 )
          = ( image_option_a_a @ F @ A2 ) ) ) ) ).

% fun_upd_image
thf(fact_797_psubsetI,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( A2 != B2 )
       => ( ord_less_set_nat @ A2 @ B2 ) ) ) ).

% psubsetI
thf(fact_798_image__map__upd,axiom,
    ! [X: a,A2: set_a,M: a > option_a,Y: a] :
      ( ~ ( member_a @ X @ A2 )
     => ( ( image_a_option_a @ ( fun_upd_a_option_a @ M @ X @ ( some_a @ Y ) ) @ A2 )
        = ( image_a_option_a @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_799_image__map__upd,axiom,
    ! [X: option_a,A2: set_option_a,M: option_a > option_a,Y: a] :
      ( ~ ( member_option_a @ X @ A2 )
     => ( ( image_7439109396645324421tion_a @ ( fun_up1079276522633388797tion_a @ M @ X @ ( some_a @ Y ) ) @ A2 )
        = ( image_7439109396645324421tion_a @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_800_image__map__upd,axiom,
    ! [X: option_nat,A2: set_option_nat,M: option_nat > option_a,Y: a] :
      ( ~ ( member_option_nat @ X @ A2 )
     => ( ( image_7592925988527752541tion_a @ ( fun_up1391842941490748133tion_a @ M @ X @ ( some_a @ Y ) ) @ A2 )
        = ( image_7592925988527752541tion_a @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_801_image__map__upd,axiom,
    ! [X: nat,A2: set_nat,M: nat > option_a,Y: a] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ( image_nat_option_a @ ( fun_upd_nat_option_a @ M @ X @ ( some_a @ Y ) ) @ A2 )
        = ( image_nat_option_a @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_802_image__map__upd,axiom,
    ! [X: a,A2: set_a,M: a > option_nat,Y: nat] :
      ( ~ ( member_a @ X @ A2 )
     => ( ( image_a_option_nat @ ( fun_upd_a_option_nat @ M @ X @ ( some_nat @ Y ) ) @ A2 )
        = ( image_a_option_nat @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_803_image__map__upd,axiom,
    ! [X: nat,A2: set_nat,M: nat > option_nat,Y: nat] :
      ( ~ ( member_nat @ X @ A2 )
     => ( ( image_nat_option_nat @ ( fun_up1493157387958331631on_nat @ M @ X @ ( some_nat @ Y ) ) @ A2 )
        = ( image_nat_option_nat @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_804_image__map__upd,axiom,
    ! [X: option_a,A2: set_option_a,M: option_a > option_nat,Y: nat] :
      ( ~ ( member_option_a @ X @ A2 )
     => ( ( image_2984616717320812959on_nat @ ( fun_up6006905707138584359on_nat @ M @ X @ ( some_nat @ Y ) ) @ A2 )
        = ( image_2984616717320812959on_nat @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_805_image__map__upd,axiom,
    ! [X: option_nat,A2: set_option_nat,M: option_nat > option_nat,Y: nat] :
      ( ~ ( member_option_nat @ X @ A2 )
     => ( ( image_2533357264035992775on_nat @ ( fun_up5972625598298123583on_nat @ M @ X @ ( some_nat @ Y ) ) @ A2 )
        = ( image_2533357264035992775on_nat @ M @ A2 ) ) ) ).

% image_map_upd
thf(fact_806_these__empty,axiom,
    ( ( these_option_nat @ bot_bo6737470738027213882on_nat )
    = bot_bo5009843511495006442on_nat ) ).

% these_empty
thf(fact_807_these__empty,axiom,
    ( ( these_option_a @ bot_bo4163488203964334806tion_a )
    = bot_bot_set_option_a ) ).

% these_empty
thf(fact_808_these__empty,axiom,
    ( ( these_a @ bot_bot_set_option_a )
    = bot_bot_set_a ) ).

% these_empty
thf(fact_809_these__empty,axiom,
    ( ( these_nat @ bot_bo5009843511495006442on_nat )
    = bot_bot_set_nat ) ).

% these_empty
thf(fact_810_these__image__Some__eq,axiom,
    ! [A2: set_nat] :
      ( ( these_nat @ ( image_nat_option_nat @ some_nat @ A2 ) )
      = A2 ) ).

% these_image_Some_eq
thf(fact_811_these__image__Some__eq,axiom,
    ! [A2: set_a] :
      ( ( these_a @ ( image_a_option_a @ some_a @ A2 ) )
      = A2 ) ).

% these_image_Some_eq
thf(fact_812_dom__eq__empty__conv,axiom,
    ! [F: nat > option_nat] :
      ( ( ( dom_nat_nat @ F )
        = bot_bot_set_nat )
      = ( F
        = ( ^ [X3: nat] : none_nat ) ) ) ).

% dom_eq_empty_conv
thf(fact_813_dom__eq__empty__conv,axiom,
    ! [F: a > option_a] :
      ( ( ( dom_a_a @ F )
        = bot_bot_set_a )
      = ( F
        = ( ^ [X3: a] : none_a ) ) ) ).

% dom_eq_empty_conv
thf(fact_814_dom__eq__empty__conv,axiom,
    ! [F: a > option_nat] :
      ( ( ( dom_a_nat @ F )
        = bot_bot_set_a )
      = ( F
        = ( ^ [X3: a] : none_nat ) ) ) ).

% dom_eq_empty_conv
thf(fact_815_dom__eq__empty__conv,axiom,
    ! [F: option_nat > option_a] :
      ( ( ( dom_option_nat_a @ F )
        = bot_bo5009843511495006442on_nat )
      = ( F
        = ( ^ [X3: option_nat] : none_a ) ) ) ).

% dom_eq_empty_conv
thf(fact_816_dom__eq__empty__conv,axiom,
    ! [F: option_nat > option_nat] :
      ( ( ( dom_option_nat_nat @ F )
        = bot_bo5009843511495006442on_nat )
      = ( F
        = ( ^ [X3: option_nat] : none_nat ) ) ) ).

% dom_eq_empty_conv
thf(fact_817_dom__eq__empty__conv,axiom,
    ! [F: option_a > option_a] :
      ( ( ( dom_option_a_a @ F )
        = bot_bot_set_option_a )
      = ( F
        = ( ^ [X3: option_a] : none_a ) ) ) ).

% dom_eq_empty_conv
thf(fact_818_dom__eq__empty__conv,axiom,
    ! [F: option_a > option_nat] :
      ( ( ( dom_option_a_nat @ F )
        = bot_bot_set_option_a )
      = ( F
        = ( ^ [X3: option_a] : none_nat ) ) ) ).

% dom_eq_empty_conv
thf(fact_819_dom__eq__empty__conv,axiom,
    ! [F: nat > option_a] :
      ( ( ( dom_nat_a @ F )
        = bot_bot_set_nat )
      = ( F
        = ( ^ [X3: nat] : none_a ) ) ) ).

% dom_eq_empty_conv
thf(fact_820_fun__upd__None__if__notin__dom,axiom,
    ! [K: a,M: a > option_a] :
      ( ~ ( member_a @ K @ ( dom_a_a @ M ) )
     => ( ( fun_upd_a_option_a @ M @ K @ none_a )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_821_fun__upd__None__if__notin__dom,axiom,
    ! [K: option_a,M: option_a > option_a] :
      ( ~ ( member_option_a @ K @ ( dom_option_a_a @ M ) )
     => ( ( fun_up1079276522633388797tion_a @ M @ K @ none_a )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_822_fun__upd__None__if__notin__dom,axiom,
    ! [K: option_nat,M: option_nat > option_a] :
      ( ~ ( member_option_nat @ K @ ( dom_option_nat_a @ M ) )
     => ( ( fun_up1391842941490748133tion_a @ M @ K @ none_a )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_823_fun__upd__None__if__notin__dom,axiom,
    ! [K: nat,M: nat > option_a] :
      ( ~ ( member_nat @ K @ ( dom_nat_a @ M ) )
     => ( ( fun_upd_nat_option_a @ M @ K @ none_a )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_824_fun__upd__None__if__notin__dom,axiom,
    ! [K: a,M: a > option_nat] :
      ( ~ ( member_a @ K @ ( dom_a_nat @ M ) )
     => ( ( fun_upd_a_option_nat @ M @ K @ none_nat )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_825_fun__upd__None__if__notin__dom,axiom,
    ! [K: nat,M: nat > option_nat] :
      ( ~ ( member_nat @ K @ ( dom_nat_nat @ M ) )
     => ( ( fun_up1493157387958331631on_nat @ M @ K @ none_nat )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_826_fun__upd__None__if__notin__dom,axiom,
    ! [K: option_a,M: option_a > option_nat] :
      ( ~ ( member_option_a @ K @ ( dom_option_a_nat @ M ) )
     => ( ( fun_up6006905707138584359on_nat @ M @ K @ none_nat )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_827_fun__upd__None__if__notin__dom,axiom,
    ! [K: option_nat,M: option_nat > option_nat] :
      ( ~ ( member_option_nat @ K @ ( dom_option_nat_nat @ M ) )
     => ( ( fun_up5972625598298123583on_nat @ M @ K @ none_nat )
        = M ) ) ).

% fun_upd_None_if_notin_dom
thf(fact_828_these__insert__None,axiom,
    ! [A2: set_option_nat] :
      ( ( these_nat @ ( insert_option_nat @ none_nat @ A2 ) )
      = ( these_nat @ A2 ) ) ).

% these_insert_None
thf(fact_829_these__insert__None,axiom,
    ! [A2: set_option_a] :
      ( ( these_a @ ( insert_option_a @ none_a @ A2 ) )
      = ( these_a @ A2 ) ) ).

% these_insert_None
thf(fact_830_verit__comp__simplify1_I3_J,axiom,
    ! [B5: nat,A6: nat] :
      ( ( ~ ( ord_less_eq_nat @ B5 @ A6 ) )
      = ( ord_less_nat @ A6 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_831_domI,axiom,
    ! [M: a > option_a,A: a,B: a] :
      ( ( ( M @ A )
        = ( some_a @ B ) )
     => ( member_a @ A @ ( dom_a_a @ M ) ) ) ).

% domI
thf(fact_832_domI,axiom,
    ! [M: nat > option_a,A: nat,B: a] :
      ( ( ( M @ A )
        = ( some_a @ B ) )
     => ( member_nat @ A @ ( dom_nat_a @ M ) ) ) ).

% domI
thf(fact_833_domI,axiom,
    ! [M: option_a > option_a,A: option_a,B: a] :
      ( ( ( M @ A )
        = ( some_a @ B ) )
     => ( member_option_a @ A @ ( dom_option_a_a @ M ) ) ) ).

% domI
thf(fact_834_domI,axiom,
    ! [M: option_nat > option_a,A: option_nat,B: a] :
      ( ( ( M @ A )
        = ( some_a @ B ) )
     => ( member_option_nat @ A @ ( dom_option_nat_a @ M ) ) ) ).

% domI
thf(fact_835_domI,axiom,
    ! [M: a > option_nat,A: a,B: nat] :
      ( ( ( M @ A )
        = ( some_nat @ B ) )
     => ( member_a @ A @ ( dom_a_nat @ M ) ) ) ).

% domI
thf(fact_836_domI,axiom,
    ! [M: nat > option_nat,A: nat,B: nat] :
      ( ( ( M @ A )
        = ( some_nat @ B ) )
     => ( member_nat @ A @ ( dom_nat_nat @ M ) ) ) ).

% domI
thf(fact_837_domI,axiom,
    ! [M: option_a > option_nat,A: option_a,B: nat] :
      ( ( ( M @ A )
        = ( some_nat @ B ) )
     => ( member_option_a @ A @ ( dom_option_a_nat @ M ) ) ) ).

% domI
thf(fact_838_domI,axiom,
    ! [M: option_nat > option_nat,A: option_nat,B: nat] :
      ( ( ( M @ A )
        = ( some_nat @ B ) )
     => ( member_option_nat @ A @ ( dom_option_nat_nat @ M ) ) ) ).

% domI
thf(fact_839_domD,axiom,
    ! [A: a,M: a > option_a] :
      ( ( member_a @ A @ ( dom_a_a @ M ) )
     => ? [B4: a] :
          ( ( M @ A )
          = ( some_a @ B4 ) ) ) ).

% domD
thf(fact_840_domD,axiom,
    ! [A: nat,M: nat > option_a] :
      ( ( member_nat @ A @ ( dom_nat_a @ M ) )
     => ? [B4: a] :
          ( ( M @ A )
          = ( some_a @ B4 ) ) ) ).

% domD
thf(fact_841_domD,axiom,
    ! [A: option_a,M: option_a > option_a] :
      ( ( member_option_a @ A @ ( dom_option_a_a @ M ) )
     => ? [B4: a] :
          ( ( M @ A )
          = ( some_a @ B4 ) ) ) ).

% domD
thf(fact_842_domD,axiom,
    ! [A: option_nat,M: option_nat > option_a] :
      ( ( member_option_nat @ A @ ( dom_option_nat_a @ M ) )
     => ? [B4: a] :
          ( ( M @ A )
          = ( some_a @ B4 ) ) ) ).

% domD
thf(fact_843_domD,axiom,
    ! [A: a,M: a > option_nat] :
      ( ( member_a @ A @ ( dom_a_nat @ M ) )
     => ? [B4: nat] :
          ( ( M @ A )
          = ( some_nat @ B4 ) ) ) ).

% domD
thf(fact_844_domD,axiom,
    ! [A: nat,M: nat > option_nat] :
      ( ( member_nat @ A @ ( dom_nat_nat @ M ) )
     => ? [B4: nat] :
          ( ( M @ A )
          = ( some_nat @ B4 ) ) ) ).

% domD
thf(fact_845_domD,axiom,
    ! [A: option_a,M: option_a > option_nat] :
      ( ( member_option_a @ A @ ( dom_option_a_nat @ M ) )
     => ? [B4: nat] :
          ( ( M @ A )
          = ( some_nat @ B4 ) ) ) ).

% domD
thf(fact_846_domD,axiom,
    ! [A: option_nat,M: option_nat > option_nat] :
      ( ( member_option_nat @ A @ ( dom_option_nat_nat @ M ) )
     => ? [B4: nat] :
          ( ( M @ A )
          = ( some_nat @ B4 ) ) ) ).

% domD
thf(fact_847_domIff,axiom,
    ! [A: a,M: a > option_a] :
      ( ( member_a @ A @ ( dom_a_a @ M ) )
      = ( ( M @ A )
       != none_a ) ) ).

% domIff
thf(fact_848_domIff,axiom,
    ! [A: nat,M: nat > option_a] :
      ( ( member_nat @ A @ ( dom_nat_a @ M ) )
      = ( ( M @ A )
       != none_a ) ) ).

% domIff
thf(fact_849_domIff,axiom,
    ! [A: option_a,M: option_a > option_a] :
      ( ( member_option_a @ A @ ( dom_option_a_a @ M ) )
      = ( ( M @ A )
       != none_a ) ) ).

% domIff
thf(fact_850_domIff,axiom,
    ! [A: option_nat,M: option_nat > option_a] :
      ( ( member_option_nat @ A @ ( dom_option_nat_a @ M ) )
      = ( ( M @ A )
       != none_a ) ) ).

% domIff
thf(fact_851_domIff,axiom,
    ! [A: a,M: a > option_nat] :
      ( ( member_a @ A @ ( dom_a_nat @ M ) )
      = ( ( M @ A )
       != none_nat ) ) ).

% domIff
thf(fact_852_domIff,axiom,
    ! [A: nat,M: nat > option_nat] :
      ( ( member_nat @ A @ ( dom_nat_nat @ M ) )
      = ( ( M @ A )
       != none_nat ) ) ).

% domIff
thf(fact_853_domIff,axiom,
    ! [A: option_a,M: option_a > option_nat] :
      ( ( member_option_a @ A @ ( dom_option_a_nat @ M ) )
      = ( ( M @ A )
       != none_nat ) ) ).

% domIff
thf(fact_854_domIff,axiom,
    ! [A: option_nat,M: option_nat > option_nat] :
      ( ( member_option_nat @ A @ ( dom_option_nat_nat @ M ) )
      = ( ( M @ A )
       != none_nat ) ) ).

% domIff
thf(fact_855_order__le__imp__less__or__eq,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_set_nat @ X @ Y )
        | ( X = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_856_order__le__imp__less__or__eq,axiom,
    ! [X: $o > nat,Y: $o > nat] :
      ( ( ord_less_eq_o_nat @ X @ Y )
     => ( ( ord_less_o_nat @ X @ Y )
        | ( X = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_857_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_858_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_859_order__less__le__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > nat,C: nat] :
      ( ( ord_less_set_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_set_nat @ X2 @ Y3 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_860_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_nat @ X2 @ Y3 )
             => ( ord_less_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_861_order__less__le__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > set_nat,C: set_nat] :
      ( ( ord_less_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_set_nat @ X2 @ Y3 )
             => ( ord_less_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_862_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > $o > nat,C: $o > nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_nat @ X2 @ Y3 )
             => ( ord_less_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_863_order__less__le__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > $o > nat,C: $o > nat] :
      ( ( ord_less_set_nat @ A @ B )
     => ( ( ord_less_eq_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_set_nat @ X2 @ Y3 )
             => ( ord_less_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_864_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_nat @ X2 @ Y3 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_865_order__less__le__subst1,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( ord_less_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_866_order__less__le__subst1,axiom,
    ! [A: $o > nat,F: nat > $o > nat,B: nat,C: nat] :
      ( ( ord_less_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_867_order__less__le__subst1,axiom,
    ! [A: nat,F: set_nat > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_868_order__less__le__subst1,axiom,
    ! [A: set_nat,F: set_nat > set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_869_order__less__le__subst1,axiom,
    ! [A: $o > nat,F: set_nat > $o > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_870_order__less__le__subst1,axiom,
    ! [A: nat,F: ( $o > nat ) > nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_871_order__less__le__subst1,axiom,
    ! [A: set_nat,F: ( $o > nat ) > set_nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_872_order__less__le__subst1,axiom,
    ! [A: $o > nat,F: ( $o > nat ) > $o > nat,B: $o > nat,C: $o > nat] :
      ( ( ord_less_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_o_nat @ B @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_873_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_874_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_875_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_876_order__le__less__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_877_order__le__less__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_878_order__le__less__subst2,axiom,
    ! [A: set_nat,B: set_nat,F: set_nat > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_eq_set_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_879_order__le__less__subst2,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > nat,C: nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_880_order__le__less__subst2,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > set_nat,C: set_nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_set_nat @ ( F @ B ) @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_881_order__le__less__subst2,axiom,
    ! [A: $o > nat,B: $o > nat,F: ( $o > nat ) > $o > nat,C: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( ord_less_o_nat @ ( F @ B ) @ C )
       => ( ! [X2: $o > nat,Y3: $o > nat] :
              ( ( ord_less_eq_o_nat @ X2 @ Y3 )
             => ( ord_less_eq_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_882_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_883_order__le__less__subst1,axiom,
    ! [A: nat,F: set_nat > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_set_nat @ X2 @ Y3 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_884_order__le__less__subst1,axiom,
    ! [A: set_nat,F: nat > set_nat,B: nat,C: nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_nat @ X2 @ Y3 )
             => ( ord_less_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_885_order__le__less__subst1,axiom,
    ! [A: set_nat,F: set_nat > set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ ( F @ B ) )
     => ( ( ord_less_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_set_nat @ X2 @ Y3 )
             => ( ord_less_set_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_set_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_886_order__le__less__subst1,axiom,
    ! [A: $o > nat,F: nat > $o > nat,B: nat,C: nat] :
      ( ( ord_less_eq_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_nat @ X2 @ Y3 )
             => ( ord_less_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_887_order__le__less__subst1,axiom,
    ! [A: $o > nat,F: set_nat > $o > nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_o_nat @ A @ ( F @ B ) )
     => ( ( ord_less_set_nat @ B @ C )
       => ( ! [X2: set_nat,Y3: set_nat] :
              ( ( ord_less_set_nat @ X2 @ Y3 )
             => ( ord_less_o_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_o_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_888_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 )
       => ( ! [X2: nat,Y3: nat] :
              ( ( ord_less_nat @ X2 @ Y3 )
             => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_889_order__less__le__trans,axiom,
    ! [X: set_nat,Y: set_nat,Z2: set_nat] :
      ( ( ord_less_set_nat @ X @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ Z2 )
       => ( ord_less_set_nat @ X @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_890_order__less__le__trans,axiom,
    ! [X: $o > nat,Y: $o > nat,Z2: $o > nat] :
      ( ( ord_less_o_nat @ X @ Y )
     => ( ( ord_less_eq_o_nat @ Y @ Z2 )
       => ( ord_less_o_nat @ X @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_891_order__less__le__trans,axiom,
    ! [X: nat,Y: nat,Z2: nat] :
      ( ( ord_less_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z2 )
       => ( ord_less_nat @ X @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_892_order__le__less__trans,axiom,
    ! [X: set_nat,Y: set_nat,Z2: set_nat] :
      ( ( ord_less_eq_set_nat @ X @ Y )
     => ( ( ord_less_set_nat @ Y @ Z2 )
       => ( ord_less_set_nat @ X @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_893_order__le__less__trans,axiom,
    ! [X: $o > nat,Y: $o > nat,Z2: $o > nat] :
      ( ( ord_less_eq_o_nat @ X @ Y )
     => ( ( ord_less_o_nat @ Y @ Z2 )
       => ( ord_less_o_nat @ X @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_894_order__le__less__trans,axiom,
    ! [X: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_nat @ Y @ Z2 )
       => ( ord_less_nat @ X @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_895_order__neq__le__trans,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( A != B )
     => ( ( ord_less_eq_set_nat @ A @ B )
       => ( ord_less_set_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_896_order__neq__le__trans,axiom,
    ! [A: $o > nat,B: $o > nat] :
      ( ( A != B )
     => ( ( ord_less_eq_o_nat @ A @ B )
       => ( ord_less_o_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_897_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_898_order__le__neq__trans,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_set_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_899_order__le__neq__trans,axiom,
    ! [A: $o > nat,B: $o > nat] :
      ( ( ord_less_eq_o_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_o_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_900_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_901_order__less__imp__le,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ord_less_set_nat @ X @ Y )
     => ( ord_less_eq_set_nat @ X @ Y ) ) ).

% order_less_imp_le
thf(fact_902_order__less__imp__le,axiom,
    ! [X: $o > nat,Y: $o > nat] :
      ( ( ord_less_o_nat @ X @ Y )
     => ( ord_less_eq_o_nat @ X @ Y ) ) ).

% order_less_imp_le
thf(fact_903_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_904_linorder__not__less,axiom,
    ! [X: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X @ Y ) )
      = ( ord_less_eq_nat @ Y @ X ) ) ).

% linorder_not_less
thf(fact_905_subset__iff__psubset__eq,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A7: set_nat,B6: set_nat] :
          ( ( ord_less_set_nat @ A7 @ B6 )
          | ( A7 = B6 ) ) ) ) ).

% subset_iff_psubset_eq
thf(fact_906_linorder__not__le,axiom,
    ! [X: nat,Y: nat] :
      ( ( ~ ( ord_less_eq_nat @ X @ Y ) )
      = ( ord_less_nat @ Y @ X ) ) ).

% linorder_not_le
thf(fact_907_subset__psubset__trans,axiom,
    ! [A2: set_nat,B2: set_nat,C3: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( ord_less_set_nat @ B2 @ C3 )
       => ( ord_less_set_nat @ A2 @ C3 ) ) ) ).

% subset_psubset_trans
thf(fact_908_subset__not__subset__eq,axiom,
    ( ord_less_set_nat
    = ( ^ [A7: set_nat,B6: set_nat] :
          ( ( ord_less_eq_set_nat @ A7 @ B6 )
          & ~ ( ord_less_eq_set_nat @ B6 @ A7 ) ) ) ) ).

% subset_not_subset_eq
thf(fact_909_psubset__subset__trans,axiom,
    ! [A2: set_nat,B2: set_nat,C3: set_nat] :
      ( ( ord_less_set_nat @ A2 @ B2 )
     => ( ( ord_less_eq_set_nat @ B2 @ C3 )
       => ( ord_less_set_nat @ A2 @ C3 ) ) ) ).

% psubset_subset_trans
thf(fact_910_order__less__le,axiom,
    ( ord_less_set_nat
    = ( ^ [X3: set_nat,Y2: set_nat] :
          ( ( ord_less_eq_set_nat @ X3 @ Y2 )
          & ( X3 != Y2 ) ) ) ) ).

% order_less_le
thf(fact_911_order__less__le,axiom,
    ( ord_less_o_nat
    = ( ^ [X3: $o > nat,Y2: $o > nat] :
          ( ( ord_less_eq_o_nat @ X3 @ Y2 )
          & ( X3 != Y2 ) ) ) ) ).

% order_less_le
thf(fact_912_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X3: nat,Y2: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y2 )
          & ( X3 != Y2 ) ) ) ) ).

% order_less_le
thf(fact_913_order__le__less,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [X3: set_nat,Y2: set_nat] :
          ( ( ord_less_set_nat @ X3 @ Y2 )
          | ( X3 = Y2 ) ) ) ) ).

% order_le_less
thf(fact_914_order__le__less,axiom,
    ( ord_less_eq_o_nat
    = ( ^ [X3: $o > nat,Y2: $o > nat] :
          ( ( ord_less_o_nat @ X3 @ Y2 )
          | ( X3 = Y2 ) ) ) ) ).

% order_le_less
thf(fact_915_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X3: nat,Y2: nat] :
          ( ( ord_less_nat @ X3 @ Y2 )
          | ( X3 = Y2 ) ) ) ) ).

% order_le_less
thf(fact_916_psubset__imp__subset,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_set_nat @ A2 @ B2 )
     => ( ord_less_eq_set_nat @ A2 @ B2 ) ) ).

% psubset_imp_subset
thf(fact_917_subset__image__iff,axiom,
    ! [B2: set_option_a,F: a > option_a,A2: set_a] :
      ( ( ord_le1955136853071979460tion_a @ B2 @ ( image_a_option_a @ F @ A2 ) )
      = ( ? [AA: set_a] :
            ( ( ord_less_eq_set_a @ AA @ A2 )
            & ( B2
              = ( image_a_option_a @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_918_subset__image__iff,axiom,
    ! [B2: set_option_nat,F: nat > option_nat,A2: set_nat] :
      ( ( ord_le6937355464348597430on_nat @ B2 @ ( image_nat_option_nat @ F @ A2 ) )
      = ( ? [AA: set_nat] :
            ( ( ord_less_eq_set_nat @ AA @ A2 )
            & ( B2
              = ( image_nat_option_nat @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_919_subset__image__iff,axiom,
    ! [B2: set_option_a,F: nat > option_a,A2: set_nat] :
      ( ( ord_le1955136853071979460tion_a @ B2 @ ( image_nat_option_a @ F @ A2 ) )
      = ( ? [AA: set_nat] :
            ( ( ord_less_eq_set_nat @ AA @ A2 )
            & ( B2
              = ( image_nat_option_a @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_920_subset__image__iff,axiom,
    ! [B2: set_nat,F: nat > nat,A2: set_nat] :
      ( ( ord_less_eq_set_nat @ B2 @ ( image_nat_nat @ F @ A2 ) )
      = ( ? [AA: set_nat] :
            ( ( ord_less_eq_set_nat @ AA @ A2 )
            & ( B2
              = ( image_nat_nat @ F @ AA ) ) ) ) ) ).

% subset_image_iff
thf(fact_921_image__subset__iff,axiom,
    ! [F: a > option_a,A2: set_a,B2: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ ( image_a_option_a @ F @ A2 ) @ B2 )
      = ( ! [X3: a] :
            ( ( member_a @ X3 @ A2 )
           => ( member_option_a @ ( F @ X3 ) @ B2 ) ) ) ) ).

% image_subset_iff
thf(fact_922_image__subset__iff,axiom,
    ! [F: nat > option_a,A2: set_nat,B2: set_option_a] :
      ( ( ord_le1955136853071979460tion_a @ ( image_nat_option_a @ F @ A2 ) @ B2 )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ A2 )
           => ( member_option_a @ ( F @ X3 ) @ B2 ) ) ) ) ).

% image_subset_iff
thf(fact_923_image__subset__iff,axiom,
    ! [F: nat > option_nat,A2: set_nat,B2: set_option_nat] :
      ( ( ord_le6937355464348597430on_nat @ ( image_nat_option_nat @ F @ A2 ) @ B2 )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ A2 )
           => ( member_option_nat @ ( F @ X3 ) @ B2 ) ) ) ) ).

% image_subset_iff
thf(fact_924_image__subset__iff,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B2 )
      = ( ! [X3: nat] :
            ( ( member_nat @ X3 @ A2 )
           => ( member_nat @ ( F @ X3 ) @ B2 ) ) ) ) ).

% image_subset_iff
thf(fact_925_subset__imageE,axiom,
    ! [B2: set_option_a,F: a > option_a,A2: set_a] :
      ( ( ord_le1955136853071979460tion_a @ B2 @ ( image_a_option_a @ F @ A2 ) )
     => ~ ! [C4: set_a] :
            ( ( ord_less_eq_set_a @ C4 @ A2 )
           => ( B2
             != ( image_a_option_a @ F @ C4 ) ) ) ) ).

% subset_imageE
thf(fact_926_subset__imageE,axiom,
    ! [B2: set_option_nat,F: nat > option_nat,A2: set_nat] :
      ( ( ord_le6937355464348597430on_nat @ B2 @ ( image_nat_option_nat @ F @ A2 ) )
     => ~ ! [C4: set_nat] :
            ( ( ord_less_eq_set_nat @ C4 @ A2 )
           => ( B2
             != ( image_nat_option_nat @ F @ C4 ) ) ) ) ).

% subset_imageE
thf(fact_927_subset__imageE,axiom,
    ! [B2: set_option_a,F: nat > option_a,A2: set_nat] :
      ( ( ord_le1955136853071979460tion_a @ B2 @ ( image_nat_option_a @ F @ A2 ) )
     => ~ ! [C4: set_nat] :
            ( ( ord_less_eq_set_nat @ C4 @ A2 )
           => ( B2
             != ( image_nat_option_a @ F @ C4 ) ) ) ) ).

% subset_imageE
thf(fact_928_subset__imageE,axiom,
    ! [B2: set_nat,F: nat > nat,A2: set_nat] :
      ( ( ord_less_eq_set_nat @ B2 @ ( image_nat_nat @ F @ A2 ) )
     => ~ ! [C4: set_nat] :
            ( ( ord_less_eq_set_nat @ C4 @ A2 )
           => ( B2
             != ( image_nat_nat @ F @ C4 ) ) ) ) ).

% subset_imageE
thf(fact_929_image__subsetI,axiom,
    ! [A2: set_a,F: a > a,B2: set_a] :
      ( ! [X2: a] :
          ( ( member_a @ X2 @ A2 )
         => ( member_a @ ( F @ X2 ) @ B2 ) )
     => ( ord_less_eq_set_a @ ( image_a_a @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_930_image__subsetI,axiom,
    ! [A2: set_nat,F: nat > a,B2: set_a] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_a @ ( F @ X2 ) @ B2 ) )
     => ( ord_less_eq_set_a @ ( image_nat_a @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_931_image__subsetI,axiom,
    ! [A2: set_a,F: a > nat,B2: set_nat] :
      ( ! [X2: a] :
          ( ( member_a @ X2 @ A2 )
         => ( member_nat @ ( F @ X2 ) @ B2 ) )
     => ( ord_less_eq_set_nat @ ( image_a_nat @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_932_image__subsetI,axiom,
    ! [A2: set_nat,F: nat > nat,B2: set_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_nat @ ( F @ X2 ) @ B2 ) )
     => ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_933_image__subsetI,axiom,
    ! [A2: set_a,F: a > option_a,B2: set_option_a] :
      ( ! [X2: a] :
          ( ( member_a @ X2 @ A2 )
         => ( member_option_a @ ( F @ X2 ) @ B2 ) )
     => ( ord_le1955136853071979460tion_a @ ( image_a_option_a @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_934_image__subsetI,axiom,
    ! [A2: set_a,F: a > option_nat,B2: set_option_nat] :
      ( ! [X2: a] :
          ( ( member_a @ X2 @ A2 )
         => ( member_option_nat @ ( F @ X2 ) @ B2 ) )
     => ( ord_le6937355464348597430on_nat @ ( image_a_option_nat @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_935_image__subsetI,axiom,
    ! [A2: set_nat,F: nat > option_a,B2: set_option_a] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_option_a @ ( F @ X2 ) @ B2 ) )
     => ( ord_le1955136853071979460tion_a @ ( image_nat_option_a @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_936_image__subsetI,axiom,
    ! [A2: set_nat,F: nat > option_nat,B2: set_option_nat] :
      ( ! [X2: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( member_option_nat @ ( F @ X2 ) @ B2 ) )
     => ( ord_le6937355464348597430on_nat @ ( image_nat_option_nat @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_937_image__subsetI,axiom,
    ! [A2: set_option_a,F: option_a > a,B2: set_a] :
      ( ! [X2: option_a] :
          ( ( member_option_a @ X2 @ A2 )
         => ( member_a @ ( F @ X2 ) @ B2 ) )
     => ( ord_less_eq_set_a @ ( image_option_a_a @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_938_image__subsetI,axiom,
    ! [A2: set_option_nat,F: option_nat > a,B2: set_a] :
      ( ! [X2: option_nat] :
          ( ( member_option_nat @ X2 @ A2 )
         => ( member_a @ ( F @ X2 ) @ B2 ) )
     => ( ord_less_eq_set_a @ ( image_option_nat_a @ F @ A2 ) @ B2 ) ) ).

% image_subsetI
thf(fact_939_psubset__eq,axiom,
    ( ord_less_set_nat
    = ( ^ [A7: set_nat,B6: set_nat] :
          ( ( ord_less_eq_set_nat @ A7 @ B6 )
          & ( A7 != B6 ) ) ) ) ).

% psubset_eq
thf(fact_940_image__mono,axiom,
    ! [A2: set_nat,B2: set_nat,F: nat > option_a] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ord_le1955136853071979460tion_a @ ( image_nat_option_a @ F @ A2 ) @ ( image_nat_option_a @ F @ B2 ) ) ) ).

% image_mono
thf(fact_941_image__mono,axiom,
    ! [A2: set_nat,B2: set_nat,F: nat > nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ ( image_nat_nat @ F @ B2 ) ) ) ).

% image_mono
thf(fact_942_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_943_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_944_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B3 @ A3 )
          & ~ ( ord_less_eq_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_945_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_946_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_947_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B3 @ A3 )
          & ( A3 != B3 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_948_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( ord_less_nat @ B3 @ A3 )
          | ( A3 = B3 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_949_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
          & ~ ( ord_less_eq_nat @ B3 @ A3 ) ) ) ) ).

% order.strict_iff_not
thf(fact_950_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_951_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_952_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
          & ( A3 != B3 ) ) ) ) ).

% order.strict_iff_order
thf(fact_953_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_nat @ A3 @ B3 )
          | ( A3 = B3 ) ) ) ) ).

% order.order_iff_strict
thf(fact_954_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_955_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X3: nat,Y2: nat] :
          ( ( ord_less_eq_nat @ X3 @ Y2 )
          & ~ ( ord_less_eq_nat @ Y2 @ X3 ) ) ) ) ).

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

% antisym_conv2
thf(fact_957_antisym__conv1,axiom,
    ! [X: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ X @ Y )
        = ( X = Y ) ) ) ).

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

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

% leI
thf(fact_960_leD,axiom,
    ! [Y: nat,X: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ~ ( ord_less_nat @ X @ Y ) ) ).

% leD
thf(fact_961_insert__dom,axiom,
    ! [F: nat > option_a,X: nat,Y: a] :
      ( ( ( F @ X )
        = ( some_a @ Y ) )
     => ( ( insert_nat @ X @ ( dom_nat_a @ F ) )
        = ( dom_nat_a @ F ) ) ) ).

% insert_dom
thf(fact_962_None__notin__image__Some,axiom,
    ! [A2: set_a] :
      ~ ( member_option_a @ none_a @ ( image_a_option_a @ some_a @ A2 ) ) ).

% None_notin_image_Some
thf(fact_963_in__these__eq,axiom,
    ! [X: a,A2: set_option_a] :
      ( ( member_a @ X @ ( these_a @ A2 ) )
      = ( member_option_a @ ( some_a @ X ) @ A2 ) ) ).

% in_these_eq
thf(fact_964_dom__minus,axiom,
    ! [F: nat > option_a,X: nat,A2: set_nat] :
      ( ( ( F @ X )
        = none_a )
     => ( ( minus_minus_set_nat @ ( dom_nat_a @ F ) @ ( insert_nat @ X @ A2 ) )
        = ( minus_minus_set_nat @ ( dom_nat_a @ F ) @ A2 ) ) ) ).

% dom_minus
thf(fact_965_these__empty__eq,axiom,
    ! [B2: set_option_a] :
      ( ( ( these_a @ B2 )
        = bot_bot_set_a )
      = ( ( B2 = bot_bot_set_option_a )
        | ( B2
          = ( insert_option_a @ none_a @ bot_bot_set_option_a ) ) ) ) ).

% these_empty_eq
thf(fact_966_these__empty__eq,axiom,
    ! [B2: set_option_nat] :
      ( ( ( these_nat @ B2 )
        = bot_bot_set_nat )
      = ( ( B2 = bot_bo5009843511495006442on_nat )
        | ( B2
          = ( insert_option_nat @ none_nat @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% these_empty_eq
thf(fact_967_these__not__empty__eq,axiom,
    ! [B2: set_option_a] :
      ( ( ( these_a @ B2 )
       != bot_bot_set_a )
      = ( ( B2 != bot_bot_set_option_a )
        & ( B2
         != ( insert_option_a @ none_a @ bot_bot_set_option_a ) ) ) ) ).

% these_not_empty_eq
thf(fact_968_these__not__empty__eq,axiom,
    ! [B2: set_option_nat] :
      ( ( ( these_nat @ B2 )
       != bot_bot_set_nat )
      = ( ( B2 != bot_bo5009843511495006442on_nat )
        & ( B2
         != ( insert_option_nat @ none_nat @ bot_bo5009843511495006442on_nat ) ) ) ) ).

% these_not_empty_eq
thf(fact_969_complete__interval,axiom,
    ! [A: nat,B: nat,P2: nat > $o] :
      ( ( ord_less_nat @ A @ B )
     => ( ( P2 @ A )
       => ( ~ ( P2 @ B )
         => ? [C5: nat] :
              ( ( ord_less_eq_nat @ A @ C5 )
              & ( ord_less_eq_nat @ C5 @ B )
              & ! [X7: nat] :
                  ( ( ( ord_less_eq_nat @ A @ X7 )
                    & ( ord_less_nat @ X7 @ C5 ) )
                 => ( P2 @ X7 ) )
              & ! [D3: nat] :
                  ( ! [X2: nat] :
                      ( ( ( ord_less_eq_nat @ A @ X2 )
                        & ( ord_less_nat @ X2 @ D3 ) )
                     => ( P2 @ X2 ) )
                 => ( ord_less_eq_nat @ D3 @ C5 ) ) ) ) ) ) ).

% complete_interval
thf(fact_970_pinf_I6_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X7: nat] :
      ( ( ord_less_nat @ Z4 @ X7 )
     => ~ ( ord_less_eq_nat @ X7 @ T ) ) ).

% pinf(6)
thf(fact_971_pinf_I8_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X7: nat] :
      ( ( ord_less_nat @ Z4 @ X7 )
     => ( ord_less_eq_nat @ T @ X7 ) ) ).

% pinf(8)
thf(fact_972_minf_I8_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X7: nat] :
      ( ( ord_less_nat @ X7 @ Z4 )
     => ~ ( ord_less_eq_nat @ T @ X7 ) ) ).

% minf(8)
thf(fact_973_minf_I6_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X7: nat] :
      ( ( ord_less_nat @ X7 @ Z4 )
     => ( ord_less_eq_nat @ X7 @ T ) ) ).

% minf(6)
thf(fact_974_remove__induct,axiom,
    ! [P2: set_nat > $o,B2: set_nat] :
      ( ( P2 @ bot_bot_set_nat )
     => ( ( ~ ( finite_finite_nat @ B2 )
         => ( P2 @ B2 ) )
       => ( ! [A8: set_nat] :
              ( ( finite_finite_nat @ A8 )
             => ( ( A8 != bot_bot_set_nat )
               => ( ( ord_less_eq_set_nat @ A8 @ B2 )
                 => ( ! [X7: nat] :
                        ( ( member_nat @ X7 @ A8 )
                       => ( P2 @ ( minus_minus_set_nat @ A8 @ ( insert_nat @ X7 @ bot_bot_set_nat ) ) ) )
                   => ( P2 @ A8 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% remove_induct
thf(fact_975_finite__remove__induct,axiom,
    ! [B2: set_nat,P2: set_nat > $o] :
      ( ( finite_finite_nat @ B2 )
     => ( ( P2 @ bot_bot_set_nat )
       => ( ! [A8: set_nat] :
              ( ( finite_finite_nat @ A8 )
             => ( ( A8 != bot_bot_set_nat )
               => ( ( ord_less_eq_set_nat @ A8 @ B2 )
                 => ( ! [X7: nat] :
                        ( ( member_nat @ X7 @ A8 )
                       => ( P2 @ ( minus_minus_set_nat @ A8 @ ( insert_nat @ X7 @ bot_bot_set_nat ) ) ) )
                   => ( P2 @ A8 ) ) ) ) )
         => ( P2 @ B2 ) ) ) ) ).

% finite_remove_induct
thf(fact_976_finite__surj__inj,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ A2 @ ( image_nat_nat @ F @ A2 ) )
       => ( inj_on_nat_nat @ F @ A2 ) ) ) ).

% finite_surj_inj
thf(fact_977_inj__on__finite,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B2 )
       => ( ( finite_finite_nat @ B2 )
         => ( finite_finite_nat @ A2 ) ) ) ) ).

% inj_on_finite
thf(fact_978_endo__inj__surj,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ A2 )
       => ( ( inj_on_nat_nat @ F @ A2 )
         => ( ( image_nat_nat @ F @ A2 )
            = A2 ) ) ) ) ).

% endo_inj_surj
thf(fact_979_finite__has__maximal2,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ( ord_less_eq_nat @ A @ X2 )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ X2 @ Xa )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_maximal2
thf(fact_980_finite__has__minimal2,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ( ord_less_eq_nat @ X2 @ A )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ Xa @ X2 )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_minimal2
thf(fact_981_finite__subset,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( finite_finite_nat @ B2 )
       => ( finite_finite_nat @ A2 ) ) ) ).

% finite_subset
thf(fact_982_infinite__super,axiom,
    ! [S4: set_nat,T3: set_nat] :
      ( ( ord_less_eq_set_nat @ S4 @ T3 )
     => ( ~ ( finite_finite_nat @ S4 )
       => ~ ( finite_finite_nat @ T3 ) ) ) ).

% infinite_super
thf(fact_983_rev__finite__subset,axiom,
    ! [B2: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ( ord_less_eq_set_nat @ A2 @ B2 )
       => ( finite_finite_nat @ A2 ) ) ) ).

% rev_finite_subset
thf(fact_984_inj__Some,axiom,
    ! [A2: set_a] : ( inj_on_a_option_a @ some_a @ A2 ) ).

% inj_Some
thf(fact_985_inj__img__insertE,axiom,
    ! [F: nat > nat,A2: set_nat,X: nat,B2: set_nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ~ ( member_nat @ X @ B2 )
       => ( ( ( insert_nat @ X @ B2 )
            = ( image_nat_nat @ F @ A2 ) )
         => ~ ! [X8: nat,A9: set_nat] :
                ( ~ ( member_nat @ X8 @ A9 )
               => ( ( A2
                    = ( insert_nat @ X8 @ A9 ) )
                 => ( ( X
                      = ( F @ X8 ) )
                   => ( B2
                     != ( image_nat_nat @ F @ A9 ) ) ) ) ) ) ) ) ).

% inj_img_insertE
thf(fact_986_finite__has__minimal,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ Xa @ X2 )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_minimal
thf(fact_987_finite__has__maximal,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ! [Xa: nat] :
                ( ( member_nat @ Xa @ A2 )
               => ( ( ord_less_eq_nat @ X2 @ Xa )
                 => ( X2 = Xa ) ) ) ) ) ) ).

% finite_has_maximal
thf(fact_988_finite__surj,axiom,
    ! [A2: set_nat,B2: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ B2 @ ( image_nat_nat @ F @ A2 ) )
       => ( finite_finite_nat @ B2 ) ) ) ).

% finite_surj
thf(fact_989_finite__subset__image,axiom,
    ! [B2: set_nat,F: nat > nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ( ord_less_eq_set_nat @ B2 @ ( image_nat_nat @ F @ A2 ) )
       => ? [C4: set_nat] :
            ( ( ord_less_eq_set_nat @ C4 @ A2 )
            & ( finite_finite_nat @ C4 )
            & ( B2
              = ( image_nat_nat @ F @ C4 ) ) ) ) ) ).

% finite_subset_image
thf(fact_990_ex__finite__subset__image,axiom,
    ! [F: nat > nat,A2: set_nat,P2: set_nat > $o] :
      ( ( ? [B6: set_nat] :
            ( ( finite_finite_nat @ B6 )
            & ( ord_less_eq_set_nat @ B6 @ ( image_nat_nat @ F @ A2 ) )
            & ( P2 @ B6 ) ) )
      = ( ? [B6: set_nat] :
            ( ( finite_finite_nat @ B6 )
            & ( ord_less_eq_set_nat @ B6 @ A2 )
            & ( P2 @ ( image_nat_nat @ F @ B6 ) ) ) ) ) ).

% ex_finite_subset_image
thf(fact_991_all__finite__subset__image,axiom,
    ! [F: nat > nat,A2: set_nat,P2: set_nat > $o] :
      ( ( ! [B6: set_nat] :
            ( ( ( finite_finite_nat @ B6 )
              & ( ord_less_eq_set_nat @ B6 @ ( image_nat_nat @ F @ A2 ) ) )
           => ( P2 @ B6 ) ) )
      = ( ! [B6: set_nat] :
            ( ( ( finite_finite_nat @ B6 )
              & ( ord_less_eq_set_nat @ B6 @ A2 ) )
           => ( P2 @ ( image_nat_nat @ F @ B6 ) ) ) ) ) ).

% all_finite_subset_image
thf(fact_992_finite__subset__induct,axiom,
    ! [F3: set_nat,A2: set_nat,P2: set_nat > $o] :
      ( ( finite_finite_nat @ F3 )
     => ( ( ord_less_eq_set_nat @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_nat )
         => ( ! [A4: nat,F4: set_nat] :
                ( ( finite_finite_nat @ F4 )
               => ( ( member_nat @ A4 @ A2 )
                 => ( ~ ( member_nat @ A4 @ F4 )
                   => ( ( P2 @ F4 )
                     => ( P2 @ ( insert_nat @ A4 @ F4 ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct
thf(fact_993_finite__subset__induct_H,axiom,
    ! [F3: set_nat,A2: set_nat,P2: set_nat > $o] :
      ( ( finite_finite_nat @ F3 )
     => ( ( ord_less_eq_set_nat @ F3 @ A2 )
       => ( ( P2 @ bot_bot_set_nat )
         => ( ! [A4: nat,F4: set_nat] :
                ( ( finite_finite_nat @ F4 )
               => ( ( member_nat @ A4 @ A2 )
                 => ( ( ord_less_eq_set_nat @ F4 @ A2 )
                   => ( ~ ( member_nat @ A4 @ F4 )
                     => ( ( P2 @ F4 )
                       => ( P2 @ ( insert_nat @ A4 @ F4 ) ) ) ) ) ) )
           => ( P2 @ F3 ) ) ) ) ) ).

% finite_subset_induct'
thf(fact_994_finite__ranking__induct,axiom,
    ! [S4: set_nat,P2: set_nat > $o,F: nat > nat] :
      ( ( finite_finite_nat @ S4 )
     => ( ( P2 @ bot_bot_set_nat )
       => ( ! [X2: nat,S8: set_nat] :
              ( ( finite_finite_nat @ S8 )
             => ( ! [Y5: nat] :
                    ( ( member_nat @ Y5 @ S8 )
                   => ( ord_less_eq_nat @ ( F @ Y5 ) @ ( F @ X2 ) ) )
               => ( ( P2 @ S8 )
                 => ( P2 @ ( insert_nat @ X2 @ S8 ) ) ) ) )
         => ( P2 @ S4 ) ) ) ) ).

% finite_ranking_induct
thf(fact_995_arg__min__least,axiom,
    ! [S4: set_nat,Y: nat,F: nat > nat] :
      ( ( finite_finite_nat @ S4 )
     => ( ( S4 != bot_bot_set_nat )
       => ( ( member_nat @ Y @ S4 )
         => ( ord_less_eq_nat @ ( F @ ( lattic7446932960582359483at_nat @ F @ S4 ) ) @ ( F @ Y ) ) ) ) ) ).

% arg_min_least
thf(fact_996_Sup__fin_Osubset__imp,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( finite_finite_nat @ B2 )
         => ( ord_less_eq_nat @ ( lattic1093996805478795353in_nat @ A2 ) @ ( lattic1093996805478795353in_nat @ B2 ) ) ) ) ) ).

% Sup_fin.subset_imp
thf(fact_997_Sup__fin_Osubset,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( B2 != bot_bot_set_nat )
       => ( ( ord_less_eq_set_nat @ B2 @ A2 )
         => ( ( sup_sup_nat @ ( lattic1093996805478795353in_nat @ B2 ) @ ( lattic1093996805478795353in_nat @ A2 ) )
            = ( lattic1093996805478795353in_nat @ A2 ) ) ) ) ) ).

% Sup_fin.subset
thf(fact_998_Sup__fin_OcoboundedI,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ( ord_less_eq_nat @ A @ ( lattic1093996805478795353in_nat @ A2 ) ) ) ) ).

% Sup_fin.coboundedI
thf(fact_999_Sup__fin_OboundedE,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ ( lattic1093996805478795353in_nat @ A2 ) @ X )
         => ! [A10: nat] :
              ( ( member_nat @ A10 @ A2 )
             => ( ord_less_eq_nat @ A10 @ X ) ) ) ) ) ).

% Sup_fin.boundedE
thf(fact_1000_Sup__fin_OboundedI,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ! [A4: nat] :
              ( ( member_nat @ A4 @ A2 )
             => ( ord_less_eq_nat @ A4 @ X ) )
         => ( ord_less_eq_nat @ ( lattic1093996805478795353in_nat @ A2 ) @ X ) ) ) ) ).

% Sup_fin.boundedI
thf(fact_1001_Sup__fin_Obounded__iff,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ ( lattic1093996805478795353in_nat @ A2 ) @ X )
          = ( ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ X3 @ X ) ) ) ) ) ) ).

% Sup_fin.bounded_iff
thf(fact_1002_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_1003_le__sup__iff,axiom,
    ! [X: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ ( sup_sup_nat @ X @ Y ) @ Z2 )
      = ( ( ord_less_eq_nat @ X @ Z2 )
        & ( ord_less_eq_nat @ Y @ Z2 ) ) ) ).

% le_sup_iff
thf(fact_1004_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_1005_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_1006_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_1007_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_1008_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_1009_sup__ge1,axiom,
    ! [X: nat,Y: nat] : ( ord_less_eq_nat @ X @ ( sup_sup_nat @ X @ Y ) ) ).

% sup_ge1
thf(fact_1010_sup__ge2,axiom,
    ! [Y: nat,X: nat] : ( ord_less_eq_nat @ Y @ ( sup_sup_nat @ X @ Y ) ) ).

% sup_ge2
thf(fact_1011_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_1012_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_1013_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_1014_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_1015_sup__least,axiom,
    ! [Y: nat,X: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ( ( ord_less_eq_nat @ Z2 @ X )
       => ( ord_less_eq_nat @ ( sup_sup_nat @ Y @ Z2 ) @ X ) ) ) ).

% sup_least
thf(fact_1016_le__iff__sup,axiom,
    ( ord_less_eq_nat
    = ( ^ [X3: nat,Y2: nat] :
          ( ( sup_sup_nat @ X3 @ Y2 )
          = Y2 ) ) ) ).

% le_iff_sup
thf(fact_1017_sup_OorderE,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( A
        = ( sup_sup_nat @ A @ B ) ) ) ).

% sup.orderE
thf(fact_1018_sup_OorderI,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( sup_sup_nat @ A @ B ) )
     => ( ord_less_eq_nat @ B @ A ) ) ).

% sup.orderI
thf(fact_1019_sup__unique,axiom,
    ! [F: nat > nat > nat,X: nat,Y: nat] :
      ( ! [X2: nat,Y3: nat] : ( ord_less_eq_nat @ X2 @ ( F @ X2 @ Y3 ) )
     => ( ! [X2: nat,Y3: nat] : ( ord_less_eq_nat @ Y3 @ ( F @ X2 @ Y3 ) )
       => ( ! [X2: nat,Y3: nat,Z4: nat] :
              ( ( ord_less_eq_nat @ Y3 @ X2 )
             => ( ( ord_less_eq_nat @ Z4 @ X2 )
               => ( ord_less_eq_nat @ ( F @ Y3 @ Z4 ) @ X2 ) ) )
         => ( ( sup_sup_nat @ X @ Y )
            = ( F @ X @ Y ) ) ) ) ) ).

% sup_unique
thf(fact_1020_sup_Oabsorb1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( sup_sup_nat @ A @ B )
        = A ) ) ).

% sup.absorb1
thf(fact_1021_sup_Oabsorb2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( sup_sup_nat @ A @ B )
        = B ) ) ).

% sup.absorb2
thf(fact_1022_sup__absorb1,axiom,
    ! [Y: nat,X: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ( ( sup_sup_nat @ X @ Y )
        = X ) ) ).

% sup_absorb1
thf(fact_1023_sup__absorb2,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( sup_sup_nat @ X @ Y )
        = Y ) ) ).

% sup_absorb2
thf(fact_1024_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_1025_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_1026_sup_Oorder__iff,axiom,
    ( ord_less_eq_nat
    = ( ^ [B3: nat,A3: nat] :
          ( A3
          = ( sup_sup_nat @ A3 @ B3 ) ) ) ) ).

% sup.order_iff
thf(fact_1027_sup_Ocobounded1,axiom,
    ! [A: nat,B: nat] : ( ord_less_eq_nat @ A @ ( sup_sup_nat @ A @ B ) ) ).

% sup.cobounded1
thf(fact_1028_sup_Ocobounded2,axiom,
    ! [B: nat,A: nat] : ( ord_less_eq_nat @ B @ ( sup_sup_nat @ A @ B ) ) ).

% sup.cobounded2
thf(fact_1029_sup_Oabsorb__iff1,axiom,
    ( ord_less_eq_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( sup_sup_nat @ A3 @ B3 )
          = A3 ) ) ) ).

% sup.absorb_iff1
thf(fact_1030_sup_Oabsorb__iff2,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( sup_sup_nat @ A3 @ B3 )
          = B3 ) ) ) ).

% sup.absorb_iff2
thf(fact_1031_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_1032_Inf__fin__le__Sup__fin,axiom,
    ! [A2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ord_less_eq_nat @ ( lattic5238388535129920115in_nat @ A2 ) @ ( lattic1093996805478795353in_nat @ A2 ) ) ) ) ).

% Inf_fin_le_Sup_fin
thf(fact_1033_Inf__fin_Osubset__imp,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( finite_finite_nat @ B2 )
         => ( ord_less_eq_nat @ ( lattic5238388535129920115in_nat @ B2 ) @ ( lattic5238388535129920115in_nat @ A2 ) ) ) ) ) ).

% Inf_fin.subset_imp
thf(fact_1034_le__inf__iff,axiom,
    ! [X: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X @ ( inf_inf_nat @ Y @ Z2 ) )
      = ( ( ord_less_eq_nat @ X @ Y )
        & ( ord_less_eq_nat @ X @ Z2 ) ) ) ).

% le_inf_iff
thf(fact_1035_inf_Obounded__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( inf_inf_nat @ B @ C ) )
      = ( ( ord_less_eq_nat @ A @ B )
        & ( ord_less_eq_nat @ A @ C ) ) ) ).

% inf.bounded_iff
thf(fact_1036_distrib__sup__le,axiom,
    ! [X: nat,Y: nat,Z2: nat] : ( ord_less_eq_nat @ ( sup_sup_nat @ X @ ( inf_inf_nat @ Y @ Z2 ) ) @ ( inf_inf_nat @ ( sup_sup_nat @ X @ Y ) @ ( sup_sup_nat @ X @ Z2 ) ) ) ).

% distrib_sup_le
thf(fact_1037_distrib__inf__le,axiom,
    ! [X: nat,Y: nat,Z2: nat] : ( ord_less_eq_nat @ ( sup_sup_nat @ ( inf_inf_nat @ X @ Y ) @ ( inf_inf_nat @ X @ Z2 ) ) @ ( inf_inf_nat @ X @ ( sup_sup_nat @ Y @ Z2 ) ) ) ).

% distrib_inf_le
thf(fact_1038_inf__sup__ord_I2_J,axiom,
    ! [X: nat,Y: nat] : ( ord_less_eq_nat @ ( inf_inf_nat @ X @ Y ) @ Y ) ).

% inf_sup_ord(2)
thf(fact_1039_inf__sup__ord_I1_J,axiom,
    ! [X: nat,Y: nat] : ( ord_less_eq_nat @ ( inf_inf_nat @ X @ Y ) @ X ) ).

% inf_sup_ord(1)
thf(fact_1040_inf__le1,axiom,
    ! [X: nat,Y: nat] : ( ord_less_eq_nat @ ( inf_inf_nat @ X @ Y ) @ X ) ).

% inf_le1
thf(fact_1041_inf__le2,axiom,
    ! [X: nat,Y: nat] : ( ord_less_eq_nat @ ( inf_inf_nat @ X @ Y ) @ Y ) ).

% inf_le2
thf(fact_1042_le__infE,axiom,
    ! [X: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ X @ ( inf_inf_nat @ A @ B ) )
     => ~ ( ( ord_less_eq_nat @ X @ A )
         => ~ ( ord_less_eq_nat @ X @ B ) ) ) ).

% le_infE
thf(fact_1043_le__infI,axiom,
    ! [X: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ X @ A )
     => ( ( ord_less_eq_nat @ X @ B )
       => ( ord_less_eq_nat @ X @ ( inf_inf_nat @ A @ B ) ) ) ) ).

% le_infI
thf(fact_1044_inf__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 @ ( inf_inf_nat @ A @ B ) @ ( inf_inf_nat @ C @ D ) ) ) ) ).

% inf_mono
thf(fact_1045_le__infI1,axiom,
    ! [A: nat,X: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ X )
     => ( ord_less_eq_nat @ ( inf_inf_nat @ A @ B ) @ X ) ) ).

% le_infI1
thf(fact_1046_le__infI2,axiom,
    ! [B: nat,X: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ X )
     => ( ord_less_eq_nat @ ( inf_inf_nat @ A @ B ) @ X ) ) ).

% le_infI2
thf(fact_1047_inf_OorderE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( A
        = ( inf_inf_nat @ A @ B ) ) ) ).

% inf.orderE
thf(fact_1048_inf_OorderI,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( inf_inf_nat @ A @ B ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% inf.orderI
thf(fact_1049_inf__unique,axiom,
    ! [F: nat > nat > nat,X: nat,Y: nat] :
      ( ! [X2: nat,Y3: nat] : ( ord_less_eq_nat @ ( F @ X2 @ Y3 ) @ X2 )
     => ( ! [X2: nat,Y3: nat] : ( ord_less_eq_nat @ ( F @ X2 @ Y3 ) @ Y3 )
       => ( ! [X2: nat,Y3: nat,Z4: nat] :
              ( ( ord_less_eq_nat @ X2 @ Y3 )
             => ( ( ord_less_eq_nat @ X2 @ Z4 )
               => ( ord_less_eq_nat @ X2 @ ( F @ Y3 @ Z4 ) ) ) )
         => ( ( inf_inf_nat @ X @ Y )
            = ( F @ X @ Y ) ) ) ) ) ).

% inf_unique
thf(fact_1050_le__iff__inf,axiom,
    ( ord_less_eq_nat
    = ( ^ [X3: nat,Y2: nat] :
          ( ( inf_inf_nat @ X3 @ Y2 )
          = X3 ) ) ) ).

% le_iff_inf
thf(fact_1051_inf_Oabsorb1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( inf_inf_nat @ A @ B )
        = A ) ) ).

% inf.absorb1
thf(fact_1052_inf_Oabsorb2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( inf_inf_nat @ A @ B )
        = B ) ) ).

% inf.absorb2
thf(fact_1053_inf__absorb1,axiom,
    ! [X: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( inf_inf_nat @ X @ Y )
        = X ) ) ).

% inf_absorb1
thf(fact_1054_inf__absorb2,axiom,
    ! [Y: nat,X: nat] :
      ( ( ord_less_eq_nat @ Y @ X )
     => ( ( inf_inf_nat @ X @ Y )
        = Y ) ) ).

% inf_absorb2
thf(fact_1055_inf_OboundedE,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( inf_inf_nat @ B @ C ) )
     => ~ ( ( ord_less_eq_nat @ A @ B )
         => ~ ( ord_less_eq_nat @ A @ C ) ) ) ).

% inf.boundedE
thf(fact_1056_inf_OboundedI,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ A @ C )
       => ( ord_less_eq_nat @ A @ ( inf_inf_nat @ B @ C ) ) ) ) ).

% inf.boundedI
thf(fact_1057_inf__greatest,axiom,
    ! [X: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X @ Y )
     => ( ( ord_less_eq_nat @ X @ Z2 )
       => ( ord_less_eq_nat @ X @ ( inf_inf_nat @ Y @ Z2 ) ) ) ) ).

% inf_greatest
thf(fact_1058_inf_Oorder__iff,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B3: nat] :
          ( A3
          = ( inf_inf_nat @ A3 @ B3 ) ) ) ) ).

% inf.order_iff
thf(fact_1059_inf_Ocobounded1,axiom,
    ! [A: nat,B: nat] : ( ord_less_eq_nat @ ( inf_inf_nat @ A @ B ) @ A ) ).

% inf.cobounded1
thf(fact_1060_inf_Ocobounded2,axiom,
    ! [A: nat,B: nat] : ( ord_less_eq_nat @ ( inf_inf_nat @ A @ B ) @ B ) ).

% inf.cobounded2
thf(fact_1061_inf_Oabsorb__iff1,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( inf_inf_nat @ A3 @ B3 )
          = A3 ) ) ) ).

% inf.absorb_iff1
thf(fact_1062_inf_Oabsorb__iff2,axiom,
    ( ord_less_eq_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( inf_inf_nat @ A3 @ B3 )
          = B3 ) ) ) ).

% inf.absorb_iff2
thf(fact_1063_inf_OcoboundedI1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ord_less_eq_nat @ ( inf_inf_nat @ A @ B ) @ C ) ) ).

% inf.coboundedI1
thf(fact_1064_inf_OcoboundedI2,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ C )
     => ( ord_less_eq_nat @ ( inf_inf_nat @ A @ B ) @ C ) ) ).

% inf.coboundedI2
thf(fact_1065_Inf__fin_Osubset,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( B2 != bot_bot_set_nat )
       => ( ( ord_less_eq_set_nat @ B2 @ A2 )
         => ( ( inf_inf_nat @ ( lattic5238388535129920115in_nat @ B2 ) @ ( lattic5238388535129920115in_nat @ A2 ) )
            = ( lattic5238388535129920115in_nat @ A2 ) ) ) ) ) ).

% Inf_fin.subset
thf(fact_1066_Inf__fin_OcoboundedI,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ( ord_less_eq_nat @ ( lattic5238388535129920115in_nat @ A2 ) @ A ) ) ) ).

% Inf_fin.coboundedI
thf(fact_1067_inf__shunt,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ( inf_inf_set_nat @ X @ Y )
        = bot_bot_set_nat )
      = ( ord_less_eq_set_nat @ X @ ( uminus5710092332889474511et_nat @ Y ) ) ) ).

% inf_shunt
thf(fact_1068_disjoint__eq__subset__Compl,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ( inf_inf_set_nat @ A2 @ B2 )
        = bot_bot_set_nat )
      = ( ord_less_eq_set_nat @ A2 @ ( uminus5710092332889474511et_nat @ B2 ) ) ) ).

% disjoint_eq_subset_Compl
thf(fact_1069_Inf__fin_OboundedE,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ X @ ( lattic5238388535129920115in_nat @ A2 ) )
         => ! [A10: nat] :
              ( ( member_nat @ A10 @ A2 )
             => ( ord_less_eq_nat @ X @ A10 ) ) ) ) ) ).

% Inf_fin.boundedE
thf(fact_1070_Inf__fin_OboundedI,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ! [A4: nat] :
              ( ( member_nat @ A4 @ A2 )
             => ( ord_less_eq_nat @ X @ A4 ) )
         => ( ord_less_eq_nat @ X @ ( lattic5238388535129920115in_nat @ A2 ) ) ) ) ) ).

% Inf_fin.boundedI
thf(fact_1071_Inf__fin_Obounded__iff,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ X @ ( lattic5238388535129920115in_nat @ A2 ) )
          = ( ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ X @ X3 ) ) ) ) ) ) ).

% Inf_fin.bounded_iff
thf(fact_1072_Inf__fin_Osemilattice__order__set__axioms,axiom,
    lattic6009151579333465974et_nat @ inf_inf_nat @ ord_less_eq_nat @ ord_less_nat ).

% Inf_fin.semilattice_order_set_axioms
thf(fact_1073_finite__option__UNIV,axiom,
    ( ( finite5523153139673422903on_nat @ top_to8920198386146353926on_nat )
    = ( finite_finite_nat @ top_top_set_nat ) ) ).

% finite_option_UNIV
thf(fact_1074_subset__UNIV,axiom,
    ! [A2: set_nat] : ( ord_less_eq_set_nat @ A2 @ top_top_set_nat ) ).

% subset_UNIV
thf(fact_1075_top__greatest,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ top_top_set_nat ) ).

% top_greatest
thf(fact_1076_top_Oextremum__unique,axiom,
    ! [A: set_nat] :
      ( ( ord_less_eq_set_nat @ top_top_set_nat @ A )
      = ( A = top_top_set_nat ) ) ).

% top.extremum_unique
thf(fact_1077_top_Oextremum__uniqueI,axiom,
    ! [A: set_nat] :
      ( ( ord_less_eq_set_nat @ top_top_set_nat @ A )
     => ( A = top_top_set_nat ) ) ).

% top.extremum_uniqueI
thf(fact_1078_surjD,axiom,
    ! [F: nat > nat,Y: nat] :
      ( ( ( image_nat_nat @ F @ top_top_set_nat )
        = top_top_set_nat )
     => ? [X2: nat] :
          ( Y
          = ( F @ X2 ) ) ) ).

% surjD
thf(fact_1079_surjE,axiom,
    ! [F: nat > nat,Y: nat] :
      ( ( ( image_nat_nat @ F @ top_top_set_nat )
        = top_top_set_nat )
     => ~ ! [X2: nat] :
            ( Y
           != ( F @ X2 ) ) ) ).

% surjE
thf(fact_1080_surjI,axiom,
    ! [G: nat > nat,F: nat > nat] :
      ( ! [X2: nat] :
          ( ( G @ ( F @ X2 ) )
          = X2 )
     => ( ( image_nat_nat @ G @ top_top_set_nat )
        = top_top_set_nat ) ) ).

% surjI
thf(fact_1081_surj__def,axiom,
    ! [F: nat > nat] :
      ( ( ( image_nat_nat @ F @ top_top_set_nat )
        = top_top_set_nat )
      = ( ! [Y2: nat] :
          ? [X3: nat] :
            ( Y2
            = ( F @ X3 ) ) ) ) ).

% surj_def
thf(fact_1082_infinite__iff__countable__subset,axiom,
    ! [S4: set_nat] :
      ( ( ~ ( finite_finite_nat @ S4 ) )
      = ( ? [F2: nat > nat] :
            ( ( inj_on_nat_nat @ F2 @ top_top_set_nat )
            & ( ord_less_eq_set_nat @ ( image_nat_nat @ F2 @ top_top_set_nat ) @ S4 ) ) ) ) ).

% infinite_iff_countable_subset
thf(fact_1083_infinite__countable__subset,axiom,
    ! [S4: set_nat] :
      ( ~ ( finite_finite_nat @ S4 )
     => ? [F5: nat > nat] :
          ( ( inj_on_nat_nat @ F5 @ top_top_set_nat )
          & ( ord_less_eq_set_nat @ ( image_nat_nat @ F5 @ top_top_set_nat ) @ S4 ) ) ) ).

% infinite_countable_subset
thf(fact_1084_UNIV__option__conv,axiom,
    ( top_top_set_option_a
    = ( insert_option_a @ none_a @ ( image_a_option_a @ some_a @ top_top_set_a ) ) ) ).

% UNIV_option_conv
thf(fact_1085_UNIV__option__conv,axiom,
    ( top_to8920198386146353926on_nat
    = ( insert_option_nat @ none_nat @ ( image_nat_option_nat @ some_nat @ top_top_set_nat ) ) ) ).

% UNIV_option_conv
thf(fact_1086_sup__shunt,axiom,
    ! [X: set_nat,Y: set_nat] :
      ( ( ( sup_sup_set_nat @ X @ Y )
        = top_top_set_nat )
      = ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ X ) @ Y ) ) ).

% sup_shunt
thf(fact_1087_surj__Compl__image__subset,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( ( image_nat_nat @ F @ top_top_set_nat )
        = top_top_set_nat )
     => ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ ( image_nat_nat @ F @ A2 ) ) @ ( image_nat_nat @ F @ ( uminus5710092332889474511et_nat @ A2 ) ) ) ) ).

% surj_Compl_image_subset
thf(fact_1088_finite__map__freshness,axiom,
    ! [F: nat > option_a] :
      ( ( finite_finite_nat @ ( dom_nat_a @ F ) )
     => ( ~ ( finite_finite_nat @ top_top_set_nat )
       => ? [X2: nat] :
            ( ( F @ X2 )
            = none_a ) ) ) ).

% finite_map_freshness
thf(fact_1089_finite__range__Some,axiom,
    ( ( finite1674126218327898605tion_a @ ( image_a_option_a @ some_a @ top_top_set_a ) )
    = ( finite_finite_a @ top_top_set_a ) ) ).

% finite_range_Some
thf(fact_1090_finite__range__Some,axiom,
    ( ( finite5523153139673422903on_nat @ ( image_nat_option_nat @ some_nat @ top_top_set_nat ) )
    = ( finite_finite_nat @ top_top_set_nat ) ) ).

% finite_range_Some
thf(fact_1091_notin__range__Some,axiom,
    ! [X: option_a] :
      ( ( ~ ( member_option_a @ X @ ( image_a_option_a @ some_a @ top_top_set_a ) ) )
      = ( X = none_a ) ) ).

% notin_range_Some
thf(fact_1092_notin__range__Some,axiom,
    ! [X: option_nat] :
      ( ( ~ ( member_option_nat @ X @ ( image_nat_option_nat @ some_nat @ top_top_set_nat ) ) )
      = ( X = none_nat ) ) ).

% notin_range_Some
thf(fact_1093_finite__range__updI,axiom,
    ! [F: nat > option_a,A: nat,B: a] :
      ( ( finite1674126218327898605tion_a @ ( image_nat_option_a @ F @ top_top_set_nat ) )
     => ( finite1674126218327898605tion_a @ ( image_nat_option_a @ ( fun_upd_nat_option_a @ F @ A @ ( some_a @ B ) ) @ top_top_set_nat ) ) ) ).

% finite_range_updI
thf(fact_1094_inf__top_Osemilattice__neutr__order__axioms,axiom,
    semila1667268886620078168et_nat @ inf_inf_set_nat @ top_top_set_nat @ ord_less_eq_set_nat @ ord_less_set_nat ).

% inf_top.semilattice_neutr_order_axioms
thf(fact_1095_top_Oordering__top__axioms,axiom,
    ordering_top_set_nat @ ord_less_eq_set_nat @ ord_less_set_nat @ top_top_set_nat ).

% top.ordering_top_axioms
thf(fact_1096_semilattice__order__set_Osubset__imp,axiom,
    ! [F: nat > nat > nat,Less_eq: nat > nat > $o,Less: nat > nat > $o,A2: set_nat,B2: set_nat] :
      ( ( lattic6009151579333465974et_nat @ F @ Less_eq @ Less )
     => ( ( ord_less_eq_set_nat @ A2 @ B2 )
       => ( ( A2 != bot_bot_set_nat )
         => ( ( finite_finite_nat @ B2 )
           => ( Less_eq @ ( lattic7742739596368939638_F_nat @ F @ B2 ) @ ( lattic7742739596368939638_F_nat @ F @ A2 ) ) ) ) ) ) ).

% semilattice_order_set.subset_imp
thf(fact_1097_semilattice__set_Osubset,axiom,
    ! [F: nat > nat > nat,A2: set_nat,B2: set_nat] :
      ( ( lattic1029310888574255042et_nat @ F )
     => ( ( finite_finite_nat @ A2 )
       => ( ( B2 != bot_bot_set_nat )
         => ( ( ord_less_eq_set_nat @ B2 @ A2 )
           => ( ( F @ ( lattic7742739596368939638_F_nat @ F @ B2 ) @ ( lattic7742739596368939638_F_nat @ F @ A2 ) )
              = ( lattic7742739596368939638_F_nat @ F @ A2 ) ) ) ) ) ) ).

% semilattice_set.subset
thf(fact_1098_Max_Osubset__imp,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( finite_finite_nat @ B2 )
         => ( ord_less_eq_nat @ ( lattic8265883725875713057ax_nat @ A2 ) @ ( lattic8265883725875713057ax_nat @ B2 ) ) ) ) ) ).

% Max.subset_imp
thf(fact_1099_Max_Obounded__iff,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ ( lattic8265883725875713057ax_nat @ A2 ) @ X )
          = ( ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ X3 @ X ) ) ) ) ) ) ).

% Max.bounded_iff
thf(fact_1100_Max__ge,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ X @ A2 )
       => ( ord_less_eq_nat @ X @ ( lattic8265883725875713057ax_nat @ A2 ) ) ) ) ).

% Max_ge
thf(fact_1101_Max__eqI,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ! [Y3: nat] :
            ( ( member_nat @ Y3 @ A2 )
           => ( ord_less_eq_nat @ Y3 @ X ) )
       => ( ( member_nat @ X @ A2 )
         => ( ( lattic8265883725875713057ax_nat @ A2 )
            = X ) ) ) ) ).

% Max_eqI
thf(fact_1102_Max__eq__if,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( finite_finite_nat @ B2 )
       => ( ! [X2: nat] :
              ( ( member_nat @ X2 @ A2 )
             => ? [Xa: nat] :
                  ( ( member_nat @ Xa @ B2 )
                  & ( ord_less_eq_nat @ X2 @ Xa ) ) )
         => ( ! [X2: nat] :
                ( ( member_nat @ X2 @ B2 )
               => ? [Xa: nat] :
                    ( ( member_nat @ Xa @ A2 )
                    & ( ord_less_eq_nat @ X2 @ Xa ) ) )
           => ( ( lattic8265883725875713057ax_nat @ A2 )
              = ( lattic8265883725875713057ax_nat @ B2 ) ) ) ) ) ) ).

% Max_eq_if
thf(fact_1103_Max_OcoboundedI,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ( ord_less_eq_nat @ A @ ( lattic8265883725875713057ax_nat @ A2 ) ) ) ) ).

% Max.coboundedI
thf(fact_1104_Max__eq__iff,axiom,
    ! [A2: set_nat,M: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ( lattic8265883725875713057ax_nat @ A2 )
            = M )
          = ( ( member_nat @ M @ A2 )
            & ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ X3 @ M ) ) ) ) ) ) ).

% Max_eq_iff
thf(fact_1105_Max__ge__iff,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ X @ ( lattic8265883725875713057ax_nat @ A2 ) )
          = ( ? [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
                & ( ord_less_eq_nat @ X @ X3 ) ) ) ) ) ) ).

% Max_ge_iff
thf(fact_1106_eq__Max__iff,axiom,
    ! [A2: set_nat,M: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( M
            = ( lattic8265883725875713057ax_nat @ A2 ) )
          = ( ( member_nat @ M @ A2 )
            & ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ X3 @ M ) ) ) ) ) ) ).

% eq_Max_iff
thf(fact_1107_Max_OboundedE,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ ( lattic8265883725875713057ax_nat @ A2 ) @ X )
         => ! [A10: nat] :
              ( ( member_nat @ A10 @ A2 )
             => ( ord_less_eq_nat @ A10 @ X ) ) ) ) ) ).

% Max.boundedE
thf(fact_1108_Max_OboundedI,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ! [A4: nat] :
              ( ( member_nat @ A4 @ A2 )
             => ( ord_less_eq_nat @ A4 @ X ) )
         => ( ord_less_eq_nat @ ( lattic8265883725875713057ax_nat @ A2 ) @ X ) ) ) ) ).

% Max.boundedI
thf(fact_1109_Max__insert2,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ! [B4: nat] :
            ( ( member_nat @ B4 @ A2 )
           => ( ord_less_eq_nat @ B4 @ A ) )
       => ( ( lattic8265883725875713057ax_nat @ ( insert_nat @ A @ A2 ) )
          = A ) ) ) ).

% Max_insert2
thf(fact_1110_Max__mono,axiom,
    ! [M4: set_nat,N2: set_nat] :
      ( ( ord_less_eq_set_nat @ M4 @ N2 )
     => ( ( M4 != bot_bot_set_nat )
       => ( ( finite_finite_nat @ N2 )
         => ( ord_less_eq_nat @ ( lattic8265883725875713057ax_nat @ M4 ) @ ( lattic8265883725875713057ax_nat @ N2 ) ) ) ) ) ).

% Max_mono
thf(fact_1111_mono__Max__commute,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( finite_finite_nat @ A2 )
       => ( ( A2 != bot_bot_set_nat )
         => ( ( F @ ( lattic8265883725875713057ax_nat @ A2 ) )
            = ( lattic8265883725875713057ax_nat @ ( image_nat_nat @ F @ A2 ) ) ) ) ) ) ).

% mono_Max_commute
thf(fact_1112_semilattice__set_Oinfinite,axiom,
    ! [F: nat > nat > nat,A2: set_nat] :
      ( ( lattic1029310888574255042et_nat @ F )
     => ( ~ ( finite_finite_nat @ A2 )
       => ( ( lattic7742739596368939638_F_nat @ F @ A2 )
          = ( the_nat @ none_nat ) ) ) ) ).

% semilattice_set.infinite
thf(fact_1113_semilattice__set_Oinfinite,axiom,
    ! [F: a > a > a,A2: set_a] :
      ( ( lattic5961991414251573132_set_a @ F )
     => ( ~ ( finite_finite_a @ A2 )
       => ( ( lattic5116578512385870296ce_F_a @ F @ A2 )
          = ( the_a @ none_a ) ) ) ) ).

% semilattice_set.infinite
thf(fact_1114_option_Ocollapse,axiom,
    ! [Option: option_a] :
      ( ( Option != none_a )
     => ( ( some_a @ ( the_a @ Option ) )
        = Option ) ) ).

% option.collapse
thf(fact_1115_mono__invE,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_nat @ ( F @ X ) @ ( F @ Y ) )
       => ( ord_less_eq_nat @ X @ Y ) ) ) ).

% mono_invE
thf(fact_1116_strict__mono__mono,axiom,
    ! [F: nat > nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F ) ) ).

% strict_mono_mono
thf(fact_1117_mono__strict__invE,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_nat @ ( F @ X ) @ ( F @ Y ) )
       => ( ord_less_nat @ X @ Y ) ) ) ).

% mono_strict_invE
thf(fact_1118_strict__mono__less__eq,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y ) )
        = ( ord_less_eq_nat @ X @ Y ) ) ) ).

% strict_mono_less_eq
thf(fact_1119_strict__mono__less,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( ( ord_less_nat @ ( F @ X ) @ ( F @ Y ) )
        = ( ord_less_nat @ X @ Y ) ) ) ).

% strict_mono_less
thf(fact_1120_strict__mono__eq,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( ( ( F @ X )
          = ( F @ Y ) )
        = ( X = Y ) ) ) ).

% strict_mono_eq
thf(fact_1121_strict__monoI,axiom,
    ! [F: nat > nat] :
      ( ! [X2: nat,Y3: nat] :
          ( ( ord_less_nat @ X2 @ Y3 )
         => ( ord_less_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
     => ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F ) ) ).

% strict_monoI
thf(fact_1122_strict__monoD,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( ( ord_less_nat @ X @ Y )
       => ( ord_less_nat @ ( F @ X ) @ ( F @ Y ) ) ) ) ).

% strict_monoD
thf(fact_1123_monoD,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_eq_nat @ X @ Y )
       => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y ) ) ) ) ).

% monoD
thf(fact_1124_monoE,axiom,
    ! [F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_eq_nat @ X @ Y )
       => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y ) ) ) ) ).

% monoE
thf(fact_1125_monoI,axiom,
    ! [F: nat > nat] :
      ( ! [X2: nat,Y3: nat] :
          ( ( ord_less_eq_nat @ X2 @ Y3 )
         => ( ord_less_eq_nat @ ( F @ X2 ) @ ( F @ Y3 ) ) )
     => ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F ) ) ).

% monoI
thf(fact_1126_mono__imp__mono__on,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( monotone_on_nat_nat @ A2 @ ord_less_eq_nat @ ord_less_eq_nat @ F ) ) ).

% mono_imp_mono_on
thf(fact_1127_monotoneD,axiom,
    ! [Orda: nat > nat > $o,Ordb: nat > nat > $o,F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ Orda @ Ordb @ F )
     => ( ( Orda @ X @ Y )
       => ( Ordb @ ( F @ X ) @ ( F @ Y ) ) ) ) ).

% monotoneD
thf(fact_1128_monotoneI,axiom,
    ! [Orda: nat > nat > $o,Ordb: nat > nat > $o,F: nat > nat] :
      ( ! [X2: nat,Y3: nat] :
          ( ( Orda @ X2 @ Y3 )
         => ( Ordb @ ( F @ X2 ) @ ( F @ Y3 ) ) )
     => ( monotone_on_nat_nat @ top_top_set_nat @ Orda @ Ordb @ F ) ) ).

% monotoneI
thf(fact_1129_strict__mono__on__imp__inj__on,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_nat @ ord_less_nat @ F )
     => ( inj_on_nat_nat @ F @ A2 ) ) ).

% strict_mono_on_imp_inj_on
thf(fact_1130_option_Oexhaust__sel,axiom,
    ! [Option: option_a] :
      ( ( Option != none_a )
     => ( Option
        = ( some_a @ ( the_a @ Option ) ) ) ) ).

% option.exhaust_sel
thf(fact_1131_strict__mono__on__eqD,axiom,
    ! [A2: set_nat,F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_nat @ ord_less_nat @ F )
     => ( ( ( F @ X )
          = ( F @ Y ) )
       => ( ( member_nat @ X @ A2 )
         => ( ( member_nat @ Y @ A2 )
           => ( Y = X ) ) ) ) ) ).

% strict_mono_on_eqD
thf(fact_1132_strict__mono__onI,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ! [R: nat,S2: nat] :
          ( ( member_nat @ R @ A2 )
         => ( ( member_nat @ S2 @ A2 )
           => ( ( ord_less_nat @ R @ S2 )
             => ( ord_less_nat @ ( F @ R ) @ ( F @ S2 ) ) ) ) )
     => ( monotone_on_nat_nat @ A2 @ ord_less_nat @ ord_less_nat @ F ) ) ).

% strict_mono_onI
thf(fact_1133_strict__mono__onD,axiom,
    ! [A2: set_nat,F: nat > nat,R2: nat,S: nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_nat @ ord_less_nat @ F )
     => ( ( member_nat @ R2 @ A2 )
       => ( ( member_nat @ S @ A2 )
         => ( ( ord_less_nat @ R2 @ S )
           => ( ord_less_nat @ ( F @ R2 ) @ ( F @ S ) ) ) ) ) ) ).

% strict_mono_onD
thf(fact_1134_ord_Ostrict__mono__on__def,axiom,
    ! [A2: set_nat,Less: nat > nat > $o,F: nat > nat] :
      ( ( monotone_on_nat_nat @ A2 @ Less @ ord_less_nat @ F )
      = ( ! [R4: nat,S3: nat] :
            ( ( ( member_nat @ R4 @ A2 )
              & ( member_nat @ S3 @ A2 )
              & ( Less @ R4 @ S3 ) )
           => ( ord_less_nat @ ( F @ R4 ) @ ( F @ S3 ) ) ) ) ) ).

% ord.strict_mono_on_def
thf(fact_1135_ord_Ostrict__mono__onI,axiom,
    ! [A2: set_nat,Less: nat > nat > $o,F: nat > nat] :
      ( ! [R: nat,S2: nat] :
          ( ( member_nat @ R @ A2 )
         => ( ( member_nat @ S2 @ A2 )
           => ( ( Less @ R @ S2 )
             => ( ord_less_nat @ ( F @ R ) @ ( F @ S2 ) ) ) ) )
     => ( monotone_on_nat_nat @ A2 @ Less @ ord_less_nat @ F ) ) ).

% ord.strict_mono_onI
thf(fact_1136_ord_Ostrict__mono__onD,axiom,
    ! [A2: set_nat,Less: nat > nat > $o,F: nat > nat,R2: nat,S: nat] :
      ( ( monotone_on_nat_nat @ A2 @ Less @ ord_less_nat @ F )
     => ( ( member_nat @ R2 @ A2 )
       => ( ( member_nat @ S @ A2 )
         => ( ( Less @ R2 @ S )
           => ( ord_less_nat @ ( F @ R2 ) @ ( F @ S ) ) ) ) ) ) ).

% ord.strict_mono_onD
thf(fact_1137_mono__on__greaterD,axiom,
    ! [A2: set_nat,G: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_eq_nat @ ord_less_eq_nat @ G )
     => ( ( member_nat @ X @ A2 )
       => ( ( member_nat @ Y @ A2 )
         => ( ( ord_less_nat @ ( G @ Y ) @ ( G @ X ) )
           => ( ord_less_nat @ Y @ X ) ) ) ) ) ).

% mono_on_greaterD
thf(fact_1138_strict__mono__on__leD,axiom,
    ! [A2: set_nat,F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_nat @ ord_less_nat @ F )
     => ( ( member_nat @ X @ A2 )
       => ( ( member_nat @ Y @ A2 )
         => ( ( ord_less_eq_nat @ X @ Y )
           => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y ) ) ) ) ) ) ).

% strict_mono_on_leD
thf(fact_1139_strict__mono__on__imp__mono__on,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_nat @ ord_less_nat @ F )
     => ( monotone_on_nat_nat @ A2 @ ord_less_eq_nat @ ord_less_eq_nat @ F ) ) ).

% strict_mono_on_imp_mono_on
thf(fact_1140_mono__onI,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ! [R: nat,S2: nat] :
          ( ( member_nat @ R @ A2 )
         => ( ( member_nat @ S2 @ A2 )
           => ( ( ord_less_eq_nat @ R @ S2 )
             => ( ord_less_eq_nat @ ( F @ R ) @ ( F @ S2 ) ) ) ) )
     => ( monotone_on_nat_nat @ A2 @ ord_less_eq_nat @ ord_less_eq_nat @ F ) ) ).

% mono_onI
thf(fact_1141_mono__onD,axiom,
    ! [A2: set_nat,F: nat > nat,R2: nat,S: nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( member_nat @ R2 @ A2 )
       => ( ( member_nat @ S @ A2 )
         => ( ( ord_less_eq_nat @ R2 @ S )
           => ( ord_less_eq_nat @ ( F @ R2 ) @ ( F @ S ) ) ) ) ) ) ).

% mono_onD
thf(fact_1142_ord_Omono__on__def,axiom,
    ! [A2: set_nat,Less_eq: nat > nat > $o,F: nat > nat] :
      ( ( monotone_on_nat_nat @ A2 @ Less_eq @ ord_less_eq_nat @ F )
      = ( ! [R4: nat,S3: nat] :
            ( ( ( member_nat @ R4 @ A2 )
              & ( member_nat @ S3 @ A2 )
              & ( Less_eq @ R4 @ S3 ) )
           => ( ord_less_eq_nat @ ( F @ R4 ) @ ( F @ S3 ) ) ) ) ) ).

% ord.mono_on_def
thf(fact_1143_ord_Omono__onI,axiom,
    ! [A2: set_nat,Less_eq: nat > nat > $o,F: nat > nat] :
      ( ! [R: nat,S2: nat] :
          ( ( member_nat @ R @ A2 )
         => ( ( member_nat @ S2 @ A2 )
           => ( ( Less_eq @ R @ S2 )
             => ( ord_less_eq_nat @ ( F @ R ) @ ( F @ S2 ) ) ) ) )
     => ( monotone_on_nat_nat @ A2 @ Less_eq @ ord_less_eq_nat @ F ) ) ).

% ord.mono_onI
thf(fact_1144_ord_Omono__onD,axiom,
    ! [A2: set_nat,Less_eq: nat > nat > $o,F: nat > nat,R2: nat,S: nat] :
      ( ( monotone_on_nat_nat @ A2 @ Less_eq @ ord_less_eq_nat @ F )
     => ( ( member_nat @ R2 @ A2 )
       => ( ( member_nat @ S @ A2 )
         => ( ( Less_eq @ R2 @ S )
           => ( ord_less_eq_nat @ ( F @ R2 ) @ ( F @ S ) ) ) ) ) ) ).

% ord.mono_onD
thf(fact_1145_monotone__on__subset,axiom,
    ! [A2: set_nat,Orda: nat > nat > $o,Ordb: nat > nat > $o,F: nat > nat,B2: set_nat] :
      ( ( monotone_on_nat_nat @ A2 @ Orda @ Ordb @ F )
     => ( ( ord_less_eq_set_nat @ B2 @ A2 )
       => ( monotone_on_nat_nat @ B2 @ Orda @ Ordb @ F ) ) ) ).

% monotone_on_subset
thf(fact_1146_monotone__onD,axiom,
    ! [A2: set_nat,Orda: nat > nat > $o,Ordb: nat > nat > $o,F: nat > nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ A2 @ Orda @ Ordb @ F )
     => ( ( member_nat @ X @ A2 )
       => ( ( member_nat @ Y @ A2 )
         => ( ( Orda @ X @ Y )
           => ( Ordb @ ( F @ X ) @ ( F @ Y ) ) ) ) ) ) ).

% monotone_onD
thf(fact_1147_monotone__onI,axiom,
    ! [A2: set_nat,Orda: nat > nat > $o,Ordb: nat > nat > $o,F: nat > nat] :
      ( ! [X2: nat,Y3: nat] :
          ( ( member_nat @ X2 @ A2 )
         => ( ( member_nat @ Y3 @ A2 )
           => ( ( Orda @ X2 @ Y3 )
             => ( Ordb @ ( F @ X2 ) @ ( F @ Y3 ) ) ) ) )
     => ( monotone_on_nat_nat @ A2 @ Orda @ Ordb @ F ) ) ).

% monotone_onI
thf(fact_1148_monotone__on__def,axiom,
    ( monotone_on_nat_nat
    = ( ^ [A7: set_nat,Orda2: nat > nat > $o,Ordb2: nat > nat > $o,F2: nat > nat] :
        ! [X3: nat] :
          ( ( member_nat @ X3 @ A7 )
         => ! [Y2: nat] :
              ( ( member_nat @ Y2 @ A7 )
             => ( ( Orda2 @ X3 @ Y2 )
               => ( Ordb2 @ ( F2 @ X3 ) @ ( F2 @ Y2 ) ) ) ) ) ) ) ).

% monotone_on_def
thf(fact_1149_option_Oexpand,axiom,
    ! [Option: option_a,Option2: option_a] :
      ( ( ( Option = none_a )
        = ( Option2 = none_a ) )
     => ( ( ( Option != none_a )
         => ( ( Option2 != none_a )
           => ( ( the_a @ Option )
              = ( the_a @ Option2 ) ) ) )
       => ( Option = Option2 ) ) ) ).

% option.expand
thf(fact_1150_option_Osel,axiom,
    ! [X23: a] :
      ( ( the_a @ ( some_a @ X23 ) )
      = X23 ) ).

% option.sel
thf(fact_1151_ord_Omono__on__subset,axiom,
    ! [A2: set_nat,Less_eq: nat > nat > $o,F: nat > nat,B2: set_nat] :
      ( ( monotone_on_nat_nat @ A2 @ Less_eq @ ord_less_eq_nat @ F )
     => ( ( ord_less_eq_set_nat @ B2 @ A2 )
       => ( monotone_on_nat_nat @ B2 @ Less_eq @ ord_less_eq_nat @ F ) ) ) ).

% ord.mono_on_subset
thf(fact_1152_mono__on__subset,axiom,
    ! [A2: set_nat,F: nat > nat,B2: set_nat] :
      ( ( monotone_on_nat_nat @ A2 @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_eq_set_nat @ B2 @ A2 )
       => ( monotone_on_nat_nat @ B2 @ ord_less_eq_nat @ ord_less_eq_nat @ F ) ) ) ).

% mono_on_subset
thf(fact_1153_monotone__on__empty,axiom,
    ! [Orda: nat > nat > $o,Ordb: nat > nat > $o,F: nat > nat] : ( monotone_on_nat_nat @ bot_bot_set_nat @ Orda @ Ordb @ F ) ).

% monotone_on_empty
thf(fact_1154_strict__mono__inv,axiom,
    ! [F: nat > nat,G: nat > nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( ( ( image_nat_nat @ F @ top_top_set_nat )
          = top_top_set_nat )
       => ( ! [X2: nat] :
              ( ( G @ ( F @ X2 ) )
              = X2 )
         => ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ G ) ) ) ) ).

% strict_mono_inv
thf(fact_1155_mono__inf,axiom,
    ! [F: nat > nat,A2: nat,B2: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ord_less_eq_nat @ ( F @ ( inf_inf_nat @ A2 @ B2 ) ) @ ( inf_inf_nat @ ( F @ A2 ) @ ( F @ B2 ) ) ) ) ).

% mono_inf
thf(fact_1156_mono__sup,axiom,
    ! [F: nat > nat,A2: nat,B2: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ord_less_eq_nat @ ( sup_sup_nat @ ( F @ A2 ) @ ( F @ B2 ) ) @ ( F @ ( sup_sup_nat @ A2 @ B2 ) ) ) ) ).

% mono_sup
thf(fact_1157_strict__mono__imp__inj__on,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( inj_on_nat_nat @ F @ A2 ) ) ).

% strict_mono_imp_inj_on
thf(fact_1158_option_Oset__sel,axiom,
    ! [A: option_a] :
      ( ( A != none_a )
     => ( member_a @ ( the_a @ A ) @ ( set_option_a2 @ A ) ) ) ).

% option.set_sel
thf(fact_1159_Max_Oinfinite,axiom,
    ! [A2: set_nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ( ( lattic8265883725875713057ax_nat @ A2 )
        = ( the_nat @ none_nat ) ) ) ).

% Max.infinite
thf(fact_1160_Sup__fin_Oinfinite,axiom,
    ! [A2: set_nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ( ( lattic1093996805478795353in_nat @ A2 )
        = ( the_nat @ none_nat ) ) ) ).

% Sup_fin.infinite
thf(fact_1161_Inf__fin_Oinfinite,axiom,
    ! [A2: set_nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ( ( lattic5238388535129920115in_nat @ A2 )
        = ( the_nat @ none_nat ) ) ) ).

% Inf_fin.infinite
thf(fact_1162_mono__Min__commute,axiom,
    ! [F: nat > nat,A2: set_nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( finite_finite_nat @ A2 )
       => ( ( A2 != bot_bot_set_nat )
         => ( ( F @ ( lattic8721135487736765967in_nat @ A2 ) )
            = ( lattic8721135487736765967in_nat @ ( image_nat_nat @ F @ A2 ) ) ) ) ) ) ).

% mono_Min_commute
thf(fact_1163_finite__mono__remains__stable__implies__strict__prefix,axiom,
    ! [F: nat > nat] :
      ( ( finite_finite_nat @ ( image_nat_nat @ F @ top_top_set_nat ) )
     => ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
       => ( ! [N3: nat] :
              ( ( ( F @ N3 )
                = ( F @ ( suc @ N3 ) ) )
             => ( ( F @ ( suc @ N3 ) )
                = ( F @ ( suc @ ( suc @ N3 ) ) ) ) )
         => ? [N4: nat] :
              ( ! [N5: nat] :
                  ( ( ord_less_eq_nat @ N5 @ N4 )
                 => ! [M5: nat] :
                      ( ( ord_less_eq_nat @ M5 @ N4 )
                     => ( ( ord_less_nat @ M5 @ N5 )
                       => ( ord_less_nat @ ( F @ M5 ) @ ( F @ N5 ) ) ) ) )
              & ! [N5: nat] :
                  ( ( ord_less_eq_nat @ N4 @ N5 )
                 => ( ( F @ N4 )
                    = ( F @ N5 ) ) ) ) ) ) ) ).

% finite_mono_remains_stable_implies_strict_prefix
thf(fact_1164_Min_Obounded__iff,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ X @ ( lattic8721135487736765967in_nat @ A2 ) )
          = ( ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ X @ X3 ) ) ) ) ) ) ).

% Min.bounded_iff
thf(fact_1165_nat__descend__induct,axiom,
    ! [N: nat,P2: nat > $o,M: nat] :
      ( ! [K2: nat] :
          ( ( ord_less_nat @ N @ K2 )
         => ( P2 @ K2 ) )
     => ( ! [K2: nat] :
            ( ( ord_less_eq_nat @ K2 @ N )
           => ( ! [I: nat] :
                  ( ( ord_less_nat @ K2 @ I )
                 => ( P2 @ I ) )
             => ( P2 @ K2 ) ) )
       => ( P2 @ M ) ) ) ).

% nat_descend_induct
thf(fact_1166_Min__le,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ X @ A2 )
       => ( ord_less_eq_nat @ ( lattic8721135487736765967in_nat @ A2 ) @ X ) ) ) ).

% Min_le
thf(fact_1167_Min__eqI,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ! [Y3: nat] :
            ( ( member_nat @ Y3 @ A2 )
           => ( ord_less_eq_nat @ X @ Y3 ) )
       => ( ( member_nat @ X @ A2 )
         => ( ( lattic8721135487736765967in_nat @ A2 )
            = X ) ) ) ) ).

% Min_eqI
thf(fact_1168_Min_OcoboundedI,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( member_nat @ A @ A2 )
       => ( ord_less_eq_nat @ ( lattic8721135487736765967in_nat @ A2 ) @ A ) ) ) ).

% Min.coboundedI
thf(fact_1169_Min__eq__iff,axiom,
    ! [A2: set_nat,M: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ( lattic8721135487736765967in_nat @ A2 )
            = M )
          = ( ( member_nat @ M @ A2 )
            & ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ M @ X3 ) ) ) ) ) ) ).

% Min_eq_iff
thf(fact_1170_Min__le__iff,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ ( lattic8721135487736765967in_nat @ A2 ) @ X )
          = ( ? [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
                & ( ord_less_eq_nat @ X3 @ X ) ) ) ) ) ) ).

% Min_le_iff
thf(fact_1171_eq__Min__iff,axiom,
    ! [A2: set_nat,M: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( M
            = ( lattic8721135487736765967in_nat @ A2 ) )
          = ( ( member_nat @ M @ A2 )
            & ! [X3: nat] :
                ( ( member_nat @ X3 @ A2 )
               => ( ord_less_eq_nat @ M @ X3 ) ) ) ) ) ) ).

% eq_Min_iff
thf(fact_1172_Min_OboundedE,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( ord_less_eq_nat @ X @ ( lattic8721135487736765967in_nat @ A2 ) )
         => ! [A10: nat] :
              ( ( member_nat @ A10 @ A2 )
             => ( ord_less_eq_nat @ X @ A10 ) ) ) ) ) ).

% Min.boundedE
thf(fact_1173_Min_OboundedI,axiom,
    ! [A2: set_nat,X: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ! [A4: nat] :
              ( ( member_nat @ A4 @ A2 )
             => ( ord_less_eq_nat @ X @ A4 ) )
         => ( ord_less_eq_nat @ X @ ( lattic8721135487736765967in_nat @ A2 ) ) ) ) ) ).

% Min.boundedI
thf(fact_1174_Min__insert2,axiom,
    ! [A2: set_nat,A: nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ! [B4: nat] :
            ( ( member_nat @ B4 @ A2 )
           => ( ord_less_eq_nat @ A @ B4 ) )
       => ( ( lattic8721135487736765967in_nat @ ( insert_nat @ A @ A2 ) )
          = A ) ) ) ).

% Min_insert2
thf(fact_1175_Min_Oinfinite,axiom,
    ! [A2: set_nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ( ( lattic8721135487736765967in_nat @ A2 )
        = ( the_nat @ none_nat ) ) ) ).

% Min.infinite
thf(fact_1176_Min__antimono,axiom,
    ! [M4: set_nat,N2: set_nat] :
      ( ( ord_less_eq_set_nat @ M4 @ N2 )
     => ( ( M4 != bot_bot_set_nat )
       => ( ( finite_finite_nat @ N2 )
         => ( ord_less_eq_nat @ ( lattic8721135487736765967in_nat @ N2 ) @ ( lattic8721135487736765967in_nat @ M4 ) ) ) ) ) ).

% Min_antimono
thf(fact_1177_Min_Osubset__imp,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( ord_less_eq_set_nat @ A2 @ B2 )
     => ( ( A2 != bot_bot_set_nat )
       => ( ( finite_finite_nat @ B2 )
         => ( ord_less_eq_nat @ ( lattic8721135487736765967in_nat @ B2 ) @ ( lattic8721135487736765967in_nat @ A2 ) ) ) ) ) ).

% Min.subset_imp
thf(fact_1178_mono__iff__le__Suc,axiom,
    ! [F: nat > nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
      = ( ! [N6: nat] : ( ord_less_eq_nat @ ( F @ N6 ) @ ( F @ ( suc @ N6 ) ) ) ) ) ).

% mono_iff_le_Suc
thf(fact_1179_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_1180_diff__diff__cancel,axiom,
    ! [I2: nat,N: nat] :
      ( ( ord_less_eq_nat @ I2 @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I2 ) )
        = I2 ) ) ).

% diff_diff_cancel
thf(fact_1181_GreatestI__ex__nat,axiom,
    ! [P2: nat > $o,B: nat] :
      ( ? [X_1: nat] : ( P2 @ X_1 )
     => ( ! [Y3: nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ( P2 @ ( order_Greatest_nat @ P2 ) ) ) ) ).

% GreatestI_ex_nat
thf(fact_1182_Greatest__le__nat,axiom,
    ! [P2: nat > $o,K: nat,B: nat] :
      ( ( P2 @ K )
     => ( ! [Y3: nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ( ord_less_eq_nat @ K @ ( order_Greatest_nat @ P2 ) ) ) ) ).

% Greatest_le_nat
thf(fact_1183_GreatestI__nat,axiom,
    ! [P2: nat > $o,K: nat,B: nat] :
      ( ( P2 @ K )
     => ( ! [Y3: nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ( P2 @ ( order_Greatest_nat @ P2 ) ) ) ) ).

% GreatestI_nat
thf(fact_1184_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_1185_le__trans,axiom,
    ! [I2: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I2 @ K ) ) ) ).

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

% eq_imp_le
thf(fact_1187_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_1188_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_1189_Nat_Oex__has__greatest__nat,axiom,
    ! [P2: nat > $o,K: nat,B: nat] :
      ( ( P2 @ K )
     => ( ! [Y3: nat] :
            ( ( P2 @ Y3 )
           => ( ord_less_eq_nat @ Y3 @ B ) )
       => ? [X2: nat] :
            ( ( P2 @ X2 )
            & ! [Y5: nat] :
                ( ( P2 @ Y5 )
               => ( ord_less_eq_nat @ Y5 @ X2 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_1190_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_1191_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_1192_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_1193_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_1194_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_1195_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_1196_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_1197_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

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

% le_SucI
thf(fact_1200_Suc__le__D,axiom,
    ! [N: nat,M6: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M6 )
     => ? [M7: nat] :
          ( M6
          = ( suc @ M7 ) ) ) ).

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

% Suc_n_not_le_n
thf(fact_1203_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_1204_full__nat__induct,axiom,
    ! [P2: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M5: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M5 ) @ N3 )
             => ( P2 @ M5 ) )
         => ( P2 @ N3 ) )
     => ( P2 @ N ) ) ).

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

% nat_induct_at_least
thf(fact_1206_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R3: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X2: nat] : ( R3 @ X2 @ X2 )
       => ( ! [X2: nat,Y3: nat,Z4: nat] :
              ( ( R3 @ X2 @ Y3 )
             => ( ( R3 @ Y3 @ Z4 )
               => ( R3 @ X2 @ Z4 ) ) )
         => ( ! [N3: nat] : ( R3 @ N3 @ ( suc @ N3 ) )
           => ( R3 @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_1207_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_1208_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_1209_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_1210_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I2: nat,J: nat] :
      ( ! [I3: nat,J2: nat] :
          ( ( ord_less_nat @ I3 @ J2 )
         => ( ord_less_nat @ ( F @ I3 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I2 @ J )
       => ( ord_less_eq_nat @ ( F @ I2 ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_1211_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_1212_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_1213_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M3: nat,N6: nat] :
          ( ( ord_less_nat @ M3 @ N6 )
          | ( M3 = N6 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_1214_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_1215_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M3: nat,N6: nat] :
          ( ( ord_less_eq_nat @ M3 @ N6 )
          & ( M3 != N6 ) ) ) ) ).

% nat_less_le
thf(fact_1216_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N7: nat] :
      ( ! [N3: nat] : ( ord_less_eq_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

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

% lift_Suc_antimono_le
thf(fact_1218_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_1219_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N6: nat] : ( ord_less_eq_nat @ ( suc @ N6 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_1220_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_1221_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_1222_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_1223_inc__induct,axiom,
    ! [I2: nat,J: nat,P2: nat > $o] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( P2 @ J )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I2 @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P2 @ ( suc @ N3 ) )
                 => ( P2 @ N3 ) ) ) )
         => ( P2 @ I2 ) ) ) ) ).

% inc_induct
thf(fact_1224_dec__induct,axiom,
    ! [I2: nat,J: nat,P2: nat > $o] :
      ( ( ord_less_eq_nat @ I2 @ J )
     => ( ( P2 @ I2 )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I2 @ N3 )
             => ( ( ord_less_nat @ N3 @ J )
               => ( ( P2 @ N3 )
                 => ( P2 @ ( suc @ N3 ) ) ) ) )
         => ( P2 @ J ) ) ) ) ).

% dec_induct
thf(fact_1225_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_1226_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_1227_mono__Suc,axiom,
    monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ suc ).

% mono_Suc
thf(fact_1228_strict__mono__imp__increasing,axiom,
    ! [F: nat > nat,N: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_nat @ ord_less_nat @ F )
     => ( ord_less_eq_nat @ N @ ( F @ N ) ) ) ).

% strict_mono_imp_increasing
thf(fact_1229_card__le__inj,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( finite_finite_nat @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) )
         => ? [F5: nat > nat] :
              ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F5 @ A2 ) @ B2 )
              & ( inj_on_nat_nat @ F5 @ A2 ) ) ) ) ) ).

% card_le_inj
thf(fact_1230_card__inj__on__le,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B2 )
       => ( ( finite_finite_nat @ B2 )
         => ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) ) ) ) ) ).

% card_inj_on_le
thf(fact_1231_finite__if__finite__subsets__card__bdd,axiom,
    ! [F3: set_nat,C3: nat] :
      ( ! [G3: set_nat] :
          ( ( ord_less_eq_set_nat @ G3 @ F3 )
         => ( ( finite_finite_nat @ G3 )
           => ( ord_less_eq_nat @ ( finite_card_nat @ G3 ) @ C3 ) ) )
     => ( ( finite_finite_nat @ F3 )
        & ( ord_less_eq_nat @ ( finite_card_nat @ F3 ) @ C3 ) ) ) ).

% finite_if_finite_subsets_card_bdd
thf(fact_1232_obtain__subset__with__card__n,axiom,
    ! [N: nat,S4: set_nat] :
      ( ( ord_less_eq_nat @ N @ ( finite_card_nat @ S4 ) )
     => ~ ! [T4: set_nat] :
            ( ( ord_less_eq_set_nat @ T4 @ S4 )
           => ( ( ( finite_card_nat @ T4 )
                = N )
             => ~ ( finite_finite_nat @ T4 ) ) ) ) ).

% obtain_subset_with_card_n
thf(fact_1233_exists__subset__between,axiom,
    ! [A2: set_nat,N: nat,C3: set_nat] :
      ( ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( finite_card_nat @ C3 ) )
       => ( ( ord_less_eq_set_nat @ A2 @ C3 )
         => ( ( finite_finite_nat @ C3 )
           => ? [B7: set_nat] :
                ( ( ord_less_eq_set_nat @ A2 @ B7 )
                & ( ord_less_eq_set_nat @ B7 @ C3 )
                & ( ( finite_card_nat @ B7 )
                  = N ) ) ) ) ) ) ).

% exists_subset_between
thf(fact_1234_card__seteq,axiom,
    ! [B2: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ( ord_less_eq_set_nat @ A2 @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_nat @ B2 ) @ ( finite_card_nat @ A2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_seteq
thf(fact_1235_card__mono,axiom,
    ! [B2: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ( ord_less_eq_set_nat @ A2 @ B2 )
       => ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) ) ) ) ).

% card_mono
thf(fact_1236_card__Diff__subset,axiom,
    ! [B2: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ( ord_less_eq_set_nat @ B2 @ A2 )
       => ( ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B2 ) )
          = ( minus_minus_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) ) ) ) ) ).

% card_Diff_subset
thf(fact_1237_diff__card__le__card__Diff,axiom,
    ! [B2: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) ) @ ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B2 ) ) ) ) ).

% diff_card_le_card_Diff
thf(fact_1238_card__le__sym__Diff,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( finite_finite_nat @ B2 )
       => ( ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) )
         => ( ord_less_eq_nat @ ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ B2 ) ) @ ( finite_card_nat @ ( minus_minus_set_nat @ B2 @ A2 ) ) ) ) ) ) ).

% card_le_sym_Diff
thf(fact_1239_card__image__le,axiom,
    ! [A2: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ord_less_eq_nat @ ( finite_card_nat @ ( image_nat_nat @ F @ A2 ) ) @ ( finite_card_nat @ A2 ) ) ) ).

% card_image_le
thf(fact_1240_infinite__arbitrarily__large,axiom,
    ! [A2: set_nat,N: nat] :
      ( ~ ( finite_finite_nat @ A2 )
     => ? [B7: set_nat] :
          ( ( finite_finite_nat @ B7 )
          & ( ( finite_card_nat @ B7 )
            = N )
          & ( ord_less_eq_set_nat @ B7 @ A2 ) ) ) ).

% infinite_arbitrarily_large
thf(fact_1241_card__subset__eq,axiom,
    ! [B2: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ( ord_less_eq_set_nat @ A2 @ B2 )
       => ( ( ( finite_card_nat @ A2 )
            = ( finite_card_nat @ B2 ) )
         => ( A2 = B2 ) ) ) ) ).

% card_subset_eq
thf(fact_1242_card__insert__le,axiom,
    ! [A2: set_nat,X: nat] : ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ ( insert_nat @ X @ A2 ) ) ) ).

% card_insert_le
thf(fact_1243_surj__card__le,axiom,
    ! [A2: set_nat,B2: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( ord_less_eq_set_nat @ B2 @ ( image_nat_nat @ F @ A2 ) )
       => ( ord_less_eq_nat @ ( finite_card_nat @ B2 ) @ ( finite_card_nat @ A2 ) ) ) ) ).

% surj_card_le
thf(fact_1244_card__le__Suc__iff,axiom,
    ! [N: nat,A2: set_nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( finite_card_nat @ A2 ) )
      = ( ? [A3: nat,B6: set_nat] :
            ( ( A2
              = ( insert_nat @ A3 @ B6 ) )
            & ~ ( member_nat @ A3 @ B6 )
            & ( ord_less_eq_nat @ N @ ( finite_card_nat @ B6 ) )
            & ( finite_finite_nat @ B6 ) ) ) ) ).

% card_le_Suc_iff
thf(fact_1245_surjective__iff__injective__gen,axiom,
    ! [S4: set_nat,T3: set_nat,F: nat > nat] :
      ( ( finite_finite_nat @ S4 )
     => ( ( finite_finite_nat @ T3 )
       => ( ( ( finite_card_nat @ S4 )
            = ( finite_card_nat @ T3 ) )
         => ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ S4 ) @ T3 )
           => ( ( ! [X3: nat] :
                    ( ( member_nat @ X3 @ T3 )
                   => ? [Y2: nat] :
                        ( ( member_nat @ Y2 @ S4 )
                        & ( ( F @ Y2 )
                          = X3 ) ) ) )
              = ( inj_on_nat_nat @ F @ S4 ) ) ) ) ) ) ).

% surjective_iff_injective_gen
thf(fact_1246_card__bij__eq,axiom,
    ! [F: nat > nat,A2: set_nat,B2: set_nat,G: nat > nat] :
      ( ( inj_on_nat_nat @ F @ A2 )
     => ( ( ord_less_eq_set_nat @ ( image_nat_nat @ F @ A2 ) @ B2 )
       => ( ( inj_on_nat_nat @ G @ B2 )
         => ( ( ord_less_eq_set_nat @ ( image_nat_nat @ G @ B2 ) @ A2 )
           => ( ( finite_finite_nat @ A2 )
             => ( ( finite_finite_nat @ B2 )
               => ( ( finite_card_nat @ A2 )
                  = ( finite_card_nat @ B2 ) ) ) ) ) ) ) ) ).

% card_bij_eq
thf(fact_1247_card__Diff1__le,axiom,
    ! [A2: set_nat,X: nat] : ( ord_less_eq_nat @ ( finite_card_nat @ ( minus_minus_set_nat @ A2 @ ( insert_nat @ X @ bot_bot_set_nat ) ) ) @ ( finite_card_nat @ A2 ) ) ).

% card_Diff1_le
thf(fact_1248_card__psubset,axiom,
    ! [B2: set_nat,A2: set_nat] :
      ( ( finite_finite_nat @ B2 )
     => ( ( ord_less_eq_set_nat @ A2 @ B2 )
       => ( ( ord_less_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) )
         => ( ord_less_set_nat @ A2 @ B2 ) ) ) ) ).

% card_psubset
thf(fact_1249_inj__on__iff__card__le,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( finite_finite_nat @ A2 )
     => ( ( finite_finite_nat @ B2 )
       => ( ( ? [F2: nat > nat] :
                ( ( inj_on_nat_nat @ F2 @ A2 )
                & ( ord_less_eq_set_nat @ ( image_nat_nat @ F2 @ A2 ) @ B2 ) ) )
          = ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) ) ) ) ) ).

% inj_on_iff_card_le
thf(fact_1250_card__le__if__inj__on__rel,axiom,
    ! [B2: set_nat,A2: set_nat,R2: nat > nat > $o] :
      ( ( finite_finite_nat @ B2 )
     => ( ! [A4: nat] :
            ( ( member_nat @ A4 @ A2 )
           => ? [B8: nat] :
                ( ( member_nat @ B8 @ B2 )
                & ( R2 @ A4 @ B8 ) ) )
       => ( ! [A12: nat,A23: nat,B4: nat] :
              ( ( member_nat @ A12 @ A2 )
             => ( ( member_nat @ A23 @ A2 )
               => ( ( member_nat @ B4 @ B2 )
                 => ( ( R2 @ A12 @ B4 )
                   => ( ( R2 @ A23 @ B4 )
                     => ( A12 = A23 ) ) ) ) ) )
         => ( ord_less_eq_nat @ ( finite_card_nat @ A2 ) @ ( finite_card_nat @ B2 ) ) ) ) ) ).

% card_le_if_inj_on_rel
thf(fact_1251_card__le__Suc__Max,axiom,
    ! [S4: set_nat] :
      ( ( finite_finite_nat @ S4 )
     => ( ord_less_eq_nat @ ( finite_card_nat @ S4 ) @ ( suc @ ( lattic8265883725875713057ax_nat @ S4 ) ) ) ) ).

% card_le_Suc_Max
thf(fact_1252_finite__nat__set__iff__bounded__le,axiom,
    ( finite_finite_nat
    = ( ^ [N8: set_nat] :
        ? [M3: nat] :
        ! [X3: nat] :
          ( ( member_nat @ X3 @ N8 )
         => ( ord_less_eq_nat @ X3 @ M3 ) ) ) ) ).

% finite_nat_set_iff_bounded_le
thf(fact_1253_bounded__Max__nat,axiom,
    ! [P2: nat > $o,X: nat,M4: nat] :
      ( ( P2 @ X )
     => ( ! [X2: nat] :
            ( ( P2 @ X2 )
           => ( ord_less_eq_nat @ X2 @ M4 ) )
       => ~ ! [M7: nat] :
              ( ( P2 @ M7 )
             => ~ ! [X7: nat] :
                    ( ( P2 @ X7 )
                   => ( ord_less_eq_nat @ X7 @ M7 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_1254_mono__image__least,axiom,
    ! [F: nat > nat,M: nat,N: nat,M6: nat,N7: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ( image_nat_nat @ F @ ( set_or4665077453230672383an_nat @ M @ N ) )
          = ( set_or4665077453230672383an_nat @ M6 @ N7 ) )
       => ( ( ord_less_nat @ M @ N )
         => ( ( F @ M )
            = M6 ) ) ) ) ).

% mono_image_least
thf(fact_1255_funpow__increasing,axiom,
    ! [M: nat,N: nat,F: set_nat > set_nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( monoto1748750089227133045et_nat @ top_top_set_set_nat @ ord_less_eq_set_nat @ ord_less_eq_set_nat @ F )
       => ( ord_less_eq_set_nat @ ( compow8708494347934031032et_nat @ N @ F @ top_top_set_nat ) @ ( compow8708494347934031032et_nat @ M @ F @ top_top_set_nat ) ) ) ) ).

% funpow_increasing
thf(fact_1256_atLeastLessThan__iff,axiom,
    ! [I2: nat,L: nat,U: nat] :
      ( ( member_nat @ I2 @ ( set_or4665077453230672383an_nat @ L @ U ) )
      = ( ( ord_less_eq_nat @ L @ I2 )
        & ( ord_less_nat @ I2 @ U ) ) ) ).

% atLeastLessThan_iff
thf(fact_1257_atLeastLessThan__empty,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( set_or4665077453230672383an_nat @ A @ B )
        = bot_bot_set_nat ) ) ).

% atLeastLessThan_empty
thf(fact_1258_ivl__subset,axiom,
    ! [I2: nat,J: nat,M: nat,N: nat] :
      ( ( ord_less_eq_set_nat @ ( set_or4665077453230672383an_nat @ I2 @ J ) @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ J @ I2 )
        | ( ( ord_less_eq_nat @ M @ I2 )
          & ( ord_less_eq_nat @ J @ N ) ) ) ) ).

% ivl_subset
thf(fact_1259_ivl__diff,axiom,
    ! [I2: nat,N: nat,M: nat] :
      ( ( ord_less_eq_nat @ I2 @ N )
     => ( ( minus_minus_set_nat @ ( set_or4665077453230672383an_nat @ I2 @ M ) @ ( set_or4665077453230672383an_nat @ I2 @ N ) )
        = ( set_or4665077453230672383an_nat @ N @ M ) ) ) ).

% ivl_diff
thf(fact_1260_ivl__disj__un__two_I3_J,axiom,
    ! [L: nat,M: nat,U: nat] :
      ( ( ord_less_eq_nat @ L @ M )
     => ( ( ord_less_eq_nat @ M @ U )
       => ( ( sup_sup_set_nat @ ( set_or4665077453230672383an_nat @ L @ M ) @ ( set_or4665077453230672383an_nat @ M @ U ) )
          = ( set_or4665077453230672383an_nat @ L @ U ) ) ) ) ).

% ivl_disj_un_two(3)
thf(fact_1261_atLeastLessThanSuc,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_eq_nat @ M @ N )
       => ( ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) )
          = ( insert_nat @ N @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ N )
       => ( ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) )
          = bot_bot_set_nat ) ) ) ).

% atLeastLessThanSuc
thf(fact_1262_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_1263_funpow__mono,axiom,
    ! [F: nat > nat,A2: nat,B2: nat,N: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_eq_nat @ A2 @ B2 )
       => ( ord_less_eq_nat @ ( compow_nat_nat @ N @ F @ A2 ) @ ( compow_nat_nat @ N @ F @ B2 ) ) ) ) ).

% funpow_mono
thf(fact_1264_Kleene__iter__lpfp,axiom,
    ! [F: set_nat > set_nat,P: set_nat,K: nat] :
      ( ( monoto1748750089227133045et_nat @ top_top_set_set_nat @ ord_less_eq_set_nat @ ord_less_eq_set_nat @ F )
     => ( ( ord_less_eq_set_nat @ ( F @ P ) @ P )
       => ( ord_less_eq_set_nat @ ( compow8708494347934031032et_nat @ K @ F @ bot_bot_set_nat ) @ P ) ) ) ).

% Kleene_iter_lpfp
thf(fact_1265_Kleene__iter__lpfp,axiom,
    ! [F: nat > nat,P: nat,K: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_eq_nat @ ( F @ P ) @ P )
       => ( ord_less_eq_nat @ ( compow_nat_nat @ K @ F @ bot_bot_nat ) @ P ) ) ) ).

% Kleene_iter_lpfp
thf(fact_1266_Kleene__iter__gpfp,axiom,
    ! [F: set_nat > set_nat,P: set_nat,K: nat] :
      ( ( monoto1748750089227133045et_nat @ top_top_set_set_nat @ ord_less_eq_set_nat @ ord_less_eq_set_nat @ F )
     => ( ( ord_less_eq_set_nat @ P @ ( F @ P ) )
       => ( ord_less_eq_set_nat @ P @ ( compow8708494347934031032et_nat @ K @ F @ top_top_set_nat ) ) ) ) ).

% Kleene_iter_gpfp
thf(fact_1267_funpow__mono2,axiom,
    ! [F: nat > nat,I2: nat,J: nat,X: nat,Y: nat] :
      ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
     => ( ( ord_less_eq_nat @ I2 @ J )
       => ( ( ord_less_eq_nat @ X @ Y )
         => ( ( ord_less_eq_nat @ X @ ( F @ X ) )
           => ( ord_less_eq_nat @ ( compow_nat_nat @ I2 @ F @ X ) @ ( compow_nat_nat @ J @ F @ Y ) ) ) ) ) ) ).

% funpow_mono2
thf(fact_1268_funpow__decreasing,axiom,
    ! [M: nat,N: nat,F: set_nat > set_nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( monoto1748750089227133045et_nat @ top_top_set_set_nat @ ord_less_eq_set_nat @ ord_less_eq_set_nat @ F )
       => ( ord_less_eq_set_nat @ ( compow8708494347934031032et_nat @ M @ F @ bot_bot_set_nat ) @ ( compow8708494347934031032et_nat @ N @ F @ bot_bot_set_nat ) ) ) ) ).

% funpow_decreasing
thf(fact_1269_funpow__decreasing,axiom,
    ! [M: nat,N: nat,F: nat > nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( monotone_on_nat_nat @ top_top_set_nat @ ord_less_eq_nat @ ord_less_eq_nat @ F )
       => ( ord_less_eq_nat @ ( compow_nat_nat @ M @ F @ bot_bot_nat ) @ ( compow_nat_nat @ N @ F @ bot_bot_nat ) ) ) ) ).

% funpow_decreasing
thf(fact_1270_lfp__Kleene__iter,axiom,
    ! [F: set_nat > set_nat,K: nat] :
      ( ( monoto1748750089227133045et_nat @ top_top_set_set_nat @ ord_less_eq_set_nat @ ord_less_eq_set_nat @ F )
     => ( ( ( compow8708494347934031032et_nat @ ( suc @ K ) @ F @ bot_bot_set_nat )
          = ( compow8708494347934031032et_nat @ K @ F @ bot_bot_set_nat ) )
       => ( ( comple7975543026063415949et_nat @ F )
          = ( compow8708494347934031032et_nat @ K @ F @ bot_bot_set_nat ) ) ) ) ).

% lfp_Kleene_iter
thf(fact_1271_gfp__Kleene__iter,axiom,
    ! [F: set_nat > set_nat,K: nat] :
      ( ( monoto1748750089227133045et_nat @ top_top_set_set_nat @ ord_less_eq_set_nat @ ord_less_eq_set_nat @ F )
     => ( ( ( compow8708494347934031032et_nat @ ( suc @ K ) @ F @ top_top_set_nat )
          = ( compow8708494347934031032et_nat @ K @ F @ top_top_set_nat ) )
       => ( ( comple1596078789208929544et_nat @ F )
          = ( compow8708494347934031032et_nat @ K @ F @ top_top_set_nat ) ) ) ) ).

% gfp_Kleene_iter
thf(fact_1272_le__rel__bool__arg__iff,axiom,
    ( ord_less_eq_o_nat
    = ( ^ [X9: $o > nat,Y6: $o > nat] :
          ( ( ord_less_eq_nat @ ( X9 @ $false ) @ ( Y6 @ $false ) )
          & ( ord_less_eq_nat @ ( X9 @ $true ) @ ( Y6 @ $true ) ) ) ) ) ).

% le_rel_bool_arg_iff

% Helper facts (7)
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_2_1_If_001t__Option__Ooption_Itf__a_J_T,axiom,
    ! [X: option_a,Y: option_a] :
      ( ( if_option_a @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Option__Ooption_Itf__a_J_T,axiom,
    ! [X: option_a,Y: option_a] :
      ( ( if_option_a @ $true @ X @ Y )
      = X ) ).

thf(help_If_3_1_If_001t__Option__Ooption_It__Nat__Onat_J_T,axiom,
    ! [P2: $o] :
      ( ( P2 = $true )
      | ( P2 = $false ) ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Nat__Onat_J_T,axiom,
    ! [X: option_nat,Y: option_nat] :
      ( ( if_option_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Nat__Onat_J_T,axiom,
    ! [X: option_nat,Y: option_nat] :
      ( ( if_option_nat @ $true @ X @ Y )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    non_increasing_c_d_a @ ( applies_eq_a_b_d_c @ plus @ mult @ valid @ ( or_a_b_d_c @ a2 @ b2 ) ) ).

%------------------------------------------------------------------------------