TPTP Problem File: SWW472+1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SWW472+1 : TPTP v8.2.0. Released v5.3.0.
% Domain   : Software Verification
% Problem  : Hoare's Logic with Procedures line 327, 100 axioms selected
% Version  : Especial.
% English  :

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

% Status   : Theorem
% Rating   : 1.00 v5.3.0
% Syntax   : Number of formulae    :  121 (  42 unt;   0 def)
%            Number of atoms       :  280 (  92 equ)
%            Maximal formula atoms :    9 (   2 avg)
%            Number of connectives :  212 (  53   ~;  18   |;  18   &)
%                                         (  22 <=>; 101  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   16 (   5 avg)
%            Maximal term depth    :    6 (   2 avg)
%            Number of predicates  :    3 (   2 usr;   0 prp; 1-2 aty)
%            Number of functors    :   47 (  47 usr;  15 con; 0-3 aty)
%            Number of variables   :  322 ( 306   !;  16   ?)
% SPC      : FOF_THM_RFO_SEQ

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2011-08-09 15:47:10
%          : Encoded with monomorphized guards.
%------------------------------------------------------------------------------
%----Explicit typings (10)
fof(gsy_c_Big__Operators_Osemilattice__big_000tc__Hoare____Mirabelle____jfehddehev__,axiom,
    ! [B_1_1,B_2_1] : is_bool(big_se883361720_state(B_1_1,B_2_1)) ).

fof(gsy_c_Finite__Set_Ofolding__one_000tc__Hoare____Mirabelle____jfehddehev__Otriple,axiom,
    ! [B_1_1,B_2_1] : is_bool(finite354701905_state(B_1_1,B_2_1)) ).

fof(gsy_c_Finite__Set_Ofolding__one__idem_000tc__Hoare____Mirabelle____jfehddehev__O,axiom,
    ! [B_1_1,B_2_1] : is_bool(finite86813460_state(B_1_1,B_2_1)) ).

fof(gsy_c_Orderings_Obot__class_Obot_000tc__HOL__Obool,axiom,
    is_bool(bot_bot_bool) ).

fof(gsy_c_fFalse,axiom,
    is_bool(fFalse) ).

fof(gsy_c_fTrue,axiom,
    is_bool(fTrue) ).

fof(gsy_c_hAPP_000tc__Com__Ostate_000tc__HOL__Obool,axiom,
    ! [B_1_1,B_2_1] : is_bool(hAPP_state_bool(B_1_1,B_2_1)) ).

fof(gsy_c_hAPP_000tc__HOL__Obool_000tc__HOL__Obool,axiom,
    ! [B_1_1,B_2_1] :
      ( is_bool(B_2_1)
     => is_bool(hAPP_bool_bool(B_1_1,B_2_1)) ) ).

fof(gsy_c_hAPP_000tc__Hoare____Mirabelle____jfehddehev__Otriple_Itc__Com__Ostate_J_0,axiom,
    ! [B_1_1,B_2_1] : is_bool(hAPP_H78829294e_bool(B_1_1,B_2_1)) ).

fof(gsy_c_hAPP_000tc__fun_Itc__Hoare____Mirabelle____jfehddehev__Otriple_Itc__Com__O,hypothesis,
    ! [B_1_1,B_2_1] : is_bool(hAPP_f971112728l_bool(B_1_1,B_2_1)) ).

%----Relevant facts (90)
fof(fact_0_empty,axiom,
    ! [G_1] : hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),bot_bo620288102e_bool)) ).

fof(fact_1_triple_Oinject,axiom,
    ! [Fun1_2,Com_2,Fun2_2,Fun1_1,Com_1,Fun2_1] :
      ( hoare_2082236334_state(Fun1_2,Com_2,Fun2_2) = hoare_2082236334_state(Fun1_1,Com_1,Fun2_1)
    <=> ( Fun1_2 = Fun1_1
        & Com_2 = Com_1
        & Fun2_2 = Fun2_1 ) ) ).

