ITP001 Axioms: ITP022_5.ax


%------------------------------------------------------------------------------
% File     : ITP022_5 : TPTP v8.2.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    : ind_type_2.ax [Gau20]
%          : HL4022_5.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :  130 (  36 unt;  45 typ;   0 def)
%            Number of atoms       : 1140 (  82 equ)
%            Maximal formula atoms :   17 (   8 avg)
%            Number of connectives :  172 (   2   ~;   1   |;  30   &)
%                                         (  17 <=>; 122  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   17 (   6 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of FOOLs       :  885 ( 885 fml;   0 var)
%            Number of types       :    1 (   0 usr)
%            Number of type conns  :   89 (  39   >;  50   *;   0   +;   0  <<)
%            Number of predicates  :   36 (  35 usr;  19 prp; 0-2 aty)
%            Number of functors    :   45 (  45 usr;   6 con; 0-7 aty)
%            Number of variables   :  276 ( 267   !;   9   ?; 276   :)
% SPC      : TF0_SAT_EQU_NAR

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
tff(tp_ty_2Eind__type_2Erecspace,type,
    ty_2Eind__type_2Erecspace: del > del ).

tff(tp_c_2Eind__type_2EBOTTOM,type,
    c_2Eind__type_2EBOTTOM: del > $i ).

tff(mem_c_2Eind__type_2EBOTTOM,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EBOTTOM(A_27a),ty_2Eind__type_2Erecspace(A_27a)) ).

tff(tp_c_2Eind__type_2ECONSTR,type,
    c_2Eind__type_2ECONSTR: del > $i ).

tff(mem_c_2Eind__type_2ECONSTR,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2ECONSTR(A_27a),arr(ty_2Enum_2Enum,arr(A_27a,arr(arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)),ty_2Eind__type_2Erecspace(A_27a))))) ).

tff(tp_c_2Eind__type_2EFCONS,type,
    c_2Eind__type_2EFCONS: del > $i ).

tff(mem_c_2Eind__type_2EFCONS,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EFCONS(A_27a),arr(A_27a,arr(arr(ty_2Enum_2Enum,A_27a),arr(ty_2Enum_2Enum,A_27a)))) ).

tff(tp_c_2Eind__type_2EFNIL,type,
    c_2Eind__type_2EFNIL: del > $i ).

tff(mem_c_2Eind__type_2EFNIL,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EFNIL(A_27a),arr(ty_2Enum_2Enum,A_27a)) ).

tff(tp_c_2Eind__type_2EINJA,type,
    c_2Eind__type_2EINJA: del > $i ).

tff(mem_c_2Eind__type_2EINJA,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EINJA(A_27a),arr(A_27a,arr(ty_2Enum_2Enum,arr(A_27a,bool)))) ).

tff(tp_c_2Eind__type_2EINJF,type,
    c_2Eind__type_2EINJF: del > $i ).

tff(mem_c_2Eind__type_2EINJF,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EINJF(A_27a),arr(arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))),arr(ty_2Enum_2Enum,arr(A_27a,bool)))) ).

tff(tp_c_2Eind__type_2EINJN,type,
    c_2Eind__type_2EINJN: del > $i ).

tff(mem_c_2Eind__type_2EINJN,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EINJN(A_27a),arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool)))) ).

tff(tp_c_2Eind__type_2EINJP,type,
    c_2Eind__type_2EINJP: del > $i ).

tff(mem_c_2Eind__type_2EINJP,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EINJP(A_27a),arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),arr(ty_2Enum_2Enum,arr(A_27a,bool))))) ).

tff(tp_c_2Eind__type_2EISO,type,
    c_2Eind__type_2EISO: ( del * del ) > $i ).

tff(mem_c_2Eind__type_2EISO,axiom,
    ! [A_27a: del,A_27b: del] : mem(c_2Eind__type_2EISO(A_27a,A_27b),arr(arr(A_27a,A_27b),arr(arr(A_27b,A_27a),bool))) ).

tff(tp_c_2Eind__type_2ENUMFST,type,
    c_2Eind__type_2ENUMFST: $i ).

tff(mem_c_2Eind__type_2ENUMFST,axiom,
    mem(c_2Eind__type_2ENUMFST,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).

tff(stp_fo_c_2Eind__type_2ENUMFST,type,
    fo__c_2Eind__type_2ENUMFST: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).

tff(stp_eq_fo_c_2Eind__type_2ENUMFST,axiom,
    ! [X0: tp__ty_2Enum_2Enum] : ( inj__ty_2Enum_2Enum(fo__c_2Eind__type_2ENUMFST(X0)) = ap(c_2Eind__type_2ENUMFST,inj__ty_2Enum_2Enum(X0)) ) ).

tff(tp_c_2Eind__type_2ENUMLEFT,type,
    c_2Eind__type_2ENUMLEFT: $i ).

tff(mem_c_2Eind__type_2ENUMLEFT,axiom,
    mem(c_2Eind__type_2ENUMLEFT,arr(ty_2Enum_2Enum,bool)) ).

tff(stp_fo_c_2Eind__type_2ENUMLEFT,type,
    fo__c_2Eind__type_2ENUMLEFT: tp__ty_2Enum_2Enum > tp__o ).

tff(stp_eq_fo_c_2Eind__type_2ENUMLEFT,axiom,
    ! [X0: tp__ty_2Enum_2Enum] : ( inj__o(fo__c_2Eind__type_2ENUMLEFT(X0)) = ap(c_2Eind__type_2ENUMLEFT,inj__ty_2Enum_2Enum(X0)) ) ).

tff(tp_c_2Eind__type_2ENUMPAIR,type,
    c_2Eind__type_2ENUMPAIR: $i ).

tff(mem_c_2Eind__type_2ENUMPAIR,axiom,
    mem(c_2Eind__type_2ENUMPAIR,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).

tff(stp_fo_c_2Eind__type_2ENUMPAIR,type,
    fo__c_2Eind__type_2ENUMPAIR: ( tp__ty_2Enum_2Enum * tp__ty_2Enum_2Enum ) > tp__ty_2Enum_2Enum ).

tff(stp_eq_fo_c_2Eind__type_2ENUMPAIR,axiom,
    ! [X0: tp__ty_2Enum_2Enum,X1: tp__ty_2Enum_2Enum] : ( inj__ty_2Enum_2Enum(fo__c_2Eind__type_2ENUMPAIR(X0,X1)) = ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(X0)),inj__ty_2Enum_2Enum(X1)) ) ).

