ITP001 Axioms: ITP060+5.ax
%------------------------------------------------------------------------------
% File : ITP060+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 : Decode+2.ax [Gau20]
% : HL4060+5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 163 ( 17 unt; 0 def)
% Number of atoms : 620 ( 144 equ)
% Maximal formula atoms : 12 ( 3 avg)
% Number of connectives : 458 ( 1 ~; 0 |; 28 &)
% ( 5 <=>; 424 =>; 0 <=; 0 <~>)
% Maximal formula depth : 20 ( 7 avg)
% Maximal term depth : 12 ( 2 avg)
% Number of predicates : 4 ( 3 usr; 0 prp; 1-2 aty)
% Number of functors : 166 ( 166 usr; 34 con; 0-5 aty)
% Number of variables : 535 ( 535 !; 0 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2EDecode_2Edec2enc,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EDecode_2Edec2enc(A_27a),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),arr(A_27a,ty_2Elist_2Elist(bool)))) ) ).
fof(mem_c_2EDecode_2Edec__bnum,axiom,
mem(c_2EDecode_2Edec__bnum,arr(ty_2Enum_2Enum,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))))) ).
fof(mem_c_2EDecode_2Edecode__blist,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EDecode_2Edecode__blist(A_27a),arr(arr(ty_2Elist_2Elist(A_27a),bool),arr(ty_2Enum_2Enum,arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))))))) ) ).
fof(mem_c_2EDecode_2Edecode__bnum,axiom,
mem(c_2EDecode_2Edecode__bnum,arr(ty_2Enum_2Enum,arr(arr(ty_2Enum_2Enum,bool),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))))))) ).
fof(mem_c_2EDecode_2Edecode__bool,axiom,
mem(c_2EDecode_2Edecode__bool,arr(arr(bool,bool),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(bool,ty_2Elist_2Elist(bool)))))) ).
fof(mem_c_2EDecode_2Edecode__list,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EDecode_2Edecode__list(A_27a),arr(arr(ty_2Elist_2Elist(A_27a),bool),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))))))) ) ).
fof(mem_c_2EDecode_2Edecode__num,axiom,
mem(c_2EDecode_2Edecode__num,arr(arr(ty_2Enum_2Enum,bool),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))))) ).
fof(mem_c_2EDecode_2Edecode__option,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EDecode_2Edecode__option(A_27a),arr(arr(ty_2Eoption_2Eoption(A_27a),bool),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool))))))) ) ).
fof(mem_c_2EDecode_2Edecode__prod,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2EDecode_2Edecode__prod(A_27a,A_27b),arr(arr(ty_2Epair_2Eprod(A_27a,A_27b),bool),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool)))))))) ) ) ).
fof(mem_c_2EDecode_2Edecode__sum,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2EDecode_2Edecode__sum(A_27a,A_27b),arr(arr(ty_2Esum_2Esum(A_27a,A_27b),bool),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))))))) ) ) ).
fof(mem_c_2EDecode_2Edecode__tree,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EDecode_2Edecode__tree(A_27a),arr(arr(ty_2EEncode_2Etree(A_27a),bool),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool))))))) ) ).
fof(mem_c_2EDecode_2Edecode__unit,axiom,
mem(c_2EDecode_2Edecode__unit,arr(arr(ty_2Eone_2Eone,bool),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Eone_2Eone,ty_2Elist_2Elist(bool)))))) ).
fof(mem_c_2EDecode_2Eenc2dec,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EDecode_2Eenc2dec(A_27a),arr(arr(A_27a,bool),arr(arr(A_27a,ty_2Elist_2Elist(bool)),arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))))))) ) ).
fof(mem_c_2EDecode_2Ewf__decoder,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2EDecode_2Ewf__decoder(A_27a),arr(arr(A_27a,bool),arr(arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),bool))) ) ).
fof(lameq_f1715,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3a] :
( mem(V3a,ty_2Elist_2Elist(bool))
=> ! [V4b] :
( mem(V4b,ty_2Elist_2Elist(bool))
=> ! [V5c] : ap(f1715(A_27a,V1d,V2x,V3a,V4b),V5c) = ap(ap(c_2Emin_2E_3D(bool),ap(ap(c_2Emin_2E_3D(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),ap(V1d,V4b)),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(A_27a,ty_2Elist_2Elist(bool)),V2x),V5c)))),ap(ap(c_2Emin_2E_3D(ty_2Elist_2Elist(bool)),V4b),ap(ap(c_2Elist_2EAPPEND(bool),V3a),V5c))) ) ) ) ) ).
fof(lameq_f1716,axiom,
! [A_27a,V3a] :
( mem(V3a,ty_2Elist_2Elist(bool))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V4b] : ap(f1716(A_27a,V3a,V2x,V1d),V4b) = ap(c_2Ebool_2E_21(ty_2Elist_2Elist(bool)),f1715(A_27a,V1d,V2x,V3a,V4b)) ) ) ) ).
fof(lameq_f1717,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3a] : ap(f1717(A_27a,V1d,V2x),V3a) = ap(c_2Ebool_2E_21(ty_2Elist_2Elist(bool)),f1716(A_27a,V3a,V2x,V1d)) ) ) ).
fof(lameq_f1718,axiom,
! [A_27a,V2x] :
( mem(V2x,A_27a)
=> ! [V6a] :
( mem(V6a,ty_2Elist_2Elist(bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V7b] : ap(f1718(A_27a,V2x,V6a,V1d),V7b) = ap(c_2Ebool_2E_7E,ap(ap(c_2Emin_2E_3D(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),ap(V1d,V6a)),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(A_27a,ty_2Elist_2Elist(bool)),V2x),V7b)))) ) ) ) ).
fof(lameq_f1719,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V6a] : ap(f1719(A_27a,V1d,V2x),V6a) = ap(c_2Ebool_2E_21(ty_2Elist_2Elist(bool)),f1718(A_27a,V2x,V6a,V1d)) ) ) ).
fof(ax_thm_2EDecode_2Ewf__decoder__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
<=> ! [V2x] :
( mem(V2x,A_27a)
=> p(ap(ap(ap(c_2Ebool_2ECOND(bool),ap(V0p,V2x)),ap(c_2Ebool_2E_3F(ty_2Elist_2Elist(bool)),f1717(A_27a,V1d,V2x))),ap(c_2Ebool_2E_21(ty_2Elist_2Elist(bool)),f1719(A_27a,V1d,V2x)))) ) ) ) ) ) ).
fof(lameq_f1720,axiom,
! [A_27a,V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V3x] :
( mem(V3x,A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V4t] : ap(f1720(A_27a,V2l,V1e,V3x,V0p),V4t) = ap(ap(c_2Ebool_2E_2F_5C,ap(V0p,V3x)),ap(ap(c_2Emin_2E_3D(ty_2Elist_2Elist(bool)),V2l),ap(ap(c_2Elist_2EAPPEND(bool),ap(V1e,V3x)),V4t))) ) ) ) ) ).
fof(lameq_f1721,axiom,
! [A_27a,V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ! [V3x] : ap(f1721(A_27a,V0p,V1e,V2l),V3x) = ap(c_2Ebool_2E_3F(ty_2Elist_2Elist(bool)),f1720(A_27a,V2l,V1e,V3x,V0p)) ) ) ) ).
fof(lameq_f1722,axiom,
! [A_27a,V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V5x] :
( mem(V5x,A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V6t] : ap(f1722(A_27a,V2l,V1e,V5x,V0p),V6t) = ap(ap(c_2Ebool_2E_2F_5C,ap(V0p,V5x)),ap(ap(c_2Emin_2E_3D(ty_2Elist_2Elist(bool)),V2l),ap(ap(c_2Elist_2EAPPEND(bool),ap(V1e,V5x)),V6t))) ) ) ) ) ).
fof(lameq_f1723,axiom,
! [A_27a,V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V5x] : ap(f1723(A_27a,V2l,V1e,V0p),V5x) = f1722(A_27a,V2l,V1e,V5x,V0p) ) ) ) ).
fof(ax_thm_2EDecode_2Eenc2dec__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ap(ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e),V2l) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),ap(c_2Ebool_2E_3F(A_27a),f1721(A_27a,V0p,V1e,V2l))),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(c_2Emin_2E_40(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(c_2Epair_2EUNCURRY(A_27a,ty_2Elist_2Elist(bool),bool),f1723(A_27a,V2l,V1e,V0p))))),c_2Eoption_2ENONE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))) ) ) ) ) ).
fof(lameq_f1724,axiom,
! [A_27a,V0d] :
( mem(V0d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2l] : ap(f1724(A_27a,V0d,V1x),V2l) = ap(ap(c_2Emin_2E_3D(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))),ap(V0d,V2l)),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(A_27a,ty_2Elist_2Elist(bool)),V1x),c_2Elist_2ENIL(bool)))) ) ) ).
fof(ax_thm_2EDecode_2Edec2enc__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0d] :
( mem(V0d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ap(ap(c_2EDecode_2Edec2enc(A_27a),V0d),V1x) = ap(c_2Emin_2E_40(ty_2Elist_2Elist(bool)),f1724(A_27a,V0d,V1x)) ) ) ) ).
fof(conj_thm_2EDecode_2Eenc2dec__none,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ( ap(ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e),V2l) = c_2Eoption_2ENONE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))
<=> ! [V3x] :
( mem(V3x,A_27a)
=> ! [V4t] :
( mem(V4t,ty_2Elist_2Elist(bool))
=> ( p(ap(V0p,V3x))
=> V2l != ap(ap(c_2Elist_2EAPPEND(bool),ap(V1e,V3x)),V4t) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eenc2dec__some,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ! [V3x] :
( mem(V3x,A_27a)
=> ! [V4t] :
( mem(V4t,ty_2Elist_2Elist(bool))
=> ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p),V1e))
=> ( ap(ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e),V2l) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(A_27a,ty_2Elist_2Elist(bool)),V3x),V4t))
<=> ( p(ap(V0p,V3x))
& V2l = ap(ap(c_2Elist_2EAPPEND(bool),ap(V1e,V3x)),V4t) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eenc2dec__some__alt,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ! [V3x] :
( mem(V3x,ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))
=> ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p),V1e))
=> ( ap(ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e),V2l) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),V3x)
<=> ( p(ap(V0p,ap(c_2Epair_2EFST(A_27a,ty_2Elist_2Elist(bool)),V3x)))
& V2l = ap(ap(c_2Elist_2EAPPEND(bool),ap(V1e,ap(c_2Epair_2EFST(A_27a,ty_2Elist_2Elist(bool)),V3x))),ap(c_2Epair_2ESND(A_27a,ty_2Elist_2Elist(bool)),V3x)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__enc2dec,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p),V1e))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e))) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__some,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3l] :
( mem(V3l,ty_2Elist_2Elist(bool))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> ( ( ap(ap(c_2EDecode_2Edec2enc(A_27a),V1d),V2x) = V3l
& p(ap(V0p,V2x)) )
<=> ap(V1d,V3l) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(A_27a,ty_2Elist_2Elist(bool)),V2x),c_2Elist_2ENIL(bool))) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edecode__dec2enc,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
& p(ap(V0p,V2x)) )
=> ap(V1d,ap(ap(c_2EDecode_2Edec2enc(A_27a),V1d),V2x)) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(A_27a,ty_2Elist_2Elist(bool)),V2x),c_2Elist_2ENIL(bool))) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edecode__dec2enc__append,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
& p(ap(V0p,V2x)) )
=> ap(V1d,ap(ap(c_2Elist_2EAPPEND(bool),ap(ap(c_2EDecode_2Edec2enc(A_27a),V1d),V2x)),V3t)) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(A_27a,ty_2Elist_2Elist(bool)),V2x),V3t)) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__dec2enc,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p),ap(c_2EDecode_2Edec2enc(A_27a),V1d))) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__enc2dec,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ( ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p),V1e))
& p(ap(V0p,V2x)) )
=> ap(ap(c_2EDecode_2Edec2enc(A_27a),ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e)),V2x) = ap(V1e,V2x) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eenc2dec__dec2enc,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),ap(c_2EDecode_2Edec2enc(A_27a),V1d)) = V1d ) ) ) ) ).
fof(ax_thm_2EDecode_2Edecode__unit__def,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Eone_2Eone,bool))
=> ap(c_2EDecode_2Edecode__unit,V0p) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Eone_2Eone),V0p),c_2EEncode_2Eencode__unit) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__unit,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Eone_2Eone,bool))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Eone_2Eone),V0p),ap(c_2EDecode_2Edecode__unit,V0p))) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__unit,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Eone_2Eone,bool))
=> ! [V1x] :
( mem(V1x,ty_2Eone_2Eone)
=> ( p(ap(V0p,V1x))
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Eone_2Eone),ap(c_2EDecode_2Edecode__unit,V0p)),V1x) = ap(c_2EEncode_2Eencode__unit,V1x) ) ) ) ).
fof(conj_thm_2EDecode_2Edecode__unit,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Eone_2Eone,bool))
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edecode__unit,V0p),V1l) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Eone_2Eone,ty_2Elist_2Elist(bool)))),ap(V0p,c_2Eone_2Eone)),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Eone_2Eone,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Eone_2Eone,ty_2Elist_2Elist(bool)),c_2Eone_2Eone),V1l))),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Eone_2Eone,ty_2Elist_2Elist(bool)))) ) ) ).
fof(ax_thm_2EDecode_2Edecode__bool__def,axiom,
! [V0p] :
( mem(V0p,arr(bool,bool))
=> ap(c_2EDecode_2Edecode__bool,V0p) = ap(ap(c_2EDecode_2Eenc2dec(bool),V0p),c_2EEncode_2Eencode__bool) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__bool,axiom,
! [V0p] :
( mem(V0p,arr(bool,bool))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(bool),V0p),ap(c_2EDecode_2Edecode__bool,V0p))) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__bool,axiom,
! [V0p] :
( mem(V0p,arr(bool,bool))
=> ! [V1x] :
( mem(V1x,bool)
=> ( p(ap(V0p,V1x))
=> ap(ap(c_2EDecode_2Edec2enc(bool),ap(c_2EDecode_2Edecode__bool,V0p)),V1x) = ap(c_2EEncode_2Eencode__bool,V1x) ) ) ) ).
fof(lameq_f1725,axiom,
! [V2h] :
( mem(V2h,bool)
=> ! [V0p] :
( mem(V0p,arr(bool,bool))
=> ! [V3t] : ap(f1725(V2h,V0p),V3t) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(bool,ty_2Elist_2Elist(bool)))),ap(V0p,V2h)),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(bool,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(bool,ty_2Elist_2Elist(bool)),V2h),V3t))),c_2Eoption_2ENONE(ty_2Epair_2Eprod(bool,ty_2Elist_2Elist(bool)))) ) ) ).
fof(lameq_f1726,axiom,
! [V0p] :
( mem(V0p,arr(bool,bool))
=> ! [V2h] : ap(f1726(V0p),V2h) = f1725(V2h,V0p) ) ).
fof(conj_thm_2EDecode_2Edecode__bool,axiom,
! [V0p] :
( mem(V0p,arr(bool,bool))
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edecode__bool,V0p),V1l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(bool,ty_2Elist_2Elist(bool)))),V1l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(bool,ty_2Elist_2Elist(bool)))),f1726(V0p)) ) ) ).
fof(ax_thm_2EDecode_2Edecode__prod__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p] :
( mem(V0p,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1d1] :
( mem(V1d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2d2] :
( mem(V2d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ap(ap(ap(c_2EDecode_2Edecode__prod(A_27a,A_27b),V0p),V1d1),V2d2) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Epair_2Eprod(A_27a,A_27b)),V0p),ap(ap(c_2EEncode_2Eencode__prod(A_27a,A_27b),ap(c_2EDecode_2Edec2enc(A_27a),V1d1)),ap(c_2EDecode_2Edec2enc(A_27b),V2d2))) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__prod,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1p2] :
( mem(V1p2,arr(A_27b,bool))
=> ! [V2d1] :
( mem(V2d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p1),V2d1))
& p(ap(ap(c_2EDecode_2Ewf__decoder(A_27b),V1p2),V3d2)) )
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2EEncode_2Elift__prod(A_27a,A_27b),V0p1),V1p2)),ap(ap(ap(c_2EDecode_2Edecode__prod(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__prod(A_27a,A_27b),V0p1),V1p2)),V2d1),V3d2))) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__prod,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1p2] :
( mem(V1p2,arr(A_27b,bool))
=> ! [V2d1] :
( mem(V2d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V4x] :
( mem(V4x,ty_2Epair_2Eprod(A_27a,A_27b))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p1),V2d1))
& p(ap(ap(c_2EDecode_2Ewf__decoder(A_27b),V1p2),V3d2))
& p(ap(ap(ap(c_2EEncode_2Elift__prod(A_27a,A_27b),V0p1),V1p2),V4x)) )
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(ap(c_2EDecode_2Edecode__prod(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__prod(A_27a,A_27b),V0p1),V1p2)),V2d1),V3d2)),V4x) = ap(ap(ap(c_2EEncode_2Eencode__prod(A_27a,A_27b),ap(c_2EDecode_2Edec2enc(A_27a),V2d1)),ap(c_2EDecode_2Edec2enc(A_27b),V3d2)),V4x) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eencode__then__decode__prod,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1p2] :
( mem(V1p2,arr(A_27b,bool))
=> ! [V2e1] :
( mem(V2e1,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V3e2] :
( mem(V3e2,arr(A_27b,ty_2Elist_2Elist(bool)))
=> ! [V4l] :
( mem(V4l,ty_2Epair_2Eprod(A_27a,A_27b))
=> ! [V5t] :
( mem(V5t,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p1),V2e1))
& p(ap(ap(c_2EEncode_2Ewf__encoder(A_27b),V1p2),V3e2))
& p(ap(ap(ap(c_2EEncode_2Elift__prod(A_27a,A_27b),V0p1),V1p2),V4l)) )
=> ap(ap(ap(ap(c_2EDecode_2Edecode__prod(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__prod(A_27a,A_27b),V0p1),V1p2)),ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p1),V2e1)),ap(ap(c_2EDecode_2Eenc2dec(A_27b),V1p2),V3e2)),ap(ap(c_2Elist_2EAPPEND(bool),ap(ap(ap(c_2EEncode_2Eencode__prod(A_27a,A_27b),V2e1),V3e2),V4l)),V5t)) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool)),V4l),V5t)) ) ) ) ) ) ) ) ) ) ).
fof(lameq_f1727,axiom,
! [A_27a,A_27b,V9y] :
( mem(V9y,A_27b)
=> ! [V6x] :
( mem(V6x,A_27a)
=> ! [V10t_27] : ap(f1727(A_27a,A_27b,V9y,V6x),V10t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V6x),V9y)),V10t_27)) ) ) ).
fof(lameq_f1728,axiom,
! [A_27a,A_27b,V6x] :
( mem(V6x,A_27a)
=> ! [V9y] : ap(f1728(A_27a,A_27b,V6x),V9y) = f1727(A_27a,A_27b,V9y,V6x) ) ).
fof(lameq_f1729,axiom,
! [A_27a,A_27b,V6x] :
( mem(V6x,A_27a)
=> ! [V8v] : ap(f1729(A_27a,A_27b,V6x),V8v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool))),A_27b,ty_2Elist_2Elist(bool)),V8v),f1728(A_27a,A_27b,V6x)) ) ).
fof(lameq_f1730,axiom,
! [A_27b,A_27a,V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V6x] :
( mem(V6x,A_27a)
=> ! [V7t] : ap(f1730(A_27b,A_27a,V3d2,V6x),V7t) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool)))),ap(V3d2,V7t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool)))),f1729(A_27a,A_27b,V6x)) ) ) ).
fof(lameq_f1731,axiom,
! [A_27b,A_27a,V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V6x] : ap(f1731(A_27b,A_27a,V3d2),V6x) = f1730(A_27b,A_27a,V3d2,V6x) ) ).
fof(lameq_f1732,axiom,
! [A_27b,A_27a,V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V5v1] : ap(f1732(A_27b,A_27a,V3d2),V5v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool))),A_27a,ty_2Elist_2Elist(bool)),V5v1),f1731(A_27b,A_27a,V3d2)) ) ).
fof(conj_thm_2EDecode_2Edecode__prod,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1d1] :
( mem(V1d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2p2] :
( mem(V2p2,arr(A_27b,bool))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V4l] :
( mem(V4l,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p1),V1d1))
& p(ap(ap(c_2EDecode_2Ewf__decoder(A_27b),V2p2),V3d2)) )
=> ap(ap(ap(ap(c_2EDecode_2Edecode__prod(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__prod(A_27a,A_27b),V0p1),V2p2)),V1d1),V3d2),V4l) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool)))),ap(V1d1,V4l)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Elist_2Elist(bool)))),f1732(A_27b,A_27a,V3d2)) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2EDecode_2Edecode__sum__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p] :
( mem(V0p,arr(ty_2Esum_2Esum(A_27a,A_27b),bool))
=> ! [V1d1] :
( mem(V1d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2d2] :
( mem(V2d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ap(ap(ap(c_2EDecode_2Edecode__sum(A_27a,A_27b),V0p),V1d1),V2d2) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Esum_2Esum(A_27a,A_27b)),V0p),ap(ap(c_2EEncode_2Eencode__sum(A_27a,A_27b),ap(c_2EDecode_2Edec2enc(A_27a),V1d1)),ap(c_2EDecode_2Edec2enc(A_27b),V2d2))) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__sum,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1p2] :
( mem(V1p2,arr(A_27b,bool))
=> ! [V2d1] :
( mem(V2d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p1),V2d1))
& p(ap(ap(c_2EDecode_2Ewf__decoder(A_27b),V1p2),V3d2)) )
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Esum_2Esum(A_27a,A_27b)),ap(ap(c_2EEncode_2Elift__sum(A_27a,A_27b),V0p1),V1p2)),ap(ap(ap(c_2EDecode_2Edecode__sum(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__sum(A_27a,A_27b),V0p1),V1p2)),V2d1),V3d2))) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__sum,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1p2] :
( mem(V1p2,arr(A_27b,bool))
=> ! [V2d1] :
( mem(V2d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V4x] :
( mem(V4x,ty_2Esum_2Esum(A_27a,A_27b))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p1),V2d1))
& p(ap(ap(c_2EDecode_2Ewf__decoder(A_27b),V1p2),V3d2))
& p(ap(ap(ap(c_2EEncode_2Elift__sum(A_27a,A_27b),V0p1),V1p2),V4x)) )
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Esum_2Esum(A_27a,A_27b)),ap(ap(ap(c_2EDecode_2Edecode__sum(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__sum(A_27a,A_27b),V0p1),V1p2)),V2d1),V3d2)),V4x) = ap(ap(ap(c_2EEncode_2Eencode__sum(A_27a,A_27b),ap(c_2EDecode_2Edec2enc(A_27a),V2d1)),ap(c_2EDecode_2Edec2enc(A_27b),V3d2)),V4x) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eencode__then__decode__sum,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1p2] :
( mem(V1p2,arr(A_27b,bool))
=> ! [V2e1] :
( mem(V2e1,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V3e2] :
( mem(V3e2,arr(A_27b,ty_2Elist_2Elist(bool)))
=> ! [V4l] :
( mem(V4l,ty_2Esum_2Esum(A_27a,A_27b))
=> ! [V5t] :
( mem(V5t,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p1),V2e1))
& p(ap(ap(c_2EEncode_2Ewf__encoder(A_27b),V1p2),V3e2))
& p(ap(ap(ap(c_2EEncode_2Elift__sum(A_27a,A_27b),V0p1),V1p2),V4l)) )
=> ap(ap(ap(ap(c_2EDecode_2Edecode__sum(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__sum(A_27a,A_27b),V0p1),V1p2)),ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p1),V2e1)),ap(ap(c_2EDecode_2Eenc2dec(A_27b),V1p2),V3e2)),ap(ap(c_2Elist_2EAPPEND(bool),ap(ap(ap(c_2EEncode_2Eencode__sum(A_27a,A_27b),V2e1),V3e2),V4l)),V5t)) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)),V4l),V5t)) ) ) ) ) ) ) ) ) ) ).
fof(lameq_f1733,axiom,
! [A_27b,A_27a,V8x] :
( mem(V8x,A_27a)
=> ! [V9t_27] : ap(f1733(A_27b,A_27a,V8x),V9t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)),ap(c_2Esum_2EINL(A_27a,A_27b),V8x)),V9t_27)) ) ).
fof(lameq_f1734,axiom,
! [A_27b,A_27a,V8x] : ap(f1734(A_27b,A_27a),V8x) = f1733(A_27b,A_27a,V8x) ).
fof(lameq_f1735,axiom,
! [A_27b,A_27a,V7v] : ap(f1735(A_27b,A_27a),V7v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool))),A_27a,ty_2Elist_2Elist(bool)),V7v),f1734(A_27b,A_27a)) ).
fof(lameq_f1736,axiom,
! [A_27a,A_27b,V11x] :
( mem(V11x,A_27b)
=> ! [V12t_27] : ap(f1736(A_27a,A_27b,V11x),V12t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)),ap(c_2Esum_2EINR(A_27a,A_27b),V11x)),V12t_27)) ) ).
fof(lameq_f1737,axiom,
! [A_27a,A_27b,V11x] : ap(f1737(A_27a,A_27b),V11x) = f1736(A_27a,A_27b,V11x) ).
fof(lameq_f1738,axiom,
! [A_27a,A_27b,V10v] : ap(f1738(A_27a,A_27b),V10v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool))),A_27b,ty_2Elist_2Elist(bool)),V10v),f1737(A_27a,A_27b)) ).
fof(lameq_f1739,axiom,
! [A_27b,A_27a,V5v1] :
( mem(V5v1,bool)
=> ! [V1d1] :
( mem(V1d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V6t] : ap(f1739(A_27b,A_27a,V5v1,V1d1,V3d2),V6t) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))),V5v1),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))),ap(V1d1,V6t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))),f1735(A_27b,A_27a))),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))),ap(V3d2,V6t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))),f1738(A_27a,A_27b))) ) ) ) ).
fof(lameq_f1740,axiom,
! [A_27a,A_27b,V1d1] :
( mem(V1d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V5v1] : ap(f1740(A_27a,A_27b,V1d1,V3d2),V5v1) = f1739(A_27b,A_27a,V5v1,V1d1,V3d2) ) ) ).
fof(conj_thm_2EDecode_2Edecode__sum,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p1] :
( mem(V0p1,arr(A_27a,bool))
=> ! [V1d1] :
( mem(V1d1,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2p2] :
( mem(V2p2,arr(A_27b,bool))
=> ! [V3d2] :
( mem(V3d2,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27b,ty_2Elist_2Elist(bool)))))
=> ! [V4l] :
( mem(V4l,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p1),V1d1))
& p(ap(ap(c_2EDecode_2Ewf__decoder(A_27b),V2p2),V3d2)) )
=> ap(ap(ap(ap(c_2EDecode_2Edecode__sum(A_27a,A_27b),ap(ap(c_2EEncode_2Elift__sum(A_27a,A_27b),V0p1),V2p2)),V1d1),V3d2),V4l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))),V4l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Esum_2Esum(A_27a,A_27b),ty_2Elist_2Elist(bool)))),f1740(A_27a,A_27b,V1d1,V3d2)) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2EDecode_2Edecode__option__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(ty_2Eoption_2Eoption(A_27a),bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ap(ap(c_2EDecode_2Edecode__option(A_27a),V0p),V1d) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Eoption_2Eoption(A_27a)),V0p),ap(c_2EEncode_2Eencode__option(A_27a),ap(c_2EDecode_2Edec2enc(A_27a),V1d))) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__option,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Eoption_2Eoption(A_27a)),ap(c_2EEncode_2Elift__option(A_27a),V0p)),ap(ap(c_2EDecode_2Edecode__option(A_27a),ap(c_2EEncode_2Elift__option(A_27a),V0p)),V1d))) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__option,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,ty_2Eoption_2Eoption(A_27a))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
& p(ap(ap(c_2EEncode_2Elift__option(A_27a),V0p),V2x)) )
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Eoption_2Eoption(A_27a)),ap(ap(c_2EDecode_2Edecode__option(A_27a),ap(c_2EEncode_2Elift__option(A_27a),V0p)),V1d)),V2x) = ap(ap(c_2EEncode_2Eencode__option(A_27a),ap(c_2EDecode_2Edec2enc(A_27a),V1d)),V2x) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eencode__then__decode__option,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2l] :
( mem(V2l,ty_2Eoption_2Eoption(A_27a))
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p),V1e))
& p(ap(ap(c_2EEncode_2Elift__option(A_27a),V0p),V2l)) )
=> ap(ap(ap(c_2EDecode_2Edecode__option(A_27a),ap(c_2EEncode_2Elift__option(A_27a),V0p)),ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e)),ap(ap(c_2Elist_2EAPPEND(bool),ap(ap(c_2EEncode_2Eencode__option(A_27a),V1e),V2l)),V3t)) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)),V2l),V3t)) ) ) ) ) ) ) ).
fof(lameq_f1741,axiom,
! [A_27a,V6x] :
( mem(V6x,A_27a)
=> ! [V7t_27] : ap(f1741(A_27a,V6x),V7t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)),ap(c_2Eoption_2ESOME(A_27a),V6x)),V7t_27)) ) ).
fof(lameq_f1742,axiom,
! [A_27a,V6x] : ap(f1742(A_27a),V6x) = f1741(A_27a,V6x) ).
fof(lameq_f1743,axiom,
! [A_27a,V5v] : ap(f1743(A_27a),V5v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool))),A_27a,ty_2Elist_2Elist(bool)),V5v),f1742(A_27a)) ).
fof(lameq_f1744,axiom,
! [A_27a,V3v1] :
( mem(V3v1,bool)
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V4t] : ap(f1744(A_27a,V3v1,V1d),V4t) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)))),V3v1),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)))),ap(V1d,V4t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)))),f1743(A_27a))),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)),c_2Eoption_2ENONE(A_27a)),V4t))) ) ) ).
fof(lameq_f1745,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3v1] : ap(f1745(A_27a,V1d),V3v1) = f1744(A_27a,V3v1,V1d) ) ).
fof(conj_thm_2EDecode_2Edecode__option,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> ap(ap(ap(c_2EDecode_2Edecode__option(A_27a),ap(c_2EEncode_2Elift__option(A_27a),V0p)),V1d),V2l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)))),V2l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Eoption_2Eoption(A_27a),ty_2Elist_2Elist(bool)))),f1745(A_27a,V1d)) ) ) ) ) ) ).
fof(ax_thm_2EDecode_2Edecode__list__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(ty_2Elist_2Elist(A_27a),bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ap(ap(c_2EDecode_2Edecode__list(A_27a),V0p),V1d) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Elist_2Elist(A_27a)),V0p),ap(c_2EEncode_2Eencode__list(A_27a),ap(c_2EDecode_2Edec2enc(A_27a),V1d))) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__list,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Elist_2Elist(A_27a)),ap(c_2Elist_2EEVERY(A_27a),V0p)),ap(ap(c_2EDecode_2Edecode__list(A_27a),ap(c_2Elist_2EEVERY(A_27a),V0p)),V1d))) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__list,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2x] :
( mem(V2x,ty_2Elist_2Elist(A_27a))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
& p(ap(ap(c_2Elist_2EEVERY(A_27a),V0p),V2x)) )
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Elist_2Elist(A_27a)),ap(ap(c_2EDecode_2Edecode__list(A_27a),ap(c_2Elist_2EEVERY(A_27a),V0p)),V1d)),V2x) = ap(ap(c_2EEncode_2Eencode__list(A_27a),ap(c_2EDecode_2Edec2enc(A_27a),V1d)),V2x) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eencode__then__decode__list,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1e] :
( mem(V1e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(A_27a))
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V0p),V1e))
& p(ap(ap(c_2Elist_2EEVERY(A_27a),V0p),V2l)) )
=> ap(ap(ap(c_2EDecode_2Edecode__list(A_27a),ap(c_2Elist_2EEVERY(A_27a),V0p)),ap(ap(c_2EDecode_2Eenc2dec(A_27a),V0p),V1e)),ap(ap(c_2Elist_2EAPPEND(bool),ap(ap(c_2EEncode_2Eencode__list(A_27a),V1e),V2l)),V3t)) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),V2l),V3t)) ) ) ) ) ) ) ).
fof(lameq_f1746,axiom,
! [A_27a,V9xs] :
( mem(V9xs,ty_2Elist_2Elist(A_27a))
=> ! [V6x] :
( mem(V6x,A_27a)
=> ! [V10t_27_27] : ap(f1746(A_27a,V9xs,V6x),V10t_27_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),ap(ap(c_2Elist_2ECONS(A_27a),V6x),V9xs)),V10t_27_27)) ) ) ).
fof(lameq_f1747,axiom,
! [A_27a,V6x] :
( mem(V6x,A_27a)
=> ! [V9xs] : ap(f1747(A_27a,V6x),V9xs) = f1746(A_27a,V9xs,V6x) ) ).
fof(lameq_f1748,axiom,
! [A_27a,V6x] :
( mem(V6x,A_27a)
=> ! [V8v] : ap(f1748(A_27a,V6x),V8v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),V8v),f1747(A_27a,V6x)) ) ).
fof(lameq_f1749,axiom,
! [A_27a,V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V6x] :
( mem(V6x,A_27a)
=> ! [V7t_27] : ap(f1749(A_27a,V0p,V1d,V6x),V7t_27) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),ap(ap(ap(c_2EDecode_2Edecode__list(A_27a),ap(c_2Elist_2EEVERY(A_27a),V0p)),V1d),V7t_27)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),f1748(A_27a,V6x)) ) ) ) ).
fof(lameq_f1750,axiom,
! [A_27a,V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V6x] : ap(f1750(A_27a,V0p,V1d),V6x) = f1749(A_27a,V0p,V1d,V6x) ) ) ).
fof(lameq_f1751,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V5v1] : ap(f1751(A_27a,V1d,V0p),V5v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),A_27a,ty_2Elist_2Elist(bool)),V5v1),f1750(A_27a,V0p,V1d)) ) ) ).
fof(lameq_f1752,axiom,
! [A_27a,V3v2] :
( mem(V3v2,bool)
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V4t] : ap(f1752(A_27a,V3v2,V1d,V0p),V4t) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),V3v2),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),ap(V1d,V4t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),f1751(A_27a,V1d,V0p))),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),c_2Elist_2ENIL(A_27a)),V4t))) ) ) ) ).
fof(lameq_f1753,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V3v2] : ap(f1753(A_27a,V1d,V0p),V3v2) = f1752(A_27a,V3v2,V1d,V0p) ) ) ).
fof(conj_thm_2EDecode_2Edecode__list,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> ap(ap(ap(c_2EDecode_2Edecode__list(A_27a),ap(c_2Elist_2EEVERY(A_27a),V0p)),V1d),V2l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),V2l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),f1753(A_27a,V1d,V0p)) ) ) ) ) ) ).
fof(ax_thm_2EDecode_2Edecode__blist__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(ty_2Elist_2Elist(A_27a),bool))
=> ! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ! [V2d] :
( mem(V2d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ap(ap(ap(c_2EDecode_2Edecode__blist(A_27a),V0p),V1m),V2d) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Elist_2Elist(A_27a)),V0p),ap(ap(c_2EEncode_2Eencode__blist(bool,A_27a),V1m),ap(c_2EDecode_2Edec2enc(A_27a),V2d))) ) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__blist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(A_27a,bool))
=> ! [V2d] :
( mem(V2d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V1p),V2d))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Elist_2Elist(A_27a)),ap(ap(c_2EEncode_2Elift__blist(A_27a),V0m),V1p)),ap(ap(ap(c_2EDecode_2Edecode__blist(A_27a),ap(ap(c_2EEncode_2Elift__blist(A_27a),V0m),V1p)),V0m),V2d))) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__blist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(A_27a,bool))
=> ! [V2d] :
( mem(V2d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3l] :
( mem(V3l,ty_2Elist_2Elist(A_27a))
=> ( ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V1p),V2d))
& p(ap(ap(ap(c_2EEncode_2Elift__blist(A_27a),V0m),V1p),V3l)) )
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Elist_2Elist(A_27a)),ap(ap(ap(c_2EDecode_2Edecode__blist(A_27a),ap(ap(c_2EEncode_2Elift__blist(A_27a),V0m),V1p)),V0m),V2d)),V3l) = ap(ap(ap(c_2EEncode_2Eencode__blist(bool,A_27a),V0m),ap(c_2EDecode_2Edec2enc(A_27a),V2d)),V3l) ) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Eencode__then__decode__blist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(A_27a,bool))
=> ! [V2e] :
( mem(V2e,arr(A_27a,ty_2Elist_2Elist(bool)))
=> ! [V3l] :
( mem(V3l,ty_2Elist_2Elist(A_27a))
=> ! [V4t] :
( mem(V4t,ty_2Elist_2Elist(bool))
=> ( ( p(ap(ap(c_2EEncode_2Ewf__encoder(A_27a),V1p),V2e))
& p(ap(ap(ap(c_2EEncode_2Elift__blist(A_27a),V0m),V1p),V3l)) )
=> ap(ap(ap(ap(c_2EDecode_2Edecode__blist(A_27a),ap(ap(c_2EEncode_2Elift__blist(A_27a),V0m),V1p)),V0m),ap(ap(c_2EDecode_2Eenc2dec(A_27a),V1p),V2e)),ap(ap(c_2Elist_2EAPPEND(bool),ap(ap(ap(c_2EEncode_2Eencode__blist(bool,A_27a),V0m),V2e),V3l)),V4t)) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),V3l),V4t)) ) ) ) ) ) ) ) ).
fof(lameq_f1754,axiom,
! [A_27a,V9xs] :
( mem(V9xs,ty_2Elist_2Elist(A_27a))
=> ! [V6x] :
( mem(V6x,A_27a)
=> ! [V10t_27] : ap(f1754(A_27a,V9xs,V6x),V10t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),ap(ap(c_2Elist_2ECONS(A_27a),V6x),V9xs)),V10t_27)) ) ) ).
fof(lameq_f1755,axiom,
! [A_27a,V6x] :
( mem(V6x,A_27a)
=> ! [V9xs] : ap(f1755(A_27a,V6x),V9xs) = f1754(A_27a,V9xs,V6x) ) ).
fof(lameq_f1756,axiom,
! [A_27a,V6x] :
( mem(V6x,A_27a)
=> ! [V8v] : ap(f1756(A_27a,V6x),V8v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),V8v),f1755(A_27a,V6x)) ) ).
fof(lameq_f1757,axiom,
! [A_27a,V4n] :
( mem(V4n,ty_2Enum_2Enum)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V6x] :
( mem(V6x,A_27a)
=> ! [V7t] : ap(f1757(A_27a,V4n,V0p,V1d,V6x),V7t) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),ap(ap(ap(ap(c_2EDecode_2Edecode__blist(A_27a),ap(ap(c_2EEncode_2Elift__blist(A_27a),V4n),V0p)),V4n),V1d),V7t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),f1756(A_27a,V6x)) ) ) ) ) ).
fof(lameq_f1758,axiom,
! [A_27a,V4n] :
( mem(V4n,ty_2Enum_2Enum)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V6x] : ap(f1758(A_27a,V4n,V0p,V1d),V6x) = f1757(A_27a,V4n,V0p,V1d,V6x) ) ) ) ).
fof(lameq_f1759,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V4n] :
( mem(V4n,ty_2Enum_2Enum)
=> ! [V5v1] : ap(f1759(A_27a,V1d,V0p,V4n),V5v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),A_27a,ty_2Elist_2Elist(bool)),V5v1),f1758(A_27a,V4n,V0p,V1d)) ) ) ) ).
fof(lameq_f1760,axiom,
! [A_27a,V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3l] :
( mem(V3l,ty_2Elist_2Elist(bool))
=> ! [V4n] : ap(f1760(A_27a,V0p,V1d,V3l),V4n) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),ap(V1d,V3l)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),f1759(A_27a,V1d,V0p,V4n)) ) ) ) ).
fof(conj_thm_2EDecode_2Edecode__blist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2m] :
( mem(V2m,ty_2Enum_2Enum)
=> ! [V3l] :
( mem(V3l,ty_2Elist_2Elist(bool))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> ap(ap(ap(ap(c_2EDecode_2Edecode__blist(A_27a),ap(ap(c_2EEncode_2Elift__blist(A_27a),V2m),V0p)),V2m),V1d),V3l) = ap(ap(ap(c_2Earithmetic_2Enum__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)))),V2m),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(bool)),c_2Elist_2ENIL(A_27a)),V3l))),f1760(A_27a,V0p,V1d,V3l)) ) ) ) ) ) ) ).
fof(ax_thm_2EDecode_2Edecode__num__def,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ap(c_2EDecode_2Edecode__num,V0p) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Enum_2Enum),V0p),c_2EEncode_2Eencode__num) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__num,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Enum_2Enum),V0p),ap(c_2EDecode_2Edecode__num,V0p))) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__num,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V1x] :
( mem(V1x,ty_2Enum_2Enum)
=> ( p(ap(V0p,V1x))
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Enum_2Enum),ap(c_2EDecode_2Edecode__num,V0p)),V1x) = ap(c_2EEncode_2Eencode__num,V1x) ) ) ) ).
fof(lameq_f1761,axiom,
! [V6v] :
( mem(V6v,ty_2Enum_2Enum)
=> ! [V7t_27] : ap(f1761(V6v),V7t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V6v)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))),V7t_27)) ) ).
fof(lameq_f1762,axiom,
! [V6v] : ap(f1762,V6v) = f1761(V6v) ).
fof(lameq_f1763,axiom,
! [V5v1] : ap(f1763,V5v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V5v1),f1762) ).
fof(lameq_f1764,axiom,
! [V3v8] :
( mem(V3v8,bool)
=> ! [V4t] : ap(f1764(V3v8),V4t) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V3v8),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),c_2Enum_2E0),V4t))),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edecode__num,ap(c_2Ecombin_2EK(bool,ty_2Enum_2Enum),c_2Ebool_2ET)),V4t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1763)) ) ).
fof(lameq_f1765,axiom,
! [V3v8] : ap(f1765,V3v8) = f1764(V3v8) ).
fof(lameq_f1766,axiom,
! [V9v] :
( mem(V9v,ty_2Enum_2Enum)
=> ! [V10t_27] : ap(f1766(V9v),V10t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V9v)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO)))),V10t_27)) ) ).
fof(lameq_f1767,axiom,
! [V9v] : ap(f1767,V9v) = f1766(V9v) ).
fof(lameq_f1768,axiom,
! [V8v1] : ap(f1768,V8v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V8v1),f1767) ).
fof(lameq_f1769,axiom,
! [V1v4] :
( mem(V1v4,bool)
=> ! [V2t_27] : ap(f1769(V1v4),V2t_27) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V1v4),ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V2t_27),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1765)),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edecode__num,ap(c_2Ecombin_2EK(bool,ty_2Enum_2Enum),c_2Ebool_2ET)),V2t_27)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1768)) ) ).
fof(lameq_f1770,axiom,
! [V1v4] : ap(f1770,V1v4) = f1769(V1v4) ).
fof(conj_thm_2EDecode_2Edecode__num__total,axiom,
! [V0l] :
( mem(V0l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edecode__num,ap(c_2Ecombin_2EK(bool,ty_2Enum_2Enum),c_2Ebool_2ET)),V0l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V0l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1770) ) ).
fof(lameq_f1771,axiom,
! [V7v] :
( mem(V7v,ty_2Enum_2Enum)
=> ! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V8t_27] : ap(f1771(V7v,V0p),V8t_27) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(V0p,ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V7v)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))))),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V7v)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))),V8t_27))),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))) ) ) ).
fof(lameq_f1772,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V7v] : ap(f1772(V0p),V7v) = f1771(V7v,V0p) ) ).
fof(lameq_f1773,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V6v1] : ap(f1773(V0p),V6v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V6v1),f1772(V0p)) ) ).
fof(lameq_f1774,axiom,
! [V4v8] :
( mem(V4v8,bool)
=> ! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V5t] : ap(f1774(V4v8,V0p),V5t) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V4v8),ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(V0p,c_2Enum_2E0)),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),c_2Enum_2E0),V5t))),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))))),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edecode__num,ap(c_2Ecombin_2EK(bool,ty_2Enum_2Enum),c_2Ebool_2ET)),V5t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1773(V0p))) ) ) ).
fof(lameq_f1775,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V4v8] : ap(f1775(V0p),V4v8) = f1774(V4v8,V0p) ) ).
fof(lameq_f1776,axiom,
! [V10v] :
( mem(V10v,ty_2Enum_2Enum)
=> ! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V11t_27] : ap(f1776(V10v,V0p),V11t_27) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(V0p,ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V10v)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))))),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V10v)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO)))),V11t_27))),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))) ) ) ).
fof(lameq_f1777,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V10v] : ap(f1777(V0p),V10v) = f1776(V10v,V0p) ) ).
fof(lameq_f1778,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V9v1] : ap(f1778(V0p),V9v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V9v1),f1777(V0p)) ) ).
fof(lameq_f1779,axiom,
! [V2v4] :
( mem(V2v4,bool)
=> ! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V3t_27] : ap(f1779(V2v4,V0p),V3t_27) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V2v4),ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V3t_27),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1775(V0p))),ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edecode__num,ap(c_2Ecombin_2EK(bool,ty_2Enum_2Enum),c_2Ebool_2ET)),V3t_27)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1778(V0p))) ) ) ).
fof(lameq_f1780,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V2v4] : ap(f1780(V0p),V2v4) = f1779(V2v4,V0p) ) ).
fof(conj_thm_2EDecode_2Edecode__num,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edecode__num,V0p),V1l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V1l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1780(V0p)) ) ) ).
fof(ax_thm_2EDecode_2Edecode__bnum__def,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> ap(ap(c_2EDecode_2Edecode__bnum,V0m),V1p) = ap(ap(c_2EDecode_2Eenc2dec(ty_2Enum_2Enum),V1p),ap(c_2EEncode_2Eencode__bnum,V0m)) ) ) ).
fof(lameq_f1781,axiom,
! [V3h] :
( mem(V3h,bool)
=> ! [V6n] :
( mem(V6n,ty_2Enum_2Enum)
=> ! [V7t_27] : ap(f1781(V3h,V6n),V7t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V6n)),ap(ap(ap(c_2Ebool_2ECOND(ty_2Enum_2Enum),V3h),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),c_2Enum_2E0))),V7t_27)) ) ) ).
fof(lameq_f1782,axiom,
! [V3h] :
( mem(V3h,bool)
=> ! [V6n] : ap(f1782(V3h),V6n) = f1781(V3h,V6n) ) ).
fof(lameq_f1783,axiom,
! [V3h] :
( mem(V3h,bool)
=> ! [V5v] : ap(f1783(V3h),V5v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V5v),f1782(V3h)) ) ).
fof(lameq_f1784,axiom,
! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ! [V3h] :
( mem(V3h,bool)
=> ! [V4t] : ap(f1784(V1m,V3h),V4t) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edec__bnum,V1m),V4t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1783(V3h)) ) ) ).
fof(lameq_f1785,axiom,
! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ! [V3h] : ap(f1785(V1m),V3h) = f1784(V1m,V3h) ) ).
fof(ax_thm_2EDecode_2Edec__bnum__def,axiom,
( ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edec__bnum,c_2Enum_2E0),V0l) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),c_2Enum_2E0),V0l)) )
& ! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edec__bnum,ap(c_2Enum_2ESUC,V1m)),V2l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V2l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1785(V1m)) ) ) ) ).
fof(lameq_f1786,axiom,
! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ! [V3h] :
( mem(V3h,bool)
=> ! [V4t] : ap(f1786(V1m,V3h),V4t) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edec__bnum,ap(ap(c_2Earithmetic_2E_2D,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,V1m))),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO)))),V4t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1783(V3h)) ) ) ).
fof(lameq_f1787,axiom,
! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ! [V3h] : ap(f1787(V1m),V3h) = f1786(V1m,V3h) ) ).
fof(lameq_f1788,axiom,
! [V10h] :
( mem(V10h,bool)
=> ! [V13n] :
( mem(V13n,ty_2Enum_2Enum)
=> ! [V14t_27] : ap(f1788(V10h,V13n),V14t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V13n)),ap(ap(ap(c_2Ebool_2ECOND(ty_2Enum_2Enum),V10h),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),c_2Enum_2E0))),V14t_27)) ) ) ).
fof(lameq_f1789,axiom,
! [V10h] :
( mem(V10h,bool)
=> ! [V13n] : ap(f1789(V10h),V13n) = f1788(V10h,V13n) ) ).
fof(lameq_f1790,axiom,
! [V10h] :
( mem(V10h,bool)
=> ! [V12v] : ap(f1790(V10h),V12v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V12v),f1789(V10h)) ) ).
fof(lameq_f1791,axiom,
! [V8m] :
( mem(V8m,ty_2Enum_2Enum)
=> ! [V10h] :
( mem(V10h,bool)
=> ! [V11t] : ap(f1791(V8m,V10h),V11t) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edec__bnum,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,V8m))),V11t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1790(V10h)) ) ) ).
fof(lameq_f1792,axiom,
! [V8m] :
( mem(V8m,ty_2Enum_2Enum)
=> ! [V10h] : ap(f1792(V8m),V10h) = f1791(V8m,V10h) ) ).
fof(conj_thm_2EDecode_2Edec__bnum__def__compute,axiom,
( ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edec__bnum,c_2Enum_2E0),V0l) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),c_2Enum_2E0),V0l)) )
& ! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edec__bnum,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,V1m))),V2l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V2l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1787(V1m)) ) )
& ! [V8m] :
( mem(V8m,ty_2Enum_2Enum)
=> ! [V9l] :
( mem(V9l,ty_2Elist_2Elist(bool))
=> ap(ap(c_2EDecode_2Edec__bnum,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,V8m))),V9l) = ap(ap(ap(c_2Elist_2Elist__CASE(bool,ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),V9l),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1792(V8m)) ) ) ) ).
fof(conj_thm_2EDecode_2Edec__bnum__lt,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(bool))
=> ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(bool))
=> ( ap(ap(c_2EDecode_2Edec__bnum,V0m),V1l) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V2n),V3t))
=> p(ap(ap(c_2Eprim__rec_2E_3C,V2n),ap(ap(c_2Earithmetic_2EEXP,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,c_2Earithmetic_2EZERO))),V0m))) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Edec__bnum__inj,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(bool))
=> ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(bool))
=> ( ap(ap(c_2EDecode_2Edec__bnum,V0m),V1l) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V2n),V3t))
=> V1l = ap(ap(c_2Elist_2EAPPEND(bool),ap(ap(c_2EEncode_2Eencode__bnum,V0m),V2n)),V3t) ) ) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__bnum,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> ( p(ap(ap(c_2EEncode_2Ewf__pred__bnum,V0m),V1p))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2Enum_2Enum),V1p),ap(ap(c_2EDecode_2Edecode__bnum,V0m),V1p))) ) ) ) ).
fof(conj_thm_2EDecode_2Edec2enc__decode__bnum,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> ! [V2x] :
( mem(V2x,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2EEncode_2Ewf__pred__bnum,V0m),V1p))
& p(ap(V1p,V2x)) )
=> ap(ap(c_2EDecode_2Edec2enc(ty_2Enum_2Enum),ap(ap(c_2EDecode_2Edecode__bnum,V0m),V1p)),V2x) = ap(ap(c_2EEncode_2Eencode__bnum,V0m),V2x) ) ) ) ) ).
fof(lameq_f1793,axiom,
! [V4n] :
( mem(V4n,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> ! [V5t] : ap(f1793(V4n,V1p),V5t) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(V1p,V4n)),ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V4n),V5t))),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))) ) ) ).
fof(lameq_f1794,axiom,
! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> ! [V4n] : ap(f1794(V1p),V4n) = f1793(V4n,V1p) ) ).
fof(lameq_f1795,axiom,
! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> ! [V3v] : ap(f1795(V1p),V3v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool))),ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),V3v),f1794(V1p)) ) ).
fof(conj_thm_2EDecode_2Edecode__bnum,axiom,
! [V0m] :
( mem(V0m,ty_2Enum_2Enum)
=> ! [V1p] :
( mem(V1p,arr(ty_2Enum_2Enum,bool))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ( p(ap(ap(c_2EEncode_2Ewf__pred__bnum,V0m),V1p))
=> ap(ap(ap(c_2EDecode_2Edecode__bnum,V0m),V1p),V2l) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),ap(ap(c_2EDecode_2Edec__bnum,V0m),V2l)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Elist_2Elist(bool)))),f1795(V1p)) ) ) ) ) ).
fof(ax_thm_2EDecode_2Edecode__tree__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(ty_2EEncode_2Etree(A_27a),bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ap(ap(c_2EDecode_2Edecode__tree(A_27a),V0p),V1d) = ap(ap(c_2EDecode_2Eenc2dec(ty_2EEncode_2Etree(A_27a)),V0p),ap(c_2EEncode_2Eencode__tree(A_27a),ap(c_2EDecode_2Edec2enc(A_27a),V1d))) ) ) ) ).
fof(conj_thm_2EDecode_2Ewf__decode__tree,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> p(ap(ap(c_2EDecode_2Ewf__decoder(ty_2EEncode_2Etree(A_27a)),ap(c_2EEncode_2Elift__tree(A_27a),V0p)),ap(ap(c_2EDecode_2Edecode__tree(A_27a),ap(c_2EEncode_2Elift__tree(A_27a),V0p)),V1d))) ) ) ) ) ).
fof(lameq_f1796,axiom,
! [A_27a,V7ts] :
( mem(V7ts,ty_2Elist_2Elist(ty_2EEncode_2Etree(A_27a)))
=> ! [V4a] :
( mem(V4a,A_27a)
=> ! [V8t_27] : ap(f1796(A_27a,V7ts,V4a),V8t_27) = ap(c_2Eoption_2ESOME(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool))),ap(ap(c_2Epair_2E_2C(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool)),ap(ap(c_2EEncode_2ENode(A_27a),V4a),V7ts)),V8t_27)) ) ) ).
fof(lameq_f1797,axiom,
! [A_27a,V4a] :
( mem(V4a,A_27a)
=> ! [V7ts] : ap(f1797(A_27a,V4a),V7ts) = f1796(A_27a,V7ts,V4a) ) ).
fof(lameq_f1798,axiom,
! [A_27a,V4a] :
( mem(V4a,A_27a)
=> ! [V6v] : ap(f1798(A_27a,V4a),V6v) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool))),ty_2Elist_2Elist(ty_2EEncode_2Etree(A_27a)),ty_2Elist_2Elist(bool)),V6v),f1797(A_27a,V4a)) ) ).
fof(lameq_f1799,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V4a] :
( mem(V4a,A_27a)
=> ! [V5t] : ap(f1799(A_27a,V1d,V0p,V4a),V5t) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(ty_2Elist_2Elist(ty_2EEncode_2Etree(A_27a)),ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool)))),ap(ap(ap(c_2EDecode_2Edecode__list(ty_2EEncode_2Etree(A_27a)),ap(c_2Elist_2EEVERY(ty_2EEncode_2Etree(A_27a)),ap(c_2EEncode_2Elift__tree(A_27a),V0p))),ap(ap(c_2EDecode_2Edecode__tree(A_27a),ap(c_2EEncode_2Elift__tree(A_27a),V0p)),V1d)),V5t)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool)))),f1798(A_27a,V4a)) ) ) ) ).
fof(lameq_f1800,axiom,
! [A_27a,V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V4a] : ap(f1800(A_27a,V1d,V0p),V4a) = f1799(A_27a,V1d,V0p,V4a) ) ) ).
fof(lameq_f1801,axiom,
! [A_27a,V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V3v1] : ap(f1801(A_27a,V0p,V1d),V3v1) = ap(ap(c_2Epair_2Epair__CASE(ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool))),A_27a,ty_2Elist_2Elist(bool)),V3v1),f1800(A_27a,V1d,V0p)) ) ) ).
fof(conj_thm_2EDecode_2Edecode__tree,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0p] :
( mem(V0p,arr(A_27a,bool))
=> ! [V1d] :
( mem(V1d,arr(ty_2Elist_2Elist(bool),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)))))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(bool))
=> ( p(ap(ap(c_2EDecode_2Ewf__decoder(A_27a),V0p),V1d))
=> ap(ap(ap(c_2EDecode_2Edecode__tree(A_27a),ap(c_2EEncode_2Elift__tree(A_27a),V0p)),V1d),V2l) = ap(ap(ap(c_2Eoption_2Eoption__CASE(ty_2Epair_2Eprod(A_27a,ty_2Elist_2Elist(bool)),ty_2Eoption_2Eoption(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool)))),ap(V1d,V2l)),c_2Eoption_2ENONE(ty_2Epair_2Eprod(ty_2EEncode_2Etree(A_27a),ty_2Elist_2Elist(bool)))),f1801(A_27a,V0p,V1d)) ) ) ) ) ) ).
%------------------------------------------------------------------------------