ITP001 Axioms: ITP031^5.ax
%------------------------------------------------------------------------------
% File : ITP031^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 : numeral_bit^2.ax [Gau20]
% : HL4031^5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 66 ( 15 unt; 14 typ; 0 def)
% Number of atoms : 2217 ( 93 equ; 0 cnn)
% Maximal formula atoms : 49 ( 33 avg)
% Number of connectives : 2574 ( 1 ~; 0 |; 56 &;2484 @)
% ( 6 <=>; 27 =>; 0 <=; 0 <~>)
% Maximal formula depth : 15 ( 5 avg;2484 nst)
% Number of types : 1 ( 0 usr)
% Number of type conns : 8 ( 8 >; 0 *; 0 +; 0 <<)
% Number of symbols : 61 ( 59 usr; 55 con; 0-3 aty)
% Number of variables : 184 ( 2 ^ 182 !; 0 ?; 184 :)
% SPC : TH0_SAT_EQU_NAR
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tp_c_2Enumeral__bit_2EBIT__MODF,type,
c_2Enumeral__bit_2EBIT__MODF: $i ).
thf(mem_c_2Enumeral__bit_2EBIT__MODF,axiom,
mem @ c_2Enumeral__bit_2EBIT__MODF @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ) ) ) ) ) ).
thf(tp_c_2Enumeral__bit_2EBIT__REV,type,
c_2Enumeral__bit_2EBIT__REV: $i ).
thf(mem_c_2Enumeral__bit_2EBIT__REV,axiom,
mem @ c_2Enumeral__bit_2EBIT__REV @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ) ) ).
thf(stp_fo_c_2Enumeral__bit_2EBIT__REV,type,
fo__c_2Enumeral__bit_2EBIT__REV: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).
thf(stp_eq_fo_c_2Enumeral__bit_2EBIT__REV,axiom,
! [X0: tp__ty_2Enum_2Enum,X1: tp__ty_2Enum_2Enum,X2: tp__ty_2Enum_2Enum] :
( ( inj__ty_2Enum_2Enum @ ( fo__c_2Enumeral__bit_2EBIT__REV @ X0 @ X1 @ X2 ) )
= ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( inj__ty_2Enum_2Enum @ X0 ) ) @ ( inj__ty_2Enum_2Enum @ X1 ) ) @ ( inj__ty_2Enum_2Enum @ X2 ) ) ) ).
thf(tp_c_2Enumeral__bit_2EFDUB,type,
c_2Enumeral__bit_2EFDUB: $i ).
thf(mem_c_2Enumeral__bit_2EFDUB,axiom,
mem @ c_2Enumeral__bit_2EFDUB @ ( arr @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ) ).
thf(tp_c_2Enumeral__bit_2ESFUNPOW,type,
c_2Enumeral__bit_2ESFUNPOW: $i ).
thf(mem_c_2Enumeral__bit_2ESFUNPOW,axiom,
mem @ c_2Enumeral__bit_2ESFUNPOW @ ( arr @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ) ) ).
thf(tp_c_2Enumeral__bit_2EiBITWISE,type,
c_2Enumeral__bit_2EiBITWISE: $i ).
thf(mem_c_2Enumeral__bit_2EiBITWISE,axiom,
mem @ c_2Enumeral__bit_2EiBITWISE @ ( arr @ ty_2Enum_2Enum @ ( arr @ ( arr @ bool @ ( arr @ bool @ bool ) ) @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ) ) ) ).
thf(tp_c_2Enumeral__bit_2EiDIV2,type,
c_2Enumeral__bit_2EiDIV2: $i ).
thf(mem_c_2Enumeral__bit_2EiDIV2,axiom,
mem @ c_2Enumeral__bit_2EiDIV2 @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ).
thf(stp_fo_c_2Enumeral__bit_2EiDIV2,type,
fo__c_2Enumeral__bit_2EiDIV2: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).
thf(stp_eq_fo_c_2Enumeral__bit_2EiDIV2,axiom,
! [X0: tp__ty_2Enum_2Enum] :
( ( inj__ty_2Enum_2Enum @ ( fo__c_2Enumeral__bit_2EiDIV2 @ X0 ) )
= ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( inj__ty_2Enum_2Enum @ X0 ) ) ) ).
thf(tp_c_2Enumeral__bit_2EiLOG2,type,
c_2Enumeral__bit_2EiLOG2: $i ).
thf(mem_c_2Enumeral__bit_2EiLOG2,axiom,
mem @ c_2Enumeral__bit_2EiLOG2 @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ).
thf(stp_fo_c_2Enumeral__bit_2EiLOG2,type,
fo__c_2Enumeral__bit_2EiLOG2: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).
thf(stp_eq_fo_c_2Enumeral__bit_2EiLOG2,axiom,
! [X0: tp__ty_2Enum_2Enum] :
( ( inj__ty_2Enum_2Enum @ ( fo__c_2Enumeral__bit_2EiLOG2 @ X0 ) )
= ( ap @ c_2Enumeral__bit_2EiLOG2 @ ( inj__ty_2Enum_2Enum @ X0 ) ) ) ).
thf(tp_c_2Enumeral__bit_2EiMOD__2EXP,type,
c_2Enumeral__bit_2EiMOD__2EXP: $i ).
thf(mem_c_2Enumeral__bit_2EiMOD__2EXP,axiom,
mem @ c_2Enumeral__bit_2EiMOD__2EXP @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ) ).
thf(stp_fo_c_2Enumeral__bit_2EiMOD__2EXP,type,
fo__c_2Enumeral__bit_2EiMOD__2EXP: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).
thf(stp_eq_fo_c_2Enumeral__bit_2EiMOD__2EXP,axiom,
! [X0: tp__ty_2Enum_2Enum,X1: tp__ty_2Enum_2Enum] :
( ( inj__ty_2Enum_2Enum @ ( fo__c_2Enumeral__bit_2EiMOD__2EXP @ X0 @ X1 ) )
= ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( inj__ty_2Enum_2Enum @ X0 ) ) @ ( inj__ty_2Enum_2Enum @ X1 ) ) ) ).
thf(tp_c_2Enumeral__bit_2EiSUC,type,
c_2Enumeral__bit_2EiSUC: $i ).
thf(mem_c_2Enumeral__bit_2EiSUC,axiom,
mem @ c_2Enumeral__bit_2EiSUC @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ).
thf(stp_fo_c_2Enumeral__bit_2EiSUC,type,
fo__c_2Enumeral__bit_2EiSUC: tp__ty_2Enum_2Enum > tp__ty_2Enum_2Enum ).
thf(stp_eq_fo_c_2Enumeral__bit_2EiSUC,axiom,
! [X0: tp__ty_2Enum_2Enum] :
( ( inj__ty_2Enum_2Enum @ ( fo__c_2Enumeral__bit_2EiSUC @ X0 ) )
= ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ X0 ) ) ) ).
thf(ax_thm_2Enumeral__bit_2EiMOD__2EXP,axiom,
c_2Enumeral__bit_2EiMOD__2EXP = c_2Ebit_2EMOD__2EXP ).
thf(conj_thm_2Enumeral__bit_2Enumeral__imod__2exp,axiom,
! [A_27a: del] :
( ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
= fo__c_2Earithmetic_2EZERO )
& ! [V1x: tp__ty_2Enum_2Enum,V2n: $i] :
( ( mem @ V2n @ A_27a )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( inj__ty_2Enum_2Enum @ V1x ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) )
= fo__c_2Earithmetic_2EZERO ) )
& ! [V3x: tp__ty_2Enum_2Enum,V4n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) ) @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2EBIT1 @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) )
& ! [V5x: tp__ty_2Enum_2Enum,V6n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V5x ) ) ) ) @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V6n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2EBIT1 @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V5x ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V6n ) ) ) ) )
& ! [V7x: tp__ty_2Enum_2Enum,V8n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V7x ) ) ) ) @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V8n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral_2EiDUB @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V7x ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V8n ) ) ) ) ) )
& ! [V9x: tp__ty_2Enum_2Enum,V10n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V9x ) ) ) ) @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V10n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral_2EiDUB @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V9x ) ) ) ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V10n ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EMOD__2EXP,axiom,
( ! [V0x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= fo__c_2Enum_2E0 )
& ! [V1x: tp__ty_2Enum_2Enum,V2n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP @ ( inj__ty_2Enum_2Enum @ V1x ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ c_2Enumeral__bit_2EiMOD__2EXP @ ( inj__ty_2Enum_2Enum @ V1x ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EDIV__2EXP,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EDIV__2EXP @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( inj__ty_2Enum_2Enum @ V1x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( c_2Earithmetic_2EFUNPOW @ ty_2Enum_2Enum ) @ c_2Earithmetic_2EDIV2 ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( inj__ty_2Enum_2Enum @ V1x ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2Enumeral__mod2,axiom,
( ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2EMOD @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) )
= fo__c_2Enum_2E0 )
& ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2EMOD @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) )
& ! [V1n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2EMOD @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) )
= fo__c_2Enum_2E0 ) ) ).
thf(conj_thm_2Enumeral__bit_2EiDUB__NUMERAL,axiom,
! [V0i: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral_2EiDUB @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V0i ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V0i ) ) ) ) ) ).
thf(ax_thm_2Enumeral__bit_2EBIT__REV__def,axiom,
( ! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ ( inj__ty_2Enum_2Enum @ V1y ) ) )
= V1y )
& ! [V2n: tp__ty_2Enum_2Enum,V3x: tp__ty_2Enum_2Enum,V4y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) @ ( inj__ty_2Enum_2Enum @ V3x ) ) @ ( inj__ty_2Enum_2Enum @ V4y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( inj__ty_2Enum_2Enum @ V3x ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( 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 @ V4y ) ) ) @ ( ap @ ( ap @ c_2Ebit_2ESBIT @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EBIT__REVERSE__EVAL,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EBIT__REVERSE @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) ).
thf(ax_thm_2Enumeral__bit_2EBIT__MODF__def,axiom,
( ! [V0f: $i] :
( ( mem @ V0f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V1x: tp__ty_2Enum_2Enum,V2b: tp__ty_2Enum_2Enum,V3e: tp__ty_2Enum_2Enum,V4y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ V0f ) @ ( inj__ty_2Enum_2Enum @ V1x ) ) @ ( inj__ty_2Enum_2Enum @ V2b ) ) @ ( inj__ty_2Enum_2Enum @ V3e ) ) @ ( inj__ty_2Enum_2Enum @ V4y ) ) )
= V4y ) )
& ! [V5n: tp__ty_2Enum_2Enum,V6f: $i] :
( ( mem @ V6f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V7x: tp__ty_2Enum_2Enum,V8b: tp__ty_2Enum_2Enum,V9e: tp__ty_2Enum_2Enum,V10y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V5n ) ) ) @ V6f ) @ ( inj__ty_2Enum_2Enum @ V7x ) ) @ ( inj__ty_2Enum_2Enum @ V8b ) ) @ ( inj__ty_2Enum_2Enum @ V9e ) ) @ ( inj__ty_2Enum_2Enum @ V10y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( inj__ty_2Enum_2Enum @ V5n ) ) @ V6f ) @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( inj__ty_2Enum_2Enum @ V7x ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V8b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( 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 @ V9e ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ V6f @ ( inj__ty_2Enum_2Enum @ V8b ) ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V7x ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V9e ) ) @ ( inj__ty_2Enum_2Enum @ V10y ) ) ) @ ( inj__ty_2Enum_2Enum @ V10y ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EBIT__MODIFY__EVAL,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1f: $i] :
( ( mem @ V1f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V2n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EBIT__MODIFY @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1f ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V1f ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) ) ).
thf(ax_thm_2Enumeral__bit_2EiBITWISE__def,axiom,
c_2Enumeral__bit_2EiBITWISE = c_2Ebit_2EBITWISE ).
thf(conj_thm_2Enumeral__bit_2EiBITWISE,axiom,
( ! [V0opr: $i] :
( ( mem @ V0opr @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
=> ! [V1a: tp__ty_2Enum_2Enum,V2b: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ V0opr ) @ ( inj__ty_2Enum_2Enum @ V1a ) ) @ ( inj__ty_2Enum_2Enum @ V2b ) ) )
= fo__c_2Earithmetic_2EZERO ) )
& ! [V3x: tp__ty_2Enum_2Enum,V4opr: $i] :
( ( mem @ V4opr @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
=> ! [V5a: tp__ty_2Enum_2Enum,V6b: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) ) @ V4opr ) @ ( inj__ty_2Enum_2Enum @ V5a ) ) @ ( inj__ty_2Enum_2Enum @ V6b ) ) )
= ( surj__ty_2Enum_2Enum
@ ( ap
@ ( ap @ ( c_2Ebool_2ELET @ ty_2Enum_2Enum @ ty_2Enum_2Enum )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V7w: $i] : ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ V4opr @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V5a ) ) ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V6b ) ) ) ) @ ( ap @ c_2Earithmetic_2EBIT1 @ V7w ) ) @ ( ap @ c_2Enumeral_2EiDUB @ V7w ) ) ) )
@ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ V4opr ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V5a ) ) ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V6b ) ) ) ) ) ) )
& ! [V8x: tp__ty_2Enum_2Enum,V9opr: $i] :
( ( mem @ V9opr @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
=> ! [V10a: tp__ty_2Enum_2Enum,V11b: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V8x ) ) ) ) @ V9opr ) @ ( inj__ty_2Enum_2Enum @ V10a ) ) @ ( inj__ty_2Enum_2Enum @ V11b ) ) )
= ( surj__ty_2Enum_2Enum
@ ( ap
@ ( ap @ ( c_2Ebool_2ELET @ ty_2Enum_2Enum @ ty_2Enum_2Enum )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V12w: $i] : ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ V9opr @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V10a ) ) ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V11b ) ) ) ) @ ( ap @ c_2Earithmetic_2EBIT1 @ V12w ) ) @ ( ap @ c_2Enumeral_2EiDUB @ V12w ) ) ) )
@ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V8x ) ) ) ) @ V9opr ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V10a ) ) ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V11b ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__BITWISE,axiom,
! [A_27a: del] :
( ! [V0x: tp__ty_2Enum_2Enum,V1f: $i] :
( ( mem @ V1f @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
=> ! [V2a: $i] :
( ( mem @ V2a @ A_27a )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EBITWISE @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ V1f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ V1f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) ) ) )
& ! [V3x: tp__ty_2Enum_2Enum,V4f: $i] :
( ( mem @ V4f @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
=> ! [V5a: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EBITWISE @ ( inj__ty_2Enum_2Enum @ V3x ) ) @ V4f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V5a ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( inj__ty_2Enum_2Enum @ V3x ) ) @ V4f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V5a ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) ) )
& ! [V6x: tp__ty_2Enum_2Enum,V7f: $i] :
( ( mem @ V7f @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
=> ! [V8b: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EBITWISE @ ( inj__ty_2Enum_2Enum @ V6x ) ) @ V7f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V8b ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( inj__ty_2Enum_2Enum @ V6x ) ) @ V7f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V8b ) ) ) ) ) ) )
& ! [V9x: tp__ty_2Enum_2Enum,V10f: $i] :
( ( mem @ V10f @ ( arr @ bool @ ( arr @ bool @ bool ) ) )
=> ! [V11a: tp__ty_2Enum_2Enum,V12b: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EBITWISE @ ( inj__ty_2Enum_2Enum @ V9x ) ) @ V10f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V11a ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V12b ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EiBITWISE @ ( inj__ty_2Enum_2Enum @ V9x ) ) @ V10f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V11a ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V12b ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__BIT__REV,axiom,
( ! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ ( inj__ty_2Enum_2Enum @ V1y ) ) )
= V1y )
& ! [V2n: tp__ty_2Enum_2Enum,V3y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V3y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V3y ) ) ) ) )
& ! [V4n: tp__ty_2Enum_2Enum,V5y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V5y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V5y ) ) ) ) )
& ! [V6n: tp__ty_2Enum_2Enum,V7x: tp__ty_2Enum_2Enum,V8y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V6n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V7x ) ) ) @ ( inj__ty_2Enum_2Enum @ V8y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V6n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V7x ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V7x ) ) ) @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V8y ) ) ) @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V8y ) ) ) ) ) )
& ! [V9n: tp__ty_2Enum_2Enum,V10x: tp__ty_2Enum_2Enum,V11y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V9n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V10x ) ) ) @ ( inj__ty_2Enum_2Enum @ V11y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V9n ) ) ) ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V10x ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V10x ) ) ) @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V11y ) ) ) @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V11y ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__BIT__REVERSE,axiom,
( ! [V0m: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EBIT__REVERSE @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) )
& ! [V1n: tp__ty_2Enum_2Enum,V2m: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EBIT__REVERSE @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2m ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__REV @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2m ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__BIT__MODF,axiom,
( ! [V0f: $i] :
( ( mem @ V0f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V1x: tp__ty_2Enum_2Enum,V2b: tp__ty_2Enum_2Enum,V3e: tp__ty_2Enum_2Enum,V4y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ V0f ) @ ( inj__ty_2Enum_2Enum @ V1x ) ) @ ( inj__ty_2Enum_2Enum @ V2b ) ) @ ( inj__ty_2Enum_2Enum @ V3e ) ) @ ( inj__ty_2Enum_2Enum @ V4y ) ) )
= V4y ) )
& ! [V5n: tp__ty_2Enum_2Enum,V6f: $i] :
( ( mem @ V6f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V7b: tp__ty_2Enum_2Enum,V8e: tp__ty_2Enum_2Enum,V9y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V5n ) ) ) ) @ V6f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V7b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V8e ) ) ) @ ( inj__ty_2Enum_2Enum @ V9y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V5n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ V6f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V7b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V8e ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ V6f @ ( inj__ty_2Enum_2Enum @ V7b ) ) @ c_2Ebool_2EF ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V8e ) ) ) @ ( inj__ty_2Enum_2Enum @ V9y ) ) ) @ ( inj__ty_2Enum_2Enum @ V9y ) ) ) ) ) )
& ! [V10n: tp__ty_2Enum_2Enum,V11f: $i] :
( ( mem @ V11f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V12b: tp__ty_2Enum_2Enum,V13e: tp__ty_2Enum_2Enum,V14y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V10n ) ) ) ) @ V11f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V12b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V13e ) ) ) @ ( inj__ty_2Enum_2Enum @ V14y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V10n ) ) ) ) @ V11f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V12b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V13e ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ V11f @ ( inj__ty_2Enum_2Enum @ V12b ) ) @ c_2Ebool_2EF ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V13e ) ) ) @ ( inj__ty_2Enum_2Enum @ V14y ) ) ) @ ( inj__ty_2Enum_2Enum @ V14y ) ) ) ) ) )
& ! [V15n: tp__ty_2Enum_2Enum,V16f: $i] :
( ( mem @ V16f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V17x: tp__ty_2Enum_2Enum,V18b: tp__ty_2Enum_2Enum,V19e: tp__ty_2Enum_2Enum,V20y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V15n ) ) ) ) @ V16f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V17x ) ) ) @ ( inj__ty_2Enum_2Enum @ V18b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V19e ) ) ) @ ( inj__ty_2Enum_2Enum @ V20y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V15n ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ V16f ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V17x ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V18b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V19e ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ V16f @ ( inj__ty_2Enum_2Enum @ V18b ) ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V17x ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V19e ) ) ) @ ( inj__ty_2Enum_2Enum @ V20y ) ) ) @ ( inj__ty_2Enum_2Enum @ V20y ) ) ) ) ) )
& ! [V21n: tp__ty_2Enum_2Enum,V22f: $i] :
( ( mem @ V22f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V23x: tp__ty_2Enum_2Enum,V24b: tp__ty_2Enum_2Enum,V25e: tp__ty_2Enum_2Enum,V26y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V21n ) ) ) ) @ V22f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V23x ) ) ) @ ( inj__ty_2Enum_2Enum @ V24b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V25e ) ) ) @ ( inj__ty_2Enum_2Enum @ V26y ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V21n ) ) ) ) @ V22f ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V23x ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V24b ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V25e ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ V22f @ ( inj__ty_2Enum_2Enum @ V24b ) ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V23x ) ) ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V25e ) ) ) @ ( inj__ty_2Enum_2Enum @ V26y ) ) ) @ ( inj__ty_2Enum_2Enum @ V26y ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__BIT__MODIFY,axiom,
( ! [V0m: tp__ty_2Enum_2Enum,V1f: $i] :
( ( mem @ V1f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EBIT__MODIFY @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) @ V1f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) @ V1f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) )
& ! [V2m: tp__ty_2Enum_2Enum,V3f: $i] :
( ( mem @ V3f @ ( arr @ ty_2Enum_2Enum @ ( arr @ bool @ bool ) ) )
=> ! [V4n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EBIT__MODIFY @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2m ) ) ) @ V3f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2EBIT__MODF @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2m ) ) ) @ V3f ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) ) ) ).
thf(ax_thm_2Enumeral__bit_2EiSUC,axiom,
c_2Enumeral__bit_2EiSUC = c_2Enum_2ESUC ).
thf(ax_thm_2Enumeral__bit_2EiDIV2,axiom,
c_2Enumeral__bit_2EiDIV2 = c_2Earithmetic_2EDIV2 ).
thf(ax_thm_2Enumeral__bit_2ESFUNPOW__def,axiom,
( ! [V0f: $i] :
( ( mem @ V0f @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) )
=> ! [V1x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ V0f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V1x ) ) )
= V1x ) )
& ! [V2f: $i] :
( ( mem @ V2f @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) )
=> ! [V3n: tp__ty_2Enum_2Enum,V4x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ V2f ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V3n ) ) ) @ ( inj__ty_2Enum_2Enum @ V4x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V4x ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ V2f ) @ ( inj__ty_2Enum_2Enum @ V3n ) ) @ ( ap @ V2f @ ( inj__ty_2Enum_2Enum @ V4x ) ) ) ) ) ) ) ) ).
thf(ax_thm_2Enumeral__bit_2EFDUB__def,axiom,
( ! [V0f: $i] :
( ( mem @ V0f @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= fo__c_2Enum_2E0 ) )
& ! [V1f: $i] :
( ( mem @ V1f @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) )
=> ! [V2n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V1f ) @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ V1f @ ( ap @ V1f @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__TIMES__2EXP,axiom,
( ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2ETIMES__2EXP @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= fo__c_2Enum_2E0 )
& ! [V1n: tp__ty_2Enum_2Enum,V2x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2ETIMES__2EXP @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2x ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral_2EiDUB ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( inj__ty_2Enum_2Enum @ V2x ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__iDIV2,axiom,
! [V0n: tp__ty_2Enum_2Enum] :
( ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) )
= fo__c_2Earithmetic_2EZERO )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) )
= fo__c_2Earithmetic_2EZERO )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
= V0n )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
& ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__DIV__2EXP,axiom,
( ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EDIV__2EXP @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= fo__c_2Enum_2E0 )
& ! [V1n: tp__ty_2Enum_2Enum,V2x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Ebit_2EDIV__2EXP @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2x ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral__bit_2EiDIV2 ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( inj__ty_2Enum_2Enum @ V2x ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__SFUNPOW__iDIV2,axiom,
( ! [V0x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral__bit_2EiDIV2 ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) )
= V0x )
& ! [V1y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral__bit_2EiDIV2 ) @ ( inj__ty_2Enum_2Enum @ V1y ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= fo__c_2Enum_2E0 )
& ! [V2n: tp__ty_2Enum_2Enum,V3x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral__bit_2EiDIV2 ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V3x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ c_2Enumeral__bit_2EiDIV2 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) ) )
& ! [V4n: tp__ty_2Enum_2Enum,V5x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral__bit_2EiDIV2 ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V5x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ c_2Enumeral__bit_2EiDIV2 ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( inj__ty_2Enum_2Enum @ V5x ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__SFUNPOW__iDUB,axiom,
( ! [V0x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral_2EiDUB ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) )
= V0x )
& ! [V1y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral_2EiDUB ) @ ( inj__ty_2Enum_2Enum @ V1y ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= fo__c_2Enum_2E0 )
& ! [V2n: tp__ty_2Enum_2Enum,V3x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral_2EiDUB ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V3x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ c_2Enumeral_2EiDUB ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) ) )
& ! [V4n: tp__ty_2Enum_2Enum,V5x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ c_2Enumeral_2EiDUB ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V5x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ c_2Enumeral_2EiDUB ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) @ ( ap @ c_2Enumeral_2EiDUB @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V5x ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ENUMERAL__SFUNPOW__FDUB,axiom,
! [V0f: $i] :
( ( mem @ V0f @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) )
=> ( ! [V1x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V1x ) ) )
= V1x )
& ! [V2y: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( inj__ty_2Enum_2Enum @ V2y ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) )
= fo__c_2Enum_2E0 )
& ! [V3n: tp__ty_2Enum_2Enum,V4x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V3n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V4x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V3n ) ) ) @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( inj__ty_2Enum_2Enum @ V4x ) ) ) ) )
& ! [V5n: tp__ty_2Enum_2Enum,V6x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V5n ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V6x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ c_2Enumeral__bit_2ESFUNPOW @ ( ap @ c_2Enumeral__bit_2EFDUB @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( inj__ty_2Enum_2Enum @ V5n ) ) ) @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( inj__ty_2Enum_2Enum @ V6x ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EFDUB__iDIV2,axiom,
! [V0x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ c_2Enumeral__bit_2EiDIV2 ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( ap @ c_2Enumeral__bit_2EiDIV2 @ ( inj__ty_2Enum_2Enum @ V0x ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EFDUB__iDUB,axiom,
! [V0x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ c_2Enumeral_2EiDUB ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral_2EiDUB @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V0x ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EFDUB__FDUB,axiom,
! [V0f: $i] :
( ( mem @ V0f @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) )
=> ( ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) )
= fo__c_2Earithmetic_2EZERO )
& ! [V1x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ V1x ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( ap @ c_2Enumeral__bit_2EiSUC @ ( inj__ty_2Enum_2Enum @ V1x ) ) ) ) ) )
& ! [V2x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2x ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V2x ) ) ) ) ) )
& ! [V3x: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) ) @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( ap @ ( ap @ c_2Enumeral__bit_2EFDUB @ V0f ) @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V3x ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ELOG__compute,axiom,
! [V0base_20_3C_202_20or_20n_20_3D_200: $i] :
( ( mem @ V0base_20_3C_202_20or_20n_20_3D_200 @ bool )
=> ! [V1m: tp__ty_2Enum_2Enum,V2n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Elogroot_2ELOG @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ c_2Ebool_2E_5C_2F @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) @ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Ecombin_2EFAIL @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ty_2Enum_2Enum ) ) @ bool ) @ c_2Elogroot_2ELOG ) @ V0base_20_3C_202_20or_20n_20_3D_200 ) @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ c_2Enum_2ESUC @ ( ap @ ( ap @ c_2Elogroot_2ELOG @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( ap @ ( ap @ c_2Earithmetic_2EDIV @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) ) ) ) ).
thf(ax_thm_2Enumeral__bit_2EiLOG2__def,axiom,
! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiLOG2 @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Ebit_2ELOG2 @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2Enumeral__ilog2,axiom,
( ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiLOG2 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) )
= fo__c_2Enum_2E0 )
& ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiLOG2 @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
= ( 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 @ c_2Enumeral__bit_2EiLOG2 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
& ! [V1n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiLOG2 @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) )
= ( 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 @ c_2Enumeral__bit_2EiLOG2 @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2Enumeral__log2,axiom,
( ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Ebit_2ELOG2 @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiLOG2 @ ( ap @ c_2Enumeral_2EiDUB @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
& ! [V1n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Ebit_2ELOG2 @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enumeral__bit_2EiLOG2 @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2EMOD__2EXP__EQ,axiom,
( ! [V0a: tp__ty_2Enum_2Enum,V1b: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP__EQ @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0a ) ) @ ( inj__ty_2Enum_2Enum @ V1b ) ) )
<=> $true )
& ! [V2n: tp__ty_2Enum_2Enum,V3a: tp__ty_2Enum_2Enum,V4b: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP__EQ @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) @ ( inj__ty_2Enum_2Enum @ V3a ) ) @ ( inj__ty_2Enum_2Enum @ V4b ) ) )
<=> ( ( ( p @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V3a ) ) )
<=> ( p @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V4b ) ) ) )
& ( p @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP__EQ @ ( inj__ty_2Enum_2Enum @ V2n ) ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V3a ) ) ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V4b ) ) ) ) ) )
& ! [V5n: tp__ty_2Enum_2Enum,V6a: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP__EQ @ ( inj__ty_2Enum_2Enum @ V5n ) ) @ ( inj__ty_2Enum_2Enum @ V6a ) ) @ ( inj__ty_2Enum_2Enum @ V6a ) ) )
<=> $true ) ) ).
thf(conj_thm_2Enumeral__bit_2EMOD__2EXP__MAX,axiom,
( ! [V0a: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP__MAX @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V0a ) ) )
<=> $true )
& ! [V1n: tp__ty_2Enum_2Enum,V2a: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP__MAX @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) @ ( inj__ty_2Enum_2Enum @ V2a ) ) )
<=> ( ( p @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V2a ) ) )
& ( p @ ( ap @ ( ap @ c_2Ebit_2EMOD__2EXP__MAX @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V2a ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ELOWEST__SET__BIT,axiom,
! [V0n: tp__ty_2Enum_2Enum] :
( ( V0n != fo__c_2Enum_2E0 )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Ebit_2ELOWEST__SET__BIT @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Enum_2Enum ) @ ( ap @ c_2Earithmetic_2EODD @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) @ ( ap @ c_2Ebit_2ELOWEST__SET__BIT @ ( ap @ c_2Earithmetic_2EDIV2 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Enumeral__bit_2ELOWEST__SET__BIT__compute,axiom,
( ! [V0n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Ebit_2ELOWEST__SET__BIT @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ c_2Enum_2ESUC @ ( ap @ c_2Ebit_2ELOWEST__SET__BIT @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Enum_2ESUC @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) ) ) )
& ! [V1n: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ c_2Ebit_2ELOWEST__SET__BIT @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) )
= fo__c_2Enum_2E0 ) ) ).
%------------------------------------------------------------------------------