ITP001 Axioms: ITP043^5.ax
%------------------------------------------------------------------------------
% File : ITP043^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 : Encode^2.ax [Gau20]
% : HL4043^5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 110 ( 4 unt; 25 typ; 0 def)
% Number of atoms : 2105 ( 56 equ; 0 cnn)
% Maximal formula atoms : 156 ( 19 avg)
% Number of connectives : 3227 ( 3 ~; 1 |; 49 &;2969 @)
% ( 17 <=>; 188 =>; 0 <=; 0 <~>)
% Maximal formula depth : 53 ( 12 avg;2969 nst)
% Number of types : 1 ( 0 usr)
% Number of type conns : 25 ( 25 >; 0 *; 0 +; 0 <<)
% Number of symbols : 99 ( 98 usr; 79 con; 0-2 aty)
% Number of variables : 302 ( 25 ^ 269 !; 8 ?; 302 :)
% SPC : TH0_SAT_EQU_NAR
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tp_ty_2EEncode_2Etree,type,
ty_2EEncode_2Etree: del > del ).
thf(tp_c_2EEncode_2ENode,type,
c_2EEncode_2ENode: del > $i ).
thf(mem_c_2EEncode_2ENode,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2ENode @ A_27a ) @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ( ty_2EEncode_2Etree @ A_27a ) ) ) ) ).
thf(tp_c_2EEncode_2Ebiprefix,type,
c_2EEncode_2Ebiprefix: del > $i ).
thf(mem_c_2EEncode_2Ebiprefix,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ ( arr @ ( ty_2Elist_2Elist @ A_27a ) @ ( arr @ ( ty_2Elist_2Elist @ A_27a ) @ bool ) ) ) ).
thf(tp_c_2EEncode_2Ecollision__free,type,
c_2EEncode_2Ecollision__free: $i ).
thf(mem_c_2EEncode_2Ecollision__free,axiom,
mem @ c_2EEncode_2Ecollision__free @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( arr @ ty_2Enum_2Enum @ bool ) @ bool ) ) ).
thf(tp_c_2EEncode_2Eencode__blist,type,
c_2EEncode_2Eencode__blist: del > del > $i ).
thf(mem_c_2EEncode_2Eencode__blist,axiom,
! [A_27a: del,A_27b: del] : ( mem @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) @ ( arr @ ( ty_2Elist_2Elist @ A_27b ) @ ( ty_2Elist_2Elist @ A_27a ) ) ) ) ) ).
thf(tp_c_2EEncode_2Eencode__bnum,type,
c_2EEncode_2Eencode__bnum: $i ).
thf(mem_c_2EEncode_2Eencode__bnum,axiom,
mem @ c_2EEncode_2Eencode__bnum @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ( ty_2Elist_2Elist @ bool ) ) ) ).
thf(tp_c_2EEncode_2Eencode__bool,type,
c_2EEncode_2Eencode__bool: $i ).
thf(mem_c_2EEncode_2Eencode__bool,axiom,
mem @ c_2EEncode_2Eencode__bool @ ( arr @ bool @ ( ty_2Elist_2Elist @ bool ) ) ).
thf(tp_c_2EEncode_2Eencode__list,type,
c_2EEncode_2Eencode__list: del > $i ).
thf(mem_c_2EEncode_2Eencode__list,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Eencode__list @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) @ ( arr @ ( ty_2Elist_2Elist @ A_27a ) @ ( ty_2Elist_2Elist @ bool ) ) ) ) ).
thf(tp_c_2EEncode_2Eencode__num,type,
c_2EEncode_2Eencode__num: $i ).
thf(mem_c_2EEncode_2Eencode__num,axiom,
mem @ c_2EEncode_2Eencode__num @ ( arr @ ty_2Enum_2Enum @ ( ty_2Elist_2Elist @ bool ) ) ).
thf(tp_c_2EEncode_2Eencode__option,type,
c_2EEncode_2Eencode__option: del > $i ).
thf(mem_c_2EEncode_2Eencode__option,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Eencode__option @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) @ ( arr @ ( ty_2Eoption_2Eoption @ A_27a ) @ ( ty_2Elist_2Elist @ bool ) ) ) ) ).
thf(tp_c_2EEncode_2Eencode__prod,type,
c_2EEncode_2Eencode__prod: del > del > $i ).
thf(mem_c_2EEncode_2Eencode__prod,axiom,
! [A_27a: del,A_27b: del] : ( mem @ ( c_2EEncode_2Eencode__prod @ A_27a @ A_27b ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) @ ( arr @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ bool ) ) @ ( arr @ ( ty_2Epair_2Eprod @ A_27a @ A_27b ) @ ( ty_2Elist_2Elist @ bool ) ) ) ) ) ).
thf(tp_c_2EEncode_2Eencode__sum,type,
c_2EEncode_2Eencode__sum: del > del > $i ).
thf(mem_c_2EEncode_2Eencode__sum,axiom,
! [A_27a: del,A_27b: del] : ( mem @ ( c_2EEncode_2Eencode__sum @ A_27a @ A_27b ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) @ ( arr @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ bool ) ) @ ( arr @ ( ty_2Esum_2Esum @ A_27a @ A_27b ) @ ( ty_2Elist_2Elist @ bool ) ) ) ) ) ).
thf(tp_c_2EEncode_2Eencode__tree,type,
c_2EEncode_2Eencode__tree: del > $i ).
thf(mem_c_2EEncode_2Eencode__tree,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Eencode__tree @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ ( ty_2Elist_2Elist @ bool ) ) ) ) ).
thf(tp_c_2EEncode_2Eencode__unit,type,
c_2EEncode_2Eencode__unit: $i ).
thf(mem_c_2EEncode_2Eencode__unit,axiom,
mem @ c_2EEncode_2Eencode__unit @ ( arr @ ty_2Eone_2Eone @ ( ty_2Elist_2Elist @ bool ) ) ).
thf(tp_c_2EEncode_2Elift__blist,type,
c_2EEncode_2Elift__blist: del > $i ).
thf(mem_c_2EEncode_2Elift__blist,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Elift__blist @ A_27a ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( arr @ A_27a @ bool ) @ ( arr @ ( ty_2Elist_2Elist @ A_27a ) @ bool ) ) ) ) ).
thf(tp_c_2EEncode_2Elift__option,type,
c_2EEncode_2Elift__option: del > $i ).
thf(mem_c_2EEncode_2Elift__option,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Elift__option @ A_27a ) @ ( arr @ ( arr @ A_27a @ bool ) @ ( arr @ ( ty_2Eoption_2Eoption @ A_27a ) @ bool ) ) ) ).
thf(tp_c_2EEncode_2Elift__prod,type,
c_2EEncode_2Elift__prod: del > del > $i ).
thf(mem_c_2EEncode_2Elift__prod,axiom,
! [A_27a: del,A_27b: del] : ( mem @ ( c_2EEncode_2Elift__prod @ A_27a @ A_27b ) @ ( arr @ ( arr @ A_27a @ bool ) @ ( arr @ ( arr @ A_27b @ bool ) @ ( arr @ ( ty_2Epair_2Eprod @ A_27a @ A_27b ) @ bool ) ) ) ) ).
thf(tp_c_2EEncode_2Elift__sum,type,
c_2EEncode_2Elift__sum: del > del > $i ).
thf(mem_c_2EEncode_2Elift__sum,axiom,
! [A_27a: del,A_27b: del] : ( mem @ ( c_2EEncode_2Elift__sum @ A_27a @ A_27b ) @ ( arr @ ( arr @ A_27a @ bool ) @ ( arr @ ( arr @ A_27b @ bool ) @ ( arr @ ( ty_2Esum_2Esum @ A_27a @ A_27b ) @ bool ) ) ) ) ).
thf(tp_c_2EEncode_2Elift__tree,type,
c_2EEncode_2Elift__tree: del > $i ).
thf(mem_c_2EEncode_2Elift__tree,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Elift__tree @ A_27a ) @ ( arr @ ( arr @ A_27a @ bool ) @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ bool ) ) ) ).
thf(tp_c_2EEncode_2Etree1__size,type,
c_2EEncode_2Etree1__size: del > $i ).
thf(mem_c_2EEncode_2Etree1__size,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Etree1__size @ A_27a ) @ ( arr @ ( arr @ A_27a @ ty_2Enum_2Enum ) @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ty_2Enum_2Enum ) ) ) ).
thf(tp_c_2EEncode_2Etree__CASE,type,
c_2EEncode_2Etree__CASE: del > del > $i ).
thf(mem_c_2EEncode_2Etree__CASE,axiom,
! [A_27a: del,A_27b: del] : ( mem @ ( c_2EEncode_2Etree__CASE @ A_27a @ A_27b ) @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ A_27b ) ) @ A_27b ) ) ) ).
thf(tp_c_2EEncode_2Etree__size,type,
c_2EEncode_2Etree__size: del > $i ).
thf(mem_c_2EEncode_2Etree__size,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Etree__size @ A_27a ) @ ( arr @ ( arr @ A_27a @ ty_2Enum_2Enum ) @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ ty_2Enum_2Enum ) ) ) ).
thf(tp_c_2EEncode_2Ewf__encoder,type,
c_2EEncode_2Ewf__encoder: del > $i ).
thf(mem_c_2EEncode_2Ewf__encoder,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ ( arr @ ( arr @ A_27a @ bool ) @ ( arr @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) @ bool ) ) ) ).
thf(tp_c_2EEncode_2Ewf__pred,type,
c_2EEncode_2Ewf__pred: del > $i ).
thf(mem_c_2EEncode_2Ewf__pred,axiom,
! [A_27a: del] : ( mem @ ( c_2EEncode_2Ewf__pred @ A_27a ) @ ( arr @ ( arr @ A_27a @ bool ) @ bool ) ) ).
thf(tp_c_2EEncode_2Ewf__pred__bnum,type,
c_2EEncode_2Ewf__pred__bnum: $i ).
thf(mem_c_2EEncode_2Ewf__pred__bnum,axiom,
mem @ c_2EEncode_2Ewf__pred__bnum @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( arr @ ty_2Enum_2Enum @ bool ) @ bool ) ) ).
thf(ax_thm_2EEncode_2Ebiprefix__def,axiom,
! [A_27a: del,V0a: $i] :
( ( mem @ V0a @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V1b: $i] :
( ( mem @ V1b @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ V0a ) @ V1b ) )
<=> ( ( p @ ( ap @ ( ap @ ( c_2Elist_2EisPREFIX @ A_27a ) @ V1b ) @ V0a ) )
| ( p @ ( ap @ ( ap @ ( c_2Elist_2EisPREFIX @ A_27a ) @ V0a ) @ V1b ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ebiprefix__refl,axiom,
! [A_27a: del,V0x: $i] :
( ( mem @ V0x @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ V0x ) @ V0x ) ) ) ).
thf(conj_thm_2EEncode_2Ebiprefix__sym,axiom,
! [A_27a: del,V0x: $i] :
( ( mem @ V0x @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V1y: $i] :
( ( mem @ V1y @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ V0x ) @ V1y ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ V1y ) @ V0x ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ebiprefix__append,axiom,
! [A_27a: del,V0a: $i] :
( ( mem @ V0a @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V1b: $i] :
( ( mem @ V1b @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V2c: $i] :
( ( mem @ V2c @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V3d: $i] :
( ( mem @ V3d @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ A_27a ) @ V0a ) @ V1b ) ) @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ A_27a ) @ V2c ) @ V3d ) ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ V0a ) @ V2c ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ebiprefix__cons,axiom,
! [A_27a: del,V0a: $i] :
( ( mem @ V0a @ A_27a )
=> ! [V1b: $i] :
( ( mem @ V1b @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V2c: $i] :
( ( mem @ V2c @ A_27a )
=> ! [V3d: $i] :
( ( mem @ V3d @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ A_27a ) @ V0a ) @ V1b ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ A_27a ) @ V2c ) @ V3d ) ) )
<=> ( ( V0a = V2c )
& ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ V1b ) @ V3d ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ebiprefix__appends,axiom,
! [A_27a: del,V0a: $i] :
( ( mem @ V0a @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V1b: $i] :
( ( mem @ V1b @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V2c: $i] :
( ( mem @ V2c @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ A_27a ) @ V0a ) @ V1b ) ) @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ A_27a ) @ V0a ) @ V2c ) ) )
<=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ A_27a ) @ V1b ) @ V2c ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Ewf__pred__def,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ( ( p @ ( ap @ ( c_2EEncode_2Ewf__pred @ A_27a ) @ V0p ) )
<=> ? [V1x: $i] :
( ( mem @ V1x @ A_27a )
& ( p @ ( ap @ V0p @ V1x ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Ewf__encoder__def,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1e: $i] :
( ( mem @ V1e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V1e ) )
<=> ! [V2x: $i] :
( ( mem @ V2x @ A_27a )
=> ! [V3y: $i] :
( ( mem @ V3y @ A_27a )
=> ( ( ( p @ ( ap @ V0p @ V2x ) )
& ( p @ ( ap @ V0p @ V3y ) )
& ( p @ ( ap @ ( ap @ ( c_2Elist_2EisPREFIX @ bool ) @ ( ap @ V1e @ V3y ) ) @ ( ap @ V1e @ V2x ) ) ) )
=> ( V2x = V3y ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encoder__alt,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1e: $i] :
( ( mem @ V1e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V1e ) )
<=> ! [V2x: $i] :
( ( mem @ V2x @ A_27a )
=> ! [V3y: $i] :
( ( mem @ V3y @ A_27a )
=> ( ( ( p @ ( ap @ V0p @ V2x ) )
& ( p @ ( ap @ V0p @ V3y ) )
& ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ebiprefix @ bool ) @ ( ap @ V1e @ V2x ) ) @ ( ap @ V1e @ V3y ) ) ) )
=> ( V2x = V3y ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encoder__eq,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1e: $i] :
( ( mem @ V1e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V2f: $i] :
( ( mem @ V2f @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V1e ) )
& ! [V3x: $i] :
( ( mem @ V3x @ A_27a )
=> ( ( p @ ( ap @ V0p @ V3x ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ V1e @ V3x ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ V2f @ V3x ) ) ) ) ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V2f ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encoder__total,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1e: $i] :
( ( mem @ V1e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ ( ap @ ( c_2Ecombin_2EK @ bool @ A_27a ) @ c_2Ebool_2ET ) ) @ V1e ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V1e ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__unit__def,axiom,
! [V0v0: tp__ty_2Eone_2Eone] :
( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ c_2EEncode_2Eencode__unit @ ( inj__ty_2Eone_2Eone @ V0v0 ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( c_2Elist_2ENIL @ bool ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__unit,axiom,
! [V0p: $i] :
( ( mem @ V0p @ ( arr @ ty_2Eone_2Eone @ bool ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ty_2Eone_2Eone ) @ V0p ) @ c_2EEncode_2Eencode__unit ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__bool__def,axiom,
! [V0x: $i] :
( ( mem @ V0x @ bool )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ c_2EEncode_2Eencode__bool @ V0x ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ V0x ) @ ( c_2Elist_2ENIL @ bool ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__bool,axiom,
! [V0p: $i] :
( ( mem @ V0p @ ( arr @ bool @ bool ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ bool ) @ V0p ) @ c_2EEncode_2Eencode__bool ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__prod__def,axiom,
! [A_27a: del,A_27b: del,V0xb: $i] :
( ( mem @ V0xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V1yb: $i] :
( ( mem @ V1yb @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V2x: $i] :
( ( mem @ V2x @ A_27a )
=> ! [V3y: $i] :
( ( mem @ V3y @ A_27b )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__prod @ A_27a @ A_27b ) @ V0xb ) @ V1yb ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ A_27a @ A_27b ) @ V2x ) @ V3y ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ bool ) @ ( ap @ V0xb @ V2x ) ) @ ( ap @ V1yb @ V3y ) ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Elift__prod__def,axiom,
! [A_27a: del,A_27b: del,V0p1: $i] :
( ( mem @ V0p1 @ ( arr @ A_27a @ bool ) )
=> ! [V1p2: $i] :
( ( mem @ V1p2 @ ( arr @ A_27b @ bool ) )
=> ! [V2x: $i] :
( ( mem @ V2x @ ( ty_2Epair_2Eprod @ A_27a @ A_27b ) )
=> ( ( p @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Elift__prod @ A_27a @ A_27b ) @ V0p1 ) @ V1p2 ) @ V2x ) )
<=> ( ( p @ ( ap @ V0p1 @ ( ap @ ( c_2Epair_2EFST @ A_27a @ A_27b ) @ V2x ) ) )
& ( p @ ( ap @ V1p2 @ ( ap @ ( c_2Epair_2ESND @ A_27a @ A_27b ) @ V2x ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__prod__alt,axiom,
! [A_27a: del,A_27b: del,V0xb: $i] :
( ( mem @ V0xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V1yb: $i] :
( ( mem @ V1yb @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V2p: $i] :
( ( mem @ V2p @ ( ty_2Epair_2Eprod @ A_27a @ A_27b ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__prod @ A_27a @ A_27b ) @ V0xb ) @ V1yb ) @ V2p ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ bool ) @ ( ap @ V0xb @ ( ap @ ( c_2Epair_2EFST @ A_27a @ A_27b ) @ V2p ) ) ) @ ( ap @ V1yb @ ( ap @ ( c_2Epair_2ESND @ A_27a @ A_27b ) @ V2p ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__prod,axiom,
! [A_27a: del,A_27b: del,V0p1: $i] :
( ( mem @ V0p1 @ ( arr @ A_27a @ bool ) )
=> ! [V1p2: $i] :
( ( mem @ V1p2 @ ( arr @ A_27b @ bool ) )
=> ! [V2e1: $i] :
( ( mem @ V2e1 @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V3e2: $i] :
( ( mem @ V3e2 @ ( arr @ A_27b @ ( 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 @ ( c_2EEncode_2Ewf__encoder @ ( ty_2Epair_2Eprod @ A_27a @ A_27b ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Elift__prod @ A_27a @ A_27b ) @ V0p1 ) @ V1p2 ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__prod @ A_27a @ A_27b ) @ V2e1 ) @ V3e2 ) ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__sum__def,axiom,
! [A_27a: del,A_27b: del] :
( ! [V0xb: $i] :
( ( mem @ V0xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V1yb: $i] :
( ( mem @ V1yb @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V2x: $i] :
( ( mem @ V2x @ A_27a )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__sum @ A_27a @ A_27b ) @ V0xb ) @ V1yb ) @ ( ap @ ( c_2Esum_2EINL @ A_27a @ A_27b ) @ V2x ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( ap @ V0xb @ V2x ) ) ) ) ) ) )
& ! [V3xb: $i] :
( ( mem @ V3xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V4yb: $i] :
( ( mem @ V4yb @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V5y: $i] :
( ( mem @ V5y @ A_27b )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__sum @ A_27a @ A_27b ) @ V3xb ) @ V4yb ) @ ( ap @ ( c_2Esum_2EINR @ A_27a @ A_27b ) @ V5y ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2EF ) @ ( ap @ V4yb @ V5y ) ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Elift__sum__def,axiom,
! [A_27a: del,A_27b: del,V0p1: $i] :
( ( mem @ V0p1 @ ( arr @ A_27a @ bool ) )
=> ! [V1p2: $i] :
( ( mem @ V1p2 @ ( arr @ A_27b @ bool ) )
=> ! [V2x: $i] :
( ( mem @ V2x @ ( ty_2Esum_2Esum @ A_27a @ A_27b ) )
=> ( ( p @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Elift__sum @ A_27a @ A_27b ) @ V0p1 ) @ V1p2 ) @ V2x ) )
<=> ( p
@ ( ap
@ ( ap @ ( ap @ ( c_2Esum_2Esum__CASE @ A_27a @ A_27b @ bool ) @ V2x )
@ ( lam @ A_27a
@ ^ [V3x1: $i] : ( ap @ V0p1 @ V3x1 ) ) )
@ ( lam @ A_27b
@ ^ [V4x2: $i] : ( ap @ V1p2 @ V4x2 ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__sum,axiom,
! [A_27a: del,A_27b: del,V0p1: $i] :
( ( mem @ V0p1 @ ( arr @ A_27a @ bool ) )
=> ! [V1p2: $i] :
( ( mem @ V1p2 @ ( arr @ A_27b @ bool ) )
=> ! [V2e1: $i] :
( ( mem @ V2e1 @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V3e2: $i] :
( ( mem @ V3e2 @ ( arr @ A_27b @ ( 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 @ ( c_2EEncode_2Ewf__encoder @ ( ty_2Esum_2Esum @ A_27a @ A_27b ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Elift__sum @ A_27a @ A_27b ) @ V0p1 ) @ V1p2 ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__sum @ A_27a @ A_27b ) @ V2e1 ) @ V3e2 ) ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__option__def,axiom,
! [A_27a: del] :
( ! [V0xb: $i] :
( ( mem @ V0xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__option @ A_27a ) @ V0xb ) @ ( c_2Eoption_2ENONE @ A_27a ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2EF ) @ ( c_2Elist_2ENIL @ bool ) ) ) ) )
& ! [V1xb: $i] :
( ( mem @ V1xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V2x: $i] :
( ( mem @ V2x @ A_27a )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__option @ A_27a ) @ V1xb ) @ ( ap @ ( c_2Eoption_2ESOME @ A_27a ) @ V2x ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( ap @ V1xb @ V2x ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Elift__option__def,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1x: $i] :
( ( mem @ V1x @ ( ty_2Eoption_2Eoption @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Elift__option @ A_27a ) @ V0p ) @ V1x ) )
<=> ( p
@ ( ap @ ( ap @ ( ap @ ( c_2Eoption_2Eoption__CASE @ A_27a @ bool ) @ V1x ) @ c_2Ebool_2ET )
@ ( lam @ A_27a
@ ^ [V2y: $i] : ( ap @ V0p @ V2y ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__option,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1e: $i] :
( ( mem @ V1e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V1e ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ( ty_2Eoption_2Eoption @ A_27a ) ) @ ( ap @ ( c_2EEncode_2Elift__option @ A_27a ) @ V0p ) ) @ ( ap @ ( c_2EEncode_2Eencode__option @ A_27a ) @ V1e ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__list__def,axiom,
! [A_27a: del] :
( ! [V0xb: $i] :
( ( mem @ V0xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__list @ A_27a ) @ V0xb ) @ ( c_2Elist_2ENIL @ A_27a ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2EF ) @ ( c_2Elist_2ENIL @ bool ) ) ) ) )
& ! [V1xb: $i] :
( ( mem @ V1xb @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V2x: $i] :
( ( mem @ V2x @ A_27a )
=> ! [V3xs: $i] :
( ( mem @ V3xs @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__list @ A_27a ) @ V1xb ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ A_27a ) @ V2x ) @ V3xs ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ bool ) @ ( ap @ V1xb @ V2x ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__list @ A_27a ) @ V1xb ) @ V3xs ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__list,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1e: $i] :
( ( mem @ V1e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V1e ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ( ty_2Elist_2Elist @ A_27a ) ) @ ( ap @ ( c_2Elist_2EEVERY @ A_27a ) @ V0p ) ) @ ( ap @ ( c_2EEncode_2Eencode__list @ A_27a ) @ V1e ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__list__cong,axiom,
! [A_27a: del,V0l1: $i] :
( ( mem @ V0l1 @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V1l2: $i] :
( ( mem @ V1l2 @ ( ty_2Elist_2Elist @ A_27a ) )
=> ! [V2f1: $i] :
( ( mem @ V2f1 @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V3f2: $i] :
( ( mem @ V3f2 @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( ( V0l1 = V1l2 )
& ! [V4x: $i] :
( ( mem @ V4x @ A_27a )
=> ( ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V4x ) @ ( ap @ ( c_2Elist_2ELIST__TO__SET @ A_27a ) @ V1l2 ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ V2f1 @ V4x ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ V3f2 @ V4x ) ) ) ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__list @ A_27a ) @ V2f1 ) @ V0l1 ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__list @ A_27a ) @ V3f2 ) @ V1l2 ) ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__blist__def,axiom,
! [A_27a: del,A_27b: del] :
( ! [V0e: $i] :
( ( mem @ V0e @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) )
=> ! [V1l: $i] :
( ( mem @ V1l @ ( ty_2Elist_2Elist @ A_27b ) )
=> ( ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ V0e ) @ V1l )
= ( c_2Elist_2ENIL @ A_27a ) ) ) )
& ! [V2m: tp__ty_2Enum_2Enum,V3e: $i] :
( ( mem @ V3e @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) )
=> ! [V4l: $i] :
( ( mem @ V4l @ ( ty_2Elist_2Elist @ A_27b ) )
=> ( ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V2m ) ) ) @ V3e ) @ V4l )
= ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ A_27a ) @ ( ap @ V3e @ ( ap @ ( c_2Elist_2EHD @ A_27b ) @ V4l ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( inj__ty_2Enum_2Enum @ V2m ) ) @ V3e ) @ ( ap @ ( c_2Elist_2ETL @ A_27b ) @ V4l ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__blist__def__compute,axiom,
! [A_27a: del,A_27b: del] :
( ! [V0e: $i] :
( ( mem @ V0e @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) )
=> ! [V1l: $i] :
( ( mem @ V1l @ ( ty_2Elist_2Elist @ A_27b ) )
=> ( ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ V0e ) @ V1l )
= ( c_2Elist_2ENIL @ A_27a ) ) ) )
& ! [V2m: tp__ty_2Enum_2Enum,V3e: $i] :
( ( mem @ V3e @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) )
=> ! [V4l: $i] :
( ( mem @ V4l @ ( ty_2Elist_2Elist @ A_27b ) )
=> ( ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2m ) ) ) ) @ V3e ) @ V4l )
= ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ A_27a ) @ ( ap @ V3e @ ( ap @ ( c_2Elist_2EHD @ A_27b ) @ V4l ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2m ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ V3e ) @ ( ap @ ( c_2Elist_2ETL @ A_27b ) @ V4l ) ) ) ) ) )
& ! [V5m: tp__ty_2Enum_2Enum,V6e: $i] :
( ( mem @ V6e @ ( arr @ A_27b @ ( ty_2Elist_2Elist @ A_27a ) ) )
=> ! [V7l: $i] :
( ( mem @ V7l @ ( ty_2Elist_2Elist @ A_27b ) )
=> ( ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V5m ) ) ) ) @ V6e ) @ V7l )
= ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ A_27a ) @ ( ap @ V6e @ ( ap @ ( c_2Elist_2EHD @ A_27b ) @ V7l ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ A_27a @ A_27b ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V5m ) ) ) ) @ V6e ) @ ( ap @ ( c_2Elist_2ETL @ A_27b ) @ V7l ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Elift__blist__def,axiom,
! [A_27a: del,V0m: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ A_27a @ bool ) )
=> ! [V2x: $i] :
( ( mem @ V2x @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Elift__blist @ A_27a ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) @ V2x ) )
<=> ( ( p @ ( ap @ ( ap @ ( c_2Elist_2EEVERY @ A_27a ) @ V1p ) @ V2x ) )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ ( c_2Elist_2ELENGTH @ A_27a ) @ V2x ) )
= V0m ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Elift__blist__suc,axiom,
! [A_27a: del,V0n: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ A_27a @ bool ) )
=> ! [V2h: $i] :
( ( mem @ V2h @ A_27a )
=> ! [V3t: $i] :
( ( mem @ V3t @ ( ty_2Elist_2Elist @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Elift__blist @ A_27a ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) @ V1p ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ A_27a ) @ V2h ) @ V3t ) ) )
<=> ( ( p @ ( ap @ V1p @ V2h ) )
& ( p @ ( ap @ ( ap @ ( ap @ ( c_2EEncode_2Elift__blist @ A_27a ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ V1p ) @ V3t ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__blist,axiom,
! [A_27a: del,V0m: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ A_27a @ bool ) )
=> ! [V2e: $i] :
( ( mem @ V2e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V1p ) @ V2e ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ( ty_2Elist_2Elist @ A_27a ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Elift__blist @ A_27a ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__blist @ bool @ A_27a ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V2e ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__num__primitive__def,axiom,
( c_2EEncode_2Eencode__num
= ( ap
@ ( ap @ ( c_2Erelation_2EWFREC @ ty_2Enum_2Enum @ ( ty_2Elist_2Elist @ bool ) )
@ ( ap @ ( c_2Emin_2E_40 @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
@ ( lam @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ bool ) )
@ ^ [V0R: $i] :
( ap @ ( ap @ c_2Ebool_2E_2F_5C @ ( ap @ ( c_2Erelation_2EWF @ ty_2Enum_2Enum ) @ V0R ) )
@ ( ap
@ ( ap @ c_2Ebool_2E_2F_5C
@ ( ap @ ( c_2Ebool_2E_21 @ ty_2Enum_2Enum )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V1n: $i] : ( ap @ ( ap @ c_2Emin_2E_3D_3D_3E @ ( ap @ ( ap @ c_2Ebool_2E_2F_5C @ ( ap @ c_2Ebool_2E_7E @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ty_2Enum_2Enum ) @ V1n ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) @ ( ap @ c_2Earithmetic_2EEVEN @ V1n ) ) ) @ ( ap @ ( ap @ V0R @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ V1n ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ V1n ) ) ) ) )
@ ( ap @ ( c_2Ebool_2E_21 @ ty_2Enum_2Enum )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V2n: $i] : ( ap @ ( ap @ c_2Emin_2E_3D_3D_3E @ ( ap @ ( ap @ c_2Ebool_2E_2F_5C @ ( ap @ c_2Ebool_2E_7E @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ty_2Enum_2Enum ) @ V2n ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) @ ( ap @ c_2Ebool_2E_7E @ ( ap @ c_2Earithmetic_2EEVEN @ V2n ) ) ) ) @ ( ap @ ( ap @ V0R @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ V2n ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ V2n ) ) ) ) ) ) ) ) )
@ ( lam @ ( arr @ ty_2Enum_2Enum @ ( ty_2Elist_2Elist @ bool ) )
@ ^ [V3encode__num: $i] :
( lam @ ty_2Enum_2Enum
@ ^ [V4a: $i] : ( ap @ ( c_2Ecombin_2EI @ ( ty_2Elist_2Elist @ bool ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ( ty_2Elist_2Elist @ bool ) ) @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ty_2Enum_2Enum ) @ V4a ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( c_2Elist_2ENIL @ bool ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ( ty_2Elist_2Elist @ bool ) ) @ ( ap @ c_2Earithmetic_2EEVEN @ V4a ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2EF ) @ ( ap @ V3encode__num @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ V4a ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2EF ) @ ( ap @ V3encode__num @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ V4a ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__num__def,axiom,
! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ c_2EEncode_2Eencode__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ( ty_2Elist_2Elist @ bool ) ) @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( c_2Elist_2ENIL @ bool ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ( ty_2Elist_2Elist @ bool ) ) @ ( ap @ c_2Earithmetic_2EEVEN @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2EF ) @ ( ap @ c_2EEncode_2Eencode__num @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2ET ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ c_2Ebool_2EF ) @ ( ap @ c_2EEncode_2Eencode__num @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__num__ind,axiom,
! [V0P: $i] :
( ( mem @ V0P @ ( arr @ ty_2Enum_2Enum @ bool ) )
=> ( ! [V1n: tp__ty_2Enum_2Enum] :
( ( ( ( ( V1n != fo__c_2Enum_2E0 )
& ( p @ ( ap @ c_2Earithmetic_2EEVEN @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) )
=> ( p @ ( ap @ V0P @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) )
& ( ( ( V1n != fo__c_2Enum_2E0 )
& ~ ( p @ ( ap @ c_2Earithmetic_2EEVEN @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) )
=> ( p @ ( ap @ V0P @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) )
=> ( p @ ( ap @ V0P @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) )
=> ! [V2v: tp__ty_2Enum_2Enum] : ( p @ ( ap @ V0P @ ( inj__ty_2Enum_2Enum @ V2v ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__num,axiom,
! [V0p: $i] :
( ( mem @ V0p @ ( arr @ ty_2Enum_2Enum @ bool ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ty_2Enum_2Enum ) @ V0p ) @ c_2EEncode_2Eencode__num ) ) ) ).
thf(ax_thm_2EEncode_2Eencode__bnum__def,axiom,
( ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( c_2Elist_2ENIL @ bool ) ) )
& ! [V1m: tp__ty_2Enum_2Enum,V2n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ ( ap @ c_2Ebool_2E_7E @ ( ap @ c_2Earithmetic_2EEVEN @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__bnum__def__compute,axiom,
( ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( c_2Elist_2ENIL @ bool ) ) )
& ! [V1m: tp__ty_2Enum_2Enum,V2n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ ( ap @ c_2Ebool_2E_7E @ ( ap @ c_2Earithmetic_2EEVEN @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) )
& ! [V3m: tp__ty_2Enum_2Enum,V4n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V3m ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V4n ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ bool ) @ ( ap @ c_2Ebool_2E_7E @ ( ap @ c_2Earithmetic_2EEVEN @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V3m ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( inj__ty_2Enum_2Enum @ V4n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Ecollision__free__def,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ ty_2Enum_2Enum @ bool ) )
=> ( ( p @ ( ap @ ( ap @ c_2EEncode_2Ecollision__free @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) )
<=> ! [V2x: tp__ty_2Enum_2Enum,V3y: tp__ty_2Enum_2Enum] :
( ( ( p @ ( ap @ V1p @ ( inj__ty_2Enum_2Enum @ V2x ) ) )
& ( p @ ( ap @ V1p @ ( inj__ty_2Enum_2Enum @ V3y ) ) )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2EMOD @ ( inj__ty_2Enum_2Enum @ V2x ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EEXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2EMOD @ ( inj__ty_2Enum_2Enum @ V3y ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EEXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) ) ) )
=> ( V2x = V3y ) ) ) ) ).
thf(ax_thm_2EEncode_2Ewf__pred__bnum__def,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ ty_2Enum_2Enum @ bool ) )
=> ( ( p @ ( ap @ ( ap @ c_2EEncode_2Ewf__pred__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) )
<=> ( ( p @ ( ap @ ( c_2EEncode_2Ewf__pred @ ty_2Enum_2Enum ) @ V1p ) )
& ! [V2x: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ V1p @ ( inj__ty_2Enum_2Enum @ V2x ) ) )
=> ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V2x ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EEXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__pred__bnum__total,axiom,
! [V0m: tp__ty_2Enum_2Enum] :
( p
@ ( ap @ ( ap @ c_2EEncode_2Ewf__pred__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V1x: $i] : ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ V1x ) @ ( ap @ ( ap @ c_2Earithmetic_2EEXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__pred__bnum,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ ty_2Enum_2Enum @ bool ) )
=> ( ( p @ ( ap @ ( ap @ c_2EEncode_2Ewf__pred__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) )
=> ( p @ ( ap @ ( ap @ c_2EEncode_2Ecollision__free @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__bnum__length,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( c_2Elist_2ELENGTH @ bool ) @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) )
= V0m ) ).
thf(conj_thm_2EEncode_2Eencode__bnum__inj,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1x: tp__ty_2Enum_2Enum,V2y: tp__ty_2Enum_2Enum] :
( ( ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V1x ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EEXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) )
& ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V2y ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EEXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) )
& ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1x ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V2y ) ) ) ) )
=> ( V1x = V2y ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__bnum__collision__free,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ ty_2Enum_2Enum @ bool ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ty_2Enum_2Enum ) @ V1p ) @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) )
<=> ( p @ ( ap @ ( ap @ c_2EEncode_2Ecollision__free @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__bnum,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1p: $i] :
( ( mem @ V1p @ ( arr @ ty_2Enum_2Enum @ bool ) )
=> ( ( p @ ( ap @ ( ap @ c_2EEncode_2Ewf__pred__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1p ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ty_2Enum_2Enum ) @ V1p ) @ ( ap @ c_2EEncode_2Eencode__bnum @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Etree__TY__DEF,axiom,
! [A_27a: del] :
? [V0rep: $i] :
( ( mem @ V0rep @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ ( ty_2Eind__type_2Erecspace @ A_27a ) ) )
& ( p
@ ( ap
@ ( ap @ ( c_2Ebool_2ETYPE__DEFINITION @ ( ty_2Eind__type_2Erecspace @ A_27a ) @ ( ty_2EEncode_2Etree @ A_27a ) )
@ ( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V1a0_27: $i] :
( ap @ ( c_2Ebool_2E_21 @ ( arr @ ( ty_2Eind__type_2Erecspace @ A_27a ) @ bool ) )
@ ( lam @ ( arr @ ( ty_2Eind__type_2Erecspace @ A_27a ) @ bool )
@ ^ [V2_27tree_27: $i] :
( ap @ ( c_2Ebool_2E_21 @ ( arr @ ( ty_2Eind__type_2Erecspace @ A_27a ) @ bool ) )
@ ( lam @ ( arr @ ( ty_2Eind__type_2Erecspace @ A_27a ) @ bool )
@ ^ [V3_27_40temp_20_40ind__typeEncode0list_27: $i] :
( ap
@ ( ap @ c_2Emin_2E_3D_3D_3E
@ ( ap
@ ( ap @ c_2Ebool_2E_2F_5C
@ ( ap @ ( c_2Ebool_2E_21 @ ( ty_2Eind__type_2Erecspace @ A_27a ) )
@ ( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V4a0_27: $i] :
( ap
@ ( ap @ c_2Emin_2E_3D_3D_3E
@ ( ap @ ( c_2Ebool_2E_3F @ A_27a )
@ ( lam @ A_27a
@ ^ [V5a0: $i] :
( ap @ ( c_2Ebool_2E_3F @ ( ty_2Eind__type_2Erecspace @ A_27a ) )
@ ( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V6a1: $i] :
( ap
@ ( ap @ c_2Ebool_2E_2F_5C
@ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ( ty_2Eind__type_2Erecspace @ A_27a ) ) @ V4a0_27 )
@ ( ap
@ ( ap
@ ( lam @ A_27a
@ ^ [V7a0: $i] :
( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V8a1: $i] :
( ap @ ( ap @ ( ap @ ( c_2Eind__type_2ECONSTR @ A_27a ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ V7a0 )
@ ( ap @ ( ap @ ( c_2Eind__type_2EFCONS @ ( ty_2Eind__type_2Erecspace @ A_27a ) ) @ V8a1 )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V9n: $i] : ( c_2Eind__type_2EBOTTOM @ A_27a ) ) ) ) ) )
@ V5a0 )
@ V6a1 ) ) )
@ ( ap @ V3_27_40temp_20_40ind__typeEncode0list_27 @ V6a1 ) ) ) ) ) ) )
@ ( ap @ V2_27tree_27 @ V4a0_27 ) ) ) ) )
@ ( ap @ ( c_2Ebool_2E_21 @ ( ty_2Eind__type_2Erecspace @ A_27a ) )
@ ( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V10a1_27: $i] :
( ap
@ ( ap @ c_2Emin_2E_3D_3D_3E
@ ( ap
@ ( ap @ c_2Ebool_2E_5C_2F
@ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ( ty_2Eind__type_2Erecspace @ A_27a ) ) @ V10a1_27 )
@ ( ap @ ( ap @ ( ap @ ( c_2Eind__type_2ECONSTR @ A_27a ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) @ ( c_2Ebool_2EARB @ A_27a ) )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V11n: $i] : ( c_2Eind__type_2EBOTTOM @ A_27a ) ) ) ) )
@ ( ap @ ( c_2Ebool_2E_3F @ ( ty_2Eind__type_2Erecspace @ A_27a ) )
@ ( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V12a0: $i] :
( ap @ ( c_2Ebool_2E_3F @ ( ty_2Eind__type_2Erecspace @ A_27a ) )
@ ( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V13a1: $i] :
( ap
@ ( ap @ c_2Ebool_2E_2F_5C
@ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ( ty_2Eind__type_2Erecspace @ A_27a ) ) @ V10a1_27 )
@ ( ap
@ ( ap
@ ( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V14a0: $i] :
( lam @ ( ty_2Eind__type_2Erecspace @ A_27a )
@ ^ [V15a1: $i] :
( ap @ ( ap @ ( ap @ ( c_2Eind__type_2ECONSTR @ A_27a ) @ ( ap @ c_2Enum_2ESUC @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) @ ( c_2Ebool_2EARB @ A_27a ) )
@ ( ap @ ( ap @ ( c_2Eind__type_2EFCONS @ ( ty_2Eind__type_2Erecspace @ A_27a ) ) @ V14a0 )
@ ( ap @ ( ap @ ( c_2Eind__type_2EFCONS @ ( ty_2Eind__type_2Erecspace @ A_27a ) ) @ V15a1 )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V16n: $i] : ( c_2Eind__type_2EBOTTOM @ A_27a ) ) ) ) ) ) )
@ V12a0 )
@ V13a1 ) ) )
@ ( ap @ ( ap @ c_2Ebool_2E_2F_5C @ ( ap @ V2_27tree_27 @ V12a0 ) ) @ ( ap @ V3_27_40temp_20_40ind__typeEncode0list_27 @ V13a1 ) ) ) ) ) ) ) ) )
@ ( ap @ V3_27_40temp_20_40ind__typeEncode0list_27 @ V10a1_27 ) ) ) ) ) )
@ ( ap @ V2_27tree_27 @ V1a0_27 ) ) ) ) ) ) ) )
@ V0rep ) ) ) ).
thf(ax_thm_2EEncode_2Etree__case__def,axiom,
! [A_27a: del,A_27b: del,V0a0: $i] :
( ( mem @ V0a0 @ A_27a )
=> ! [V1a1: $i] :
( ( mem @ V1a1 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ! [V2f: $i] :
( ( mem @ V2f @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ A_27b ) ) )
=> ( ( ap @ ( ap @ ( c_2EEncode_2Etree__CASE @ A_27a @ A_27b ) @ ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V0a0 ) @ V1a1 ) ) @ V2f )
= ( ap @ ( ap @ V2f @ V0a0 ) @ V1a1 ) ) ) ) ) ).
thf(ax_thm_2EEncode_2Etree__size__def,axiom,
! [A_27a: del] :
( ! [V0f: $i] :
( ( mem @ V0f @ ( arr @ A_27a @ ty_2Enum_2Enum ) )
=> ! [V1a0: $i] :
( ( mem @ V1a0 @ A_27a )
=> ! [V2a1: $i] :
( ( mem @ V2a1 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( c_2EEncode_2Etree__size @ A_27a ) @ V0f ) @ ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V1a0 ) @ V2a1 ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ V0f @ V1a0 ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Etree1__size @ A_27a ) @ V0f ) @ V2a1 ) ) ) ) ) ) ) )
& ! [V3f: $i] :
( ( mem @ V3f @ ( arr @ A_27a @ ty_2Enum_2Enum ) )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( c_2EEncode_2Etree1__size @ A_27a ) @ V3f ) @ ( c_2Elist_2ENIL @ ( ty_2EEncode_2Etree @ A_27a ) ) ) )
= fo__c_2Enum_2E0 ) )
& ! [V4f: $i] :
( ( mem @ V4f @ ( arr @ A_27a @ ty_2Enum_2Enum ) )
=> ! [V5a0: $i] :
( ( mem @ V5a0 @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ! [V6a1: $i] :
( ( mem @ V6a1 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( c_2EEncode_2Etree1__size @ A_27a ) @ V4f ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ( ty_2EEncode_2Etree @ A_27a ) ) @ V5a0 ) @ V6a1 ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ ( ap @ ( c_2EEncode_2Etree__size @ A_27a ) @ V4f ) @ V5a0 ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Etree1__size @ A_27a ) @ V4f ) @ V6a1 ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Edatatype__tree,axiom,
! [A_27a: del,V0tree: $i] :
( ( mem @ V0tree @ ( arr @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ( ty_2EEncode_2Etree @ A_27a ) ) ) @ bool ) )
=> ( p @ ( ap @ ( c_2Ebool_2EDATATYPE @ bool ) @ ( ap @ V0tree @ ( c_2EEncode_2ENode @ A_27a ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Etree__11,axiom,
! [A_27a: del,V0a0: $i] :
( ( mem @ V0a0 @ A_27a )
=> ! [V1a1: $i] :
( ( mem @ V1a1 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ! [V2a0_27: $i] :
( ( mem @ V2a0_27 @ A_27a )
=> ! [V3a1_27: $i] :
( ( mem @ V3a1_27 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V0a0 ) @ V1a1 )
= ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V2a0_27 ) @ V3a1_27 ) )
<=> ( ( V0a0 = V2a0_27 )
& ( V1a1 = V3a1_27 ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Etree__nchotomy,axiom,
! [A_27a: del,V0tt: $i] :
( ( mem @ V0tt @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ? [V1a: $i] :
( ( mem @ V1a @ A_27a )
& ? [V2l: $i] :
( ( mem @ V2l @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
& ( V0tt
= ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V1a ) @ V2l ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Etree__Axiom,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0f0: $i] :
( ( mem @ V0f0 @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ( arr @ A_27c @ A_27b ) ) ) )
=> ! [V1f1: $i] :
( ( mem @ V1f1 @ A_27c )
=> ! [V2f2: $i] :
( ( mem @ V2f2 @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ( arr @ A_27b @ ( arr @ A_27c @ A_27c ) ) ) ) )
=> ? [V3fn0: $i] :
( ( mem @ V3fn0 @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ A_27b ) )
& ? [V4fn1: $i] :
( ( mem @ V4fn1 @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ A_27c ) )
& ! [V5a0: $i] :
( ( mem @ V5a0 @ A_27a )
=> ! [V6a1: $i] :
( ( mem @ V6a1 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( ap @ V3fn0 @ ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V5a0 ) @ V6a1 ) )
= ( ap @ ( ap @ ( ap @ V0f0 @ V5a0 ) @ V6a1 ) @ ( ap @ V4fn1 @ V6a1 ) ) ) ) )
& ( ( ap @ V4fn1 @ ( c_2Elist_2ENIL @ ( ty_2EEncode_2Etree @ A_27a ) ) )
= V1f1 )
& ! [V7a0: $i] :
( ( mem @ V7a0 @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ! [V8a1: $i] :
( ( mem @ V8a1 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( ap @ V4fn1 @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ( ty_2EEncode_2Etree @ A_27a ) ) @ V7a0 ) @ V8a1 ) )
= ( ap @ ( ap @ ( ap @ ( ap @ V2f2 @ V7a0 ) @ V8a1 ) @ ( ap @ V3fn0 @ V7a0 ) ) @ ( ap @ V4fn1 @ V8a1 ) ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Etree__induction,axiom,
! [A_27a: del,V0P0: $i] :
( ( mem @ V0P0 @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ bool ) )
=> ! [V1P1: $i] :
( ( mem @ V1P1 @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ bool ) )
=> ( ( ! [V2l: $i] :
( ( mem @ V2l @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( p @ ( ap @ V1P1 @ V2l ) )
=> ! [V3a: $i] :
( ( mem @ V3a @ A_27a )
=> ( p @ ( ap @ V0P0 @ ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V3a ) @ V2l ) ) ) ) ) )
& ( p @ ( ap @ V1P1 @ ( c_2Elist_2ENIL @ ( ty_2EEncode_2Etree @ A_27a ) ) ) )
& ! [V4t: $i] :
( ( mem @ V4t @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ! [V5l: $i] :
( ( mem @ V5l @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( ( p @ ( ap @ V0P0 @ V4t ) )
& ( p @ ( ap @ V1P1 @ V5l ) ) )
=> ( p @ ( ap @ V1P1 @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ( ty_2EEncode_2Etree @ A_27a ) ) @ V4t ) @ V5l ) ) ) ) ) ) )
=> ( ! [V6t: $i] :
( ( mem @ V6t @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ( p @ ( ap @ V0P0 @ V6t ) ) )
& ! [V7l: $i] :
( ( mem @ V7l @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( p @ ( ap @ V1P1 @ V7l ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Etree__case__cong,axiom,
! [A_27a: del,A_27b: del,V0f_27: $i] :
( ( mem @ V0f_27 @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ A_27b ) ) )
=> ! [V1M: $i] :
( ( mem @ V1M @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ! [V2M_27: $i] :
( ( mem @ V2M_27 @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ! [V3f: $i] :
( ( mem @ V3f @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ A_27b ) ) )
=> ( ( ( V1M = V2M_27 )
& ! [V4a0: $i] :
( ( mem @ V4a0 @ A_27a )
=> ! [V5a1: $i] :
( ( mem @ V5a1 @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( V2M_27
= ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V4a0 ) @ V5a1 ) )
=> ( ( ap @ ( ap @ V3f @ V4a0 ) @ V5a1 )
= ( ap @ ( ap @ V0f_27 @ V4a0 ) @ V5a1 ) ) ) ) ) )
=> ( ( ap @ ( ap @ ( c_2EEncode_2Etree__CASE @ A_27a @ A_27b ) @ V1M ) @ V3f )
= ( ap @ ( ap @ ( c_2EEncode_2Etree__CASE @ A_27a @ A_27b ) @ V2M_27 ) @ V0f_27 ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Etree__case__eq,axiom,
! [A_27a: del,A_27b: del,V0x: $i] :
( ( mem @ V0x @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ! [V1f: $i] :
( ( mem @ V1f @ ( arr @ A_27a @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) @ A_27b ) ) )
=> ! [V2v: $i] :
( ( mem @ V2v @ A_27b )
=> ( ( ( ap @ ( ap @ ( c_2EEncode_2Etree__CASE @ A_27a @ A_27b ) @ V0x ) @ V1f )
= V2v )
<=> ? [V3a: $i] :
( ( mem @ V3a @ A_27a )
& ? [V4l: $i] :
( ( mem @ V4l @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
& ( V0x
= ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V3a ) @ V4l ) )
& ( ( ap @ ( ap @ V1f @ V3a ) @ V4l )
= V2v ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Etree__ind,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ ( ty_2EEncode_2Etree @ A_27a ) @ bool ) )
=> ( ! [V1a: $i] :
( ( mem @ V1a @ A_27a )
=> ! [V2ts: $i] :
( ( mem @ V2ts @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ! [V3t: $i] :
( ( mem @ V3t @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ( ty_2EEncode_2Etree @ A_27a ) ) @ V3t ) @ ( ap @ ( c_2Elist_2ELIST__TO__SET @ ( ty_2EEncode_2Etree @ A_27a ) ) @ V2ts ) ) )
=> ( p @ ( ap @ V0p @ V3t ) ) ) )
=> ( p @ ( ap @ V0p @ ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V1a ) @ V2ts ) ) ) ) ) )
=> ! [V4t: $i] :
( ( mem @ V4t @ ( ty_2EEncode_2Etree @ A_27a ) )
=> ( p @ ( ap @ V0p @ V4t ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Eencode__tree__def,axiom,
! [A_27a: del,V0e: $i] :
( ( mem @ V0e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ! [V1a: $i] :
( ( mem @ V1a @ A_27a )
=> ! [V2ts: $i] :
( ( mem @ V2ts @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__tree @ A_27a ) @ V0e ) @ ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V1a ) @ V2ts ) ) )
= ( surj__c_ty_2Elist_2Elist_o @ ( ap @ ( ap @ ( c_2Elist_2EAPPEND @ bool ) @ ( ap @ V0e @ V1a ) ) @ ( ap @ ( ap @ ( c_2EEncode_2Eencode__list @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ( ap @ ( c_2EEncode_2Eencode__tree @ A_27a ) @ V0e ) ) @ V2ts ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Elift__tree__def,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1a: $i] :
( ( mem @ V1a @ A_27a )
=> ! [V2ts: $i] :
( ( mem @ V2ts @ ( ty_2Elist_2Elist @ ( ty_2EEncode_2Etree @ A_27a ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Elift__tree @ A_27a ) @ V0p ) @ ( ap @ ( ap @ ( c_2EEncode_2ENode @ A_27a ) @ V1a ) @ V2ts ) ) )
<=> ( ( p @ ( ap @ V0p @ V1a ) )
& ( p @ ( ap @ ( ap @ ( c_2Elist_2EEVERY @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ( ap @ ( c_2EEncode_2Elift__tree @ A_27a ) @ V0p ) ) @ V2ts ) ) ) ) ) ) ) ).
thf(conj_thm_2EEncode_2Ewf__encode__tree,axiom,
! [A_27a: del,V0p: $i] :
( ( mem @ V0p @ ( arr @ A_27a @ bool ) )
=> ! [V1e: $i] :
( ( mem @ V1e @ ( arr @ A_27a @ ( ty_2Elist_2Elist @ bool ) ) )
=> ( ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ A_27a ) @ V0p ) @ V1e ) )
=> ( p @ ( ap @ ( ap @ ( c_2EEncode_2Ewf__encoder @ ( ty_2EEncode_2Etree @ A_27a ) ) @ ( ap @ ( c_2EEncode_2Elift__tree @ A_27a ) @ V0p ) ) @ ( ap @ ( c_2EEncode_2Eencode__tree @ A_27a ) @ V1e ) ) ) ) ) ) ).
%------------------------------------------------------------------------------