TPTP Problem File: SWW472_10.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SWW472_10 : TPTP v8.2.0. Released v8.2.0.
% Domain   : Software Verification
% Problem  : Hoare's Logic with Procedures line 327, 100 axioms selected
% Version  : SWW472_1 with the conjecture removed
% English  :

% Refs     : [BN10]  Boehme & Nipkow (2010), Sledgehammer: Judgement Day
%          : [Bla11] Blanchette (2011), Email to Geoff Sutcliffe
% Source   : [TPTP]
% Names    : 

% Status   : Satisfiable
% Rating   : 1.00 v8.2.0
% Syntax   : Number of formulae    :  174 (  33 unt;  64 typ;   0 def)
%            Number of atoms       :  266 (  92 equ)
%            Maximal formula atoms :    9 (   2 avg)
%            Number of connectives :  209 (  53   ~;  18   |;  18   &)
%                                         (  22 <=>;  98  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   16 (   6 avg)
%            Maximal term depth    :    6 (   2 avg)
%            Number of types       :   17 (  16 usr)
%            Number of type conns  :   61 (  33   >;  28   *;   0   +;   0  <<)
%            Number of predicates  :    2 (   1 usr;   0 prp; 1-2 aty)
%            Number of functors    :   47 (  47 usr;  15 con; 0-3 aty)
%            Number of variables   :  308 ( 292   !;  16   ?; 308   :)
% SPC      : TF0_SAT_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2011-08-09 15:35:36
%------------------------------------------------------------------------------
%----Should-be-implicit typings (16)
tff(ty_ty_tc__Com__Ocom,type,
    com: $tType ).

tff(ty_ty_tc__Com__Ostate,type,
    state: $tType ).

tff(ty_ty_tc__HOL__Obool,type,
    bool: $tType ).

tff(ty_ty_tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J,type,
    hoare_1848483303_state: $tType ).

tff(ty_ty_tc__fun_Itc__Com__Ostate_Mtc__HOL__Obool_J,type,
    fun_state_bool: $tType ).

tff(ty_ty_tc__fun_Itc__Com__Ostate_Mtc__fun_Itc__Com__Ostate_Mtc__HOL__Obool_J_J,type,
    fun_st1506752259e_bool: $tType ).

tff(ty_ty_tc__fun_Itc__HOL__Obool_Mtc__HOL__Obool_J,type,
    fun_bool_bool: $tType ).

tff(ty_ty_tc__fun_Itc__HOL__Obool_Mtc__fun_Itc__HOL__Obool_Mtc__HOL__Obool_J_J,type,
    fun_bo1549164019l_bool: $tType ).

tff(ty_ty_tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_,type,
    fun_Ho734851753e_bool: $tType ).

tff(ty_ty_tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J__001,type,
    fun_Ho1565547955_state: $tType ).

tff(ty_ty_tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J__002,type,
    fun_Ho2109050089l_bool: $tType ).

tff(ty_ty_tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J__003,type,
    fun_Ho1480763635e_bool: $tType ).

tff(ty_ty_tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J__004,type,
    fun_Ho1811782525_state: $tType ).

tff(ty_ty_tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J__005,type,
    fun_Ho1489168363l_bool: $tType ).

tff(ty_ty_tc__fun_Itc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__,type,
    fun_fu1783763359l_bool: $tType ).

tff(ty_ty_tc__fun_Itc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com___006,type,
    fun_fu1404623273_state: $tType ).

%----Explicit typings (48)
tff(sy_c_Big__Operators_Osemilattice__big_000tc__Hoare____Mirabelle____yiemogtkbg__O,type,
    big_se136229009_state: ( fun_Ho1811782525_state * fun_fu1404623273_state ) > bool ).

tff(sy_c_COMBB_000tc__HOL__Obool_000tc__HOL__Obool_000tc__Hoare____Mirabelle____yiem,type,
    cOMBB_1397003211_state: ( fun_bool_bool * fun_Ho734851753e_bool ) > fun_Ho734851753e_bool ).

tff(sy_c_COMBB_000tc__HOL__Obool_000tc__fun_Itc__HOL__Obool_Mtc__HOL__Obool_J_000tc_,type,
    cOMBB_215065709_state: ( fun_bo1549164019l_bool * fun_Ho734851753e_bool ) > fun_Ho2109050089l_bool ).

tff(sy_c_COMBC_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_0,type,
    cOMBC_1947058646e_bool: ( fun_Ho1480763635e_bool * hoare_1848483303_state ) > fun_Ho734851753e_bool ).

tff(sy_c_COMBC_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_0_007,type,
    cOMBC_1803918242l_bool: ( fun_Ho1489168363l_bool * fun_Ho734851753e_bool ) > fun_Ho734851753e_bool ).

tff(sy_c_COMBK_000tc__HOL__Obool_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_It,type,
    cOMBK_2059960192_state: bool > fun_Ho734851753e_bool ).

tff(sy_c_COMBS_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_0,type,
    cOMBS_1990964188l_bool: ( fun_Ho2109050089l_bool * fun_Ho734851753e_bool ) > fun_Ho734851753e_bool ).

tff(sy_c_Com_Ocom_OSKIP,type,
    skip: com ).

tff(sy_c_Com_Ocom_OSemi,type,
    semi: ( com * com ) > com ).

tff(sy_c_Finite__Set_Ofinite_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__C,type,
    finite1765195604_state: fun_fu1783763359l_bool ).

tff(sy_c_Finite__Set_Ofold1Set_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc_,type,
    finite989866775_state: ( fun_Ho1811782525_state * fun_Ho734851753e_bool ) > fun_Ho734851753e_bool ).

tff(sy_c_Finite__Set_Ofold1_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Co,type,
    finite179260039_state: fun_Ho1811782525_state > fun_fu1404623273_state ).

tff(sy_c_Finite__Set_Ofold__graph_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_I,type,
    finite2022546498_state: ( fun_Ho1811782525_state * hoare_1848483303_state * fun_Ho734851753e_bool ) > fun_Ho734851753e_bool ).

tff(sy_c_Finite__Set_Ofolding__one_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_,type,
    finite1755052842_state: ( fun_Ho1811782525_state * fun_fu1404623273_state ) > bool ).

tff(sy_c_Finite__Set_Ofolding__one__idem_000tc__Hoare____Mirabelle____yiemogtkbg__Ot,type,
    finite1487164397_state: ( fun_Ho1811782525_state * fun_fu1404623273_state ) > bool ).

tff(sy_c_Groups_Ominus__class_Ominus_000tc__fun_Itc__Hoare____Mirabelle____yiemogtkb,type,
    minus_1475387194e_bool: ( fun_Ho734851753e_bool * fun_Ho734851753e_bool ) > fun_Ho734851753e_bool ).

tff(sy_c_Hoare__Mirabelle__yiemogtkbg_OMGT,type,
    hoare_Mirabelle_MGT: com > hoare_1848483303_state ).

tff(sy_c_Hoare__Mirabelle__yiemogtkbg_Ohoare__derivs_000tc__Com__Ostate,type,
    hoare_1193527299_state: fun_Ho734851753e_bool > fun_fu1783763359l_bool ).

tff(sy_c_Hoare__Mirabelle__yiemogtkbg_Ohoare__valids_000tc__Com__Ostate,type,
    hoare_1599938561_state: fun_Ho734851753e_bool > fun_fu1783763359l_bool ).

tff(sy_c_Hoare__Mirabelle__yiemogtkbg_Otriple_Otriple_000tc__Com__Ostate,type,
    hoare_1602906773_state: ( fun_st1506752259e_bool * com * fun_st1506752259e_bool ) > hoare_1848483303_state ).

tff(sy_c_Orderings_Obot__class_Obot_000tc__HOL__Obool,type,
    bot_bot_bool: bool ).

tff(sy_c_Orderings_Obot__class_Obot_000tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg,type,
    bot_bo454148287e_bool: fun_Ho734851753e_bool ).

tff(sy_c_Set_OCollect_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ost,type,
    collec1708318610_state: fun_Ho734851753e_bool > fun_Ho734851753e_bool ).

tff(sy_c_Set_Oinsert_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Osta,type,
    insert668001005_state: ( hoare_1848483303_state * fun_Ho734851753e_bool ) > fun_Ho734851753e_bool ).

tff(sy_c_Set_Othe__elem_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__O,type,
    the_el1004306568_state: fun_fu1404623273_state ).

tff(sy_c_fFalse,type,
    fFalse: bool ).

tff(sy_c_fNot,type,
    fNot: fun_bool_bool ).

tff(sy_c_fTrue,type,
    fTrue: bool ).

tff(sy_c_fdisj,type,
    fdisj: fun_bo1549164019l_bool ).

tff(sy_c_fequal_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J,type,
    fequal364418600_state: fun_Ho1480763635e_bool ).

tff(sy_c_fimplies,type,
    fimplies: fun_bo1549164019l_bool ).

tff(sy_c_hAPP_000tc__Com__Ostate_000tc__HOL__Obool,type,
    hAPP_state_bool: ( fun_state_bool * state ) > bool ).

tff(sy_c_hAPP_000tc__Com__Ostate_000tc__fun_Itc__Com__Ostate_Mtc__HOL__Obool_J,type,
    hAPP_s1806633685e_bool: ( fun_st1506752259e_bool * state ) > fun_state_bool ).

tff(sy_c_hAPP_000tc__HOL__Obool_000tc__HOL__Obool,type,
    hAPP_bool_bool: ( fun_bool_bool * bool ) > bool ).

tff(sy_c_hAPP_000tc__HOL__Obool_000tc__fun_Itc__HOL__Obool_Mtc__HOL__Obool_J,type,
    hAPP_b589554111l_bool: ( fun_bo1549164019l_bool * bool ) > fun_bool_bool ).

tff(sy_c_hAPP_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_00,type,
    hAPP_H2060173127e_bool: ( fun_Ho734851753e_bool * hoare_1848483303_state ) > bool ).

tff(sy_c_hAPP_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_00_008,type,
    hAPP_H650874577_state: ( fun_Ho1565547955_state * hoare_1848483303_state ) > hoare_1848483303_state ).

tff(sy_c_hAPP_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_00_009,type,
    hAPP_H590162869l_bool: ( fun_Ho2109050089l_bool * hoare_1848483303_state ) > fun_bool_bool ).

tff(sy_c_hAPP_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_00_010,type,
    hAPP_H1618070847e_bool: ( fun_Ho1480763635e_bool * hoare_1848483303_state ) > fun_Ho734851753e_bool ).

tff(sy_c_hAPP_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_00_011,type,
    hAPP_H1291404617_state: ( fun_Ho1811782525_state * hoare_1848483303_state ) > fun_Ho1565547955_state ).

tff(sy_c_hAPP_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J_00_012,type,
    hAPP_H1199573897l_bool: ( fun_Ho1489168363l_bool * hoare_1848483303_state ) > fun_fu1783763359l_bool ).

tff(sy_c_hAPP_000tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Os,type,
    hAPP_f355887345l_bool: ( fun_fu1783763359l_bool * fun_Ho734851753e_bool ) > bool ).

tff(sy_c_hAPP_000tc__fun_Itc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Os_013,type,
    hAPP_f2099317627_state: ( fun_fu1404623273_state * fun_Ho734851753e_bool ) > hoare_1848483303_state ).

tff(sy_c_hBOOL,type,
    hBOOL: bool > $o ).

tff(sy_c_member_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__Ostate_J,type,
    member591555156_state: fun_Ho1489168363l_bool ).

tff(sy_v_P,type,
    p: fun_st1506752259e_bool ).

tff(sy_v_Q,type,
    q: fun_st1506752259e_bool ).

tff(sy_v_c,type,
    c: com ).

%----Relevant facts (90)
tff(fact_0_empty,axiom,
    ! [G_1: fun_Ho734851753e_bool] : hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),bot_bo454148287e_bool)) ).