tff(tp_c_2Eind__type_2ENUMRIGHT,type,
    c_2Eind__type_2ENUMRIGHT: $i ).

tff(mem_c_2Eind__type_2ENUMRIGHT,axiom,
    mem(c_2Eind__type_2ENUMRIGHT,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).

tff(stp_fo_c_2Eind__type_2ENUMRIGHT,type,
    fo__c_2Eind__type_2ENUMRIGHT: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).

tff(stp_eq_fo_c_2Eind__type_2ENUMRIGHT,axiom,
    ! [X0: tp__ty_2Enum_2Enum] : ( inj__ty_2Enum_2Enum(fo__c_2Eind__type_2ENUMRIGHT(X0)) = ap(c_2Eind__type_2ENUMRIGHT,inj__ty_2Enum_2Enum(X0)) ) ).

tff(tp_c_2Eind__type_2ENUMSND,type,
    c_2Eind__type_2ENUMSND: $i ).

tff(mem_c_2Eind__type_2ENUMSND,axiom,
    mem(c_2Eind__type_2ENUMSND,arr(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).

tff(stp_fo_c_2Eind__type_2ENUMSND,type,
    fo__c_2Eind__type_2ENUMSND: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).

tff(stp_eq_fo_c_2Eind__type_2ENUMSND,axiom,
    ! [X0: tp__ty_2Enum_2Enum] : ( inj__ty_2Enum_2Enum(fo__c_2Eind__type_2ENUMSND(X0)) = ap(c_2Eind__type_2ENUMSND,inj__ty_2Enum_2Enum(X0)) ) ).

tff(tp_c_2Eind__type_2ENUMSUM,type,
    c_2Eind__type_2ENUMSUM: $i ).

tff(mem_c_2Eind__type_2ENUMSUM,axiom,
    mem(c_2Eind__type_2ENUMSUM,arr(bool,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).

tff(stp_fo_c_2Eind__type_2ENUMSUM,type,
    fo__c_2Eind__type_2ENUMSUM: ( tp__o * tp__ty_2Enum_2Enum ) > tp__ty_2Enum_2Enum ).

tff(stp_eq_fo_c_2Eind__type_2ENUMSUM,axiom,
    ! [X0: tp__o,X1: tp__ty_2Enum_2Enum] : ( inj__ty_2Enum_2Enum(fo__c_2Eind__type_2ENUMSUM(X0,X1)) = ap(ap(c_2Eind__type_2ENUMSUM,inj__o(X0)),inj__ty_2Enum_2Enum(X1)) ) ).

tff(tp_c_2Eind__type_2EZBOT,type,
    c_2Eind__type_2EZBOT: del > $i ).

tff(mem_c_2Eind__type_2EZBOT,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EZBOT(A_27a),arr(ty_2Enum_2Enum,arr(A_27a,bool))) ).

tff(tp_c_2Eind__type_2EZCONSTR,type,
    c_2Eind__type_2EZCONSTR: del > $i ).

tff(mem_c_2Eind__type_2EZCONSTR,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EZCONSTR(A_27a),arr(ty_2Enum_2Enum,arr(A_27a,arr(arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))),arr(ty_2Enum_2Enum,arr(A_27a,bool)))))) ).

tff(tp_c_2Eind__type_2EZRECSPACE,type,
    c_2Eind__type_2EZRECSPACE: del > $i ).

tff(mem_c_2Eind__type_2EZRECSPACE,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2EZRECSPACE(A_27a),arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool)) ).

tff(tp_c_2Eind__type_2Edest__rec,type,
    c_2Eind__type_2Edest__rec: del > $i ).

tff(mem_c_2Eind__type_2Edest__rec,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2Edest__rec(A_27a),arr(ty_2Eind__type_2Erecspace(A_27a),arr(ty_2Enum_2Enum,arr(A_27a,bool)))) ).

tff(tp_c_2Eind__type_2Emk__rec,type,
    c_2Eind__type_2Emk__rec: del > $i ).

tff(mem_c_2Eind__type_2Emk__rec,axiom,
    ! [A_27a: del] : mem(c_2Eind__type_2Emk__rec(A_27a),arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),ty_2Eind__type_2Erecspace(A_27a))) ).

tff(conj_thm_2Eind__type_2EINJ__INVERSE2,axiom,
    ! [A_27A: del,A_27B: del,A_27C: del,V0P: $i] :
      ( mem(V0P,arr(A_27A,arr(A_27B,A_27C)))
     => ( ! [V1x1: $i] :
            ( mem(V1x1,A_27A)
           => ! [V2y1: $i] :
                ( mem(V2y1,A_27B)
               => ! [V3x2: $i] :
                    ( mem(V3x2,A_27A)
                   => ! [V4y2: $i] :
                        ( mem(V4y2,A_27B)
                       => ( ( ap(ap(V0P,V1x1),V2y1) = ap(ap(V0P,V3x2),V4y2) )
                        <=> ( ( V1x1 = V3x2 )
                            & ( V2y1 = V4y2 ) ) ) ) ) ) )
       => ? [V5X: $i] :
            ( mem(V5X,arr(A_27C,A_27A))
            & ? [V6Y: $i] :
                ( mem(V6Y,arr(A_27C,A_27B))
                & ! [V7x: $i] :
                    ( mem(V7x,A_27A)
                   => ! [V8y: $i] :
                        ( mem(V8y,A_27B)
                       => ( ( ap(V5X,ap(ap(V0P,V7x),V8y)) = V7x )
                          & ( ap(V6Y,ap(ap(V0P,V7x),V8y)) = V8y ) ) ) ) ) ) ) ) ).

tff(ax_thm_2Eind__type_2ENUMPAIR,axiom,
    ! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum] : ( surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(V0x)),inj__ty_2Enum_2Enum(V1y))) = surj__ty_2Enum_2Enum(ap(ap(c_2Earithmetic_2E_2A,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(V0x))),ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))),inj__ty_2Enum_2Enum(V1y))),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))) ) ).