fof(fact_2_hoare__sound,axiom,
    ! [G_1,Ts] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),Ts))
     => hBOOL(hAPP_f971112728l_bool(hoare_2004700328_state(G_1),Ts)) ) ).

fof(fact_3_cut,axiom,
    ! [G_1,G_2,Ts] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_2),Ts))
     => ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),G_2))
       => hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),Ts)) ) ) ).

fof(fact_4_hoare__derivs_Oinsert,axiom,
    ! [Ts,G_1,T] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(T,bot_bo620288102e_bool)))
     => ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),Ts))
       => hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(T,Ts))) ) ) ).

fof(fact_5_derivs__insertD,axiom,
    ! [G_1,T,Ts] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(T,Ts)))
     => ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(T,bot_bo620288102e_bool)))
        & hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),Ts)) ) ) ).

fof(fact_6_conseq2,axiom,
    ! [Qa,G_1,Pa,Ca,Q_2] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,Ca,Q_2),bot_bo620288102e_bool)))
     => ( ! [Z_1,S] :
            ( 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_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,Ca,Qa),bot_bo620288102e_bool))) ) ) ).

fof(fact_7_conseq1,axiom,
    ! [Pa,G_1,P_2,Ca,Qa] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(P_2,Ca,Qa),bot_bo620288102e_bool)))
     => ( ! [Z_1,S] :
            ( 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_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,Ca,Qa),bot_bo620288102e_bool))) ) ) ).

fof(fact_8_insertE,axiom,
    ! [A,B_1,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),insert1415133716_state(B_1,A_1)))
     => ( A != B_1
       => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),A_1)) ) ) ).

fof(fact_9_insertCI,axiom,
    ! [B_1,A,B] :
      ( ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),B))
       => A = B_1 )
     => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),insert1415133716_state(B_1,B))) ) ).

fof(fact_10_conseq12,axiom,
    ! [Qa,Pa,G_1,P_2,Ca,Q_2] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(P_2,Ca,Q_2),bot_bo620288102e_bool)))
     => ( ! [Z_1,S] :
            ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Pa,Z_1),S))
           => ! [S_1] :
                ( ! [Z_2] :
                    ( 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_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,Ca,Qa),bot_bo620288102e_bool))) ) ) ).

fof(fact_11_emptyE,axiom,
    ! [A] : ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),bot_bo620288102e_bool)) ).

fof(fact_12_empty__not__insert,axiom,
    ! [A,A_1] : bot_bo620288102e_bool != insert1415133716_state(A,A_1) ).

fof(fact_13_insert__not__empty,axiom,
    ! [A,A_1] : insert1415133716_state(A,A_1) != bot_bo620288102e_bool ).

fof(fact_14_singleton__iff,axiom,
    ! [B_1,A] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,B_1),insert1415133716_state(A,bot_bo620288102e_bool)))
    <=> B_1 = A ) ).

fof(fact_15_doubleton__eq__iff,axiom,
    ! [A,B_1,Ca,D] :
      ( insert1415133716_state(A,insert1415133716_state(B_1,bot_bo620288102e_bool)) = insert1415133716_state(Ca,insert1415133716_state(D,bot_bo620288102e_bool))
    <=> ( ( A = Ca
          & B_1 = D )
        | ( A = D
          & B_1 = Ca ) ) ) ).

fof(fact_16_equals0D,axiom,
    ! [A,A_1] :
      ( A_1 = bot_bo620288102e_bool
     => ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),A_1)) ) ).

fof(fact_17_Collect__empty__eq,axiom,
    ! [Pa] :
      ( collec307967673_state(Pa) = bot_bo620288102e_bool
    <=> ! [X_2] : ~ hBOOL(hAPP_H78829294e_bool(Pa,X_2)) ) ).

fof(fact_18_empty__iff,axiom,
    ! [Ca] : ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Ca),bot_bo620288102e_bool)) ).