tff(fact_1_triple_Oinject,axiom,
    ! [Fun1_2: fun_st1506752259e_bool,Com_2: com,Fun2_2: fun_st1506752259e_bool,Fun1_1: fun_st1506752259e_bool,Com_1: com,Fun2_1: fun_st1506752259e_bool] :
      ( ( hoare_1602906773_state(Fun1_2,Com_2,Fun2_2) = hoare_1602906773_state(Fun1_1,Com_1,Fun2_1) )
    <=> ( ( Fun1_2 = Fun1_1 )
        & ( Com_2 = Com_1 )
        & ( Fun2_2 = Fun2_1 ) ) ) ).

tff(fact_2_hoare__sound,axiom,
    ! [G_1: fun_Ho734851753e_bool,Ts: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),Ts))
     => hBOOL(hAPP_f355887345l_bool(hoare_1599938561_state(G_1),Ts)) ) ).

tff(fact_3_cut,axiom,
    ! [G_1: fun_Ho734851753e_bool,G_2: fun_Ho734851753e_bool,Ts: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_2),Ts))
     => ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),G_2))
       => hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),Ts)) ) ) ).

tff(fact_4_hoare__derivs_Oinsert,axiom,
    ! [Ts: fun_Ho734851753e_bool,G_1: fun_Ho734851753e_bool,T: hoare_1848483303_state] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(T,bot_bo454148287e_bool)))
     => ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),Ts))
       => hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(T,Ts))) ) ) ).