tff(conj_thm_2Eind__type_2ENUMPAIR__INJ__LEMMA,axiom,
    ! [V0x1: tp__ty_2Enum_2Enum,V1y1: tp__ty_2Enum_2Enum,V2x2: tp__ty_2Enum_2Enum,V3y2: tp__ty_2Enum_2Enum] :
      ( ( surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(V0x1)),inj__ty_2Enum_2Enum(V1y1))) = surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(V2x2)),inj__ty_2Enum_2Enum(V3y2))) )
     => ( V0x1 = V2x2 ) ) ).

tff(conj_thm_2Eind__type_2ENUMPAIR__INJ,axiom,
    ! [V0x1: tp__ty_2Enum_2Enum,V1y1: tp__ty_2Enum_2Enum,V2x2: tp__ty_2Enum_2Enum,V3y2: tp__ty_2Enum_2Enum] :
      ( ( surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(V0x1)),inj__ty_2Enum_2Enum(V1y1))) = surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(V2x2)),inj__ty_2Enum_2Enum(V3y2))) )
    <=> ( ( V0x1 = V2x2 )
        & ( V1y1 = V3y2 ) ) ) ).

tff(ax_thm_2Eind__type_2ENUMPAIR__DEST,axiom,
    ! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum] :
      ( ( surj__ty_2Enum_2Enum(ap(c_2Eind__type_2ENUMFST,ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(V0x)),inj__ty_2Enum_2Enum(V1y)))) = V0x )
      & ( surj__ty_2Enum_2Enum(ap(c_2Eind__type_2ENUMSND,ap(ap(c_2Eind__type_2ENUMPAIR,inj__ty_2Enum_2Enum(V0x)),inj__ty_2Enum_2Enum(V1y)))) = V1y ) ) ).

tff(ax_thm_2Eind__type_2ENUMSUM,axiom,
    ! [V0b: tp__o,V1x: tp__ty_2Enum_2Enum] : ( surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMSUM,inj__o(V0b)),inj__ty_2Enum_2Enum(V1x))) = surj__ty_2Enum_2Enum(ap(ap(ap(c_2Ebool_2ECOND(ty_2Enum_2Enum),inj__o(V0b)),ap(c_2Enum_2ESUC,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))),inj__ty_2Enum_2Enum(V1x)))),ap(ap(c_2Earithmetic_2E_2A,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))),inj__ty_2Enum_2Enum(V1x)))) ) ).

tff(conj_thm_2Eind__type_2ENUMSUM__INJ,axiom,
    ! [V0b1: tp__o,V1x1: tp__ty_2Enum_2Enum,V2b2: tp__o,V3x2: tp__ty_2Enum_2Enum] :
      ( ( surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMSUM,inj__o(V0b1)),inj__ty_2Enum_2Enum(V1x1))) = surj__ty_2Enum_2Enum(ap(ap(c_2Eind__type_2ENUMSUM,inj__o(V2b2)),inj__ty_2Enum_2Enum(V3x2))) )
    <=> ( ( p(inj__o(V0b1))
        <=> p(inj__o(V2b2)) )
        & ( V1x1 = V3x2 ) ) ) ).

tff(ax_thm_2Eind__type_2ENUMSUM__DEST,axiom,
    ! [V0x: tp__o,V1y: tp__ty_2Enum_2Enum] :
      ( ( p(ap(c_2Eind__type_2ENUMLEFT,ap(ap(c_2Eind__type_2ENUMSUM,inj__o(V0x)),inj__ty_2Enum_2Enum(V1y))))
      <=> p(inj__o(V0x)) )
      & ( surj__ty_2Enum_2Enum(ap(c_2Eind__type_2ENUMRIGHT,ap(ap(c_2Eind__type_2ENUMSUM,inj__o(V0x)),inj__ty_2Enum_2Enum(V1y)))) = V1y ) ) ).

tff(lamtp_f208,type,
    f208: ( del * tp__ty_2Enum_2Enum ) > $i ).

tff(lameq_f208,axiom,
    ! [A_27a: del,V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum] : ( ap(f208(A_27a,V0m),inj__ty_2Enum_2Enum(V1n)) = k(A_27a,ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V1n)),inj__ty_2Enum_2Enum(V0m))) ) ).

tff(ax_thm_2Eind__type_2EINJN,axiom,
    ! [A_27a: del,V0m: tp__ty_2Enum_2Enum] : ( ap(c_2Eind__type_2EINJN(A_27a),inj__ty_2Enum_2Enum(V0m)) = f208(A_27a,V0m) ) ).

tff(conj_thm_2Eind__type_2EINJN__INJ,axiom,
    ! [A_27a: del,V0n1: tp__ty_2Enum_2Enum,V1n2: tp__ty_2Enum_2Enum] :
      ( ( ap(c_2Eind__type_2EINJN(A_27a),inj__ty_2Enum_2Enum(V0n1)) = ap(c_2Eind__type_2EINJN(A_27a),inj__ty_2Enum_2Enum(V1n2)) )
    <=> ( V0n1 = V1n2 ) ) ).

tff(lamtp_f209,type,
    f209: ( del * $i ) > $i ).

tff(lameq_f209,axiom,
    ! [A_27a: del,V0a: $i] :
      ( mem(V0a,A_27a)
     => ! [V2b: $i] : ( ap(f209(A_27a,V0a),V2b) = ap(ap(c_2Emin_2E_3D(A_27a),V2b),V0a) ) ) ).

tff(ax_thm_2Eind__type_2EINJA,axiom,
    ! [A_27a: del,V0a: $i] :
      ( mem(V0a,A_27a)
     => ( ap(c_2Eind__type_2EINJA(A_27a),V0a) = k(ty_2Enum_2Enum,f209(A_27a,V0a)) ) ) ).

tff(conj_thm_2Eind__type_2EINJA__INJ,axiom,
    ! [A_27a: del,V0a1: $i] :
      ( mem(V0a1,A_27a)
     => ! [V1a2: $i] :
          ( mem(V1a2,A_27a)
         => ( ( ap(c_2Eind__type_2EINJA(A_27a),V0a1) = ap(c_2Eind__type_2EINJA(A_27a),V1a2) )
          <=> ( V0a1 = V1a2 ) ) ) ) ).

tff(lamtp_f210,type,
    f210: ( del * $i ) > $i ).