fof(fact_19_empty__Collect__eq,axiom,
    ! [Pa] :
      ( bot_bo620288102e_bool = collec307967673_state(Pa)
    <=> ! [X_2] : ~ hBOOL(hAPP_H78829294e_bool(Pa,X_2)) ) ).

fof(fact_20_ex__in__conv,axiom,
    ! [A_1] :
      ( ? [X_2] : hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_2),A_1))
    <=> A_1 != bot_bo620288102e_bool ) ).

fof(fact_21_all__not__in__conv,axiom,
    ! [A_1] :
      ( ! [X_2] : ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_2),A_1))
    <=> A_1 = bot_bo620288102e_bool ) ).

fof(fact_22_empty__def,axiom,
    bot_bo620288102e_bool = collec307967673_state(cOMBK_659609255_state(fFalse)) ).

fof(fact_23_insert__absorb,axiom,
    ! [A,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),A_1))
     => insert1415133716_state(A,A_1) = A_1 ) ).

fof(fact_24_insertI2,axiom,
    ! [B_1,A,B] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),B))
     => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),insert1415133716_state(B_1,B))) ) ).

fof(fact_25_insert__ident,axiom,
    ! [B,X_1,A_1] :
      ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
     => ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),B))
       => ( insert1415133716_state(X_1,A_1) = insert1415133716_state(X_1,B)
        <=> A_1 = B ) ) ) ).

fof(fact_26_insert__code,axiom,
    ! [Y_2,A_1,X_1] :
      ( hBOOL(hAPP_H78829294e_bool(insert1415133716_state(Y_2,A_1),X_1))
    <=> ( Y_2 = X_1
        | hBOOL(hAPP_H78829294e_bool(A_1,X_1)) ) ) ).

fof(fact_27_insert__iff,axiom,
    ! [A,B_1,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),insert1415133716_state(B_1,A_1)))
    <=> ( A = B_1
        | hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),A_1)) ) ) ).

fof(fact_28_insert__commute,axiom,
    ! [X_1,Y_2,A_1] : insert1415133716_state(X_1,insert1415133716_state(Y_2,A_1)) = insert1415133716_state(Y_2,insert1415133716_state(X_1,A_1)) ).

fof(fact_29_insert__absorb2,axiom,
    ! [X_1,A_1] : insert1415133716_state(X_1,insert1415133716_state(X_1,A_1)) = insert1415133716_state(X_1,A_1) ).

fof(fact_30_insert__Collect,axiom,
    ! [A,Pa] : insert1415133716_state(A,collec307967673_state(Pa)) = collec307967673_state(cOMBS_458705923l_bool(cOMBB_962198420_state(fimplies,cOMBB_2144135922_state(fNot,cOMBC_654211620e_bool(fequal1111551311_state,A))),Pa)) ).

fof(fact_31_insert__compr,axiom,
    ! [A,B] : insert1415133716_state(A,B) = collec307967673_state(cOMBS_458705923l_bool(cOMBB_962198420_state(fdisj,cOMBC_654211620e_bool(fequal1111551311_state,A)),cOMBC_1734175330l_bool(member1338687867_state,B))) ).

fof(fact_32_insertI1,axiom,
    ! [A,B] : hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),insert1415133716_state(A,B))) ).

fof(fact_33_singleton__inject,axiom,
    ! [A,B_1] :
      ( insert1415133716_state(A,bot_bo620288102e_bool) = insert1415133716_state(B_1,bot_bo620288102e_bool)
     => A = B_1 ) ).

fof(fact_34_singletonE,axiom,
    ! [B_1,A] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,B_1),insert1415133716_state(A,bot_bo620288102e_bool)))
     => B_1 = A ) ).

fof(fact_35_the__elem__eq,axiom,
    ! [X_1] : hAPP_f1387463497_state(the_el1751439279_state,insert1415133716_state(X_1,bot_bo620288102e_bool)) = X_1 ).

fof(fact_36_bot__apply,axiom,
    ! [X_1] :
      ( hBOOL(hAPP_H78829294e_bool(bot_bo620288102e_bool,X_1))
    <=> hBOOL(bot_bot_bool) ) ).