tff(fact_5_derivs__insertD,axiom,
    ! [G_1: fun_Ho734851753e_bool,T: hoare_1848483303_state,Ts: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(T,Ts)))
     => ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(T,bot_bo454148287e_bool)))
        & hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),Ts)) ) ) ).

tff(fact_6_conseq2,axiom,
    ! [Qa: fun_st1506752259e_bool,G_1: fun_Ho734851753e_bool,Pa: fun_st1506752259e_bool,Ca: com,Q_2: fun_st1506752259e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,Ca,Q_2),bot_bo454148287e_bool)))
     => ( ! [Z_1: state,S: state] :
            ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Q_2,Z_1),S))
           => hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Qa,Z_1),S)) )
       => hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,Ca,Qa),bot_bo454148287e_bool))) ) ) ).

tff(fact_7_conseq1,axiom,
    ! [Pa: fun_st1506752259e_bool,G_1: fun_Ho734851753e_bool,P_2: fun_st1506752259e_bool,Ca: com,Qa: fun_st1506752259e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(P_2,Ca,Qa),bot_bo454148287e_bool)))
     => ( ! [Z_1: state,S: state] :
            ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Pa,Z_1),S))
           => hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(P_2,Z_1),S)) )
       => hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,Ca,Qa),bot_bo454148287e_bool))) ) ) ).

tff(fact_8_insertE,axiom,
    ! [A: hoare_1848483303_state,B_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),insert668001005_state(B_1,A_1)))
     => ( ( A != B_1 )
       => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),A_1)) ) ) ).

tff(fact_9_insertCI,axiom,
    ! [B_1: hoare_1848483303_state,A: hoare_1848483303_state,B: fun_Ho734851753e_bool] :
      ( ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),B))
       => ( A = B_1 ) )
     => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),insert668001005_state(B_1,B))) ) ).

tff(fact_10_conseq12,axiom,
    ! [Qa: fun_st1506752259e_bool,Pa: fun_st1506752259e_bool,G_1: fun_Ho734851753e_bool,P_2: fun_st1506752259e_bool,Ca: com,Q_2: fun_st1506752259e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(P_2,Ca,Q_2),bot_bo454148287e_bool)))
     => ( ! [Z_1: state,S: state] :
            ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Pa,Z_1),S))
           => ! [S_1: state] :
                ( ! [Z_2: state] :
                    ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(P_2,Z_2),S))
                   => hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Q_2,Z_2),S_1)) )
               => hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Qa,Z_1),S_1)) ) )
       => hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,Ca,Qa),bot_bo454148287e_bool))) ) ) ).

tff(fact_11_emptyE,axiom,
    ! [A: hoare_1848483303_state] : ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),bot_bo454148287e_bool)) ).

tff(fact_12_empty__not__insert,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] : bot_bo454148287e_bool != insert668001005_state(A,A_1) ).

tff(fact_13_insert__not__empty,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] : insert668001005_state(A,A_1) != bot_bo454148287e_bool ).

tff(fact_14_singleton__iff,axiom,
    ! [B_1: hoare_1848483303_state,A: hoare_1848483303_state] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,B_1),insert668001005_state(A,bot_bo454148287e_bool)))
    <=> ( B_1 = A ) ) ).

tff(fact_15_doubleton__eq__iff,axiom,
    ! [A: hoare_1848483303_state,B_1: hoare_1848483303_state,Ca: hoare_1848483303_state,D: hoare_1848483303_state] :
      ( ( insert668001005_state(A,insert668001005_state(B_1,bot_bo454148287e_bool)) = insert668001005_state(Ca,insert668001005_state(D,bot_bo454148287e_bool)) )
    <=> ( ( ( A = Ca )
          & ( B_1 = D ) )
        | ( ( A = D )
          & ( B_1 = Ca ) ) ) ) ).

tff(fact_16_equals0D,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( ( A_1 = bot_bo454148287e_bool )
     => ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),A_1)) ) ).

tff(fact_17_Collect__empty__eq,axiom,
    ! [Pa: fun_Ho734851753e_bool] :
      ( ( collec1708318610_state(Pa) = bot_bo454148287e_bool )
    <=> ! [X_2: hoare_1848483303_state] : ~ hBOOL(hAPP_H2060173127e_bool(Pa,X_2)) ) ).

