ITP001 Axioms: ITP046^5.ax


%------------------------------------------------------------------------------
% File     : ITP046^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    : dirGraph^2.ax [Gau20]
%          : HL4046^5.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :   16 (   0 unt;   4 typ;   0 def)
%            Number of atoms       :  209 (   6 equ;   0 cnn)
%            Maximal formula atoms :   24 (  13 avg)
%            Number of connectives :  396 (   2   ~;   0   |;   2   &; 368   @)
%                                         (   1 <=>;  23  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   24 (  11 avg; 368 nst)
%            Number of types       :    1 (   0 usr)
%            Number of type conns  :    6 (   6   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   25 (  24 usr;  20 con; 0-2 aty)
%            Number of variables   :   43 (   5   ^  37   !;   1   ?;  43   :)
% SPC      : TH0_SAT_EQU_NAR

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tp_c_2EdirGraph_2EEXCLUDE,type,
    c_2EdirGraph_2EEXCLUDE: del > del > $i ).

thf(mem_c_2EdirGraph_2EEXCLUDE,axiom,
    ! [A_27a: del,A_27b: del] : ( mem @ ( c_2EdirGraph_2EEXCLUDE @ A_27a @ A_27b ) @ ( arr @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) @ ( arr @ ( arr @ A_27b @ bool ) @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) ) ) ) ).

thf(tp_c_2EdirGraph_2EParents,type,
    c_2EdirGraph_2EParents: del > del > $i ).

thf(mem_c_2EdirGraph_2EParents,axiom,
    ! [A_27a: del,A_27b: del] : ( mem @ ( c_2EdirGraph_2EParents @ A_27a @ A_27b ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27b ) ) @ ( arr @ A_27a @ bool ) ) ) ).

thf(tp_c_2EdirGraph_2EREACH,type,
    c_2EdirGraph_2EREACH: del > $i ).

thf(mem_c_2EdirGraph_2EREACH,axiom,
    ! [A_27a: del] : ( mem @ ( c_2EdirGraph_2EREACH @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27a ) ) @ ( arr @ A_27a @ ( arr @ A_27a @ bool ) ) ) ) ).

thf(tp_c_2EdirGraph_2EREACH__LIST,type,
    c_2EdirGraph_2EREACH__LIST: del > $i ).

thf(mem_c_2EdirGraph_2EREACH__LIST,axiom,
    ! [A_27a: del] : ( mem @ ( c_2EdirGraph_2EREACH__LIST @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27a ) ) @ ( arr @ ( ty_2Elist_2Elist @ A_27a ) @ ( arr @ A_27a @ bool ) ) ) ) ).

thf(ax_thm_2EdirGraph_2EParents__def,axiom,
    ! [A_27a: del,A_27b: del,V0G: $i] :
      ( ( mem @ V0G @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27b ) ) )
     => ( ( ap @ ( c_2EdirGraph_2EParents @ A_27a @ A_27b ) @ V0G )
        = ( ap @ ( c_2Epred__set_2EGSPEC @ A_27a @ A_27a )
          @ ( lam @ A_27a
            @ ^ [V1x: $i] : ( ap @ ( ap @ ( c_2Epair_2E_2C @ A_27a @ bool ) @ V1x ) @ ( ap @ c_2Ebool_2E_7E @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ( ty_2Elist_2Elist @ A_27b ) ) @ ( ap @ V0G @ V1x ) ) @ ( c_2Elist_2ENIL @ A_27b ) ) ) ) ) ) ) ) ).

thf(ax_thm_2EdirGraph_2EREACH__def,axiom,
    ! [A_27a: del,V0G: $i] :
      ( ( mem @ V0G @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27a ) ) )
     => ( ( ap @ ( c_2EdirGraph_2EREACH @ A_27a ) @ V0G )
        = ( ap @ ( c_2Erelation_2ERTC @ A_27a )
          @ ( lam @ A_27a
            @ ^ [V1x: $i] :
                ( lam @ A_27a
                @ ^ [V2y: $i] : ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V2y ) @ ( ap @ ( c_2Elist_2ELIST__TO__SET @ A_27a ) @ ( ap @ V0G @ V1x ) ) ) ) ) ) ) ) ).

thf(ax_thm_2EdirGraph_2EREACH__LIST__def,axiom,
    ! [A_27a: del,V0G: $i] :
      ( ( mem @ V0G @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27a ) ) )
     => ! [V1nodes: $i] :
          ( ( mem @ V1nodes @ ( ty_2Elist_2Elist @ A_27a ) )
         => ! [V2y: $i] :
              ( ( mem @ V2y @ A_27a )
             => ( ( p @ ( ap @ ( ap @ ( ap @ ( c_2EdirGraph_2EREACH__LIST @ A_27a ) @ V0G ) @ V1nodes ) @ V2y ) )
              <=> ? [V3x: $i] :
                    ( ( mem @ V3x @ A_27a )
                    & ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V3x ) @ ( ap @ ( c_2Elist_2ELIST__TO__SET @ A_27a ) @ V1nodes ) ) )
                    & ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V2y ) @ ( ap @ ( ap @ ( c_2EdirGraph_2EREACH @ A_27a ) @ V0G ) @ V3x ) ) ) ) ) ) ) ) ).