fof(fact_37_bot__fun__def,axiom,
    ! [X_2] :
      ( hBOOL(hAPP_H78829294e_bool(bot_bo620288102e_bool,X_2))
    <=> hBOOL(bot_bot_bool) ) ).

fof(fact_38_hoare__derivs_OSkip,axiom,
    ! [G_1,Pa] : hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,skip,Pa),bot_bo620288102e_bool))) ).

fof(fact_39_Comp,axiom,
    ! [D,R_1,G_1,Pa,Ca,Qa] :
      ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,Ca,Qa),bot_bo620288102e_bool)))
     => ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Qa,D,R_1),bot_bo620288102e_bool)))
       => hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,semi(Ca,D),R_1),bot_bo620288102e_bool))) ) ) ).

fof(fact_40_triple_Oexhaust,axiom,
    ! [Y_2] :
      ~ ! [Fun1,Com,Fun2] : Y_2 != hoare_2082236334_state(Fun1,Com,Fun2) ).

fof(fact_41_Set_Oset__insert,axiom,
    ! [X_1,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
     => ~ ! [B_2] :
            ( A_1 = insert1415133716_state(X_1,B_2)
           => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),B_2)) ) ) ).

fof(fact_42_mk__disjoint__insert,axiom,
    ! [A,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),A_1))
     => ? [B_2] :
          ( A_1 = insert1415133716_state(A,B_2)
          & ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),B_2)) ) ) ).

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

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

fof(fact_45_equals0I,axiom,
    ! [A_1] :
      ( ! [Y_1] : ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Y_1),A_1))
     => A_1 = bot_bo620288102e_bool ) ).

fof(fact_46_conseq,axiom,
    ! [Qa,G_1,Ca,Pa] :
      ( ! [Z_1,S] :
          ( hBOOL(hAPP_state_bool(hAPP_s1806633685e_bool(Pa,Z_1),S))
         => ? [P_1,Q_1] :
              ( hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(P_1,Ca,Q_1),bot_bo620288102e_bool)))
              & ! [S_1] :
                  ( ! [Z_2] :
                      ( 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_f971112728l_bool(hoare_1598289066_state(G_1),insert1415133716_state(hoare_2082236334_state(Pa,Ca,Qa),bot_bo620288102e_bool))) ) ).

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

fof(fact_48_nonempty__iff,axiom,
    ! [A_1] :
      ( A_1 != bot_bo620288102e_bool
    <=> ? [X_2,B_2] :
          ( A_1 = insert1415133716_state(X_2,B_2)
          & ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_2),B_2)) ) ) ).

fof(fact_49_bot__empty__eq,axiom,
    ! [X_2] :
      ( hBOOL(hAPP_H78829294e_bool(bot_bo620288102e_bool,X_2))
    <=> hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_2),bot_bo620288102e_bool)) ) ).

fof(fact_50_fold1Set__sing,axiom,
    ! [F_1,A,B_1] :
      ( hBOOL(hAPP_H78829294e_bool(finite1736999486_state(F_1,insert1415133716_state(A,bot_bo620288102e_bool)),B_1))
    <=> A = B_1 ) ).

fof(fact_51_folding__one_Osingleton,axiom,
    ! [X_1,F_1,F] :
      ( hBOOL(finite354701905_state(F_1,F))
     => hAPP_f1387463497_state(F,insert1415133716_state(X_1,bot_bo620288102e_bool)) = X_1 ) ).

fof(fact_52_fold1__singleton,axiom,
    ! [F_1,A] : hAPP_f1387463497_state(finite926392750_state(F_1),insert1415133716_state(A,bot_bo620288102e_bool)) = A ).

fof(fact_53_fold1__singleton__def,axiom,
    ! [A,G,F_1] :
      ( G = finite926392750_state(F_1)
     => hAPP_f1387463497_state(G,insert1415133716_state(A,bot_bo620288102e_bool)) = A ) ).