tff(lameq_f210,axiom,
    ! [A_27a: del,V0f: $i] :
      ( mem(V0f,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
     => ! [V1n: tp__ty_2Enum_2Enum] : ( ap(f210(A_27a,V0f),inj__ty_2Enum_2Enum(V1n)) = ap(ap(V0f,ap(c_2Eind__type_2ENUMFST,inj__ty_2Enum_2Enum(V1n))),ap(c_2Eind__type_2ENUMSND,inj__ty_2Enum_2Enum(V1n))) ) ) ).

tff(ax_thm_2Eind__type_2EINJF,axiom,
    ! [A_27a: del,V0f: $i] :
      ( mem(V0f,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
     => ( ap(c_2Eind__type_2EINJF(A_27a),V0f) = f210(A_27a,V0f) ) ) ).

tff(conj_thm_2Eind__type_2EINJF__INJ,axiom,
    ! [A_27a: del,V0f1: $i] :
      ( mem(V0f1,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
     => ! [V1f2: $i] :
          ( mem(V1f2,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
         => ( ( ap(c_2Eind__type_2EINJF(A_27a),V0f1) = ap(c_2Eind__type_2EINJF(A_27a),V1f2) )
          <=> ( V0f1 = V1f2 ) ) ) ) ).

tff(lamtp_f211,type,
    f211: ( del * $i * tp__ty_2Enum_2Enum * $i ) > $i ).

tff(lameq_f211,axiom,
    ! [A_27a: del,V0f1: $i] :
      ( mem(V0f1,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ! [V2n: tp__ty_2Enum_2Enum,V1f2: $i] :
          ( mem(V1f2,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ! [V3a: $i] : ( ap(f211(A_27a,V0f1,V2n,V1f2),V3a) = ap(ap(ap(c_2Ebool_2ECOND(bool),ap(c_2Eind__type_2ENUMLEFT,inj__ty_2Enum_2Enum(V2n))),ap(ap(V0f1,ap(c_2Eind__type_2ENUMRIGHT,inj__ty_2Enum_2Enum(V2n))),V3a)),ap(ap(V1f2,ap(c_2Eind__type_2ENUMRIGHT,inj__ty_2Enum_2Enum(V2n))),V3a)) ) ) ) ).

tff(lamtp_f212,type,
    f212: ( del * $i * $i ) > $i ).

tff(lameq_f212,axiom,
    ! [A_27a: del,V0f1: $i] :
      ( mem(V0f1,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ! [V1f2: $i] :
          ( mem(V1f2,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ! [V2n: tp__ty_2Enum_2Enum] : ( ap(f212(A_27a,V0f1,V1f2),inj__ty_2Enum_2Enum(V2n)) = f211(A_27a,V0f1,V2n,V1f2) ) ) ) ).

tff(ax_thm_2Eind__type_2EINJP,axiom,
    ! [A_27a: del,V0f1: $i] :
      ( mem(V0f1,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ! [V1f2: $i] :
          ( mem(V1f2,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ( ap(ap(c_2Eind__type_2EINJP(A_27a),V0f1),V1f2) = f212(A_27a,V0f1,V1f2) ) ) ) ).

tff(conj_thm_2Eind__type_2EINJP__INJ,axiom,
    ! [A_27a: del,V0f1: $i] :
      ( mem(V0f1,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ! [V1f1_27: $i] :
          ( mem(V1f1_27,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ! [V2f2: $i] :
              ( mem(V2f2,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
             => ! [V3f2_27: $i] :
                  ( mem(V3f2_27,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
                 => ( ( ap(ap(c_2Eind__type_2EINJP(A_27a),V0f1),V2f2) = ap(ap(c_2Eind__type_2EINJP(A_27a),V1f1_27),V3f2_27) )
                  <=> ( ( V0f1 = V1f1_27 )
                      & ( V2f2 = V3f2_27 ) ) ) ) ) ) ) ).

tff(ax_thm_2Eind__type_2EZCONSTR,axiom,
    ! [A_27a: del,V0c: tp__ty_2Enum_2Enum,V1i: $i] :
      ( mem(V1i,A_27a)
     => ! [V2r: $i] :
          ( mem(V2r,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
         => ( ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V0c)),V1i),V2r) = ap(ap(c_2Eind__type_2EINJP(A_27a),ap(c_2Eind__type_2EINJN(A_27a),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V0c)))),ap(ap(c_2Eind__type_2EINJP(A_27a),ap(c_2Eind__type_2EINJA(A_27a),V1i)),ap(c_2Eind__type_2EINJF(A_27a),V2r))) ) ) ) ).

tff(ax_thm_2Eind__type_2EZBOT,axiom,
    ! [A_27a: del] : ( c_2Eind__type_2EZBOT(A_27a) = ap(ap(c_2Eind__type_2EINJP(A_27a),ap(c_2Eind__type_2EINJN(A_27a),inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(c_2Emin_2E_40(arr(ty_2Enum_2Enum,arr(A_27a,bool))),k(arr(ty_2Enum_2Enum,arr(A_27a,bool)),c_2Ebool_2ET))) ) ).

tff(conj_thm_2Eind__type_2EZCONSTR__ZBOT,axiom,
    ! [A_27a: del,V0c: tp__ty_2Enum_2Enum,V1i: $i] :
      ( mem(V1i,A_27a)
     => ! [V2r: $i] :
          ( mem(V2r,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
         => ( ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V0c)),V1i),V2r) != c_2Eind__type_2EZBOT(A_27a) ) ) ) ).

tff(lamtp_f213,type,
    f213: ( del * $i * $i ) > $i ).

tff(lameq_f213,axiom,
    ! [A_27a: del,V5r: $i] :
      ( mem(V5r,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
     => ! [V1ZRECSPACE_27: $i] :
          ( mem(V1ZRECSPACE_27,arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool))
         => ! [V6n: tp__ty_2Enum_2Enum] : ( ap(f213(A_27a,V5r,V1ZRECSPACE_27),inj__ty_2Enum_2Enum(V6n)) = ap(V1ZRECSPACE_27,ap(V5r,inj__ty_2Enum_2Enum(V6n))) ) ) ) ).

tff(lamtp_f214,type,
    f214: ( del * tp__ty_2Enum_2Enum * $i * $i * $i ) > $i ).

tff(lameq_f214,axiom,
    ! [A_27a: del,V3c: tp__ty_2Enum_2Enum,V4i: $i] :
      ( mem(V4i,A_27a)
     => ! [V2a0: $i] :
          ( mem(V2a0,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ! [V1ZRECSPACE_27: $i] :
              ( mem(V1ZRECSPACE_27,arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool))
             => ! [V5r: $i] : ( ap(f214(A_27a,V3c,V4i,V2a0,V1ZRECSPACE_27),V5r) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Emin_2E_3D(arr(ty_2Enum_2Enum,arr(A_27a,bool))),V2a0),ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V3c)),V4i),V5r))),ap(c_2Ebool_2E_21(ty_2Enum_2Enum),f213(A_27a,V5r,V1ZRECSPACE_27))) ) ) ) ) ).