tff(fact_18_empty__iff,axiom,
    ! [Ca: hoare_1848483303_state] : ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Ca),bot_bo454148287e_bool)) ).

tff(fact_19_empty__Collect__eq,axiom,
    ! [Pa: fun_Ho734851753e_bool] :
      ( ( bot_bo454148287e_bool = collec1708318610_state(Pa) )
    <=> ! [X_2: hoare_1848483303_state] : ~ hBOOL(hAPP_H2060173127e_bool(Pa,X_2)) ) ).

tff(fact_20_ex__in__conv,axiom,
    ! [A_1: fun_Ho734851753e_bool] :
      ( ? [X_2: hoare_1848483303_state] : hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_2),A_1))
    <=> ( A_1 != bot_bo454148287e_bool ) ) ).

tff(fact_21_all__not__in__conv,axiom,
    ! [A_1: fun_Ho734851753e_bool] :
      ( ! [X_2: hoare_1848483303_state] : ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_2),A_1))
    <=> ( A_1 = bot_bo454148287e_bool ) ) ).

tff(fact_22_empty__def,axiom,
    bot_bo454148287e_bool = collec1708318610_state(cOMBK_2059960192_state(fFalse)) ).

tff(fact_23_insert__absorb,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),A_1))
     => ( insert668001005_state(A,A_1) = A_1 ) ) ).

tff(fact_24_insertI2,axiom,
    ! [B_1: hoare_1848483303_state,A: hoare_1848483303_state,B: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),B))
     => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),insert668001005_state(B_1,B))) ) ).

tff(fact_25_insert__ident,axiom,
    ! [B: fun_Ho734851753e_bool,X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
     => ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),B))
       => ( ( insert668001005_state(X_1,A_1) = insert668001005_state(X_1,B) )
        <=> ( A_1 = B ) ) ) ) ).

tff(fact_26_insert__code,axiom,
    ! [Y_2: hoare_1848483303_state,A_1: fun_Ho734851753e_bool,X_1: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(insert668001005_state(Y_2,A_1),X_1))
    <=> ( ( Y_2 = X_1 )
        | hBOOL(hAPP_H2060173127e_bool(A_1,X_1)) ) ) ).

tff(fact_27_insert__iff,axiom,
    ! [A: hoare_1848483303_state,B_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),insert668001005_state(B_1,A_1)))
    <=> ( ( A = B_1 )
        | hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),A_1)) ) ) ).

tff(fact_28_insert__commute,axiom,
    ! [X_1: hoare_1848483303_state,Y_2: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] : insert668001005_state(X_1,insert668001005_state(Y_2,A_1)) = insert668001005_state(Y_2,insert668001005_state(X_1,A_1)) ).

tff(fact_29_insert__absorb2,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] : insert668001005_state(X_1,insert668001005_state(X_1,A_1)) = insert668001005_state(X_1,A_1) ).

tff(fact_30_insert__Collect,axiom,
    ! [A: hoare_1848483303_state,Pa: fun_Ho734851753e_bool] : insert668001005_state(A,collec1708318610_state(Pa)) = collec1708318610_state(cOMBS_1990964188l_bool(cOMBB_215065709_state(fimplies,cOMBB_1397003211_state(fNot,cOMBC_1947058646e_bool(fequal364418600_state,A))),Pa)) ).

tff(fact_31_insert__compr,axiom,
    ! [A: hoare_1848483303_state,B: fun_Ho734851753e_bool] : insert668001005_state(A,B) = collec1708318610_state(cOMBS_1990964188l_bool(cOMBB_215065709_state(fdisj,cOMBC_1947058646e_bool(fequal364418600_state,A)),cOMBC_1803918242l_bool(member591555156_state,B))) ).

tff(fact_32_insertI1,axiom,
    ! [A: hoare_1848483303_state,B: fun_Ho734851753e_bool] : hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),insert668001005_state(A,B))) ).

tff(fact_33_singleton__inject,axiom,
    ! [A: hoare_1848483303_state,B_1: hoare_1848483303_state] :
      ( ( insert668001005_state(A,bot_bo454148287e_bool) = insert668001005_state(B_1,bot_bo454148287e_bool) )
     => ( A = B_1 ) ) ).

tff(fact_34_singletonE,axiom,
    ! [B_1: hoare_1848483303_state,A: hoare_1848483303_state] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,B_1),insert668001005_state(A,bot_bo454148287e_bool)))
     => ( B_1 = A ) ) ).

tff(fact_35_the__elem__eq,axiom,
    ! [X_1: hoare_1848483303_state] : hAPP_f2099317627_state(the_el1004306568_state,insert668001005_state(X_1,bot_bo454148287e_bool)) = X_1 ).

tff(fact_36_bot__apply,axiom,
    ! [X_1: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(bot_bo454148287e_bool,X_1))
    <=> hBOOL(bot_bot_bool) ) ).

tff(fact_37_bot__fun__def,axiom,
    ! [X_2: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(bot_bo454148287e_bool,X_2))
    <=> hBOOL(bot_bot_bool) ) ).

tff(fact_38_hoare__derivs_OSkip,axiom,
    ! [G_1: fun_Ho734851753e_bool,Pa: fun_st1506752259e_bool] : hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,skip,Pa),bot_bo454148287e_bool))) ).

tff(fact_39_Comp,axiom,
    ! [D: com,R_1: fun_st1506752259e_bool,G_1: fun_Ho734851753e_bool,Pa: fun_st1506752259e_bool,Ca: com,Qa: fun_st1506752259e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,Ca,Qa),bot_bo454148287e_bool)))
     => ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Qa,D,R_1),bot_bo454148287e_bool)))
       => hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,semi(Ca,D),R_1),bot_bo454148287e_bool))) ) ) ).

tff(fact_40_triple_Oexhaust,axiom,
    ! [Y_2: hoare_1848483303_state] :
      ~ ! [Fun1: fun_st1506752259e_bool,Com: com,Fun2: fun_st1506752259e_bool] : Y_2 != hoare_1602906773_state(Fun1,Com,Fun2) ).