fof(fact_54_empty__fold1SetE,axiom,
    ! [F_1,X_1] : ~ hBOOL(hAPP_H78829294e_bool(finite1736999486_state(F_1,bot_bo620288102e_bool),X_1)) ).

fof(fact_55_fold1Set__nonempty,axiom,
    ! [F_1,A_1,X_1] :
      ( hBOOL(hAPP_H78829294e_bool(finite1736999486_state(F_1,A_1),X_1))
     => A_1 != bot_bo620288102e_bool ) ).

fof(fact_56_fold1Set_Ointros,axiom,
    ! [F_1,A,A_1,X_1] :
      ( hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,A,A_1),X_1))
     => ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),A_1))
       => hBOOL(hAPP_H78829294e_bool(finite1736999486_state(F_1,insert1415133716_state(A,A_1)),X_1)) ) ) ).

fof(fact_57_folding__one_Oinsert,axiom,
    ! [X_1,A_1,F_1,F] :
      ( hBOOL(finite354701905_state(F_1,F))
     => ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
       => ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
         => ( A_1 != bot_bo620288102e_bool
           => hAPP_f1387463497_state(F,insert1415133716_state(X_1,A_1)) = hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_1),hAPP_f1387463497_state(F,A_1)) ) ) ) ) ).

fof(fact_58_folding__one_Oeq__fold,axiom,
    ! [A_1,F_1,F] :
      ( hBOOL(finite354701905_state(F_1,F))
     => ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
       => hAPP_f1387463497_state(F,A_1) = hAPP_f1387463497_state(finite926392750_state(F_1),A_1) ) ) ).

fof(fact_59_finite_OemptyI,axiom,
    hBOOL(hAPP_f971112728l_bool(finite364844667_state,bot_bo620288102e_bool)) ).

fof(fact_60_finite_OinsertI,axiom,
    ! [A,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
     => hBOOL(hAPP_f971112728l_bool(finite364844667_state,insert1415133716_state(A,A_1))) ) ).

fof(fact_61_fold__graph_OemptyI,axiom,
    ! [F_1,Z] : hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,Z,bot_bo620288102e_bool),Z)) ).

fof(fact_62_empty__fold__graphE,axiom,
    ! [F_1,Z,X_1] :
      ( hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,Z,bot_bo620288102e_bool),X_1))
     => X_1 = Z ) ).

fof(fact_63_fold__graph_OinsertI,axiom,
    ! [F_1,Z,Y_2,X_1,A_1] :
      ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
     => ( hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,Z,A_1),Y_2))
       => hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,Z,insert1415133716_state(X_1,A_1)),hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_1),Y_2))) ) ) ).

fof(fact_64_finite__insert,axiom,
    ! [A,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,insert1415133716_state(A,A_1)))
    <=> hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1)) ) ).

fof(fact_65_folding__one_Oclosed,axiom,
    ! [A_1,F_1,F] :
      ( hBOOL(finite354701905_state(F_1,F))
     => ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
       => ( A_1 != bot_bo620288102e_bool
         => ( ! [X_2,Y_1] : hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_2),Y_1)),insert1415133716_state(X_2,insert1415133716_state(Y_1,bot_bo620288102e_bool))))
           => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,hAPP_f1387463497_state(F,A_1)),A_1)) ) ) ) ) ).

fof(fact_66_insert__fold1SetE,axiom,
    ! [F_1,A,X_3,X_1] :
      ( hBOOL(hAPP_H78829294e_bool(finite1736999486_state(F_1,insert1415133716_state(A,X_3)),X_1))
     => ~ ! [A_3,A_2] :
            ( insert1415133716_state(A,X_3) = insert1415133716_state(A_3,A_2)
           => ( hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,A_3,A_2),X_1))
             => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A_3),A_2)) ) ) ) ).

fof(fact_67_finite__nonempty__imp__fold1Set,axiom,
    ! [F_1,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
     => ( A_1 != bot_bo620288102e_bool
       => ? [X1] : hBOOL(hAPP_H78829294e_bool(finite1736999486_state(F_1,A_1),X1)) ) ) ).

