ITP001 Axioms: ITP020+5.ax


%------------------------------------------------------------------------------
% File     : ITP020+5 : TPTP v9.0.0. Bugfixed v7.5.0.
% Domain   : Interactive Theorem Proving
% Axioms   : HOL4 set theory export, chainy mode
% Version  : [BG+19] axioms.
% English  :

% Refs     : [BG+19] Brown et al. (2019), GRUNGE: A Grand Unified ATP Chall
%          : [Gau20] Gauthier (2020), Email to Geoff Sutcliffe
% Source   : [BG+19]
% Names    : basicSize+2.ax [Gau20]
%          : HL4020+5.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :   12 (   2 unt;   0 def)
%            Number of atoms       :   42 (   9 equ)
%            Maximal formula atoms :   10 (   3 avg)
%            Number of connectives :   30 (   0   ~;   0   |;   2   &)
%                                         (   0 <=>;  28  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   12 (   6 avg)
%            Maximal term depth    :    5 (   2 avg)
%            Number of predicates  :    3 (   2 usr;   0 prp; 1-2 aty)
%            Number of functors    :   23 (  23 usr;   8 con; 0-5 aty)
%            Number of variables   :   34 (  34   !;   0   ?)
% SPC      : FOF_SAT_RFO_SEQ

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2EbasicSize_2Ebool__size,axiom,
    mem(c_2EbasicSize_2Ebool__size,arr(bool,ty_2Enum_2Enum)) ).

fof(mem_c_2EbasicSize_2Eone__size,axiom,
    mem(c_2EbasicSize_2Eone__size,arr(ty_2Eone_2Eone,ty_2Enum_2Enum)) ).

fof(mem_c_2EbasicSize_2Eoption__size,axiom,
    ! [A_27a] :
      ( ne(A_27a)
     => mem(c_2EbasicSize_2Eoption__size(A_27a),arr(arr(A_27a,ty_2Enum_2Enum),arr(ty_2Eoption_2Eoption(A_27a),ty_2Enum_2Enum))) ) ).

fof(mem_c_2EbasicSize_2Epair__size,axiom,
    ! [A_27a] :
      ( ne(A_27a)
     => ! [A_27b] :
          ( ne(A_27b)
         => mem(c_2EbasicSize_2Epair__size(A_27a,A_27b),arr(arr(A_27a,ty_2Enum_2Enum),arr(arr(A_27b,ty_2Enum_2Enum),arr(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Enum_2Enum)))) ) ) ).

fof(mem_c_2EbasicSize_2Esum__size,axiom,
    ! [A_27a] :
      ( ne(A_27a)
     => ! [A_27b] :
          ( ne(A_27b)
         => mem(c_2EbasicSize_2Esum__size(A_27a,A_27b),arr(arr(A_27a,ty_2Enum_2Enum),arr(arr(A_27b,ty_2Enum_2Enum),arr(ty_2Esum_2Esum(A_27a,A_27b),ty_2Enum_2Enum)))) ) ) ).

fof(ax_thm_2EbasicSize_2Ebool__size__def,axiom,
    ! [V0b] :
      ( mem(V0b,bool)
     => ap(c_2EbasicSize_2Ebool__size,V0b) = c_2Enum_2E0 ) ).

fof(lameq_f226,axiom,
    ! [A_27a,A_27b,V0f] :
      ( mem(V0f,arr(A_27a,ty_2Enum_2Enum))
     => ! [V2x] :
          ( mem(V2x,A_27a)
         => ! [V1g] :
              ( mem(V1g,arr(A_27b,ty_2Enum_2Enum))
             => ! [V3y] : ap(f226(A_27a,A_27b,V0f,V2x,V1g),V3y) = ap(ap(c_2Earithmetic_2E_2B,ap(V0f,V2x)),ap(V1g,V3y)) ) ) ) ).

fof(lameq_f227,axiom,
    ! [A_27b,A_27a,V0f] :
      ( mem(V0f,arr(A_27a,ty_2Enum_2Enum))
     => ! [V1g] :
          ( mem(V1g,arr(A_27b,ty_2Enum_2Enum))
         => ! [V2x] : ap(f227(A_27b,A_27a,V0f,V1g),V2x) = f226(A_27a,A_27b,V0f,V2x,V1g) ) ) ).

fof(ax_thm_2EbasicSize_2Epair__size__def,axiom,
    ! [A_27a] :
      ( ne(A_27a)
     => ! [A_27b] :
          ( ne(A_27b)
         => ! [V0f] :
              ( mem(V0f,arr(A_27a,ty_2Enum_2Enum))
             => ! [V1g] :
                  ( mem(V1g,arr(A_27b,ty_2Enum_2Enum))
                 => ap(ap(c_2EbasicSize_2Epair__size(A_27a,A_27b),V0f),V1g) = ap(c_2Epair_2EUNCURRY(A_27a,A_27b,ty_2Enum_2Enum),f227(A_27b,A_27a,V0f,V1g)) ) ) ) ) ).

fof(ax_thm_2EbasicSize_2Eone__size__def,axiom,
    ! [V0x] :
      ( mem(V0x,ty_2Eone_2Eone)
     => ap(c_2EbasicSize_2Eone__size,V0x) = c_2Enum_2E0 ) ).

fof(ax_thm_2EbasicSize_2Esum__size__def,axiom,
    ! [A_27a] :
      ( ne(A_27a)
     => ! [A_27b] :
          ( ne(A_27b)
         => ( ! [V0f] :
                ( mem(V0f,arr(A_27a,ty_2Enum_2Enum))
               => ! [V1g] :
                    ( mem(V1g,arr(A_27b,ty_2Enum_2Enum))
                   => ! [V2x] :
                        ( mem(V2x,A_27a)
                       => ap(ap(ap(c_2EbasicSize_2Esum__size(A_27a,A_27b),V0f),V1g),ap(c_2Esum_2EINL(A_27a,A_27b),V2x)) = ap(V0f,V2x) ) ) )
            & ! [V3f] :
                ( mem(V3f,arr(A_27a,ty_2Enum_2Enum))
               => ! [V4g] :
                    ( mem(V4g,arr(A_27b,ty_2Enum_2Enum))
                   => ! [V5y] :
                        ( mem(V5y,A_27b)
                       => ap(ap(ap(c_2EbasicSize_2Esum__size(A_27a,A_27b),V3f),V4g),ap(c_2Esum_2EINR(A_27a,A_27b),V5y)) = ap(V4g,V5y) ) ) ) ) ) ) ).

fof(ax_thm_2EbasicSize_2Eoption__size__def,axiom,
    ! [A_27a] :
      ( ne(A_27a)
     => ( ! [V0f] :
            ( mem(V0f,arr(A_27a,ty_2Enum_2Enum))
           => ap(ap(c_2EbasicSize_2Eoption__size(A_27a),V0f),c_2Eoption_2ENONE(A_27a)) = c_2Enum_2E0 )
        & ! [V1f] :
            ( mem(V1f,arr(A_27a,ty_2Enum_2Enum))
           => ! [V2x] :
                ( mem(V2x,A_27a)
               => ap(ap(c_2EbasicSize_2Eoption__size(A_27a),V1f),ap(c_2Eoption_2ESOME(A_27a),V2x)) = ap(c_2Enum_2ESUC,ap(V1f,V2x)) ) ) ) ) ).

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