ITP001 Axioms: ITP120^5.ax


%------------------------------------------------------------------------------
% File     : ITP120^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    : intreal^2.ax [Gau20]
%          : HL4120^5.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :   35 (  13 unt;   7 typ;   0 def)
%            Number of atoms       :  644 (  28 equ;   0 cnn)
%            Maximal formula atoms :   27 (  18 avg)
%            Number of connectives :  741 (   0   ~;   0   |;  12   &; 720   @)
%                                         (   6 <=>;   3  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   15 (   6 avg; 720 nst)
%            Number of types       :    1 (   0 usr)
%            Number of type conns  :    3 (   3   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   51 (  50 usr;  47 con; 0-2 aty)
%            Number of variables   :   42 (   3   ^  39   !;   0   ?;  42   :)
% SPC      : TH0_SAT_EQU_NAR

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tp_c_2Eintreal_2EINT__CEILING,type,
    c_2Eintreal_2EINT__CEILING: $i ).

thf(mem_c_2Eintreal_2EINT__CEILING,axiom,
    mem @ c_2Eintreal_2EINT__CEILING @ ( arr @ ty_2Erealax_2Ereal @ ty_2Einteger_2Eint ) ).

thf(stp_fo_c_2Eintreal_2EINT__CEILING,type,
    fo__c_2Eintreal_2EINT__CEILING: tp__ty_2Erealax_2Ereal > tp__ty_2Einteger_2Eint ).

thf(stp_eq_fo_c_2Eintreal_2EINT__CEILING,axiom,
    ! [X0: tp__ty_2Erealax_2Ereal] :
      ( ( inj__ty_2Einteger_2Eint @ ( fo__c_2Eintreal_2EINT__CEILING @ X0 ) )
      = ( ap @ c_2Eintreal_2EINT__CEILING @ ( inj__ty_2Erealax_2Ereal @ X0 ) ) ) ).

thf(tp_c_2Eintreal_2EINT__FLOOR,type,
    c_2Eintreal_2EINT__FLOOR: $i ).

thf(mem_c_2Eintreal_2EINT__FLOOR,axiom,
    mem @ c_2Eintreal_2EINT__FLOOR @ ( arr @ ty_2Erealax_2Ereal @ ty_2Einteger_2Eint ) ).

thf(stp_fo_c_2Eintreal_2EINT__FLOOR,type,
    fo__c_2Eintreal_2EINT__FLOOR: tp__ty_2Erealax_2Ereal > tp__ty_2Einteger_2Eint ).

thf(stp_eq_fo_c_2Eintreal_2EINT__FLOOR,axiom,
    ! [X0: tp__ty_2Erealax_2Ereal] :
      ( ( inj__ty_2Einteger_2Eint @ ( fo__c_2Eintreal_2EINT__FLOOR @ X0 ) )
      = ( ap @ c_2Eintreal_2EINT__FLOOR @ ( inj__ty_2Erealax_2Ereal @ X0 ) ) ) ).

thf(tp_c_2Eintreal_2Eis__int,type,
    c_2Eintreal_2Eis__int: $i ).

thf(mem_c_2Eintreal_2Eis__int,axiom,
    mem @ c_2Eintreal_2Eis__int @ ( arr @ ty_2Erealax_2Ereal @ bool ) ).

thf(tp_c_2Eintreal_2Ereal__of__int,type,
    c_2Eintreal_2Ereal__of__int: $i ).

thf(mem_c_2Eintreal_2Ereal__of__int,axiom,
    mem @ c_2Eintreal_2Ereal__of__int @ ( arr @ ty_2Einteger_2Eint @ ty_2Erealax_2Ereal ) ).

thf(stp_fo_c_2Eintreal_2Ereal__of__int,type,
    fo__c_2Eintreal_2Ereal__of__int: tp__ty_2Einteger_2Eint > tp__ty_2Erealax_2Ereal ).

thf(stp_eq_fo_c_2Eintreal_2Ereal__of__int,axiom,
    ! [X0: tp__ty_2Einteger_2Eint] :
      ( ( inj__ty_2Erealax_2Ereal @ ( fo__c_2Eintreal_2Ereal__of__int @ X0 ) )
      = ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ X0 ) ) ) ).