fof(fact_68_finite__induct,axiom,
    ! [Pa,F] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,F))
     => ( hBOOL(hAPP_f971112728l_bool(Pa,bot_bo620288102e_bool))
       => ( ! [X_2,F_2] :
              ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,F_2))
             => ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_2),F_2))
               => ( hBOOL(hAPP_f971112728l_bool(Pa,F_2))
                 => hBOOL(hAPP_f971112728l_bool(Pa,insert1415133716_state(X_2,F_2))) ) ) )
         => hBOOL(hAPP_f971112728l_bool(Pa,F)) ) ) ) ).

fof(fact_69_mem__def,axiom,
    ! [X_1,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
    <=> hBOOL(hAPP_H78829294e_bool(A_1,X_1)) ) ).

fof(fact_70_Collect__def,axiom,
    ! [Pa] : collec307967673_state(Pa) = Pa ).

fof(fact_71_finite_Osimps,axiom,
    ! [A] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A))
    <=> ( A = bot_bo620288102e_bool
        | ? [A_2,A_3] :
            ( A = insert1415133716_state(A_3,A_2)
            & hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_2)) ) ) ) ).

fof(fact_72_finite__imp__fold__graph,axiom,
    ! [F_1,Z,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
     => ? [X1] : hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,Z,A_1),X1)) ) ).

fof(fact_73_fold1Set_Osimps,axiom,
    ! [F_1,A1,A2] :
      ( hBOOL(hAPP_H78829294e_bool(finite1736999486_state(F_1,A1),A2))
    <=> ? [A_3,A_2,X_2] :
          ( A1 = insert1415133716_state(A_3,A_2)
          & A2 = X_2
          & hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,A_3,A_2),X_2))
          & ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A_3),A_2)) ) ) ).

fof(fact_74_fold__graph_Osimps,axiom,
    ! [F_1,Z,A1,A2] :
      ( hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,Z,A1),A2))
    <=> ( ( A1 = bot_bo620288102e_bool
          & A2 = Z )
        | ? [X_2,A_2,Y_1] :
            ( A1 = insert1415133716_state(X_2,A_2)
            & A2 = hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_2),Y_1)
            & ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_2),A_2))
            & hBOOL(hAPP_H78829294e_bool(finite374952848_state(F_1,Z,A_2),Y_1)) ) ) ) ).

fof(fact_75_folding__one__idem_Oinsert__idem,axiom,
    ! [X_1,A_1,F_1,F] :
      ( hBOOL(finite86813460_state(F_1,F))
     => ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
       => ( A_1 != bot_bo620288102e_bool
         => hAPP_f1387463497_state(F,insert1415133716_state(X_1,A_1)) = hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_1),hAPP_f1387463497_state(F,A_1)) ) ) ) ).

fof(fact_76_folding__one__idem_Oidem,axiom,
    ! [X_1,F_1,F] :
      ( hBOOL(finite86813460_state(F_1,F))
     => hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_1),X_1) = X_1 ) ).

fof(fact_77_folding__one__idem_Oin__idem,axiom,
    ! [X_1,A_1,F_1,F] :
      ( hBOOL(finite86813460_state(F_1,F))
     => ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
       => ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
         => hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_1),hAPP_f1387463497_state(F,A_1)) = hAPP_f1387463497_state(F,A_1) ) ) ) ).

fof(fact_78_finite__ne__induct,axiom,
    ! [Pa,F] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,F))
     => ( F != bot_bo620288102e_bool
       => ( ! [X_2] : hBOOL(hAPP_f971112728l_bool(Pa,insert1415133716_state(X_2,bot_bo620288102e_bool)))
         => ( ! [X_2,F_2] :
                ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,F_2))
               => ( F_2 != bot_bo620288102e_bool
                 => ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_2),F_2))
                   => ( hBOOL(hAPP_f971112728l_bool(Pa,F_2))
                     => hBOOL(hAPP_f971112728l_bool(Pa,insert1415133716_state(X_2,F_2))) ) ) ) )
           => hBOOL(hAPP_f971112728l_bool(Pa,F)) ) ) ) ) ).