tff(lamtp_f215,type,
    f215: ( del * $i * $i * tp__ty_2Enum_2Enum ) > $i ).

tff(lameq_f215,axiom,
    ! [A_27a: del,V1ZRECSPACE_27: $i] :
      ( mem(V1ZRECSPACE_27,arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool))
     => ! [V2a0: $i] :
          ( mem(V2a0,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ! [V3c: tp__ty_2Enum_2Enum,V4i: $i] : ( ap(f215(A_27a,V1ZRECSPACE_27,V2a0,V3c),V4i) = ap(c_2Ebool_2E_3F(arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool)))),f214(A_27a,V3c,V4i,V2a0,V1ZRECSPACE_27)) ) ) ) ).

tff(lamtp_f216,type,
    f216: ( del * $i * $i ) > $i ).

tff(lameq_f216,axiom,
    ! [A_27a: del,V2a0: $i] :
      ( mem(V2a0,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ! [V1ZRECSPACE_27: $i] :
          ( mem(V1ZRECSPACE_27,arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool))
         => ! [V3c: tp__ty_2Enum_2Enum] : ( ap(f216(A_27a,V2a0,V1ZRECSPACE_27),inj__ty_2Enum_2Enum(V3c)) = ap(c_2Ebool_2E_3F(A_27a),f215(A_27a,V1ZRECSPACE_27,V2a0,V3c)) ) ) ) ).

tff(lamtp_f217,type,
    f217: ( del * $i ) > $i ).

tff(lameq_f217,axiom,
    ! [A_27a: del,V1ZRECSPACE_27: $i] :
      ( mem(V1ZRECSPACE_27,arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool))
     => ! [V2a0: $i] : ( ap(f217(A_27a,V1ZRECSPACE_27),V2a0) = ap(ap(c_2Emin_2E_3D_3D_3E,ap(ap(c_2Ebool_2E_5C_2F,ap(ap(c_2Emin_2E_3D(arr(ty_2Enum_2Enum,arr(A_27a,bool))),V2a0),c_2Eind__type_2EZBOT(A_27a))),ap(c_2Ebool_2E_3F(ty_2Enum_2Enum),f216(A_27a,V2a0,V1ZRECSPACE_27)))),ap(V1ZRECSPACE_27,V2a0)) ) ) ).

tff(lamtp_f218,type,
    f218: ( del * $i ) > $i ).

tff(lameq_f218,axiom,
    ! [A_27a: del,V0a0: $i] :
      ( mem(V0a0,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ! [V1ZRECSPACE_27: $i] : ( ap(f218(A_27a,V0a0),V1ZRECSPACE_27) = ap(ap(c_2Emin_2E_3D_3D_3E,ap(c_2Ebool_2E_21(arr(ty_2Enum_2Enum,arr(A_27a,bool))),f217(A_27a,V1ZRECSPACE_27))),ap(V1ZRECSPACE_27,V0a0)) ) ) ).

tff(lamtp_f219,type,
    f219: del > $i ).

tff(lameq_f219,axiom,
    ! [A_27a: del,V0a0: $i] : ( ap(f219(A_27a),V0a0) = ap(c_2Ebool_2E_21(arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool)),f218(A_27a,V0a0)) ) ).

tff(ax_thm_2Eind__type_2EZRECSPACE__def,axiom,
    ! [A_27a: del] : ( c_2Eind__type_2EZRECSPACE(A_27a) = f219(A_27a) ) ).

tff(conj_thm_2Eind__type_2EZRECSPACE__rules,axiom,
    ! [A_27a: del] :
      ( p(ap(c_2Eind__type_2EZRECSPACE(A_27a),c_2Eind__type_2EZBOT(A_27a)))
      & ! [V0c: tp__ty_2Enum_2Enum,V1i: $i] :
          ( mem(V1i,A_27a)
         => ! [V2r: $i] :
              ( mem(V2r,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
             => ( ! [V3n: tp__ty_2Enum_2Enum] : p(ap(c_2Eind__type_2EZRECSPACE(A_27a),ap(V2r,inj__ty_2Enum_2Enum(V3n))))
               => p(ap(c_2Eind__type_2EZRECSPACE(A_27a),ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V0c)),V1i),V2r))) ) ) ) ) ).

tff(conj_thm_2Eind__type_2EZRECSPACE__ind,axiom,
    ! [A_27a: del,V0ZRECSPACE_27: $i] :
      ( mem(V0ZRECSPACE_27,arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool))
     => ( ( p(ap(V0ZRECSPACE_27,c_2Eind__type_2EZBOT(A_27a)))
          & ! [V1c: tp__ty_2Enum_2Enum,V2i: $i] :
              ( mem(V2i,A_27a)
             => ! [V3r: $i] :
                  ( mem(V3r,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
                 => ( ! [V4n: tp__ty_2Enum_2Enum] : p(ap(V0ZRECSPACE_27,ap(V3r,inj__ty_2Enum_2Enum(V4n))))
                   => p(ap(V0ZRECSPACE_27,ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V1c)),V2i),V3r))) ) ) ) )
       => ! [V5a0: $i] :
            ( mem(V5a0,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
           => ( p(ap(c_2Eind__type_2EZRECSPACE(A_27a),V5a0))
             => p(ap(V0ZRECSPACE_27,V5a0)) ) ) ) ) ).