tff(fact_41_Set_Oset__insert,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
     => ~ ! [B_2: fun_Ho734851753e_bool] :
            ( ( A_1 = insert668001005_state(X_1,B_2) )
           => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),B_2)) ) ) ).

tff(fact_42_mk__disjoint__insert,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),A_1))
     => ? [B_2: fun_Ho734851753e_bool] :
          ( ( A_1 = insert668001005_state(A,B_2) )
          & ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),B_2)) ) ) ).

tff(fact_43_com_Osimps_I13_J,axiom,
    ! [Com1_2: com,Com2_2: com] : semi(Com1_2,Com2_2) != skip ).

tff(fact_44_com_Osimps_I12_J,axiom,
    ! [Com1_2: com,Com2_2: com] : skip != semi(Com1_2,Com2_2) ).

tff(fact_45_equals0I,axiom,
    ! [A_1: fun_Ho734851753e_bool] :
      ( ! [Y_1: hoare_1848483303_state] : ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Y_1),A_1))
     => ( A_1 = bot_bo454148287e_bool ) ) ).

tff(fact_46_conseq,axiom,
    ! [Qa: fun_st1506752259e_bool,G_1: fun_Ho734851753e_bool,Ca: com,Pa: fun_st1506752259e_bool] :
      ( ! [Z_1: state,S: state] :
          ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Pa,Z_1),S))
         => ? [P_1: fun_st1506752259e_bool,Q_1: fun_st1506752259e_bool] :
              ( hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(P_1,Ca,Q_1),bot_bo454148287e_bool)))
              & ! [S_1: state] :
                  ( ! [Z_2: state] :
                      ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(P_1,Z_2),S))
                     => hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Q_1,Z_2),S_1)) )
                 => hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Qa,Z_1),S_1)) ) ) )
     => hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(G_1),insert668001005_state(hoare_1602906773_state(Pa,Ca,Qa),bot_bo454148287e_bool))) ) ).

tff(fact_47_com_Osimps_I3_J,axiom,
    ! [Com1_1: com,Com2_1: com,Com1: com,Com2: com] :
      ( ( semi(Com1_1,Com2_1) = semi(Com1,Com2) )
    <=> ( ( Com1_1 = Com1 )
        & ( Com2_1 = Com2 ) ) ) ).

tff(fact_48_nonempty__iff,axiom,
    ! [A_1: fun_Ho734851753e_bool] :
      ( ( A_1 != bot_bo454148287e_bool )
    <=> ? [X_2: hoare_1848483303_state,B_2: fun_Ho734851753e_bool] :
          ( ( A_1 = insert668001005_state(X_2,B_2) )
          & ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_2),B_2)) ) ) ).

tff(fact_49_bot__empty__eq,axiom,
    ! [X_2: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(bot_bo454148287e_bool,X_2))
    <=> hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_2),bot_bo454148287e_bool)) ) ).

tff(fact_50_fold1Set__sing,axiom,
    ! [F_1: fun_Ho1811782525_state,A: hoare_1848483303_state,B_1: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(finite989866775_state(F_1,insert668001005_state(A,bot_bo454148287e_bool)),B_1))
    <=> ( A = B_1 ) ) ).

tff(fact_51_folding__one_Osingleton,axiom,
    ! [X_1: hoare_1848483303_state,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1755052842_state(F_1,F))
     => ( hAPP_f2099317627_state(F,insert668001005_state(X_1,bot_bo454148287e_bool)) = X_1 ) ) ).

tff(fact_52_fold1__singleton,axiom,
    ! [F_1: fun_Ho1811782525_state,A: hoare_1848483303_state] : hAPP_f2099317627_state(finite179260039_state(F_1),insert668001005_state(A,bot_bo454148287e_bool)) = A ).

tff(fact_53_fold1__singleton__def,axiom,
    ! [A: hoare_1848483303_state,G: fun_fu1404623273_state,F_1: fun_Ho1811782525_state] :
      ( ( G = finite179260039_state(F_1) )
     => ( hAPP_f2099317627_state(G,insert668001005_state(A,bot_bo454148287e_bool)) = A ) ) ).

tff(fact_54_empty__fold1SetE,axiom,
    ! [F_1: fun_Ho1811782525_state,X_1: hoare_1848483303_state] : ~ hBOOL(hAPP_H2060173127e_bool(finite989866775_state(F_1,bot_bo454148287e_bool),X_1)) ).

tff(fact_55_fold1Set__nonempty,axiom,
    ! [F_1: fun_Ho1811782525_state,A_1: fun_Ho734851753e_bool,X_1: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(finite989866775_state(F_1,A_1),X_1))
     => ( A_1 != bot_bo454148287e_bool ) ) ).

tff(fact_56_fold1Set_Ointros,axiom,
    ! [F_1: fun_Ho1811782525_state,A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool,X_1: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,A,A_1),X_1))
     => ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),A_1))
       => hBOOL(hAPP_H2060173127e_bool(finite989866775_state(F_1,insert668001005_state(A,A_1)),X_1)) ) ) ).

tff(fact_57_folding__one_Oinsert,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1755052842_state(F_1,F))
     => ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
       => ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
         => ( ( A_1 != bot_bo454148287e_bool )
           => ( hAPP_f2099317627_state(F,insert668001005_state(X_1,A_1)) = hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_1),hAPP_f2099317627_state(F,A_1)) ) ) ) ) ) ).

tff(fact_58_folding__one_Oeq__fold,axiom,
    ! [A_1: fun_Ho734851753e_bool,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1755052842_state(F_1,F))
     => ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
       => ( hAPP_f2099317627_state(F,A_1) = hAPP_f2099317627_state(finite179260039_state(F_1),A_1) ) ) ) ).

tff(fact_59_finite_OemptyI,axiom,
    hBOOL(hAPP_f355887345l_bool(finite1765195604_state,bot_bo454148287e_bool)) ).

