ITP001 Axioms: ITP039^5.ax


%------------------------------------------------------------------------------
% File     : ITP039^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    : defCNF^2.ax [Gau20]
%          : HL4039^5.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :   31 (   2 unt;  10 typ;   0 def)
%            Number of atoms       : 1410 (   4 equ;   0 cnn)
%            Maximal formula atoms :  261 (  45 avg)
%            Number of connectives : 1676 (   0   ~;   0   |;  25   &;1571   @)
%                                         (  23 <=>;  57  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   27 (  15 avg;1571 nst)
%            Number of types       :    3 (   2 usr)
%            Number of type conns  :    4 (   4   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   31 (  29 usr;  26 con; 0-2 aty)
%            Number of variables   :   95 (   0   ^  92   !;   3   ?;  95   :)
% SPC      : TH0_SAT_EQU_NAR

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(stp_c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,type,
    tp__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o: $tType ).

thf(stp_inj_c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,type,
    inj__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o: tp__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o > $i ).

thf(stp_surj_c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,type,
    surj__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o: $i > tp__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o ).

thf(stp_inj_surj_c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,axiom,
    ! [X: tp__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o] :
      ( ( surj__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ ( inj__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ X ) )
      = X ) ).

thf(stp_inj_mem_c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,axiom,
    ! [X: tp__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o] : ( mem @ ( inj__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ X ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ).

thf(stp_iso_mem_c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,axiom,
    ! [X: $i] :
      ( ( mem @ X @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) )
     => ( X
        = ( inj__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ ( surj__c_ty_2Epair_2Eprod_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ X ) ) ) ) ).

thf(stp_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,type,
    tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o: $tType ).

thf(stp_inj_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,type,
    inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o: tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o > $i ).

thf(stp_surj_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,type,
    surj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o: $i > tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o ).

thf(stp_inj_surj_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,axiom,
    ! [X: tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o] :
      ( ( surj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ ( inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ X ) )
      = X ) ).

thf(stp_inj_mem_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,axiom,
    ! [X: tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o] : ( mem @ ( inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ X ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ).

thf(stp_iso_mem_c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,axiom,
    ! [X: $i] :
      ( ( mem @ X @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) )
     => ( X
        = ( inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ ( surj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ X ) ) ) ) ).

thf(tp_c_2EdefCNF_2EDEF,type,
    c_2EdefCNF_2EDEF: $i ).

thf(mem_c_2EdefCNF_2EDEF,axiom,
    mem @ c_2EdefCNF_2EDEF @ ( arr @ ( arr @ ty_2Enum_2Enum @ bool ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ bool ) ) ) ).

thf(tp_c_2EdefCNF_2EOK,type,
    c_2EdefCNF_2EOK: $i ).

thf(mem_c_2EdefCNF_2EOK,axiom,
    mem @ c_2EdefCNF_2EOK @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ bool ) ) ).

thf(tp_c_2EdefCNF_2EOKDEF,type,
    c_2EdefCNF_2EOKDEF: $i ).

thf(mem_c_2EdefCNF_2EOKDEF,axiom,
    mem @ c_2EdefCNF_2EOKDEF @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( ty_2Elist_2Elist @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ bool ) ) ).

thf(tp_c_2EdefCNF_2EUNIQUE,type,
    c_2EdefCNF_2EUNIQUE: $i ).

thf(mem_c_2EdefCNF_2EUNIQUE,axiom,
    mem @ c_2EdefCNF_2EUNIQUE @ ( arr @ ( arr @ ty_2Enum_2Enum @ bool ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ bool ) ) ) ).