tff(conj_thm_2Eind__type_2EZRECSPACE__strongind,axiom,
    ! [A_27a: del,V0ZRECSPACE_27: $i] :
      ( mem(V0ZRECSPACE_27,arr(arr(ty_2Enum_2Enum,arr(A_27a,bool)),bool))
     => ( ( p(ap(V0ZRECSPACE_27,c_2Eind__type_2EZBOT(A_27a)))
          & ! [V1c: tp__ty_2Enum_2Enum,V2i: $i] :
              ( mem(V2i,A_27a)
             => ! [V3r: $i] :
                  ( mem(V3r,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
                 => ( ! [V4n: tp__ty_2Enum_2Enum] :
                        ( p(ap(c_2Eind__type_2EZRECSPACE(A_27a),ap(V3r,inj__ty_2Enum_2Enum(V4n))))
                        & p(ap(V0ZRECSPACE_27,ap(V3r,inj__ty_2Enum_2Enum(V4n)))) )
                   => p(ap(V0ZRECSPACE_27,ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V1c)),V2i),V3r))) ) ) ) )
       => ! [V5a0: $i] :
            ( mem(V5a0,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
           => ( p(ap(c_2Eind__type_2EZRECSPACE(A_27a),V5a0))
             => p(ap(V0ZRECSPACE_27,V5a0)) ) ) ) ) ).

tff(conj_thm_2Eind__type_2EZRECSPACE__cases,axiom,
    ! [A_27a: del,V0a0: $i] :
      ( mem(V0a0,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ( p(ap(c_2Eind__type_2EZRECSPACE(A_27a),V0a0))
      <=> ( ( V0a0 = c_2Eind__type_2EZBOT(A_27a) )
          | ? [V1c: tp__ty_2Enum_2Enum,V2i: $i] :
              ( mem(V2i,A_27a)
              & ? [V3r: $i] :
                  ( mem(V3r,arr(ty_2Enum_2Enum,arr(ty_2Enum_2Enum,arr(A_27a,bool))))
                  & ( V0a0 = ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V1c)),V2i),V3r) )
                  & ! [V4n: tp__ty_2Enum_2Enum] : p(ap(c_2Eind__type_2EZRECSPACE(A_27a),ap(V3r,inj__ty_2Enum_2Enum(V4n)))) ) ) ) ) ) ).

tff(ax_thm_2Eind__type_2Erecspace__TY__DEF,axiom,
    ! [A_27a: del] :
    ? [V0rep: $i] :
      ( mem(V0rep,arr(ty_2Eind__type_2Erecspace(A_27a),arr(ty_2Enum_2Enum,arr(A_27a,bool))))
      & p(ap(ap(c_2Ebool_2ETYPE__DEFINITION(arr(ty_2Enum_2Enum,arr(A_27a,bool)),ty_2Eind__type_2Erecspace(A_27a)),c_2Eind__type_2EZRECSPACE(A_27a)),V0rep)) ) ).