tff(fact_60_finite_OinsertI,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
     => hBOOL(hAPP_f355887345l_bool(finite1765195604_state,insert668001005_state(A,A_1))) ) ).

tff(fact_61_fold__graph_OemptyI,axiom,
    ! [F_1: fun_Ho1811782525_state,Z: hoare_1848483303_state] : hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,Z,bot_bo454148287e_bool),Z)) ).

tff(fact_62_empty__fold__graphE,axiom,
    ! [F_1: fun_Ho1811782525_state,Z: hoare_1848483303_state,X_1: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,Z,bot_bo454148287e_bool),X_1))
     => ( X_1 = Z ) ) ).

tff(fact_63_fold__graph_OinsertI,axiom,
    ! [F_1: fun_Ho1811782525_state,Z: hoare_1848483303_state,Y_2: hoare_1848483303_state,X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
     => ( hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,Z,A_1),Y_2))
       => hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,Z,insert668001005_state(X_1,A_1)),hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_1),Y_2))) ) ) ).

tff(fact_64_finite__insert,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,insert668001005_state(A,A_1)))
    <=> hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1)) ) ).

tff(fact_65_folding__one_Oclosed,axiom,
    ! [A_1: fun_Ho734851753e_bool,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1755052842_state(F_1,F))
     => ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
       => ( ( A_1 != bot_bo454148287e_bool )
         => ( ! [X_2: hoare_1848483303_state,Y_1: hoare_1848483303_state] : hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_2),Y_1)),insert668001005_state(X_2,insert668001005_state(Y_1,bot_bo454148287e_bool))))
           => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,hAPP_f2099317627_state(F,A_1)),A_1)) ) ) ) ) ).

tff(fact_66_insert__fold1SetE,axiom,
    ! [F_1: fun_Ho1811782525_state,A: hoare_1848483303_state,X_3: fun_Ho734851753e_bool,X_1: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(finite989866775_state(F_1,insert668001005_state(A,X_3)),X_1))
     => ~ ! [A_3: hoare_1848483303_state,A_2: fun_Ho734851753e_bool] :
            ( ( insert668001005_state(A,X_3) = insert668001005_state(A_3,A_2) )
           => ( hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,A_3,A_2),X_1))
             => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A_3),A_2)) ) ) ) ).

tff(fact_67_finite__nonempty__imp__fold1Set,axiom,
    ! [F_1: fun_Ho1811782525_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
     => ( ( A_1 != bot_bo454148287e_bool )
       => ? [X1: hoare_1848483303_state] : hBOOL(hAPP_H2060173127e_bool(finite989866775_state(F_1,A_1),X1)) ) ) ).

tff(fact_68_finite__induct,axiom,
    ! [Pa: fun_fu1783763359l_bool,F: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,F))
     => ( hBOOL(hAPP_f355887345l_bool(Pa,bot_bo454148287e_bool))
       => ( ! [X_2: hoare_1848483303_state,F_2: fun_Ho734851753e_bool] :
              ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,F_2))
             => ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_2),F_2))
               => ( hBOOL(hAPP_f355887345l_bool(Pa,F_2))
                 => hBOOL(hAPP_f355887345l_bool(Pa,insert668001005_state(X_2,F_2))) ) ) )
         => hBOOL(hAPP_f355887345l_bool(Pa,F)) ) ) ) ).

tff(fact_69_mem__def,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
    <=> hBOOL(hAPP_H2060173127e_bool(A_1,X_1)) ) ).

tff(fact_70_Collect__def,axiom,
    ! [Pa: fun_Ho734851753e_bool] : collec1708318610_state(Pa) = Pa ).

tff(fact_71_finite_Osimps,axiom,
    ! [A: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A))
    <=> ( ( A = bot_bo454148287e_bool )
        | ? [A_2: fun_Ho734851753e_bool,A_3: hoare_1848483303_state] :
            ( ( A = insert668001005_state(A_3,A_2) )
            & hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_2)) ) ) ) ).

tff(fact_72_finite__imp__fold__graph,axiom,
    ! [F_1: fun_Ho1811782525_state,Z: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
     => ? [X1: hoare_1848483303_state] : hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,Z,A_1),X1)) ) ).

tff(fact_73_fold1Set_Osimps,axiom,
    ! [F_1: fun_Ho1811782525_state,A1: fun_Ho734851753e_bool,A2: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(finite989866775_state(F_1,A1),A2))
    <=> ? [A_3: hoare_1848483303_state,A_2: fun_Ho734851753e_bool,X_2: hoare_1848483303_state] :
          ( ( A1 = insert668001005_state(A_3,A_2) )
          & ( A2 = X_2 )
          & hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,A_3,A_2),X_2))
          & ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A_3),A_2)) ) ) ).

tff(fact_74_fold__graph_Osimps,axiom,
    ! [F_1: fun_Ho1811782525_state,Z: hoare_1848483303_state,A1: fun_Ho734851753e_bool,A2: hoare_1848483303_state] :
      ( hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,Z,A1),A2))
    <=> ( ( ( A1 = bot_bo454148287e_bool )
          & ( A2 = Z ) )
        | ? [X_2: hoare_1848483303_state,A_2: fun_Ho734851753e_bool,Y_1: hoare_1848483303_state] :
            ( ( A1 = insert668001005_state(X_2,A_2) )
            & ( A2 = hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_2),Y_1) )
            & ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_2),A_2))
            & hBOOL(hAPP_H2060173127e_bool(finite2022546498_state(F_1,Z,A_2),Y_1)) ) ) ) ).

tff(fact_75_folding__one__idem_Oinsert__idem,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1487164397_state(F_1,F))
     => ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
       => ( ( A_1 != bot_bo454148287e_bool )
         => ( hAPP_f2099317627_state(F,insert668001005_state(X_1,A_1)) = hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_1),hAPP_f2099317627_state(F,A_1)) ) ) ) ) ).