thf(conj_thm_2EdefCNF_2EUNIQUE__ind,axiom,
    ! [V0P: $i] :
      ( ( mem @ V0P @ ( arr @ ( arr @ ty_2Enum_2Enum @ bool ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ bool ) ) ) )
     => ( ( ! [V1v: $i] :
              ( ( mem @ V1v @ ( arr @ ty_2Enum_2Enum @ bool ) )
             => ! [V2n: tp__ty_2Enum_2Enum,V3conn: $i] :
                  ( ( mem @ V3conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
                 => ! [V4i: tp__ty_2Enum_2Enum,V5j: tp__ty_2Enum_2Enum] : ( p @ ( ap @ ( ap @ ( ap @ V0P @ V1v ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V3conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V4i ) ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V5j ) ) ) ) ) ) ) )
          & ! [V6v: $i] :
              ( ( mem @ V6v @ ( arr @ ty_2Enum_2Enum @ bool ) )
             => ! [V7n: tp__ty_2Enum_2Enum,V8conn: $i] :
                  ( ( mem @ V8conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
                 => ! [V9i: tp__ty_2Enum_2Enum,V10b: $i] :
                      ( ( mem @ V10b @ bool )
                     => ( p @ ( ap @ ( ap @ ( ap @ V0P @ V6v ) @ ( inj__ty_2Enum_2Enum @ V7n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V8conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V9i ) ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V10b ) ) ) ) ) ) ) )
          & ! [V11v: $i] :
              ( ( mem @ V11v @ ( arr @ ty_2Enum_2Enum @ bool ) )
             => ! [V12n: tp__ty_2Enum_2Enum,V13conn: $i] :
                  ( ( mem @ V13conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
                 => ! [V14a: $i] :
                      ( ( mem @ V14a @ bool )
                     => ! [V15j: tp__ty_2Enum_2Enum] : ( p @ ( ap @ ( ap @ ( ap @ V0P @ V11v ) @ ( inj__ty_2Enum_2Enum @ V12n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V13conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V14a ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V15j ) ) ) ) ) ) ) ) )
          & ! [V16v: $i] :
              ( ( mem @ V16v @ ( arr @ ty_2Enum_2Enum @ bool ) )
             => ! [V17n: tp__ty_2Enum_2Enum,V18conn: $i] :
                  ( ( mem @ V18conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
                 => ! [V19a: $i] :
                      ( ( mem @ V19a @ bool )
                     => ! [V20b: $i] :
                          ( ( mem @ V20b @ bool )
                         => ( p @ ( ap @ ( ap @ ( ap @ V0P @ V16v ) @ ( inj__ty_2Enum_2Enum @ V17n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V18conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V19a ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V20b ) ) ) ) ) ) ) ) ) )
       => ! [V21v: $i] :
            ( ( mem @ V21v @ ( arr @ ty_2Enum_2Enum @ bool ) )
           => ! [V22v1: tp__ty_2Enum_2Enum,V23v2: $i] :
                ( ( mem @ V23v2 @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
               => ! [V24v3: tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,V25v4: tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o] : ( p @ ( ap @ ( ap @ ( ap @ V0P @ V21v ) @ ( inj__ty_2Enum_2Enum @ V22v1 ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V23v2 ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ V24v3 ) ) @ ( inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ V25v4 ) ) ) ) ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2EUNIQUE__def,axiom,
    ! [V0v: $i] :
      ( ( mem @ V0v @ ( arr @ ty_2Enum_2Enum @ bool ) )
     => ! [V1n: tp__ty_2Enum_2Enum,V2conn: $i] :
          ( ( mem @ V2conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
         => ! [V3i: tp__ty_2Enum_2Enum,V4j: tp__ty_2Enum_2Enum,V5b: $i] :
              ( ( mem @ V5b @ bool )
             => ! [V6a: $i] :
                  ( ( mem @ V6a @ bool )
                 => ( ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EUNIQUE @ V0v ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V2conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V3i ) ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V4j ) ) ) ) ) )
                    <=> ( ( p @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
                      <=> ( p @ ( ap @ ( ap @ V2conn @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V3i ) ) ) @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V4j ) ) ) ) ) )
                    & ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EUNIQUE @ V0v ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V2conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V3i ) ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V5b ) ) ) ) )
                    <=> ( ( p @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
                      <=> ( p @ ( ap @ ( ap @ V2conn @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V3i ) ) ) @ V5b ) ) ) )
                    & ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EUNIQUE @ V0v ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V2conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V6a ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V4j ) ) ) ) ) )
                    <=> ( ( p @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
                      <=> ( p @ ( ap @ ( ap @ V2conn @ V6a ) @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V4j ) ) ) ) ) )
                    & ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EUNIQUE @ V0v ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V2conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V6a ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V5b ) ) ) ) )
                    <=> ( ( p @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
                      <=> ( p @ ( ap @ ( ap @ V2conn @ V6a ) @ V5b ) ) ) ) ) ) ) ) ) ).

