ITP001 Axioms: ITP025+5.ax
%------------------------------------------------------------------------------
% File : ITP025+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 : numpair+2.ax [Gau20]
% : HL4025+5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 67 ( 13 unt; 0 def)
% Number of atoms : 216 ( 60 equ)
% Maximal formula atoms : 12 ( 3 avg)
% Number of connectives : 152 ( 3 ~; 1 |; 17 &)
% ( 7 <=>; 124 =>; 0 <=; 0 <~>)
% Maximal formula depth : 15 ( 5 avg)
% Maximal term depth : 9 ( 2 avg)
% Number of predicates : 4 ( 3 usr; 0 prp; 1-2 aty)
% Number of functors : 44 ( 44 usr; 26 con; 0-4 aty)
% Number of variables : 128 ( 124 !; 4 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2Enumpair_2Einvtri,axiom,
mem(c_2Enumpair_2Einvtri,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).
fof(mem_c_2Enumpair_2Einvtri0,axiom,
mem(c_2Enumpair_2Einvtri0,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)))) ).
fof(mem_c_2Enumpair_2Enapp,axiom,
mem(c_2Enumpair_2Enapp,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).
fof(mem_c_2Enumpair_2Encons,axiom,
mem(c_2Enumpair_2Encons,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).
fof(mem_c_2Enumpair_2Enfoldl,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2Enumpair_2Enfoldl(A_27a),arr(arr(ty_2Enum_2Enum,arr(A_27a,A_27a)),arr(A_27a,arr(ty_2Enum_2Enum,A_27a)))) ) ).
fof(mem_c_2Enumpair_2Enfst,axiom,
mem(c_2Enumpair_2Enfst,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).
fof(mem_c_2Enumpair_2Enlen,axiom,
mem(c_2Enumpair_2Enlen,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).
fof(mem_c_2Enumpair_2Enlistrec,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2Enumpair_2Enlistrec(A_27a),arr(A_27a,arr(arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,A_27a))),arr(ty_2Enum_2Enum,A_27a)))) ) ).
fof(mem_c_2Enumpair_2Enmap,axiom,
mem(c_2Enumpair_2Enmap,arr(arr(ty_2Enum_2Enum,ty_2Enum_2Enum),arr(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).
fof(mem_c_2Enumpair_2Enpair,axiom,
mem(c_2Enumpair_2Enpair,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).
fof(mem_c_2Enumpair_2Ensnd,axiom,
mem(c_2Enumpair_2Ensnd,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).
fof(mem_c_2Enumpair_2Etri,axiom,
mem(c_2Enumpair_2Etri,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).
fof(ax_thm_2Enumpair_2Etri__def,axiom,
( ap(c_2Enumpair_2Etri,c_2Enum_2E0) = c_2Enum_2E0
& ! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Etri,ap(c_2Enum_2ESUC,V0n)) = ap(ap(c_2Earithmetic_2E_2B,ap(c_2Enum_2ESUC,V0n)),ap(c_2Enumpair_2Etri,V0n)) ) ) ).
fof(conj_thm_2Enumpair_2Etri__def__compute,axiom,
( ap(c_2Enumpair_2Etri,c_2Enum_2E0) = c_2Enum_2E0
& ! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Etri,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,V0n))) = ap(ap(c_2Earithmetic_2E_2B,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,V0n))),ap(c_2Enumpair_2Etri,ap(ap(c_2Earithmetic_2E_2D,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,V0n))),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))) )
& ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Etri,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,V1n))) = ap(ap(c_2Earithmetic_2E_2B,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,V1n))),ap(c_2Enumpair_2Etri,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,V1n)))) ) ) ).
fof(conj_thm_2Enumpair_2Etwotri__formula,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),ap(c_2Enumpair_2Etri,V0n)) = ap(ap(c_2Earithmetic_2E_2A,V0n),ap(ap(c_2Earithmetic_2E_2B,V0n),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))) ) ).
fof(conj_thm_2Enumpair_2Etri__formula,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Etri,V0n) = ap(ap(c_2Earithmetic_2EDIV,ap(ap(c_2Earithmetic_2E_2A,V0n),ap(ap(c_2Earithmetic_2E_2B,V0n),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))) ) ).
fof(conj_thm_2Enumpair_2Etri__eq__0,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ( ( ap(c_2Enumpair_2Etri,V0n) = c_2Enum_2E0
<=> V0n = c_2Enum_2E0 )
& ( c_2Enum_2E0 = ap(c_2Enumpair_2Etri,V0n)
<=> V0n = c_2Enum_2E0 ) ) ) ).
fof(conj_thm_2Enumpair_2Etri__LT__I,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V0n),V1m))
=> p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Enumpair_2Etri,V0n)),ap(c_2Enumpair_2Etri,V1m))) ) ) ) ).
fof(conj_thm_2Enumpair_2Etri__LT,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Enumpair_2Etri,V0n)),ap(c_2Enumpair_2Etri,V1m)))
<=> p(ap(ap(c_2Eprim__rec_2E_3C,V0n),V1m)) ) ) ) ).
fof(conj_thm_2Enumpair_2Etri__11,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( ap(c_2Enumpair_2Etri,V0m) = ap(c_2Enumpair_2Etri,V1n)
<=> V0m = V1n ) ) ) ).
fof(conj_thm_2Enumpair_2Etri__LE,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Enumpair_2Etri,V0m)),ap(c_2Enumpair_2Etri,V1n)))
<=> p(ap(ap(c_2Earithmetic_2E_3C_3D,V0m),V1n)) ) ) ) ).
fof(conj_thm_2Enumpair_2Einvtri0__ind,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,bool)))
=> ( ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ! [V2a] :
( mem(V2a,ty_2Enum_2Enum)
=> ( ( ~ p(ap(ap(c_2Eprim__rec_2E_3C,V1n),ap(ap(c_2Earithmetic_2E_2B,V2a),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))))
=> p(ap(ap(V0P,ap(ap(c_2Earithmetic_2E_2D,V1n),ap(ap(c_2Earithmetic_2E_2B,V2a),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))),ap(ap(c_2Earithmetic_2E_2B,V2a),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))) )
=> p(ap(ap(V0P,V1n),V2a)) ) ) )
=> ! [V3v] :
( mem(V3v,ty_2Enum_2Enum)
=> ! [V4v1] :
( mem(V4v1,ty_2Enum_2Enum)
=> p(ap(ap(V0P,V3v),V4v1)) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Einvtri0__def,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ! [V1a] :
( mem(V1a,ty_2Enum_2Enum)
=> ap(ap(c_2Enumpair_2Einvtri0,V0n),V1a) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)),ap(ap(c_2Eprim__rec_2E_3C,V0n),ap(ap(c_2Earithmetic_2E_2B,V1a),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),V0n),V1a)),ap(ap(c_2Enumpair_2Einvtri0,ap(ap(c_2Earithmetic_2E_2D,V0n),ap(ap(c_2Earithmetic_2E_2B,V1a),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))),ap(ap(c_2Earithmetic_2E_2B,V1a),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))) ) ) ).
fof(ax_thm_2Enumpair_2Einvtri__def,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Einvtri,V0n) = ap(c_2Epair_2ESND(ty_2Enum_2Enum,ty_2Enum_2Enum),ap(ap(c_2Enumpair_2Einvtri0,V0n),c_2Enum_2E0)) ) ).
fof(conj_thm_2Enumpair_2Einvtri0__thm,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ! [V1a] :
( mem(V1a,ty_2Enum_2Enum)
=> ap(ap(c_2Earithmetic_2E_2B,ap(c_2Enumpair_2Etri,ap(c_2Epair_2ESND(ty_2Enum_2Enum,ty_2Enum_2Enum),ap(ap(c_2Enumpair_2Einvtri0,V0n),V1a)))),ap(c_2Epair_2EFST(ty_2Enum_2Enum,ty_2Enum_2Enum),ap(ap(c_2Enumpair_2Einvtri0,V0n),V1a))) = ap(ap(c_2Earithmetic_2E_2B,V0n),ap(c_2Enumpair_2Etri,V1a)) ) ) ).
fof(conj_thm_2Enumpair_2ESND__invtri0,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ! [V1a] :
( mem(V1a,ty_2Enum_2Enum)
=> p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Epair_2EFST(ty_2Enum_2Enum,ty_2Enum_2Enum),ap(ap(c_2Enumpair_2Einvtri0,V0n),V1a))),ap(c_2Enum_2ESUC,ap(c_2Epair_2ESND(ty_2Enum_2Enum,ty_2Enum_2Enum),ap(ap(c_2Enumpair_2Einvtri0,V0n),V1a))))) ) ) ).
fof(conj_thm_2Enumpair_2Einvtri__lower,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Enumpair_2Etri,ap(c_2Enumpair_2Einvtri,V0n))),V0n)) ) ).
fof(conj_thm_2Enumpair_2Einvtri__upper,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> p(ap(ap(c_2Eprim__rec_2E_3C,V0n),ap(c_2Enumpair_2Etri,ap(ap(c_2Earithmetic_2E_2B,ap(c_2Enumpair_2Einvtri,V0n)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))))) ) ).
fof(conj_thm_2Enumpair_2Einvtri__linverse,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Einvtri,ap(c_2Enumpair_2Etri,V0n)) = V0n ) ).
fof(conj_thm_2Enumpair_2Einvtri__unique,axiom,
! [V0y] :
( mem(V0y,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Enumpair_2Etri,V0y)),V1n))
& p(ap(ap(c_2Eprim__rec_2E_3C,V1n),ap(c_2Enumpair_2Etri,ap(ap(c_2Earithmetic_2E_2B,V0y),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))))) )
=> ap(c_2Enumpair_2Einvtri,V1n) = V0y ) ) ) ).
fof(conj_thm_2Enumpair_2Einvtri__linverse__r,axiom,
! [V0y] :
( mem(V0y,ty_2Enum_2Enum)
=> ! [V1x] :
( mem(V1x,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Earithmetic_2E_3C_3D,V0y),V1x))
=> ap(c_2Enumpair_2Einvtri,ap(ap(c_2Earithmetic_2E_2B,ap(c_2Enumpair_2Etri,V1x)),V0y)) = V1x ) ) ) ).
fof(conj_thm_2Enumpair_2Etri__le,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> p(ap(ap(c_2Earithmetic_2E_3C_3D,V0n),ap(c_2Enumpair_2Etri,V0n))) ) ).
fof(conj_thm_2Enumpair_2Einvtri__le,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Enumpair_2Einvtri,V0n)),V0n)) ) ).
fof(ax_thm_2Enumpair_2Enpair__def,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ap(ap(c_2Enumpair_2Enpair,V0m),V1n) = ap(ap(c_2Earithmetic_2E_2B,ap(c_2Enumpair_2Etri,ap(ap(c_2Earithmetic_2E_2B,V0m),V1n))),V1n) ) ) ).
fof(ax_thm_2Enumpair_2Enfst__def,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Enfst,V0n) = ap(ap(c_2Earithmetic_2E_2D,ap(ap(c_2Earithmetic_2E_2B,ap(c_2Enumpair_2Etri,ap(c_2Enumpair_2Einvtri,V0n))),ap(c_2Enumpair_2Einvtri,V0n))),V0n) ) ).
fof(ax_thm_2Enumpair_2Ensnd__def,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Ensnd,V0n) = ap(ap(c_2Earithmetic_2E_2D,V0n),ap(c_2Enumpair_2Etri,ap(c_2Enumpair_2Einvtri,V0n))) ) ).
fof(conj_thm_2Enumpair_2Enfst__npair,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V1y] :
( mem(V1y,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Enfst,ap(ap(c_2Enumpair_2Enpair,V0x),V1y)) = V0x ) ) ).
fof(conj_thm_2Enumpair_2Ensnd__npair,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V1y] :
( mem(V1y,ty_2Enum_2Enum)
=> ap(c_2Enumpair_2Ensnd,ap(ap(c_2Enumpair_2Enpair,V0x),V1y)) = V1y ) ) ).
fof(conj_thm_2Enumpair_2Enpair__cases,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ? [V1x] :
( mem(V1x,ty_2Enum_2Enum)
& ? [V2y] :
( mem(V2y,ty_2Enum_2Enum)
& V0n = ap(ap(c_2Enumpair_2Enpair,V1x),V2y) ) ) ) ).
fof(conj_thm_2Enumpair_2Enpair,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ap(ap(c_2Enumpair_2Enpair,ap(c_2Enumpair_2Enfst,V0n)),ap(c_2Enumpair_2Ensnd,V0n)) = V0n ) ).
fof(conj_thm_2Enumpair_2Enpair__11,axiom,
! [V0x1] :
( mem(V0x1,ty_2Enum_2Enum)
=> ! [V1y1] :
( mem(V1y1,ty_2Enum_2Enum)
=> ! [V2x2] :
( mem(V2x2,ty_2Enum_2Enum)
=> ! [V3y2] :
( mem(V3y2,ty_2Enum_2Enum)
=> ( ap(ap(c_2Enumpair_2Enpair,V0x1),V1y1) = ap(ap(c_2Enumpair_2Enpair,V2x2),V3y2)
<=> ( V0x1 = V2x2
& V1y1 = V3y2 ) ) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Enfst__le,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Enumpair_2Enfst,V0n)),V0n)) ) ).
fof(conj_thm_2Enumpair_2Ensnd__le,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Enumpair_2Ensnd,V0n)),V0n)) ) ).
fof(ax_thm_2Enumpair_2Encons__def,axiom,
! [V0h] :
( mem(V0h,ty_2Enum_2Enum)
=> ! [V1t] :
( mem(V1t,ty_2Enum_2Enum)
=> ap(ap(c_2Enumpair_2Encons,V0h),V1t) = ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Enumpair_2Enpair,V0h),V1t)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))) ) ) ).
fof(conj_thm_2Enumpair_2Encons__11,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V1y] :
( mem(V1y,ty_2Enum_2Enum)
=> ! [V2h] :
( mem(V2h,ty_2Enum_2Enum)
=> ! [V3t] :
( mem(V3t,ty_2Enum_2Enum)
=> ( ap(ap(c_2Enumpair_2Encons,V0x),V1y) = ap(ap(c_2Enumpair_2Encons,V2h),V3t)
<=> ( V0x = V2h
& V1y = V3t ) ) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Encons__not__nnil,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V1y] :
( mem(V1y,ty_2Enum_2Enum)
=> ap(ap(c_2Enumpair_2Encons,V0x),V1y) != c_2Enum_2E0 ) ) ).
fof(conj_thm_2Enumpair_2Enlistrec__ind,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0P] :
( mem(V0P,arr(A_27a,arr(arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,A_27a))),arr(ty_2Enum_2Enum,bool))))
=> ( ! [V1n] :
( mem(V1n,A_27a)
=> ! [V2f] :
( mem(V2f,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,A_27a))))
=> ! [V3l] :
( mem(V3l,ty_2Enum_2Enum)
=> ( ( V3l != c_2Enum_2E0
=> p(ap(ap(ap(V0P,V1n),V2f),ap(c_2Enumpair_2Ensnd,ap(ap(c_2Earithmetic_2E_2D,V3l),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))))) )
=> p(ap(ap(ap(V0P,V1n),V2f),V3l)) ) ) ) )
=> ! [V4v] :
( mem(V4v,A_27a)
=> ! [V5v1] :
( mem(V5v1,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,A_27a))))
=> ! [V6v2] :
( mem(V6v2,ty_2Enum_2Enum)
=> p(ap(ap(ap(V0P,V4v),V5v1),V6v2)) ) ) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Enlistrec__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0n] :
( mem(V0n,A_27a)
=> ! [V1l] :
( mem(V1l,ty_2Enum_2Enum)
=> ! [V2f] :
( mem(V2f,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,A_27a))))
=> ap(ap(ap(c_2Enumpair_2Enlistrec(A_27a),V0n),V2f),V1l) = ap(ap(ap(c_2Ebool_2ECOND(A_27a),ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),V1l),c_2Enum_2E0)),V0n),ap(ap(ap(V2f,ap(c_2Enumpair_2Enfst,ap(ap(c_2Earithmetic_2E_2D,V1l),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))),ap(c_2Enumpair_2Ensnd,ap(ap(c_2Earithmetic_2E_2D,V1l),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))),ap(ap(ap(c_2Enumpair_2Enlistrec(A_27a),V0n),V2f),ap(c_2Enumpair_2Ensnd,ap(ap(c_2Earithmetic_2E_2D,V1l),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))))) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Enlistrec__thm,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0n] :
( mem(V0n,A_27a)
=> ! [V1f] :
( mem(V1f,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,A_27a))))
=> ! [V2h] :
( mem(V2h,ty_2Enum_2Enum)
=> ! [V3t] :
( mem(V3t,ty_2Enum_2Enum)
=> ( ap(ap(ap(c_2Enumpair_2Enlistrec(A_27a),V0n),V1f),c_2Enum_2E0) = V0n
& ap(ap(ap(c_2Enumpair_2Enlistrec(A_27a),V0n),V1f),ap(ap(c_2Enumpair_2Encons,V2h),V3t)) = ap(ap(ap(V1f,V2h),V3t),ap(ap(ap(c_2Enumpair_2Enlistrec(A_27a),V0n),V1f),V3t)) ) ) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Enlist__ind,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ( ( p(ap(V0P,c_2Enum_2E0))
& ! [V1h] :
( mem(V1h,ty_2Enum_2Enum)
=> ! [V2t] :
( mem(V2t,ty_2Enum_2Enum)
=> ( p(ap(V0P,V2t))
=> p(ap(V0P,ap(ap(c_2Enumpair_2Encons,V1h),V2t))) ) ) ) )
=> ! [V3n] :
( mem(V3n,ty_2Enum_2Enum)
=> p(ap(V0P,V3n)) ) ) ) ).
fof(lameq_f241,axiom,
! [V2r] : ap(f241,V2r) = ap(ap(c_2Earithmetic_2E_2B,V2r),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))) ).
fof(ax_thm_2Enumpair_2Enlen__def,axiom,
c_2Enumpair_2Enlen = ap(ap(c_2Enumpair_2Enlistrec(ty_2Enum_2Enum),c_2Enum_2E0),k(ty_2Enum_2Enum,k(ty_2Enum_2Enum,f241))) ).
fof(conj_thm_2Enumpair_2Enlen__thm,axiom,
! [V0h] :
( mem(V0h,ty_2Enum_2Enum)
=> ! [V1t] :
( mem(V1t,ty_2Enum_2Enum)
=> ( ap(c_2Enumpair_2Enlen,c_2Enum_2E0) = c_2Enum_2E0
& ap(c_2Enumpair_2Enlen,ap(ap(c_2Enumpair_2Encons,V0h),V1t)) = ap(ap(c_2Earithmetic_2E_2B,ap(c_2Enumpair_2Enlen,V1t)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))) ) ) ) ).
fof(lameq_f242,axiom,
! [V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ! [V3r] : ap(f242(V0f,V1n),V3r) = ap(ap(c_2Enumpair_2Encons,ap(V0f,V1n)),V3r) ) ) ).
fof(lameq_f243,axiom,
! [V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))
=> ! [V1n] : ap(f243(V0f),V1n) = k(ty_2Enum_2Enum,f242(V0f,V1n)) ) ).
fof(ax_thm_2Enumpair_2Enmap__def,axiom,
! [V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))
=> ap(c_2Enumpair_2Enmap,V0f) = ap(ap(c_2Enumpair_2Enlistrec(ty_2Enum_2Enum),c_2Enum_2E0),f243(V0f)) ) ).
fof(conj_thm_2Enumpair_2Enmap__thm,axiom,
! [V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))
=> ! [V1h] :
( mem(V1h,ty_2Enum_2Enum)
=> ! [V2t] :
( mem(V2t,ty_2Enum_2Enum)
=> ( ap(ap(c_2Enumpair_2Enmap,V0f),c_2Enum_2E0) = c_2Enum_2E0
& ap(ap(c_2Enumpair_2Enmap,V0f),ap(ap(c_2Enumpair_2Encons,V1h),V2t)) = ap(ap(c_2Enumpair_2Encons,ap(V0f,V1h)),ap(ap(c_2Enumpair_2Enmap,V0f),V2t)) ) ) ) ) ).
fof(lameq_f244,axiom,
! [A_27a,V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,arr(A_27a,A_27a)))
=> ! [V4n] :
( mem(V4n,ty_2Enum_2Enum)
=> ! [V6r] :
( mem(V6r,arr(A_27a,A_27a))
=> ! [V7a] : ap(f244(A_27a,V0f,V4n,V6r),V7a) = ap(V6r,ap(ap(V0f,V4n),V7a)) ) ) ) ).
fof(lameq_f245,axiom,
! [A_27a,V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,arr(A_27a,A_27a)))
=> ! [V4n] :
( mem(V4n,ty_2Enum_2Enum)
=> ! [V6r] : ap(f245(A_27a,V0f,V4n),V6r) = f244(A_27a,V0f,V4n,V6r) ) ) ).
fof(lameq_f246,axiom,
! [A_27a,V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,arr(A_27a,A_27a)))
=> ! [V4n] : ap(f246(A_27a,V0f),V4n) = k(ty_2Enum_2Enum,f245(A_27a,V0f,V4n)) ) ).
fof(ax_thm_2Enumpair_2Enfoldl__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,arr(A_27a,A_27a)))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2l] :
( mem(V2l,ty_2Enum_2Enum)
=> ap(ap(ap(c_2Enumpair_2Enfoldl(A_27a),V0f),V1a),V2l) = ap(ap(ap(ap(c_2Enumpair_2Enlistrec(arr(A_27a,A_27a)),i(A_27a)),f246(A_27a,V0f)),V2l),V1a) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Enfoldl__thm,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,arr(A_27a,A_27a)))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2h] :
( mem(V2h,ty_2Enum_2Enum)
=> ! [V3t] :
( mem(V3t,ty_2Enum_2Enum)
=> ( ap(ap(ap(c_2Enumpair_2Enfoldl(A_27a),V0f),V1a),c_2Enum_2E0) = V1a
& ap(ap(ap(c_2Enumpair_2Enfoldl(A_27a),V0f),V1a),ap(ap(c_2Enumpair_2Encons,V2h),V3t)) = ap(ap(ap(c_2Enumpair_2Enfoldl(A_27a),V0f),ap(ap(V0f,V2h),V1a)),V3t) ) ) ) ) ) ) ).
fof(lameq_f247,axiom,
! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ! [V4r] : ap(f247(V2n),V4r) = ap(ap(c_2Enumpair_2Encons,V2n),V4r) ) ).
fof(lameq_f248,axiom,
! [V2n] : ap(f248,V2n) = k(ty_2Enum_2Enum,f247(V2n)) ).
fof(ax_thm_2Enumpair_2Enapp__def,axiom,
! [V0l1] :
( mem(V0l1,ty_2Enum_2Enum)
=> ! [V1l2] :
( mem(V1l2,ty_2Enum_2Enum)
=> ap(ap(c_2Enumpair_2Enapp,V0l1),V1l2) = ap(ap(ap(c_2Enumpair_2Enlistrec(ty_2Enum_2Enum),V1l2),f248),V0l1) ) ) ).
fof(conj_thm_2Enumpair_2Enapp__thm,axiom,
! [V0nlist] :
( mem(V0nlist,ty_2Enum_2Enum)
=> ! [V1h] :
( mem(V1h,ty_2Enum_2Enum)
=> ! [V2t] :
( mem(V2t,ty_2Enum_2Enum)
=> ( ap(ap(c_2Enumpair_2Enapp,c_2Enum_2E0),V0nlist) = V0nlist
& ap(ap(c_2Enumpair_2Enapp,ap(ap(c_2Enumpair_2Encons,V1h),V2t)),V0nlist) = ap(ap(c_2Enumpair_2Encons,V1h),ap(ap(c_2Enumpair_2Enapp,V2t),V0nlist)) ) ) ) ) ).
fof(conj_thm_2Enumpair_2Enlist__cases,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ( V0n = c_2Enum_2E0
| ? [V1h] :
( mem(V1h,ty_2Enum_2Enum)
& ? [V2t] :
( mem(V2t,ty_2Enum_2Enum)
& V0n = ap(ap(c_2Enumpair_2Encons,V1h),V2t) ) ) ) ) ).
%------------------------------------------------------------------------------