tff(ax_thm_2Eind__type_2Erecspace__repfns,axiom,
    ! [A_27a: del] :
      ( ! [V0a: $i] :
          ( mem(V0a,ty_2Eind__type_2Erecspace(A_27a))
         => ( ap(c_2Eind__type_2Emk__rec(A_27a),ap(c_2Eind__type_2Edest__rec(A_27a),V0a)) = V0a ) )
      & ! [V1r: $i] :
          ( mem(V1r,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ( p(ap(c_2Eind__type_2EZRECSPACE(A_27a),V1r))
          <=> ( ap(c_2Eind__type_2Edest__rec(A_27a),ap(c_2Eind__type_2Emk__rec(A_27a),V1r)) = V1r ) ) ) ) ).

tff(ax_thm_2Eind__type_2EBOTTOM,axiom,
    ! [A_27a: del] : ( c_2Eind__type_2EBOTTOM(A_27a) = ap(c_2Eind__type_2Emk__rec(A_27a),c_2Eind__type_2EZBOT(A_27a)) ) ).

tff(lamtp_f220,type,
    f220: ( del * $i ) > $i ).

tff(lameq_f220,axiom,
    ! [A_27a: del,V2r: $i] :
      ( mem(V2r,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
     => ! [V3n: tp__ty_2Enum_2Enum] : ( ap(f220(A_27a,V2r),inj__ty_2Enum_2Enum(V3n)) = ap(c_2Eind__type_2Edest__rec(A_27a),ap(V2r,inj__ty_2Enum_2Enum(V3n))) ) ) ).

tff(ax_thm_2Eind__type_2ECONSTR,axiom,
    ! [A_27a: del,V0c: tp__ty_2Enum_2Enum,V1i: $i] :
      ( mem(V1i,A_27a)
     => ! [V2r: $i] :
          ( mem(V2r,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
         => ( ap(ap(ap(c_2Eind__type_2ECONSTR(A_27a),inj__ty_2Enum_2Enum(V0c)),V1i),V2r) = ap(c_2Eind__type_2Emk__rec(A_27a),ap(ap(ap(c_2Eind__type_2EZCONSTR(A_27a),inj__ty_2Enum_2Enum(V0c)),V1i),f220(A_27a,V2r))) ) ) ) ).

tff(conj_thm_2Eind__type_2EMK__REC__INJ,axiom,
    ! [A_27a: del,V0x: $i] :
      ( mem(V0x,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
     => ! [V1y: $i] :
          ( mem(V1y,arr(ty_2Enum_2Enum,arr(A_27a,bool)))
         => ( ( ap(c_2Eind__type_2Emk__rec(A_27a),V0x) = ap(c_2Eind__type_2Emk__rec(A_27a),V1y) )
           => ( ( p(ap(c_2Eind__type_2EZRECSPACE(A_27a),V0x))
                & p(ap(c_2Eind__type_2EZRECSPACE(A_27a),V1y)) )
             => ( V0x = V1y ) ) ) ) ) ).

tff(conj_thm_2Eind__type_2EDEST__REC__INJ,axiom,
    ! [A_27a: del,V0x: $i] :
      ( mem(V0x,ty_2Eind__type_2Erecspace(A_27a))
     => ! [V1y: $i] :
          ( mem(V1y,ty_2Eind__type_2Erecspace(A_27a))
         => ( ( ap(c_2Eind__type_2Edest__rec(A_27a),V0x) = ap(c_2Eind__type_2Edest__rec(A_27a),V1y) )
          <=> ( V0x = V1y ) ) ) ) ).

tff(conj_thm_2Eind__type_2ECONSTR__BOT,axiom,
    ! [A_27a: del,V0c: tp__ty_2Enum_2Enum,V1i: $i] :
      ( mem(V1i,A_27a)
     => ! [V2r: $i] :
          ( mem(V2r,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
         => ( ap(ap(ap(c_2Eind__type_2ECONSTR(A_27a),inj__ty_2Enum_2Enum(V0c)),V1i),V2r) != c_2Eind__type_2EBOTTOM(A_27a) ) ) ) ).

tff(conj_thm_2Eind__type_2ECONSTR__INJ,axiom,
    ! [A_27a: del,V0c1: tp__ty_2Enum_2Enum,V1i1: $i] :
      ( mem(V1i1,A_27a)
     => ! [V2r1: $i] :
          ( mem(V2r1,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
         => ! [V3c2: tp__ty_2Enum_2Enum,V4i2: $i] :
              ( mem(V4i2,A_27a)
             => ! [V5r2: $i] :
                  ( mem(V5r2,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
                 => ( ( ap(ap(ap(c_2Eind__type_2ECONSTR(A_27a),inj__ty_2Enum_2Enum(V0c1)),V1i1),V2r1) = ap(ap(ap(c_2Eind__type_2ECONSTR(A_27a),inj__ty_2Enum_2Enum(V3c2)),V4i2),V5r2) )
                  <=> ( ( V0c1 = V3c2 )
                      & ( V1i1 = V4i2 )
                      & ( V2r1 = V5r2 ) ) ) ) ) ) ) ).

tff(conj_thm_2Eind__type_2ECONSTR__IND,axiom,
    ! [A_27a: del,V0P: $i] :
      ( mem(V0P,arr(ty_2Eind__type_2Erecspace(A_27a),bool))
     => ( ( p(ap(V0P,c_2Eind__type_2EBOTTOM(A_27a)))
          & ! [V1c: tp__ty_2Enum_2Enum,V2i: $i] :
              ( mem(V2i,A_27a)
             => ! [V3r: $i] :
                  ( mem(V3r,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
                 => ( ! [V4n: tp__ty_2Enum_2Enum] : p(ap(V0P,ap(V3r,inj__ty_2Enum_2Enum(V4n))))
                   => p(ap(V0P,ap(ap(ap(c_2Eind__type_2ECONSTR(A_27a),inj__ty_2Enum_2Enum(V1c)),V2i),V3r))) ) ) ) )
       => ! [V5x: $i] :
            ( mem(V5x,ty_2Eind__type_2Erecspace(A_27a))
           => p(ap(V0P,V5x)) ) ) ) ).

tff(lamtp_f221,type,
    f221: ( del * del * $i * $i ) > $i ).

tff(lameq_f221,axiom,
    ! [A_27a: del,A_27b: del,V4r: $i] :
      ( mem(V4r,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
     => ! [V1f: $i] :
          ( mem(V1f,arr(ty_2Eind__type_2Erecspace(A_27a),A_27b))
         => ! [V5n: tp__ty_2Enum_2Enum] : ( ap(f221(A_27a,A_27b,V4r,V1f),inj__ty_2Enum_2Enum(V5n)) = ap(V1f,ap(V4r,inj__ty_2Enum_2Enum(V5n))) ) ) ) ).

tff(conj_thm_2Eind__type_2ECONSTR__REC,axiom,
    ! [A_27a: del,A_27b: del,V0Fn: $i] :
      ( mem(V0Fn,arr(ty_2Enum_2Enum,arr(A_27a,arr(arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)),arr(arr(ty_2Enum_2Enum,A_27b),A_27b)))))
     => ? [V1f: $i] :
          ( mem(V1f,arr(ty_2Eind__type_2Erecspace(A_27a),A_27b))
          & ! [V2c: tp__ty_2Enum_2Enum,V3i: $i] :
              ( mem(V3i,A_27a)
             => ! [V4r: $i] :
                  ( mem(V4r,arr(ty_2Enum_2Enum,ty_2Eind__type_2Erecspace(A_27a)))
                 => ( ap(V1f,ap(ap(ap(c_2Eind__type_2ECONSTR(A_27a),inj__ty_2Enum_2Enum(V2c)),V3i),V4r)) = ap(ap(ap(ap(V0Fn,inj__ty_2Enum_2Enum(V2c)),V3i),V4r),f221(A_27a,A_27b,V4r,V1f)) ) ) ) ) ) ).

tff(ax_thm_2Eind__type_2EFCONS,axiom,
    ! [A_27a: del] :
      ( ! [V0a: $i] :
          ( mem(V0a,A_27a)
         => ! [V1f: $i] :
              ( mem(V1f,arr(ty_2Enum_2Enum,A_27a))
             => ( ap(ap(ap(c_2Eind__type_2EFCONS(A_27a),V0a),V1f),inj__ty_2Enum_2Enum(fo__c_2Enum_2E0)) = V0a ) ) )
      & ! [V2a: $i] :
          ( mem(V2a,A_27a)
         => ! [V3f: $i] :
              ( mem(V3f,arr(ty_2Enum_2Enum,A_27a))
             => ! [V4n: tp__ty_2Enum_2Enum] : ( ap(ap(ap(c_2Eind__type_2EFCONS(A_27a),V2a),V3f),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V4n))) = ap(V3f,inj__ty_2Enum_2Enum(V4n)) ) ) ) ) ).

tff(ax_thm_2Eind__type_2EFNIL,axiom,
    ! [A_27a: del,V0n: tp__ty_2Enum_2Enum] : ( ap(c_2Eind__type_2EFNIL(A_27a),inj__ty_2Enum_2Enum(V0n)) = c_2Ebool_2EARB(A_27a) ) ).

tff(conj_thm_2Eind__type_2EFCONS__DEST,axiom,
    ! [A_27a: del,V0a: $i] :
      ( mem(V0a,A_27a)
     => ! [V1f: $i] :
          ( mem(V1f,arr(ty_2Enum_2Enum,A_27a))
         => ! [V2n: tp__ty_2Enum_2Enum] : ( ap(ap(ap(c_2Eind__type_2EFCONS(A_27a),V0a),V1f),inj__ty_2Enum_2Enum(V2n)) = ap(ap(ap(c_2Ebool_2ECOND(A_27a),ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V2n)),inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),V0a),ap(V1f,ap(ap(c_2Earithmetic_2E_2D,inj__ty_2Enum_2Enum(V2n)),ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))) ) ) ) ).

tff(ax_thm_2Eind__type_2EISO,axiom,
    ! [A_27a: del,A_27b: del,V0f: $i] :
      ( mem(V0f,arr(A_27a,A_27b))
     => ! [V1g: $i] :
          ( mem(V1g,arr(A_27b,A_27a))
         => ( p(ap(ap(c_2Eind__type_2EISO(A_27a,A_27b),V0f),V1g))
          <=> ( ! [V2x: $i] :
                  ( mem(V2x,A_27b)
                 => ( ap(V0f,ap(V1g,V2x)) = V2x ) )
              & ! [V3y: $i] :
                  ( mem(V3y,A_27a)
                 => ( ap(V1g,ap(V0f,V3y)) = V3y ) ) ) ) ) ) ).

tff(conj_thm_2Eind__type_2EISO__REFL,axiom,
    ! [A_27a: del] : p(ap(ap(c_2Eind__type_2EISO(A_27a,A_27a),i(A_27a)),i(A_27a))) ).

tff(lamtp_f222,type,
    f222: ( del * del * del * del * $i * $i * $i ) > $i ).

tff(lameq_f222,axiom,
    ! [A_27d: del,A_27b: del,A_27a: del,A_27c: del,V4h: $i] :
      ( mem(V4h,arr(A_27a,A_27b))
     => ! [V1f_27: $i] :
          ( mem(V1f_27,arr(A_27c,A_27a))
         => ! [V2g: $i] :
              ( mem(V2g,arr(A_27b,A_27d))
             => ! [V5a_27: $i] : ( ap(f222(A_27d,A_27b,A_27a,A_27c,V4h,V1f_27,V2g),V5a_27) = ap(V2g,ap(V4h,ap(V1f_27,V5a_27))) ) ) ) ) ).

tff(lamtp_f223,type,
    f223: ( del * del * del * del * $i * $i ) > $i ).

tff(lameq_f223,axiom,
    ! [A_27c: del,A_27d: del,A_27a: del,A_27b: del,V1f_27: $i] :
      ( mem(V1f_27,arr(A_27c,A_27a))
     => ! [V2g: $i] :
          ( mem(V2g,arr(A_27b,A_27d))
         => ! [V4h: $i] : ( ap(f223(A_27c,A_27d,A_27a,A_27b,V1f_27,V2g),V4h) = f222(A_27d,A_27b,A_27a,A_27c,V4h,V1f_27,V2g) ) ) ) ).

tff(lamtp_f224,type,
    f224: ( del * del * del * del * $i * $i * $i ) > $i ).

tff(lameq_f224,axiom,
    ! [A_27b: del,A_27d: del,A_27c: del,A_27a: del,V6h: $i] :
      ( mem(V6h,arr(A_27c,A_27d))
     => ! [V0f: $i] :
          ( mem(V0f,arr(A_27a,A_27c))
         => ! [V3g_27: $i] :
              ( mem(V3g_27,arr(A_27d,A_27b))
             => ! [V7a: $i] : ( ap(f224(A_27b,A_27d,A_27c,A_27a,V6h,V0f,V3g_27),V7a) = ap(V3g_27,ap(V6h,ap(V0f,V7a))) ) ) ) ) ).

tff(lamtp_f225,type,
    f225: ( del * del * del * del * $i * $i ) > $i ).

tff(lameq_f225,axiom,
    ! [A_27a: del,A_27b: del,A_27c: del,A_27d: del,V0f: $i] :
      ( mem(V0f,arr(A_27a,A_27c))
     => ! [V3g_27: $i] :
          ( mem(V3g_27,arr(A_27d,A_27b))
         => ! [V6h: $i] : ( ap(f225(A_27a,A_27b,A_27c,A_27d,V0f,V3g_27),V6h) = f224(A_27b,A_27d,A_27c,A_27a,V6h,V0f,V3g_27) ) ) ) ).

tff(conj_thm_2Eind__type_2EISO__FUN,axiom,
    ! [A_27a: del,A_27b: del,A_27c: del,A_27d: del,V0f: $i] :
      ( mem(V0f,arr(A_27a,A_27c))
     => ! [V1f_27: $i] :
          ( mem(V1f_27,arr(A_27c,A_27a))
         => ! [V2g: $i] :
              ( mem(V2g,arr(A_27b,A_27d))
             => ! [V3g_27: $i] :
                  ( mem(V3g_27,arr(A_27d,A_27b))
                 => ( ( p(ap(ap(c_2Eind__type_2EISO(A_27a,A_27c),V0f),V1f_27))
                      & p(ap(ap(c_2Eind__type_2EISO(A_27b,A_27d),V2g),V3g_27)) )
                   => p(ap(ap(c_2Eind__type_2EISO(arr(A_27a,A_27b),arr(A_27c,A_27d)),f223(A_27c,A_27d,A_27a,A_27b,V1f_27,V2g)),f225(A_27a,A_27b,A_27c,A_27d,V0f,V3g_27))) ) ) ) ) ) ).

tff(conj_thm_2Eind__type_2EISO__USAGE,axiom,
    ! [A_27a: del,A_27b: del,V0f: $i] :
      ( mem(V0f,arr(A_27a,A_27b))
     => ! [V1g: $i] :
          ( mem(V1g,arr(A_27b,A_27a))
         => ( p(ap(ap(c_2Eind__type_2EISO(A_27a,A_27b),V0f),V1g))
           => ( ! [V2P: $i] :
                  ( mem(V2P,arr(A_27a,bool))
                 => ( ! [V3x: $i] :
                        ( mem(V3x,A_27a)
                       => p(ap(V2P,V3x)) )
                  <=> ! [V4x: $i] :
                        ( mem(V4x,A_27b)
                       => p(ap(V2P,ap(V1g,V4x))) ) ) )
              & ! [V5P: $i] :
                  ( mem(V5P,arr(A_27a,bool))
                 => ( ? [V6x: $i] :
                        ( mem(V6x,A_27a)
                        & p(ap(V5P,V6x)) )
                  <=> ? [V7x: $i] :
                        ( mem(V7x,A_27b)
                        & p(ap(V5P,ap(V1g,V7x))) ) ) )
              & ! [V8a: $i] :
                  ( mem(V8a,A_27a)
                 => ! [V9b: $i] :
                      ( mem(V9b,A_27b)
                     => ( ( V8a = ap(V1g,V9b) )
                      <=> ( ap(V0f,V8a) = V9b ) ) ) ) ) ) ) ) ).

%------------------------------------------------------------------------------