thf(ax_thm_2EdefCNF_2EDEF__def,axiom,
    ( ! [V0v: $i] :
        ( ( mem @ V0v @ ( arr @ ty_2Enum_2Enum @ bool ) )
       => ! [V1n: tp__ty_2Enum_2Enum] :
            ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EDEF @ V0v ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( c_2Elist_2ENIL @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) ) )
          <=> $true ) )
    & ! [V2v: $i] :
        ( ( mem @ V2v @ ( arr @ ty_2Enum_2Enum @ bool ) )
       => ! [V3n: tp__ty_2Enum_2Enum,V4x: $i] :
            ( ( mem @ V4x @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) )
           => ! [V5xs: $i] :
                ( ( mem @ V5xs @ ( ty_2Elist_2Elist @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) )
               => ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EDEF @ V2v ) @ ( inj__ty_2Enum_2Enum @ V3n ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ V4x ) @ V5xs ) ) )
                <=> ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EUNIQUE @ V2v ) @ ( inj__ty_2Enum_2Enum @ V3n ) ) @ V4x ) )
                    & ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EDEF @ V2v ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V3n ) ) ) @ V5xs ) ) ) ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2EOK__ind,axiom,
    ! [V0P: $i] :
      ( ( mem @ V0P @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ bool ) ) )
     => ( ( ! [V1n: tp__ty_2Enum_2Enum,V2conn: $i] :
              ( ( mem @ V2conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
             => ! [V3i: tp__ty_2Enum_2Enum,V4j: tp__ty_2Enum_2Enum] : ( p @ ( ap @ ( ap @ V0P @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V2conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V3i ) ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V4j ) ) ) ) ) ) )
          & ! [V5n: tp__ty_2Enum_2Enum,V6conn: $i] :
              ( ( mem @ V6conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
             => ! [V7i: tp__ty_2Enum_2Enum,V8b: $i] :
                  ( ( mem @ V8b @ bool )
                 => ( p @ ( ap @ ( ap @ V0P @ ( inj__ty_2Enum_2Enum @ V5n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V6conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V7i ) ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V8b ) ) ) ) ) ) )
          & ! [V9n: tp__ty_2Enum_2Enum,V10conn: $i] :
              ( ( mem @ V10conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
             => ! [V11a: $i] :
                  ( ( mem @ V11a @ bool )
                 => ! [V12j: tp__ty_2Enum_2Enum] : ( p @ ( ap @ ( ap @ V0P @ ( inj__ty_2Enum_2Enum @ V9n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V10conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V11a ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V12j ) ) ) ) ) ) ) )
          & ! [V13n: tp__ty_2Enum_2Enum,V14conn: $i] :
              ( ( mem @ V14conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
             => ! [V15a: $i] :
                  ( ( mem @ V15a @ bool )
                 => ! [V16b: $i] :
                      ( ( mem @ V16b @ bool )
                     => ( p @ ( ap @ ( ap @ V0P @ ( inj__ty_2Enum_2Enum @ V13n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V14conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V15a ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V16b ) ) ) ) ) ) ) ) )
       => ! [V17v: tp__ty_2Enum_2Enum,V18v1: $i] :
            ( ( mem @ V18v1 @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
           => ! [V19v2: tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o,V20v3: tp__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o] : ( p @ ( ap @ ( ap @ V0P @ ( inj__ty_2Enum_2Enum @ V17v ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V18v1 ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ V19v2 ) ) @ ( inj__c_ty_2Esum_2Esum_ty_2Enum_2Enum_o @ V20v3 ) ) ) ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2EOK__def,axiom,
    ! [V0n: tp__ty_2Enum_2Enum,V1conn: $i] :
      ( ( mem @ V1conn @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
     => ! [V2i: tp__ty_2Enum_2Enum,V3j: tp__ty_2Enum_2Enum,V4b: $i] :
          ( ( mem @ V4b @ bool )
         => ! [V5a: $i] :
              ( ( mem @ V5a @ bool )
             => ( ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOK @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V1conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V2i ) ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V3j ) ) ) ) ) )
                <=> ( ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V2i ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
                    & ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V3j ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
                & ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOK @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V1conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V2i ) ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V4b ) ) ) ) )
                <=> ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V2i ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
                & ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOK @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V1conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V5a ) ) @ ( ap @ ( c_2Esum_2EINL @ ty_2Enum_2Enum @ bool ) @ ( inj__ty_2Enum_2Enum @ V3j ) ) ) ) ) )
                <=> ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V3j ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
                & ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOK @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) @ V1conn ) @ ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V5a ) ) @ ( ap @ ( c_2Esum_2EINR @ ty_2Enum_2Enum @ bool ) @ V4b ) ) ) ) )
                <=> $true ) ) ) ) ) ).