tff(fact_76_folding__one__idem_Oidem,axiom,
    ! [X_1: hoare_1848483303_state,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1487164397_state(F_1,F))
     => ( hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_1),X_1) = X_1 ) ) ).

tff(fact_77_folding__one__idem_Oin__idem,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1487164397_state(F_1,F))
     => ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
       => ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
         => ( hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_1),hAPP_f2099317627_state(F,A_1)) = hAPP_f2099317627_state(F,A_1) ) ) ) ) ).

tff(fact_78_finite__ne__induct,axiom,
    ! [Pa: fun_fu1783763359l_bool,F: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,F))
     => ( ( F != bot_bo454148287e_bool )
       => ( ! [X_2: hoare_1848483303_state] : hBOOL(hAPP_f355887345l_bool(Pa,insert668001005_state(X_2,bot_bo454148287e_bool)))
         => ( ! [X_2: hoare_1848483303_state,F_2: fun_Ho734851753e_bool] :
                ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,F_2))
               => ( ( F_2 != bot_bo454148287e_bool )
                 => ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_2),F_2))
                   => ( hBOOL(hAPP_f355887345l_bool(Pa,F_2))
                     => hBOOL(hAPP_f355887345l_bool(Pa,insert668001005_state(X_2,F_2))) ) ) ) )
           => hBOOL(hAPP_f355887345l_bool(Pa,F)) ) ) ) ) ).

tff(fact_79_semilattice__big_OF__eq,axiom,
    ! [A_1: fun_Ho734851753e_bool,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(big_se136229009_state(F_1,F))
     => ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
       => ( hAPP_f2099317627_state(F,A_1) = hAPP_f2099317627_state(finite179260039_state(F_1),A_1) ) ) ) ).

tff(fact_80_folding__one_Oremove,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool,F_1: fun_Ho1811782525_state,F: fun_fu1404623273_state] :
      ( hBOOL(finite1755052842_state(F_1,F))
     => ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
       => ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
         => ( ( ( minus_1475387194e_bool(A_1,insert668001005_state(X_1,bot_bo454148287e_bool)) = bot_bo454148287e_bool )
             => ( hAPP_f2099317627_state(F,A_1) = X_1 ) )
            & ( ( minus_1475387194e_bool(A_1,insert668001005_state(X_1,bot_bo454148287e_bool)) != bot_bo454148287e_bool )
             => ( hAPP_f2099317627_state(F,A_1) = hAPP_H650874577_state(hAPP_H1291404617_state(F_1,X_1),hAPP_f2099317627_state(F,minus_1475387194e_bool(A_1,insert668001005_state(X_1,bot_bo454148287e_bool)))) ) ) ) ) ) ) ).

tff(fact_81_DiffI,axiom,
    ! [B: fun_Ho734851753e_bool,Ca: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Ca),A_1))
     => ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Ca),B))
       => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Ca),minus_1475387194e_bool(A_1,B))) ) ) ).

tff(fact_82_DiffE,axiom,
    ! [Ca: hoare_1848483303_state,A_1: fun_Ho734851753e_bool,B: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Ca),minus_1475387194e_bool(A_1,B)))
     => ~ ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Ca),A_1))
         => hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,Ca),B)) ) ) ).

tff(fact_83_finite__Diff,axiom,
    ! [B: fun_Ho734851753e_bool,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,A_1))
     => hBOOL(hAPP_f355887345l_bool(finite1765195604_state,minus_1475387194e_bool(A_1,B))) ) ).

tff(fact_84_insert__Diff,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,A),A_1))
     => ( insert668001005_state(A,minus_1475387194e_bool(A_1,insert668001005_state(A,bot_bo454148287e_bool))) = A_1 ) ) ).

tff(fact_85_Diff__insert__absorb,axiom,
    ! [X_1: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] :
      ( ~ hBOOL(hAPP_f355887345l_bool(hAPP_H1199573897l_bool(member591555156_state,X_1),A_1))
     => ( minus_1475387194e_bool(insert668001005_state(X_1,A_1),insert668001005_state(X_1,bot_bo454148287e_bool)) = A_1 ) ) ).

tff(fact_86_insert__Diff__single,axiom,
    ! [A: hoare_1848483303_state,A_1: fun_Ho734851753e_bool] : insert668001005_state(A,minus_1475387194e_bool(A_1,insert668001005_state(A,bot_bo454148287e_bool))) = insert668001005_state(A,A_1) ).

tff(fact_87_Diff__insert2,axiom,
    ! [A_1: fun_Ho734851753e_bool,A: hoare_1848483303_state,B: fun_Ho734851753e_bool] : minus_1475387194e_bool(A_1,insert668001005_state(A,B)) = minus_1475387194e_bool(minus_1475387194e_bool(A_1,insert668001005_state(A,bot_bo454148287e_bool)),B) ).

tff(fact_88_Diff__insert,axiom,
    ! [A_1: fun_Ho734851753e_bool,A: hoare_1848483303_state,B: fun_Ho734851753e_bool] : minus_1475387194e_bool(A_1,insert668001005_state(A,B)) = minus_1475387194e_bool(minus_1475387194e_bool(A_1,B),insert668001005_state(A,bot_bo454148287e_bool)) ).

tff(fact_89_finite__Diff__insert,axiom,
    ! [A_1: fun_Ho734851753e_bool,A: hoare_1848483303_state,B: fun_Ho734851753e_bool] :
      ( hBOOL(hAPP_f355887345l_bool(finite1765195604_state,minus_1475387194e_bool(A_1,insert668001005_state(A,B))))
    <=> hBOOL(hAPP_f355887345l_bool(finite1765195604_state,minus_1475387194e_bool(A_1,B))) ) ).

%----Helper facts (18)
tff(help_fNot_1_1_U,axiom,
    ! [P: bool] :
      ( ~ hBOOL(hAPP_bool_bool(fNot,P))
      | ~ hBOOL(P) ) ).