fof(fact_79_semilattice__big_OF__eq,axiom,
    ! [A_1,F_1,F] :
      ( hBOOL(big_se883361720_state(F_1,F))
     => ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
       => hAPP_f1387463497_state(F,A_1) = hAPP_f1387463497_state(finite926392750_state(F_1),A_1) ) ) ).

fof(fact_80_folding__one_Oremove,axiom,
    ! [X_1,A_1,F_1,F] :
      ( hBOOL(finite354701905_state(F_1,F))
     => ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
       => ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
         => ( ( minus_1641527009e_bool(A_1,insert1415133716_state(X_1,bot_bo620288102e_bool)) = bot_bo620288102e_bool
             => hAPP_f1387463497_state(F,A_1) = X_1 )
            & ( minus_1641527009e_bool(A_1,insert1415133716_state(X_1,bot_bo620288102e_bool)) != bot_bo620288102e_bool
             => hAPP_f1387463497_state(F,A_1) = hAPP_H1150764575_state(hAPP_H1855735728_state(F_1,X_1),hAPP_f1387463497_state(F,minus_1641527009e_bool(A_1,insert1415133716_state(X_1,bot_bo620288102e_bool)))) ) ) ) ) ) ).

fof(fact_81_DiffI,axiom,
    ! [B,Ca,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Ca),A_1))
     => ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Ca),B))
       => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Ca),minus_1641527009e_bool(A_1,B))) ) ) ).

fof(fact_82_DiffE,axiom,
    ! [Ca,A_1,B] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Ca),minus_1641527009e_bool(A_1,B)))
     => ~ ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Ca),A_1))
         => hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,Ca),B)) ) ) ).

fof(fact_83_finite__Diff,axiom,
    ! [B,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,A_1))
     => hBOOL(hAPP_f971112728l_bool(finite364844667_state,minus_1641527009e_bool(A_1,B))) ) ).

fof(fact_84_insert__Diff,axiom,
    ! [A,A_1] :
      ( hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,A),A_1))
     => insert1415133716_state(A,minus_1641527009e_bool(A_1,insert1415133716_state(A,bot_bo620288102e_bool))) = A_1 ) ).

fof(fact_85_Diff__insert__absorb,axiom,
    ! [X_1,A_1] :
      ( ~ hBOOL(hAPP_f971112728l_bool(hAPP_H30606679l_bool(member1338687867_state,X_1),A_1))
     => minus_1641527009e_bool(insert1415133716_state(X_1,A_1),insert1415133716_state(X_1,bot_bo620288102e_bool)) = A_1 ) ).

fof(fact_86_insert__Diff__single,axiom,
    ! [A,A_1] : insert1415133716_state(A,minus_1641527009e_bool(A_1,insert1415133716_state(A,bot_bo620288102e_bool))) = insert1415133716_state(A,A_1) ).

fof(fact_87_Diff__insert2,axiom,
    ! [A_1,A,B] : minus_1641527009e_bool(A_1,insert1415133716_state(A,B)) = minus_1641527009e_bool(minus_1641527009e_bool(A_1,insert1415133716_state(A,bot_bo620288102e_bool)),B) ).

fof(fact_88_Diff__insert,axiom,
    ! [A_1,A,B] : minus_1641527009e_bool(A_1,insert1415133716_state(A,B)) = minus_1641527009e_bool(minus_1641527009e_bool(A_1,B),insert1415133716_state(A,bot_bo620288102e_bool)) ).

fof(fact_89_finite__Diff__insert,axiom,
    ! [A_1,A,B] :
      ( hBOOL(hAPP_f971112728l_bool(finite364844667_state,minus_1641527009e_bool(A_1,insert1415133716_state(A,B))))
    <=> hBOOL(hAPP_f971112728l_bool(finite364844667_state,minus_1641527009e_bool(A_1,B))) ) ).

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

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

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

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

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

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