thf(ax_thm_2Eintreal_2Ereal__of__int,axiom,
    ! [V0i: tp__ty_2Einteger_2Eint] :
      ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0i ) ) )
      = ( surj__ty_2Erealax_2Ereal @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Erealax_2Ereal ) @ ( ap @ ( ap @ c_2Einteger_2Eint__lt @ ( inj__ty_2Einteger_2Eint @ V0i ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Einteger_2ENum @ ( ap @ c_2Einteger_2Eint__neg @ ( inj__ty_2Einteger_2Eint @ V0i ) ) ) ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Einteger_2ENum @ ( inj__ty_2Einteger_2Eint @ V0i ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__def,axiom,
    ! [V0i: tp__ty_2Einteger_2Eint] :
      ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0i ) ) )
      = ( surj__ty_2Erealax_2Ereal @ ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Erealax_2Ereal ) @ ( ap @ ( ap @ c_2Einteger_2Eint__lt @ ( inj__ty_2Einteger_2Eint @ V0i ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) ) ) @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Einteger_2ENum @ ( ap @ c_2Einteger_2Eint__neg @ ( inj__ty_2Einteger_2Eint @ V0i ) ) ) ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Einteger_2ENum @ ( inj__ty_2Einteger_2Eint @ V0i ) ) ) ) ) ) ).

thf(ax_thm_2Eintreal_2EINT__FLOOR__def,axiom,
    ! [V0x: tp__ty_2Erealax_2Ereal] :
      ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( inj__ty_2Erealax_2Ereal @ V0x ) ) )
      = ( surj__ty_2Einteger_2Eint
        @ ( ap @ c_2Einteger_2ELEAST__INT
          @ ( lam @ ty_2Einteger_2Eint
            @ ^ [V1i: $i] : ( ap @ ( ap @ c_2Erealax_2Ereal__lt @ ( inj__ty_2Erealax_2Ereal @ V0x ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__add @ V1i ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ) ) ) ).

thf(ax_thm_2Eintreal_2EINT__CEILING__def,axiom,
    ! [V0x: tp__ty_2Erealax_2Ereal] :
      ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__CEILING @ ( inj__ty_2Erealax_2Ereal @ V0x ) ) )
      = ( surj__ty_2Einteger_2Eint
        @ ( ap @ c_2Einteger_2ELEAST__INT
          @ ( lam @ ty_2Einteger_2Eint
            @ ^ [V1i: $i] : ( ap @ ( ap @ c_2Ereal_2Ereal__lte @ ( inj__ty_2Erealax_2Ereal @ V0x ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ V1i ) ) ) ) ) ) ).