tff(help_fNot_2_1_U,axiom,
    ! [P: bool] :
      ( hBOOL(P)
      | hBOOL(hAPP_bool_bool(fNot,P)) ) ).

tff(help_fdisj_1_1_U,axiom,
    ! [Q: bool,P: bool] :
      ( ~ hBOOL(P)
      | hBOOL(hAPP_bool_bool(hAPP_b589554111l_bool(fdisj,P),Q)) ) ).

tff(help_fdisj_2_1_U,axiom,
    ! [P: bool,Q: bool] :
      ( ~ hBOOL(Q)
      | hBOOL(hAPP_bool_bool(hAPP_b589554111l_bool(fdisj,P),Q)) ) ).

tff(help_fdisj_3_1_U,axiom,
    ! [P: bool,Q: bool] :
      ( ~ hBOOL(hAPP_bool_bool(hAPP_b589554111l_bool(fdisj,P),Q))
      | hBOOL(P)
      | hBOOL(Q) ) ).

tff(help_fFalse_1_1_U,axiom,
    ~ hBOOL(fFalse) ).

tff(help_fFalse_1_1_T,axiom,
    ! [P: bool] :
      ( ( P = fTrue )
      | ( P = fFalse ) ) ).

tff(help_fimplies_1_1_U,axiom,
    ! [Q: bool,P: bool] :
      ( hBOOL(P)
      | hBOOL(hAPP_bool_bool(hAPP_b589554111l_bool(fimplies,P),Q)) ) ).

tff(help_fimplies_2_1_U,axiom,
    ! [P: bool,Q: bool] :
      ( ~ hBOOL(Q)
      | hBOOL(hAPP_bool_bool(hAPP_b589554111l_bool(fimplies,P),Q)) ) ).

tff(help_fimplies_3_1_U,axiom,
    ! [P: bool,Q: bool] :
      ( ~ hBOOL(hAPP_bool_bool(hAPP_b589554111l_bool(fimplies,P),Q))
      | ~ hBOOL(P)
      | hBOOL(Q) ) ).

tff(help_fequal_1_1_fequal_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com,axiom,
    ! [X: hoare_1848483303_state,Y: hoare_1848483303_state] :
      ( ~ hBOOL(hAPP_H2060173127e_bool(hAPP_H1618070847e_bool(fequal364418600_state,X),Y))
      | ( X = Y ) ) ).

tff(help_fequal_2_1_fequal_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com,axiom,
    ! [X: hoare_1848483303_state,Y: hoare_1848483303_state] :
      ( ( X != Y )
      | hBOOL(hAPP_H2060173127e_bool(hAPP_H1618070847e_bool(fequal364418600_state,X),Y)) ) ).

tff(help_COMBK_1_1_COMBK_000tc__HOL__Obool_000tc__Hoare____Mirabelle____yiemogtkbg__,axiom,
    ! [P: bool,Q: hoare_1848483303_state] : hAPP_H2060173127e_bool(cOMBK_2059960192_state(P),Q) = P ).

tff(help_COMBB_1_1_COMBB_000tc__HOL__Obool_000tc__HOL__Obool_000tc__Hoare____Mirabel,axiom,
    ! [P: fun_bool_bool,Q: fun_Ho734851753e_bool,R: hoare_1848483303_state] : hAPP_H2060173127e_bool(cOMBB_1397003211_state(P,Q),R) = hAPP_bool_bool(P,hAPP_H2060173127e_bool(Q,R)) ).

tff(help_COMBS_1_1_COMBS_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__,axiom,
    ! [P: fun_Ho2109050089l_bool,Q: fun_Ho734851753e_bool,R: hoare_1848483303_state] : hAPP_H2060173127e_bool(cOMBS_1990964188l_bool(P,Q),R) = hAPP_bool_bool(hAPP_H590162869l_bool(P,R),hAPP_H2060173127e_bool(Q,R)) ).

tff(help_COMBB_1_1_COMBB_000tc__HOL__Obool_000tc__fun_Itc__HOL__Obool_Mtc__HOL__Oboo,axiom,
    ! [P: fun_bo1549164019l_bool,Q: fun_Ho734851753e_bool,R: hoare_1848483303_state] : hAPP_H590162869l_bool(cOMBB_215065709_state(P,Q),R) = hAPP_b589554111l_bool(P,hAPP_H2060173127e_bool(Q,R)) ).

tff(help_COMBC_1_1_COMBC_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com__,axiom,
    ! [P: fun_Ho1480763635e_bool,Q: hoare_1848483303_state,R: hoare_1848483303_state] : hAPP_H2060173127e_bool(cOMBC_1947058646e_bool(P,Q),R) = hAPP_H2060173127e_bool(hAPP_H1618070847e_bool(P,R),Q) ).

tff(help_COMBC_1_1_COMBC_000tc__Hoare____Mirabelle____yiemogtkbg__Otriple_Itc__Com___014,axiom,
    ! [P: fun_Ho1489168363l_bool,Q: fun_Ho734851753e_bool,R: hoare_1848483303_state] : hAPP_H2060173127e_bool(cOMBC_1803918242l_bool(P,Q),R) = hAPP_f355887345l_bool(hAPP_H1199573897l_bool(P,R),Q) ).

%----Conjectures (3)
tff(conj_0,hypothesis,
    hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(bot_bo454148287e_bool),insert668001005_state(hoare_Mirabelle_MGT(c),bot_bo454148287e_bool))) ).

tff(conj_1,hypothesis,
    hBOOL(hAPP_f355887345l_bool(hoare_1599938561_state(bot_bo454148287e_bool),insert668001005_state(hoare_1602906773_state(p,c,q),bot_bo454148287e_bool))) ).

% tff(conj_2,conjecture,
%     hBOOL(hAPP_f355887345l_bool(hoare_1193527299_state(bot_bo454148287e_bool),insert668001005_state(hoare_1602906773_state(p,c,q),bot_bo454148287e_bool))) ).

%------------------------------------------------------------------------------