fof(help_fFalse_1_1_T,axiom,
    ! [P] :
      ( is_bool(P)
     => ( P = fTrue
        | P = fFalse ) ) ).

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

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

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

fof(help_fequal_1_1_fequal_000tc__Hoare____Mirabelle____jfehddehev__Otriple_Itc__Com,axiom,
    ! [X,Y] :
      ( ~ hBOOL(hAPP_H78829294e_bool(hAPP_H1049623551e_bool(fequal1111551311_state,X),Y))
      | X = Y ) ).

fof(help_fequal_2_1_fequal_000tc__Hoare____Mirabelle____jfehddehev__Otriple_Itc__Com,axiom,
    ! [X,Y] :
      ( X != Y
      | hBOOL(hAPP_H78829294e_bool(hAPP_H1049623551e_bool(fequal1111551311_state,X),Y)) ) ).

fof(help_COMBK_1_1_COMBK_000tc__HOL__Obool_000tc__Hoare____Mirabelle____jfehddehev__,axiom,
    ! [P,Q] :
      ( is_bool(P)
     => hAPP_H78829294e_bool(cOMBK_659609255_state(P),Q) = P ) ).

fof(help_COMBB_1_1_COMBB_000tc__HOL__Obool_000tc__HOL__Obool_000tc__Hoare____Mirabel,axiom,
    ! [P,Q,R] : hAPP_H78829294e_bool(cOMBB_2144135922_state(P,Q),R) = hAPP_bool_bool(P,hAPP_H78829294e_bool(Q,R)) ).

fof(help_COMBS_1_1_COMBS_000tc__Hoare____Mirabelle____jfehddehev__Otriple_Itc__Com__,axiom,
    ! [P,Q,R] : hAPP_H78829294e_bool(cOMBS_458705923l_bool(P,Q),R) = hAPP_bool_bool(hAPP_H1187982158l_bool(P,R),hAPP_H78829294e_bool(Q,R)) ).

fof(help_COMBB_1_1_COMBB_000tc__HOL__Obool_000tc__fun_Itc__HOL__Obool_Mtc__HOL__Oboo,axiom,
    ! [P,Q,R] : hAPP_H1187982158l_bool(cOMBB_962198420_state(P,Q),R) = hAPP_b589554111l_bool(P,hAPP_H78829294e_bool(Q,R)) ).

fof(help_COMBC_1_1_COMBC_000tc__Hoare____Mirabelle____jfehddehev__Otriple_Itc__Com__,axiom,
    ! [P,Q,R] : hAPP_H78829294e_bool(cOMBC_654211620e_bool(P,Q),R) = hAPP_H78829294e_bool(hAPP_H1049623551e_bool(P,R),Q) ).

fof(help_COMBC_1_1_COMBC_000tc__Hoare____Mirabelle____jfehddehev__Otriple_Itc__Com___001,axiom,
    ! [P,Q,R] : hAPP_H78829294e_bool(cOMBC_1734175330l_bool(P,Q),R) = hAPP_f971112728l_bool(hAPP_H30606679l_bool(P,R),Q) ).

%----Conjectures (3)
fof(conj_0,hypothesis,
    hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(bot_bo620288102e_bool),insert1415133716_state(hoare_Mirabelle_MGT(c),bot_bo620288102e_bool))) ).

fof(conj_1,hypothesis,
    hBOOL(hAPP_f971112728l_bool(hoare_2004700328_state(bot_bo620288102e_bool),insert1415133716_state(hoare_2082236334_state(p,c,q),bot_bo620288102e_bool))) ).

fof(conj_2,conjecture,
    hBOOL(hAPP_f971112728l_bool(hoare_1598289066_state(bot_bo620288102e_bool),insert1415133716_state(hoare_2082236334_state(p,c,q),bot_bo620288102e_bool))) ).

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