thf(ax_thm_2EdefCNF_2EOKDEF__def,axiom,
    ( ! [V0n: tp__ty_2Enum_2Enum] :
        ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOKDEF @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( c_2Elist_2ENIL @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) ) )
      <=> $true )
    & ! [V1n: tp__ty_2Enum_2Enum,V2x: $i] :
        ( ( mem @ V2x @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) )
       => ! [V3xs: $i] :
            ( ( mem @ V3xs @ ( ty_2Elist_2Elist @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) )
           => ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOKDEF @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ V2x ) @ V3xs ) ) )
            <=> ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOK @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ V2x ) )
                & ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOKDEF @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) @ V3xs ) ) ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2EDEF__SNOC,axiom,
    ! [V0n: tp__ty_2Enum_2Enum,V1x: $i] :
      ( ( mem @ V1x @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) )
     => ! [V2l: $i] :
          ( ( mem @ V2l @ ( ty_2Elist_2Elist @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) )
         => ! [V3v: $i] :
              ( ( mem @ V3v @ ( arr @ ty_2Enum_2Enum @ bool ) )
             => ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EDEF @ V3v ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( ap @ ( c_2Elist_2ESNOC @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ V1x ) @ V2l ) ) )
              <=> ( ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EDEF @ V3v ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ V2l ) )
                  & ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EUNIQUE @ V3v ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( c_2Elist_2ELENGTH @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ V2l ) ) ) @ V1x ) ) ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2EOKDEF__SNOC,axiom,
    ! [V0n: tp__ty_2Enum_2Enum,V1x: $i] :
      ( ( mem @ V1x @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) )
     => ! [V2l: $i] :
          ( ( mem @ V2l @ ( ty_2Elist_2Elist @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) )
         => ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOKDEF @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( ap @ ( c_2Elist_2ESNOC @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ V1x ) @ V2l ) ) )
          <=> ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOKDEF @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ V2l ) )
              & ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOK @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ ( c_2Elist_2ELENGTH @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) @ V2l ) ) ) @ V1x ) ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2ECONSISTENCY,axiom,
    ! [V0n: tp__ty_2Enum_2Enum,V1l: $i] :
      ( ( mem @ V1l @ ( ty_2Elist_2Elist @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) )
     => ( ( p @ ( ap @ ( ap @ c_2EdefCNF_2EOKDEF @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ V1l ) )
       => ? [V2v: $i] :
            ( ( mem @ V2v @ ( arr @ ty_2Enum_2Enum @ bool ) )
            & ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EDEF @ V2v ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ V1l ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2EBIGSTEP,axiom,
    ! [V0P: $i] :
      ( ( mem @ V0P @ ( arr @ ( arr @ ty_2Enum_2Enum @ bool ) @ bool ) )
     => ! [V1Q: $i] :
          ( ( mem @ V1Q @ bool )
         => ! [V2R: $i] :
              ( ( mem @ V2R @ ( arr @ ( arr @ ty_2Enum_2Enum @ bool ) @ bool ) )
             => ( ! [V3v: $i] :
                    ( ( mem @ V3v @ ( arr @ ty_2Enum_2Enum @ bool ) )
                   => ( ( p @ ( ap @ V0P @ V3v ) )
                     => ( ( p @ V1Q )
                      <=> ( p @ ( ap @ V2R @ V3v ) ) ) ) )
               => ( ( ? [V4v: $i] :
                        ( ( mem @ V4v @ ( arr @ ty_2Enum_2Enum @ bool ) )
                        & ( p @ ( ap @ V0P @ V4v ) ) )
                    & ( p @ V1Q ) )
                <=> ? [V5v: $i] :
                      ( ( mem @ V5v @ ( arr @ ty_2Enum_2Enum @ bool ) )
                      & ( p @ ( ap @ V0P @ V5v ) )
                      & ( p @ ( ap @ V2R @ V5v ) ) ) ) ) ) ) ) ).

thf(conj_thm_2EdefCNF_2EFINAL__DEF,axiom,
    ! [V0v: $i] :
      ( ( mem @ V0v @ ( arr @ ty_2Enum_2Enum @ bool ) )
     => ! [V1n: tp__ty_2Enum_2Enum,V2x: $i] :
          ( ( mem @ V2x @ bool )
         => ( ( ( p @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
            <=> ( p @ V2x ) )
          <=> ( ( ( p @ ( ap @ V0v @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
              <=> ( p @ V2x ) )
              & ( p @ ( ap @ ( ap @ ( ap @ c_2EdefCNF_2EDEF @ V0v ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) @ ( c_2Elist_2ENIL @ ( ty_2Epair_2Eprod @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( ty_2Epair_2Eprod @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) @ ( ty_2Esum_2Esum @ ty_2Enum_2Enum @ bool ) ) ) ) ) ) ) ) ) ) ).

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