thf(ax_thm_2Eintreal_2Eis__int__def,axiom,
    ! [V0x: tp__ty_2Erealax_2Ereal] :
      ( ( p @ ( ap @ c_2Eintreal_2Eis__int @ ( inj__ty_2Erealax_2Ereal @ V0x ) ) )
    <=> ( V0x
        = ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( inj__ty_2Erealax_2Ereal @ V0x ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__monotonic,axiom,
    ! [V0i: tp__ty_2Einteger_2Eint,V1j: tp__ty_2Einteger_2Eint] :
      ( ( p @ ( ap @ ( ap @ c_2Einteger_2Eint__lt @ ( inj__ty_2Einteger_2Eint @ V0i ) ) @ ( inj__ty_2Einteger_2Eint @ V1j ) ) )
     => ( p @ ( ap @ ( ap @ c_2Erealax_2Ereal__lt @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0i ) ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1j ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2EINT__FLOOR__BOUNDS,axiom,
    ! [V0r: tp__ty_2Erealax_2Ereal] :
      ( ( p @ ( ap @ ( ap @ c_2Ereal_2Ereal__lte @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) ) ) @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) )
      & ( p @ ( ap @ ( ap @ c_2Erealax_2Ereal__lt @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__add @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2EINT__FLOOR,axiom,
    ! [V0r: tp__ty_2Erealax_2Ereal,V1i: tp__ty_2Einteger_2Eint] :
      ( ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) )
        = V1i )
    <=> ( ( p @ ( ap @ ( ap @ c_2Ereal_2Ereal__lte @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1i ) ) ) @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) )
        & ( p @ ( ap @ ( ap @ c_2Erealax_2Ereal__lt @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__add @ ( inj__ty_2Einteger_2Eint @ V1i ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2EINT__CEILING__INT__FLOOR,axiom,
    ! [V0r: tp__ty_2Erealax_2Ereal] :
      ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__CEILING @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) )
      = ( surj__ty_2Einteger_2Eint
        @ ( ap
          @ ( ap @ ( c_2Ebool_2ELET @ ty_2Einteger_2Eint @ ty_2Einteger_2Eint )
            @ ( lam @ ty_2Einteger_2Eint
              @ ^ [V1i: $i] : ( ap @ ( ap @ ( ap @ ( c_2Ebool_2ECOND @ ty_2Einteger_2Eint ) @ ( ap @ ( ap @ ( c_2Emin_2E_3D @ ty_2Erealax_2Ereal ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ V1i ) ) @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) ) @ V1i ) @ ( ap @ ( ap @ c_2Einteger_2Eint__add @ V1i ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) )
          @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2EINT__CEILING__BOUNDS,axiom,
    ! [V0r: tp__ty_2Erealax_2Ereal] :
      ( ( p @ ( ap @ ( ap @ c_2Erealax_2Ereal__lt @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__sub @ ( ap @ c_2Eintreal_2EINT__CEILING @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) )
      & ( p @ ( ap @ ( ap @ c_2Ereal_2Ereal__lte @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ c_2Eintreal_2EINT__CEILING @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2EINT__CEILING,axiom,
    ! [V0r: tp__ty_2Erealax_2Ereal,V1i: tp__ty_2Einteger_2Eint] :
      ( ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__CEILING @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) )
        = V1i )
    <=> ( ( p @ ( ap @ ( ap @ c_2Erealax_2Ereal__lt @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__sub @ ( inj__ty_2Einteger_2Eint @ V1i ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) ) ) @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) )
        & ( p @ ( ap @ ( ap @ c_2Ereal_2Ereal__lte @ ( inj__ty_2Erealax_2Ereal @ V0r ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1i ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2EINT__FLOOR__EQNS,axiom,
    ( ! [V0n: tp__ty_2Enum_2Enum] :
        ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
    & ! [V1n: tp__ty_2Enum_2Enum] :
        ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Einteger_2Eint__neg @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) )
    & ! [V2n: tp__ty_2Enum_2Enum,V3m: tp__ty_2Enum_2Enum] :
        ( ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V3m ) ) )
       => ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ ( ap @ c_2Ereal_2E_2F @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V3m ) ) ) ) )
          = ( surj__ty_2Einteger_2Eint @ ( ap @ ( ap @ c_2Einteger_2Eint__div @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V3m ) ) ) ) ) )
    & ! [V4n: tp__ty_2Enum_2Enum,V5m: tp__ty_2Enum_2Enum] :
        ( ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ fo__c_2Enum_2E0 ) ) @ ( inj__ty_2Enum_2Enum @ V5m ) ) )
       => ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ ( ap @ c_2Ereal_2E_2F @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V5m ) ) ) ) )
          = ( surj__ty_2Einteger_2Eint @ ( ap @ ( ap @ c_2Einteger_2Eint__div @ ( ap @ c_2Einteger_2Eint__neg @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V4n ) ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V5m ) ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2EINT__FLOOR__compute,axiom,
    ! [V0n: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum] :
      ( ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
      & ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Einteger_2Eint__neg @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) )
      & ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ ( ap @ c_2Ereal_2E_2F @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ ( ap @ c_2Einteger_2Eint__div @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) )
      & ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ ( ap @ c_2Ereal_2E_2F @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ ( ap @ c_2Einteger_2Eint__div @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) )
      & ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ ( ap @ c_2Ereal_2E_2F @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ ( ap @ c_2Einteger_2Eint__div @ ( ap @ c_2Einteger_2Eint__neg @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) )
      & ( ( surj__ty_2Einteger_2Eint @ ( ap @ c_2Eintreal_2EINT__FLOOR @ ( ap @ ( ap @ c_2Ereal_2E_2F @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) @ ( ap @ c_2Ereal_2Ereal__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) )
        = ( surj__ty_2Einteger_2Eint @ ( ap @ ( ap @ c_2Einteger_2Eint__div @ ( ap @ c_2Einteger_2Eint__neg @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) @ ( ap @ c_2Einteger_2Eint__of__num @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT2 @ ( inj__ty_2Enum_2Enum @ V1m ) ) ) ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__num,axiom,
    ! [V0n: tp__ty_2Enum_2Enum] :
      ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ c_2Einteger_2Eint__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) )
      = ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Ereal_2Ereal__of__num @ ( inj__ty_2Enum_2Enum @ V0n ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__add,axiom,
    ! [V0m: tp__ty_2Einteger_2Eint,V1n: tp__ty_2Einteger_2Eint] :
      ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__add @ ( inj__ty_2Einteger_2Eint @ V0m ) ) @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) )
      = ( surj__ty_2Erealax_2Ereal @ ( ap @ ( ap @ c_2Erealax_2Ereal__add @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0m ) ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__neg,axiom,
    ! [V0m: tp__ty_2Einteger_2Eint] :
      ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ c_2Einteger_2Eint__neg @ ( inj__ty_2Einteger_2Eint @ V0m ) ) ) )
      = ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Erealax_2Ereal__neg @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0m ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__sub,axiom,
    ! [V0m: tp__ty_2Einteger_2Eint,V1n: tp__ty_2Einteger_2Eint] :
      ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__sub @ ( inj__ty_2Einteger_2Eint @ V0m ) ) @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) )
      = ( surj__ty_2Erealax_2Ereal @ ( ap @ ( ap @ c_2Ereal_2Ereal__sub @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0m ) ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__mul,axiom,
    ! [V0m: tp__ty_2Einteger_2Eint,V1n: tp__ty_2Einteger_2Eint] :
      ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( ap @ ( ap @ c_2Einteger_2Eint__mul @ ( inj__ty_2Einteger_2Eint @ V0m ) ) @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) )
      = ( surj__ty_2Erealax_2Ereal @ ( ap @ ( ap @ c_2Erealax_2Ereal__mul @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0m ) ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__lt,axiom,
    ! [V0m: tp__ty_2Einteger_2Eint,V1n: tp__ty_2Einteger_2Eint] :
      ( ( p @ ( ap @ ( ap @ c_2Erealax_2Ereal__lt @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0m ) ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) )
    <=> ( p @ ( ap @ ( ap @ c_2Einteger_2Eint__lt @ ( inj__ty_2Einteger_2Eint @ V0m ) ) @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__11,axiom,
    ! [V0m: tp__ty_2Einteger_2Eint,V1n: tp__ty_2Einteger_2Eint] :
      ( ( ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0m ) ) )
        = ( surj__ty_2Erealax_2Ereal @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) )
    <=> ( V0m = V1n ) ) ).

thf(conj_thm_2Eintreal_2Ereal__of__int__le,axiom,
    ! [V0m: tp__ty_2Einteger_2Eint,V1n: tp__ty_2Einteger_2Eint] :
      ( ( p @ ( ap @ ( ap @ c_2Ereal_2Ereal__lte @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V0m ) ) ) @ ( ap @ c_2Eintreal_2Ereal__of__int @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) )
    <=> ( p @ ( ap @ ( ap @ c_2Einteger_2Eint__le @ ( inj__ty_2Einteger_2Eint @ V0m ) ) @ ( inj__ty_2Einteger_2Eint @ V1n ) ) ) ) ).

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