ITP001 Axioms: ITP041+5.ax
%------------------------------------------------------------------------------
% File : ITP041+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 : numposrep+2.ax [Gau20]
% : HL4041+5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 51 ( 26 unt; 0 def)
% Number of atoms : 157 ( 44 equ)
% Maximal formula atoms : 10 ( 3 avg)
% Number of connectives : 109 ( 3 ~; 1 |; 19 &)
% ( 2 <=>; 84 =>; 0 <=; 0 <~>)
% Maximal formula depth : 12 ( 4 avg)
% Maximal term depth : 9 ( 2 avg)
% Number of predicates : 3 ( 2 usr; 0 prp; 1-2 aty)
% Number of functors : 65 ( 65 usr; 41 con; 0-3 aty)
% Number of variables : 66 ( 66 !; 0 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2Enumposrep_2EBOOLIFY,axiom,
mem(c_2Enumposrep_2EBOOLIFY,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(ty_2Elist_2Elist(bool),ty_2Elist_2Elist(bool))))) ).
fof(mem_c_2Enumposrep_2El2n,axiom,
mem(c_2Enumposrep_2El2n,arr(ty_2Enum_2Enum,arr(ty_2Elist_2Elist(ty_2Enum_2Enum),ty_2Enum_2Enum))) ).
fof(mem_c_2Enumposrep_2El2n2,axiom,
mem(c_2Enumposrep_2El2n2,arr(ty_2Elist_2Elist(ty_2Enum_2Enum),ty_2Enum_2Enum)) ).
fof(mem_c_2Enumposrep_2En2l,axiom,
mem(c_2Enumposrep_2En2l,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum)))) ).
fof(mem_c_2Enumposrep_2Enum__from__bin__list,axiom,
mem(c_2Enumposrep_2Enum__from__bin__list,arr(ty_2Elist_2Elist(ty_2Enum_2Enum),ty_2Enum_2Enum)) ).
fof(mem_c_2Enumposrep_2Enum__from__dec__list,axiom,
mem(c_2Enumposrep_2Enum__from__dec__list,arr(ty_2Elist_2Elist(ty_2Enum_2Enum),ty_2Enum_2Enum)) ).
fof(mem_c_2Enumposrep_2Enum__from__hex__list,axiom,
mem(c_2Enumposrep_2Enum__from__hex__list,arr(ty_2Elist_2Elist(ty_2Enum_2Enum),ty_2Enum_2Enum)) ).
fof(mem_c_2Enumposrep_2Enum__from__oct__list,axiom,
mem(c_2Enumposrep_2Enum__from__oct__list,arr(ty_2Elist_2Elist(ty_2Enum_2Enum),ty_2Enum_2Enum)) ).
fof(mem_c_2Enumposrep_2Enum__to__bin__list,axiom,
mem(c_2Enumposrep_2Enum__to__bin__list,arr(ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum))) ).
fof(mem_c_2Enumposrep_2Enum__to__dec__list,axiom,
mem(c_2Enumposrep_2Enum__to__dec__list,arr(ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum))) ).
fof(mem_c_2Enumposrep_2Enum__to__hex__list,axiom,
mem(c_2Enumposrep_2Enum__to__hex__list,arr(ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum))) ).
fof(mem_c_2Enumposrep_2Enum__to__oct__list,axiom,
mem(c_2Enumposrep_2Enum__to__oct__list,arr(ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum))) ).
fof(ax_thm_2Enumposrep_2El2n__def,axiom,
( ! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ap(ap(c_2Enumposrep_2El2n,V0b),c_2Elist_2ENIL(ty_2Enum_2Enum)) = c_2Enum_2E0 )
& ! [V1b] :
( mem(V1b,ty_2Enum_2Enum)
=> ! [V2h] :
( mem(V2h,ty_2Enum_2Enum)
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ap(ap(c_2Enumposrep_2El2n,V1b),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),V2h),V3t)) = ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2EMOD,V2h),V1b)),ap(ap(c_2Earithmetic_2E_2A,V1b),ap(ap(c_2Enumposrep_2El2n,V1b),V3t))) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2En2l__ind,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,bool)))
=> ( ! [V1b] :
( mem(V1b,ty_2Enum_2Enum)
=> ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ( ( ~ ( p(ap(ap(c_2Eprim__rec_2E_3C,V2n),V1b))
| p(ap(ap(c_2Eprim__rec_2E_3C,V1b),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO)))) )
=> p(ap(ap(V0P,V1b),ap(ap(c_2Earithmetic_2EDIV,V2n),V1b))) )
=> p(ap(ap(V0P,V1b),V2n)) ) ) )
=> ! [V3v] :
( mem(V3v,ty_2Enum_2Enum)
=> ! [V4v1] :
( mem(V4v1,ty_2Enum_2Enum)
=> p(ap(ap(V0P,V3v),V4v1)) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2En2l__def,axiom,
! [V0n] :
( mem(V0n,ty_2Enum_2Enum)
=> ! [V1b] :
( mem(V1b,ty_2Enum_2Enum)
=> ap(ap(c_2Enumposrep_2En2l,V1b),V0n) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Elist_2Elist(ty_2Enum_2Enum)),ap(ap(c_2Ebool_2E_5C_2F,ap(ap(c_2Eprim__rec_2E_3C,V0n),V1b)),ap(ap(c_2Eprim__rec_2E_3C,V1b),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))))),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),ap(ap(c_2Earithmetic_2EMOD,V0n),V1b)),c_2Elist_2ENIL(ty_2Enum_2Enum))),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),ap(ap(c_2Earithmetic_2EMOD,V0n),V1b)),ap(ap(c_2Enumposrep_2En2l,V1b),ap(ap(c_2Earithmetic_2EDIV,V0n),V1b)))) ) ) ).
fof(ax_thm_2Enumposrep_2Enum__from__bin__list__def,axiom,
c_2Enumposrep_2Enum__from__bin__list = ap(c_2Enumposrep_2El2n,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))) ).
fof(ax_thm_2Enumposrep_2Enum__from__oct__list__def,axiom,
c_2Enumposrep_2Enum__from__oct__list = ap(c_2Enumposrep_2El2n,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT1,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))) ).
fof(ax_thm_2Enumposrep_2Enum__from__dec__list__def,axiom,
c_2Enumposrep_2Enum__from__dec__list = ap(c_2Enumposrep_2El2n,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))) ).
fof(ax_thm_2Enumposrep_2Enum__from__hex__list__def,axiom,
c_2Enumposrep_2Enum__from__hex__list = ap(c_2Enumposrep_2El2n,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT1,ap(c_2Earithmetic_2EBIT1,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))))) ).
fof(ax_thm_2Enumposrep_2Enum__to__bin__list__def,axiom,
c_2Enumposrep_2Enum__to__bin__list = ap(c_2Enumposrep_2En2l,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))) ).
fof(ax_thm_2Enumposrep_2Enum__to__oct__list__def,axiom,
c_2Enumposrep_2Enum__to__oct__list = ap(c_2Enumposrep_2En2l,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT1,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))) ).
fof(ax_thm_2Enumposrep_2Enum__to__dec__list__def,axiom,
c_2Enumposrep_2Enum__to__dec__list = ap(c_2Enumposrep_2En2l,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))) ).
fof(ax_thm_2Enumposrep_2Enum__to__hex__list__def,axiom,
c_2Enumposrep_2Enum__to__hex__list = ap(c_2Enumposrep_2En2l,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,ap(c_2Earithmetic_2EBIT1,ap(c_2Earithmetic_2EBIT1,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))))) ).
fof(ax_thm_2Enumposrep_2EBOOLIFY__def,axiom,
( ! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1a] :
( mem(V1a,ty_2Elist_2Elist(bool))
=> ap(ap(ap(c_2Enumposrep_2EBOOLIFY,c_2Enum_2E0),V0m),V1a) = V1a ) )
& ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ! [V3m] :
( mem(V3m,ty_2Enum_2Enum)
=> ! [V4a] :
( mem(V4a,ty_2Elist_2Elist(bool))
=> ap(ap(ap(c_2Enumposrep_2EBOOLIFY,ap(c_2Enum_2ESUC,V2n)),V3m),V4a) = ap(ap(ap(c_2Enumposrep_2EBOOLIFY,V2n),ap(c_2Earithmetic_2EDIV2,V3m)),ap(ap(c_2Elist_2ECONS(bool),ap(c_2Earithmetic_2EODD,V3m)),V4a)) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2ELENGTH__n2l,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
=> ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),ap(ap(c_2Enumposrep_2En2l,V0b),V1n)) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Enum_2Enum),ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),V1n),c_2Enum_2E0)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),ap(c_2Enum_2ESUC,ap(ap(c_2Elogroot_2ELOG,V0b),V1n))) ) ) ) ).
fof(conj_thm_2Enumposrep_2El2n__n2l,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
=> ap(ap(c_2Enumposrep_2El2n,V0b),ap(ap(c_2Enumposrep_2En2l,V0b),V1n)) = V1n ) ) ) ).
fof(conj_thm_2Enumposrep_2El2n__lt,axiom,
! [V0l] :
( mem(V0l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ! [V1b] :
( mem(V1b,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,c_2Enum_2E0),V1b))
=> p(ap(ap(c_2Eprim__rec_2E_3C,ap(ap(c_2Enumposrep_2El2n,V1b),V0l)),ap(ap(c_2Earithmetic_2EEXP,V1b),ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),V0l)))) ) ) ) ).
fof(conj_thm_2Enumposrep_2ELENGTH__l2n,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
& p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(c_2Earithmetic_2E_3E,V0b)),V1l))
& ap(ap(c_2Enumposrep_2El2n,V0b),V1l) != c_2Enum_2E0 )
=> p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Enum_2ESUC,ap(ap(c_2Elogroot_2ELOG,V0b),ap(ap(c_2Enumposrep_2El2n,V0b),V1l)))),ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),V1l))) ) ) ) ).
fof(conj_thm_2Enumposrep_2El2n__DIGIT,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ! [V2x] :
( mem(V2x,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
& p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(c_2Earithmetic_2E_3E,V0b)),V1l))
& p(ap(ap(c_2Eprim__rec_2E_3C,V2x),ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),V1l))) )
=> ap(ap(c_2Earithmetic_2EMOD,ap(ap(c_2Earithmetic_2EDIV,ap(ap(c_2Enumposrep_2El2n,V0b),V1l)),ap(ap(c_2Earithmetic_2EEXP,V0b),V2x))),V0b) = ap(ap(c_2Elist_2EEL(ty_2Enum_2Enum),V2x),V1l) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2EDIV__0__IMP__LT,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
& ap(ap(c_2Earithmetic_2EDIV,V1n),V0b) = c_2Enum_2E0 )
=> p(ap(ap(c_2Eprim__rec_2E_3C,V1n),V0b)) ) ) ) ).
fof(conj_thm_2Enumposrep_2EEL__n2l,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1x] :
( mem(V1x,ty_2Enum_2Enum)
=> ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
& p(ap(ap(c_2Eprim__rec_2E_3C,V1x),ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),ap(ap(c_2Enumposrep_2En2l,V0b),V2n)))) )
=> ap(ap(c_2Elist_2EEL(ty_2Enum_2Enum),V1x),ap(ap(c_2Enumposrep_2En2l,V0b),V2n)) = ap(ap(c_2Earithmetic_2EMOD,ap(ap(c_2Earithmetic_2EDIV,V2n),ap(ap(c_2Earithmetic_2EEXP,V0b),V1x))),V0b) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2En2l__l2n,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
& p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(c_2Earithmetic_2E_3E,V0b)),V1l)) )
=> ap(ap(c_2Enumposrep_2En2l,V0b),ap(ap(c_2Enumposrep_2El2n,V0b),V1l)) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Elist_2Elist(ty_2Enum_2Enum)),ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),ap(ap(c_2Enumposrep_2El2n,V0b),V1l)),c_2Enum_2E0)),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),c_2Enum_2E0),c_2Elist_2ENIL(ty_2Enum_2Enum))),ap(ap(c_2Elist_2ETAKE(ty_2Enum_2Enum),ap(c_2Enum_2ESUC,ap(ap(c_2Elogroot_2ELOG,V0b),ap(ap(c_2Enumposrep_2El2n,V0b),V1l)))),V1l)) ) ) ) ).
fof(conj_thm_2Enumposrep_2El2n__eq__0,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,c_2Enum_2E0),V0b))
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( ap(ap(c_2Enumposrep_2El2n,V0b),V1l) = c_2Enum_2E0
<=> p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(ap(c_2Ecombin_2Eo(ty_2Enum_2Enum,bool,ty_2Enum_2Enum),ap(c_2Emin_2E_3D(ty_2Enum_2Enum),c_2Enum_2E0)),ap(ap(c_2Ecombin_2EC(ty_2Enum_2Enum,ty_2Enum_2Enum,ty_2Enum_2Enum),c_2Earithmetic_2EMOD),V0b))),V1l)) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2El2n__SNOC__0,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1ls] :
( mem(V1ls,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,c_2Enum_2E0),V0b))
=> ap(ap(c_2Enumposrep_2El2n,V0b),ap(ap(c_2Elist_2ESNOC(ty_2Enum_2Enum),c_2Enum_2E0),V1ls)) = ap(ap(c_2Enumposrep_2El2n,V0b),V1ls) ) ) ) ).
fof(conj_thm_2Enumposrep_2ELOG__l2n,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( ( V1l != c_2Elist_2ENIL(ty_2Enum_2Enum)
& p(ap(ap(c_2Eprim__rec_2E_3C,c_2Enum_2E0),ap(c_2Elist_2ELAST(ty_2Enum_2Enum),V1l)))
& p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(c_2Earithmetic_2E_3E,V0b)),V1l)) )
=> ap(ap(c_2Elogroot_2ELOG,V0b),ap(ap(c_2Enumposrep_2El2n,V0b),V1l)) = ap(c_2Eprim__rec_2EPRE,ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),V1l)) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2El2n__dropWhile__0,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1ls] :
( mem(V1ls,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,c_2Enum_2E0),V0b))
=> ap(ap(c_2Enumposrep_2El2n,V0b),ap(c_2Elist_2EREVERSE(ty_2Enum_2Enum),ap(ap(c_2Elist_2EdropWhile(ty_2Enum_2Enum),ap(c_2Emin_2E_3D(ty_2Enum_2Enum),c_2Enum_2E0)),ap(c_2Elist_2EREVERSE(ty_2Enum_2Enum),V1ls)))) = ap(ap(c_2Enumposrep_2El2n,V0b),V1ls) ) ) ) ).
fof(lameq_f818,axiom,
! [V2y] : ap(f818,V2y) = ap(c_2Ebool_2E_7E,ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),c_2Enum_2E0),V2y)) ).
fof(conj_thm_2Enumposrep_2ELOG__l2n__dropWhile,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V0b))
& p(ap(ap(c_2Elist_2EEXISTS(ty_2Enum_2Enum),f818),V1l))
& p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(c_2Earithmetic_2E_3E,V0b)),V1l)) )
=> ap(ap(c_2Elogroot_2ELOG,V0b),ap(ap(c_2Enumposrep_2El2n,V0b),V1l)) = ap(c_2Eprim__rec_2EPRE,ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),ap(ap(c_2Elist_2EdropWhile(ty_2Enum_2Enum),ap(c_2Emin_2E_3D(ty_2Enum_2Enum),c_2Enum_2E0)),ap(c_2Elist_2EREVERSE(ty_2Enum_2Enum),V1l)))) ) ) ) ).
fof(conj_thm_2Enumposrep_2En2l__BOUND,axiom,
! [V0b] :
( mem(V0b,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,c_2Enum_2E0),V0b))
=> p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(c_2Earithmetic_2E_3E,V0b)),ap(ap(c_2Enumposrep_2En2l,V0b),V1n))) ) ) ) ).
fof(conj_thm_2Enumposrep_2El2n__pow2__compute,axiom,
( ! [V0p] :
( mem(V0p,ty_2Enum_2Enum)
=> ap(ap(c_2Enumposrep_2El2n,ap(ap(c_2Earithmetic_2EEXP,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V0p)),c_2Elist_2ENIL(ty_2Enum_2Enum)) = c_2Enum_2E0 )
& ! [V1p] :
( mem(V1p,ty_2Enum_2Enum)
=> ! [V2h] :
( mem(V2h,ty_2Enum_2Enum)
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ap(ap(c_2Enumposrep_2El2n,ap(ap(c_2Earithmetic_2EEXP,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V1p)),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),V2h),V3t)) = ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Ebit_2EMOD__2EXP,V1p),V2h)),ap(ap(c_2Ebit_2ETIMES__2EXP,V1p),ap(ap(c_2Enumposrep_2El2n,ap(ap(c_2Earithmetic_2EEXP,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V1p)),V3t))) ) ) ) ) ).
fof(lameq_f819,axiom,
! [V0p] :
( mem(V0p,ty_2Enum_2Enum)
=> ! [V2q] :
( mem(V2q,ty_2Enum_2Enum)
=> ! [V3r] : ap(f819(V0p,V2q),V3r) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Elist_2Elist(ty_2Enum_2Enum)),ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),V2q),c_2Enum_2E0)),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),V3r),c_2Elist_2ENIL(ty_2Enum_2Enum))),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),V3r),ap(ap(c_2Enumposrep_2En2l,ap(ap(c_2Earithmetic_2EEXP,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V0p)),V2q))) ) ) ).
fof(lameq_f820,axiom,
! [V0p] :
( mem(V0p,ty_2Enum_2Enum)
=> ! [V2q] : ap(f820(V0p),V2q) = f819(V0p,V2q) ) ).
fof(conj_thm_2Enumposrep_2En2l__pow2__compute,axiom,
! [V0p] :
( mem(V0p,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,c_2Enum_2E0),V0p))
=> ap(ap(c_2Enumposrep_2En2l,ap(ap(c_2Earithmetic_2EEXP,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V0p)),V1n) = ap(ap(c_2Ebool_2ELET(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),ty_2Elist_2Elist(ty_2Enum_2Enum)),ap(c_2Epair_2EUNCURRY(ty_2Enum_2Enum,ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum)),f820(V0p))),ap(ap(c_2Ebit_2EDIVMOD__2EXP,V0p),V1n)) ) ) ) ).
fof(ax_thm_2Enumposrep_2El2n2,axiom,
c_2Enumposrep_2El2n2 = ap(c_2Enumposrep_2El2n,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))) ).
fof(conj_thm_2Enumposrep_2El2n__2__thms,axiom,
( ! [V0t] :
( mem(V0t,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ap(ap(c_2Enumposrep_2El2n,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),c_2Enum_2E0),V0t)) = ap(c_2Earithmetic_2ENUMERAL,ap(c_2Enumposrep_2El2n2,ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),c_2Enum_2E0),V0t))) )
& ! [V1t] :
( mem(V1t,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ap(ap(c_2Enumposrep_2El2n,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V1t)) = ap(c_2Earithmetic_2ENUMERAL,ap(c_2Enumposrep_2El2n2,ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V1t))) )
& ap(c_2Enumposrep_2El2n2,c_2Elist_2ENIL(ty_2Enum_2Enum)) = c_2Earithmetic_2EZERO
& ! [V2t] :
( mem(V2t,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ap(c_2Enumposrep_2El2n2,ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),c_2Enum_2E0),V2t)) = ap(c_2Enumeral_2EiDUB,ap(c_2Enumposrep_2El2n2,V2t)) )
& ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ap(c_2Enumposrep_2El2n2,ap(ap(c_2Elist_2ECONS(ty_2Enum_2Enum),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),V3t)) = ap(c_2Earithmetic_2EBIT1,ap(c_2Enumposrep_2El2n2,V3t)) ) ) ).
fof(conj_thm_2Enumposrep_2EBIT__num__from__bin__list,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Enum_2Enum))
=> ( ( p(ap(ap(c_2Elist_2EEVERY(ty_2Enum_2Enum),ap(c_2Earithmetic_2E_3E,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO)))),V1l))
& p(ap(ap(c_2Eprim__rec_2E_3C,V0x),ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),V1l))) )
=> ( p(ap(ap(c_2Ebit_2EBIT,V0x),ap(c_2Enumposrep_2Enum__from__bin__list,V1l)))
<=> ap(ap(c_2Elist_2EEL(ty_2Enum_2Enum),V0x),V1l) = ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)) ) ) ) ) ).
fof(conj_thm_2Enumposrep_2EEL__num__to__bin__list,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V0x),ap(c_2Elist_2ELENGTH(ty_2Enum_2Enum),ap(c_2Enumposrep_2Enum__to__bin__list,V1n))))
=> ap(ap(c_2Elist_2EEL(ty_2Enum_2Enum),V0x),ap(c_2Enumposrep_2Enum__to__bin__list,V1n)) = ap(ap(c_2Ebit_2EBITV,V1n),V0x) ) ) ) ).
fof(conj_thm_2Enumposrep_2Enum__bin__list,axiom,
ap(ap(c_2Ecombin_2Eo(ty_2Enum_2Enum,ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum)),c_2Enumposrep_2Enum__from__bin__list),c_2Enumposrep_2Enum__to__bin__list) = c_2Ecombin_2EI(ty_2Enum_2Enum) ).
fof(conj_thm_2Enumposrep_2Enum__oct__list,axiom,
ap(ap(c_2Ecombin_2Eo(ty_2Enum_2Enum,ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum)),c_2Enumposrep_2Enum__from__oct__list),c_2Enumposrep_2Enum__to__oct__list) = c_2Ecombin_2EI(ty_2Enum_2Enum) ).
fof(conj_thm_2Enumposrep_2Enum__dec__list,axiom,
ap(ap(c_2Ecombin_2Eo(ty_2Enum_2Enum,ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum)),c_2Enumposrep_2Enum__from__dec__list),c_2Enumposrep_2Enum__to__dec__list) = c_2Ecombin_2EI(ty_2Enum_2Enum) ).
fof(conj_thm_2Enumposrep_2Enum__hex__list,axiom,
ap(ap(c_2Ecombin_2Eo(ty_2Enum_2Enum,ty_2Enum_2Enum,ty_2Elist_2Elist(ty_2Enum_2Enum)),c_2Enumposrep_2Enum__from__hex__list),c_2Enumposrep_2Enum__to__hex__list) = c_2Ecombin_2EI(ty_2Enum_2Enum) ).
%------------------------------------------------------------------------------