ITP001 Axioms: ITP091+5.ax
%------------------------------------------------------------------------------
% File : ITP091+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 : EncodeVar+2.ax [Gau20]
% : HL4091+5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 19 ( 0 unt; 0 def)
% Number of atoms : 90 ( 6 equ)
% Maximal formula atoms : 10 ( 4 avg)
% Number of connectives : 71 ( 0 ~; 0 |; 7 &)
% ( 8 <=>; 56 =>; 0 <=; 0 <~>)
% Maximal formula depth : 15 ( 8 avg)
% Maximal term depth : 9 ( 2 avg)
% Number of predicates : 4 ( 3 usr; 0 prp; 1-2 aty)
% Number of functors : 36 ( 36 usr; 12 con; 0-4 aty)
% Number of variables : 60 ( 58 !; 2 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2EEncodeVar_2Efixed__width,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EEncodeVar_2Efixed__width(A_27a),arr(ty_2Enum_2Enum,arr(ty_2Epair_2Eprod(arr(A_27a,bool),ty_2Epair_2Eprod(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))),bool))) ) ).
fof(mem_c_2EEncodeVar_2Eof__length,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EEncodeVar_2Eof__length(A_27a),arr(ty_2Enum_2Enum,arr(ty_2Elist_2Elist(A_27a),bool))) ) ).
fof(ax_thm_2EEncodeVar_2Efixed__width__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ! [V1c] :
( mem(V1c,ty_2Epair_2Eprod(arr(A_27a,bool),ty_2Epair_2Eprod(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))))
=> ( p(ap(ap(c_2EEncodeVar_2Efixed__width(A_27a),V0n),V1c))
<=> ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2ECoder_2Edomain(A_27a),V1c),V2x))
=> ap(c_2Elist_2ELENGTH(bool),ap(ap(c_2ECoder_2Eencoder(A_27a),V1c),V2x)) = V0n ) ) ) ) ) ) ).
fof(ax_thm_2EEncodeVar_2Eof__length__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(A_27a))
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Ebool_2EIN(ty_2Elist_2Elist(A_27a)),V0l),ap(c_2EEncodeVar_2Eof__length(A_27a),V1n)))
<=> ap(c_2Elist_2ELENGTH(A_27a),V0l) = V1n ) ) ) ) ).
fof(lameq_f2440,axiom,
! [A_27a,V1c] :
( mem(V1c,ty_2Epair_2Eprod(arr(A_27a,bool),ty_2Epair_2Eprod(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))))
=> ! [V0phi] :
( mem(V0phi,arr(A_27a,bool))
=> ! [V4w] : ap(f2440(A_27a,V1c,V0phi),V4w) = ap(V0phi,ap(ap(c_2ECoder_2Edecoder(A_27a),V1c),V4w)) ) ) ).
fof(conj_thm_2EEncodeVar_2Efixed__width__univ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0phi] :
( mem(V0phi,arr(A_27a,bool))
=> ! [V1c] :
( mem(V1c,ty_2Epair_2Eprod(arr(A_27a,bool),ty_2Epair_2Eprod(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))))
=> ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ( ( p(ap(c_2ECoder_2Ewf__coder(A_27a),V1c))
& p(ap(ap(c_2EEncodeVar_2Efixed__width(A_27a),V2n),V1c)) )
=> ( ! [V3x] :
( mem(V3x,A_27a)
=> ( p(ap(ap(c_2ECoder_2Edomain(A_27a),V1c),V3x))
=> p(ap(V0phi,V3x)) ) )
<=> p(ap(ap(c_2Ebool_2ERES__FORALL(ty_2Elist_2Elist(bool)),ap(c_2EEncodeVar_2Eof__length(bool),V2n)),f2440(A_27a,V1c,V0phi))) ) ) ) ) ) ) ).
fof(lameq_f2441,axiom,
! [A_27a,V0phi] :
( mem(V0phi,arr(ty_2Elist_2Elist(A_27a),bool))
=> ! [V2w] : ap(f2441(A_27a,V0phi),V2w) = ap(V0phi,V2w) ) ).
fof(lameq_f2442,axiom,
! [A_27a,V3x] :
( mem(V3x,A_27a)
=> ! [V0phi] :
( mem(V0phi,arr(ty_2Elist_2Elist(A_27a),bool))
=> ! [V4w] : ap(f2442(A_27a,V3x,V0phi),V4w) = ap(V0phi,ap(ap(c_2Elist_2ECONS(A_27a),V3x),V4w)) ) ) ).
fof(conj_thm_2EEncodeVar_2Eof__length__univ__suc,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0phi] :
( mem(V0phi,arr(ty_2Elist_2Elist(A_27a),bool))
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Ebool_2ERES__FORALL(ty_2Elist_2Elist(A_27a)),ap(c_2EEncodeVar_2Eof__length(A_27a),ap(c_2Enum_2ESUC,V1n))),f2441(A_27a,V0phi)))
<=> ! [V3x] :
( mem(V3x,A_27a)
=> p(ap(ap(c_2Ebool_2ERES__FORALL(ty_2Elist_2Elist(A_27a)),ap(c_2EEncodeVar_2Eof__length(A_27a),V1n)),f2442(A_27a,V3x,V0phi))) ) ) ) ) ) ).
fof(lameq_f2443,axiom,
! [A_27a,V0phi] :
( mem(V0phi,arr(ty_2Elist_2Elist(A_27a),bool))
=> ! [V1w] : ap(f2443(A_27a,V0phi),V1w) = ap(V0phi,V1w) ) ).
fof(conj_thm_2EEncodeVar_2Eof__length__univ__zero,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0phi] :
( mem(V0phi,arr(ty_2Elist_2Elist(A_27a),bool))
=> ( p(ap(ap(c_2Ebool_2ERES__FORALL(ty_2Elist_2Elist(A_27a)),ap(c_2EEncodeVar_2Eof__length(A_27a),c_2Enum_2E0)),f2443(A_27a,V0phi)))
<=> p(ap(V0phi,c_2Elist_2ENIL(A_27a))) ) ) ) ).
fof(conj_thm_2EEncodeVar_2Efixed__width__exists,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0phi] :
( mem(V0phi,arr(A_27a,bool))
=> ! [V1c] :
( mem(V1c,ty_2Epair_2Eprod(arr(A_27a,bool),ty_2Epair_2Eprod(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))))
=> ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ( ( p(ap(c_2ECoder_2Ewf__coder(A_27a),V1c))
& p(ap(ap(c_2EEncodeVar_2Efixed__width(A_27a),V2n),V1c)) )
=> ( ? [V3x] :
( mem(V3x,A_27a)
& p(ap(ap(c_2ECoder_2Edomain(A_27a),V1c),V3x))
& p(ap(V0phi,V3x)) )
<=> p(ap(ap(c_2Ebool_2ERES__EXISTS(ty_2Elist_2Elist(bool)),ap(c_2EEncodeVar_2Eof__length(bool),V2n)),f2440(A_27a,V1c,V0phi))) ) ) ) ) ) ) ).
fof(conj_thm_2EEncodeVar_2Eof__length__exists__suc,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0phi] :
( mem(V0phi,arr(ty_2Elist_2Elist(A_27a),bool))
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Ebool_2ERES__EXISTS(ty_2Elist_2Elist(A_27a)),ap(c_2EEncodeVar_2Eof__length(A_27a),ap(c_2Enum_2ESUC,V1n))),f2441(A_27a,V0phi)))
<=> ? [V3x] :
( mem(V3x,A_27a)
& p(ap(ap(c_2Ebool_2ERES__EXISTS(ty_2Elist_2Elist(A_27a)),ap(c_2EEncodeVar_2Eof__length(A_27a),V1n)),f2442(A_27a,V3x,V0phi))) ) ) ) ) ) ).
fof(conj_thm_2EEncodeVar_2Eof__length__exists__zero,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0phi] :
( mem(V0phi,arr(ty_2Elist_2Elist(A_27a),bool))
=> ( p(ap(ap(c_2Ebool_2ERES__EXISTS(ty_2Elist_2Elist(A_27a)),ap(c_2EEncodeVar_2Eof__length(A_27a),c_2Enum_2E0)),f2443(A_27a,V0phi)))
<=> p(ap(V0phi,c_2Elist_2ENIL(A_27a))) ) ) ) ).
fof(conj_thm_2EEncodeVar_2Efixed__width__unit,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Eone_2Eone,bool))
=> p(ap(ap(c_2EEncodeVar_2Efixed__width(ty_2Eone_2Eone),c_2Enum_2E0),ap(c_2ECoder_2Eunit__coder,V0p))) ) ).
fof(conj_thm_2EEncodeVar_2Efixed__width__bool,axiom,
! [V0p] :
( mem(V0p,arr(bool,bool))
=> p(ap(ap(c_2EEncodeVar_2Efixed__width(bool),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),ap(c_2ECoder_2Ebool__coder,V0p))) ) ).
fof(conj_thm_2EEncodeVar_2Efixed__width__prod,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0c1] :
( mem(V0c1,ty_2Epair_2Eprod(arr(A_27a,bool),ty_2Epair_2Eprod(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))))
=> ! [V1c2] :
( mem(V1c2,ty_2Epair_2Eprod(arr(A_27b,bool),ty_2Epair_2Eprod(arr(A_27b,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))))
=> ! [V2n1] :
( mem(V2n1,ty_2Enum_2Enum)
=> ! [V3n2] :
( mem(V3n2,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2EEncodeVar_2Efixed__width(A_27a),V2n1),V0c1))
& p(ap(ap(c_2EEncodeVar_2Efixed__width(A_27b),V3n2),V1c2)) )
=> p(ap(ap(c_2EEncodeVar_2Efixed__width(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2Earithmetic_2E_2B,V2n1),V3n2)),ap(ap(c_2ECoder_2Eprod__coder(A_27a,A_27b,A_27a,A_27b),V0c1),V1c2))) ) ) ) ) ) ) ) ).
fof(conj_thm_2EEncodeVar_2Efixed__width__sum,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0c1] :
( mem(V0c1,ty_2Epair_2Eprod(arr(A_27a,bool),ty_2Epair_2Eprod(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))))
=> ! [V1c2] :
( mem(V1c2,ty_2Epair_2Eprod(arr(A_27b,bool),ty_2Epair_2Eprod(arr(A_27b,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))))
=> ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2EEncodeVar_2Efixed__width(A_27a),V2n),V0c1))
& p(ap(ap(c_2EEncodeVar_2Efixed__width(A_27b),V2n),V1c2)) )
=> p(ap(ap(c_2EEncodeVar_2Efixed__width(ty_2Esum_2Esum(A_27a,A_27b)),ap(c_2Enum_2ESUC,V2n)),ap(ap(c_2ECoder_2Esum__coder(A_27a,A_27b,A_27a,A_27b),V0c1),V1c2))) ) ) ) ) ) ) ).
fof(conj_thm_2EEncodeVar_2Efixed__width__bnum,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> p(ap(ap(c_2EEncodeVar_2Efixed__width(ty_2Enum_2Enum),V0m),ap(ap(c_2ECoder_2Ebnum__coder,V0m),V1p))) ) ) ).
%------------------------------------------------------------------------------