thf(ax_thm_2EdirGraph_2EEXCLUDE__def,axiom,
    ! [A_27a: del,A_27b: del,V0G: $i] :
      ( ( mem @ V0G @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) )
     => ! [V1ex: $i] :
          ( ( mem @ V1ex @ ( arr @ A_27b @ bool ) )
         => ! [V2node: $i] :
              ( ( mem @ V2node @ A_27b )
             => ( ( ap @ ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27a @ A_27b ) @ V0G ) @ V1ex ) @ V2node )
                = ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ( ty_2Elist_2Elist @ A_27a ) ) @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27b ) @ V2node ) @ V1ex ) ) @ ( c_2Elist_2ENIL @ A_27a ) ) @ ( ap @ V0G @ V2node ) ) ) ) ) ) ).

thf(conj_thm_2EdirGraph_2EEXCLUDE__LEM,axiom,
    ! [A_27a: del,A_27b: del,V0G: $i] :
      ( ( mem @ V0G @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27b ) ) )
     => ! [V1x: $i] :
          ( ( mem @ V1x @ A_27a )
         => ! [V2l: $i] :
              ( ( mem @ V2l @ ( arr @ A_27a @ bool ) )
             => ( ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27b @ A_27a ) @ V0G ) @ ( ap @ ( ap @ ( c_2Epred__set_2EINSERT @ A_27a ) @ V1x ) @ V2l ) )
                = ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27b @ A_27a ) @ ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27b @ A_27a ) @ V0G ) @ V2l ) ) @ ( ap @ ( ap @ ( c_2Epred__set_2EINSERT @ A_27a ) @ V1x ) @ ( c_2Epred__set_2EEMPTY @ A_27a ) ) ) ) ) ) ) ).

thf(conj_thm_2EdirGraph_2EREACH__EXCLUDE,axiom,
    ! [A_27a: del,V0G: $i] :
      ( ( mem @ V0G @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27a ) ) )
     => ! [V1x: $i] :
          ( ( mem @ V1x @ ( arr @ A_27a @ bool ) )
         => ( ( ap @ ( c_2EdirGraph_2EREACH @ A_27a ) @ ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27a @ A_27a ) @ V0G ) @ V1x ) )
            = ( ap @ ( c_2Erelation_2ERTC @ A_27a )
              @ ( lam @ A_27a
                @ ^ [V2x_27: $i] :
                    ( lam @ A_27a
                    @ ^ [V3y: $i] : ( ap @ ( ap @ c_2Ebool_2E_2F_5C @ ( ap @ c_2Ebool_2E_7E @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V2x_27 ) @ V1x ) ) ) @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V3y ) @ ( ap @ ( c_2Elist_2ELIST__TO__SET @ A_27a ) @ ( ap @ V0G @ V2x_27 ) ) ) ) ) ) ) ) ) ) ).

thf(conj_thm_2EdirGraph_2EREACH__LEM1,axiom,
    ! [A_27a: del,V0p: $i] :
      ( ( mem @ V0p @ A_27a )
     => ! [V1G: $i] :
          ( ( mem @ V1G @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27a ) ) )
         => ! [V2seen: $i] :
              ( ( mem @ V2seen @ ( arr @ A_27a @ bool ) )
             => ( ~ ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V0p ) @ V2seen ) )
               => ( ( ap @ ( ap @ ( c_2EdirGraph_2EREACH @ A_27a ) @ ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27a @ A_27a ) @ V1G ) @ V2seen ) ) @ V0p )
                  = ( ap @ ( ap @ ( c_2Epred__set_2EINSERT @ A_27a ) @ V0p ) @ ( ap @ ( ap @ ( c_2EdirGraph_2EREACH__LIST @ A_27a ) @ ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27a @ A_27a ) @ V1G ) @ ( ap @ ( ap @ ( c_2Epred__set_2EINSERT @ A_27a ) @ V0p ) @ V2seen ) ) ) @ ( ap @ V1G @ V0p ) ) ) ) ) ) ) ) ).

thf(conj_thm_2EdirGraph_2EREACH__LEM2,axiom,
    ! [A_27a: del,V0G: $i] :
      ( ( mem @ V0G @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ A_27a ) ) )
     => ! [V1x: $i] :
          ( ( mem @ V1x @ A_27a )
         => ! [V2y: $i] :
              ( ( mem @ V2y @ A_27a )
             => ( ( p @ ( ap @ ( ap @ ( ap @ ( c_2EdirGraph_2EREACH @ A_27a ) @ V0G ) @ V1x ) @ V2y ) )
               => ! [V3z: $i] :
                    ( ( mem @ V3z @ A_27a )
                   => ( ~ ( p @ ( ap @ ( ap @ ( ap @ ( c_2EdirGraph_2EREACH @ A_27a ) @ V0G ) @ V3z ) @ V2y ) )
                     => ( p @ ( ap @ ( ap @ ( ap @ ( c_2EdirGraph_2EREACH @ A_27a ) @ ( ap @ ( ap @ ( c_2EdirGraph_2EEXCLUDE @ A_27a @ A_27a ) @ V0G ) @ ( ap @ ( ap @ ( c_2Epred__set_2EINSERT @ A_27a ) @ V3z ) @ ( c_2Epred__set_2EEMPTY @ A_27a ) ) ) ) @ V1x ) @ V2y ) ) ) ) ) ) ) ) ).

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