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 : 17 ( 0 unt; 0 def)
% Number of atoms : 69 ( 11 equ)
% Maximal formula atoms : 8 ( 4 avg)
% Number of connectives : 54 ( 2 ~; 0 |; 2 &)
% ( 1 <=>; 49 =>; 0 <=; 0 <~>)
% Maximal formula depth : 14 ( 8 avg)
% Maximal term depth : 8 ( 2 avg)
% Number of predicates : 4 ( 3 usr; 0 prp; 1-2 aty)
% Number of functors : 25 ( 25 usr; 3 con; 0-4 aty)
% Number of variables : 58 ( 57 !; 1 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2EdirGraph_2EEXCLUDE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> 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))))) ) ) ).
fof(mem_c_2EdirGraph_2EParents,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2EdirGraph_2EParents(A_27a,A_27b),arr(arr(A_27a,ty_2Elist_2Elist(A_27b)),arr(A_27a,bool))) ) ) ).
fof(mem_c_2EdirGraph_2EREACH,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EdirGraph_2EREACH(A_27a),arr(arr(A_27a,ty_2Elist_2Elist(A_27a)),arr(A_27a,arr(A_27a,bool)))) ) ).
fof(mem_c_2EdirGraph_2EREACH__LIST,axiom,
! [A_27a] :
( ne(A_27a)
=> 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)))) ) ).
fof(lameq_f980,axiom,
! [A_27b,A_27a,V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27b)))
=> ! [V1x] : ap(f980(A_27b,A_27a,V0G),V1x) = 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)))) ) ).
fof(ax_thm_2EdirGraph_2EParents__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0G] :
( 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),f980(A_27b,A_27a,V0G)) ) ) ) ).
fof(lameq_f981,axiom,
! [A_27a,V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] : ap(f981(A_27a,V0G,V1x),V2y) = ap(ap(c_2Ebool_2EIN(A_27a),V2y),ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(V0G,V1x))) ) ) ).
fof(lameq_f982,axiom,
! [A_27a,V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V1x] : ap(f982(A_27a,V0G),V1x) = f981(A_27a,V0G,V1x) ) ).
fof(ax_thm_2EdirGraph_2EREACH__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ap(c_2EdirGraph_2EREACH(A_27a),V0G) = ap(c_2Erelation_2ERTC(A_27a),f982(A_27a,V0G)) ) ) ).
fof(ax_thm_2EdirGraph_2EREACH__LIST__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V1nodes] :
( mem(V1nodes,ty_2Elist_2Elist(A_27a))
=> ! [V2y] :
( mem(V2y,A_27a)
=> ( p(ap(ap(ap(c_2EdirGraph_2EREACH__LIST(A_27a),V0G),V1nodes),V2y))
<=> ? [V3x] :
( 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))) ) ) ) ) ) ) ).
fof(ax_thm_2EdirGraph_2EEXCLUDE__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0G] :
( mem(V0G,arr(A_27b,ty_2Elist_2Elist(A_27a)))
=> ! [V1ex] :
( mem(V1ex,arr(A_27b,bool))
=> ! [V2node] :
( 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)) ) ) ) ) ) ).
fof(conj_thm_2EdirGraph_2EEXCLUDE__LEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27b)))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2l] :
( 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))) ) ) ) ) ) ).
fof(lameq_f983,axiom,
! [A_27a,V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V2x_27] :
( mem(V2x_27,A_27a)
=> ! [V1x] :
( mem(V1x,arr(A_27a,bool))
=> ! [V3y] : ap(f983(A_27a,V0G,V2x_27,V1x),V3y) = 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)))) ) ) ) ).
fof(lameq_f984,axiom,
! [A_27a,V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V1x] :
( mem(V1x,arr(A_27a,bool))
=> ! [V2x_27] : ap(f984(A_27a,V0G,V1x),V2x_27) = f983(A_27a,V0G,V2x_27,V1x) ) ) ).
fof(conj_thm_2EdirGraph_2EREACH__EXCLUDE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V1x] :
( 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),f984(A_27a,V0G,V1x)) ) ) ) ).
fof(conj_thm_2EdirGraph_2EREACH__LEM1,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,A_27a)
=> ! [V1G] :
( mem(V1G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V2seen] :
( 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))) ) ) ) ) ) ).
fof(conj_thm_2EdirGraph_2EREACH__LEM2,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,ty_2Elist_2Elist(A_27a)))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27a)
=> ( p(ap(ap(ap(c_2EdirGraph_2EREACH(A_27a),V0G),V1x),V2y))
=> ! [V3z] :
( 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)) ) ) ) ) ) ) ) ).
%------------------------------------------------------------------------------