ITP001 Axioms: ITP100_5.ax
%------------------------------------------------------------------------------
% File : ITP100_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 : int_arith_2.ax [Gau20]
% : HL4100_5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 76 ( 9 unt; 4 typ; 0 def)
% Number of atoms : 2278 ( 60 equ)
% Maximal formula atoms : 16 ( 29 avg)
% Number of connectives : 183 ( 20 ~; 2 |; 57 &)
% ( 54 <=>; 50 =>; 0 <=; 0 <~>)
% Maximal formula depth : 18 ( 6 avg)
% Maximal term depth : 2 ( 1 avg)
% Number of FOOLs : 2043 (2043 fml; 0 var)
% Number of types : 1 ( 0 usr)
% Number of type conns : 3 ( 3 >; 0 *; 0 +; 0 <<)
% Number of predicates : 43 ( 40 usr; 31 prp; 0-2 aty)
% Number of functors : 4 ( 4 usr; 1 con; 0-1 aty)
% Number of variables : 212 ( 196 !; 16 ?; 212 :)
% SPC : TF0_SAT_EQU_NAR
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
tff(tp_c_2Eint__arith_2Ebmarker,type,
c_2Eint__arith_2Ebmarker: $i ).
tff(mem_c_2Eint__arith_2Ebmarker,axiom,
mem(c_2Eint__arith_2Ebmarker,arr(bool,bool)) ).
tff(stp_fo_c_2Eint__arith_2Ebmarker,type,
fo__c_2Eint__arith_2Ebmarker: tp__o > tp__o ).
tff(stp_eq_fo_c_2Eint__arith_2Ebmarker,axiom,
! [X0: tp__o] : ( inj__o(fo__c_2Eint__arith_2Ebmarker(X0)) = ap(c_2Eint__arith_2Ebmarker,inj__o(X0)) ) ).
tff(conj_thm_2Eint__arith_2Enot__less,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( ~ p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y)))
<=> p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V1y)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))))) ) ).
tff(conj_thm_2Eint__arith_2Eelim__eq,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( ( V0x = V1y )
<=> ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))))
& p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V1y)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))))) ) ) ).
tff(conj_thm_2Eint__arith_2Eless__to__leq__samel,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y)))
<=> p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),ap(c_2Einteger_2Eint__neg,ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))))) ) ).
tff(conj_thm_2Eint__arith_2Eless__to__leq__samer,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y)))
<=> p(ap(ap(c_2Einteger_2Eint__le,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))),inj__ty_2Einteger_2Eint(V1y))) ) ).
tff(conj_thm_2Eint__arith_2Elt__move__all__right,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y)))
<=> p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0x))))) ) ).
tff(conj_thm_2Eint__arith_2Elt__move__all__left,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y)))
<=> p(ap(ap(c_2Einteger_2Eint__lt,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V1y)))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0)))) ) ).
tff(conj_thm_2Eint__arith_2Elt__move__left__left,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2z: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),inj__ty_2Einteger_2Eint(V2z))))
<=> p(ap(ap(c_2Einteger_2Eint__lt,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V1y)))),inj__ty_2Einteger_2Eint(V2z))) ) ).
tff(conj_thm_2Eint__arith_2Elt__move__left__right,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2z: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y))),inj__ty_2Einteger_2Eint(V2z)))
<=> p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V1y)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V2z)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0x))))) ) ).
tff(conj_thm_2Eint__arith_2Ele__move__right__left,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2z: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),inj__ty_2Einteger_2Eint(V2z))))
<=> p(ap(ap(c_2Einteger_2Eint__le,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V2z)))),inj__ty_2Einteger_2Eint(V1y))) ) ).
tff(conj_thm_2Eint__arith_2Ele__move__all__right,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y)))
<=> p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0x))))) ) ).
tff(conj_thm_2Eint__arith_2Eeq__move__all__right,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( ( V0x = V1y )
<=> ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0x)))) ) ) ).
tff(conj_thm_2Eint__arith_2Eeq__move__all__left,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint] :
( ( V0x = V1y )
<=> ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V1y)))) = surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) ) ) ).
tff(conj_thm_2Eint__arith_2Eeq__move__left__left,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2z: tp__ty_2Einteger_2Eint] :
( ( V0x = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),inj__ty_2Einteger_2Eint(V2z))) )
<=> ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V1y)))) = V2z ) ) ).
tff(conj_thm_2Eint__arith_2Eeq__move__left__right,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2z: tp__ty_2Einteger_2Eint] :
( ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V1y))) = V2z )
<=> ( V1y = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V2z)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0x)))) ) ) ).
tff(conj_thm_2Eint__arith_2Eeq__move__right__left,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2z: tp__ty_2Einteger_2Eint] :
( ( V0x = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),inj__ty_2Einteger_2Eint(V2z))) )
<=> ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V2z)))) = V1y ) ) ).
tff(conj_thm_2Eint__arith_2Elcm__eliminate,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ! [V1c: tp__ty_2Einteger_2Eint] :
( ? [V2x: tp__ty_2Einteger_2Eint] : p(ap(V0P,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V1c)),inj__ty_2Einteger_2Eint(V2x))))
<=> ? [V3x: tp__ty_2Einteger_2Eint] :
( p(ap(V0P,inj__ty_2Einteger_2Eint(V3x)))
& p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V1c)),inj__ty_2Einteger_2Eint(V3x))) ) ) ) ).
tff(conj_thm_2Eint__arith_2Elt__justify__multiplication,axiom,
! [V0n: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V0n)))
=> ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V1x)),inj__ty_2Einteger_2Eint(V2y)))
<=> p(ap(ap(c_2Einteger_2Eint__lt,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V1x))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V2y)))) ) ) ).
tff(conj_thm_2Eint__arith_2Eeq__justify__multiplication,axiom,
! [V0n: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V0n)))
=> ( ( V1x = V2y )
<=> ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V1x))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V2y))) ) ) ) ).
tff(conj_thm_2Eint__arith_2Ejustify__divides,axiom,
! [V0n: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V0n)))
=> ( p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V1x)),inj__ty_2Einteger_2Eint(V2y)))
<=> p(ap(ap(c_2Einteger_2Eint__divides,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V1x))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V2y)))) ) ) ).
tff(conj_thm_2Eint__arith_2Ejustify__divides2,axiom,
! [V0n: tp__ty_2Einteger_2Eint,V1c: tp__ty_2Einteger_2Eint,V2x: tp__ty_2Einteger_2Eint,V3y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__divides,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V2x))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V3y))),inj__ty_2Einteger_2Eint(V1c))))
<=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V2x))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V3y))),inj__ty_2Einteger_2Eint(V1c))))
& p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V1c))) ) ) ).
tff(conj_thm_2Eint__arith_2Ejustify__divides3,axiom,
! [V0n: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2c: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V0n)),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V1x))),inj__ty_2Einteger_2Eint(V2c))))
<=> p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V0n)),inj__ty_2Einteger_2Eint(V2c))) ) ).
tff(conj_thm_2Eint__arith_2EINT__SUB__SUB3,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2z: tp__ty_2Einteger_2Eint] : ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V1y)),inj__ty_2Einteger_2Eint(V2z)))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__sub,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),inj__ty_2Einteger_2Eint(V2z))),inj__ty_2Einteger_2Eint(V1y))) ) ).
tff(conj_thm_2Eint__arith_2Emove__sub,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1b: tp__ty_2Einteger_2Eint,V2a: tp__ty_2Einteger_2Eint] : ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V2a)),inj__ty_2Einteger_2Eint(V0c))),inj__ty_2Einteger_2Eint(V1b))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__sub,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V2a)),inj__ty_2Einteger_2Eint(V1b))),inj__ty_2Einteger_2Eint(V0c))) ) ).
tff(conj_thm_2Eint__arith_2Ecan__get__small,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2d: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V2d)))
=> ? [V3c: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V3c)))
& p(ap(ap(c_2Einteger_2Eint__lt,ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V1y)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V3c)),inj__ty_2Einteger_2Eint(V2d)))),inj__ty_2Einteger_2Eint(V0x))) ) ) ).
tff(conj_thm_2Eint__arith_2Ecan__get__big,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Einteger_2Eint,V2d: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V2d)))
=> ? [V3c: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V3c)))
& p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1y)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V3c)),inj__ty_2Einteger_2Eint(V2d))))) ) ) ).
tff(conj_thm_2Eint__arith_2Epositive__product__implication,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1d: tp__ty_2Einteger_2Eint] :
( ( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V0c)))
& p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V1d))) )
=> p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1d)))) ) ).
tff(conj_thm_2Eint__arith_2Erestricted__quantification__simp,axiom,
! [V0low: tp__ty_2Einteger_2Eint,V1high: tp__ty_2Einteger_2Eint,V2x: tp__ty_2Einteger_2Eint] :
( ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0low)),inj__ty_2Einteger_2Eint(V2x)))
& p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V2x)),inj__ty_2Einteger_2Eint(V1high))) )
<=> ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0low)),inj__ty_2Einteger_2Eint(V1high)))
& ( ( V2x = V1high )
| ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0low)),inj__ty_2Einteger_2Eint(V2x)))
& p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V2x)),ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V1high)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))))) ) ) ) ) ).
tff(conj_thm_2Eint__arith_2Etop__and__lessers,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ! [V1d: tp__ty_2Einteger_2Eint,V2x0: tp__ty_2Einteger_2Eint] :
( ( ! [V3x: tp__ty_2Einteger_2Eint] :
( p(ap(V0P,inj__ty_2Einteger_2Eint(V3x)))
=> p(ap(V0P,ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V3x)),inj__ty_2Einteger_2Eint(V1d)))) )
& p(ap(V0P,inj__ty_2Einteger_2Eint(V2x0))) )
=> ! [V4c: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V4c)))
=> p(ap(V0P,ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V2x0)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V4c)),inj__ty_2Einteger_2Eint(V1d))))) ) ) ) ).
tff(conj_thm_2Eint__arith_2Ebot__and__greaters,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ! [V1d: tp__ty_2Einteger_2Eint,V2x0: tp__ty_2Einteger_2Eint] :
( ( ! [V3x: tp__ty_2Einteger_2Eint] :
( p(ap(V0P,inj__ty_2Einteger_2Eint(V3x)))
=> p(ap(V0P,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V3x)),inj__ty_2Einteger_2Eint(V1d)))) )
& p(ap(V0P,inj__ty_2Einteger_2Eint(V2x0))) )
=> ! [V4c: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V4c)))
=> p(ap(V0P,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V2x0)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V4c)),inj__ty_2Einteger_2Eint(V1d))))) ) ) ) ).
tff(conj_thm_2Eint__arith_2Ein__additive__range,axiom,
! [V0low: tp__ty_2Einteger_2Eint,V1d: tp__ty_2Einteger_2Eint,V2x: tp__ty_2Einteger_2Eint] :
( ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0low)),inj__ty_2Einteger_2Eint(V2x)))
& p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V2x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0low)),inj__ty_2Einteger_2Eint(V1d)))) )
<=> ? [V3j: tp__ty_2Einteger_2Eint] :
( ( V2x = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0low)),inj__ty_2Einteger_2Eint(V3j))) )
& p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V3j)))
& p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V3j)),inj__ty_2Einteger_2Eint(V1d))) ) ) ).
tff(conj_thm_2Eint__arith_2Ein__subtractive__range,axiom,
! [V0high: tp__ty_2Einteger_2Eint,V1d: tp__ty_2Einteger_2Eint,V2x: tp__ty_2Einteger_2Eint] :
( ( p(ap(ap(c_2Einteger_2Eint__le,ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V0high)),inj__ty_2Einteger_2Eint(V1d))),inj__ty_2Einteger_2Eint(V2x)))
& p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V2x)),inj__ty_2Einteger_2Eint(V0high))) )
<=> ? [V3j: tp__ty_2Einteger_2Eint] :
( ( V2x = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V0high)),inj__ty_2Einteger_2Eint(V3j))) )
& p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V3j)))
& p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V3j)),inj__ty_2Einteger_2Eint(V1d))) ) ) ).
tff(conj_thm_2Eint__arith_2Esubtract__to__small,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1d: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V1d)))
=> ? [V2k: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V2k)),inj__ty_2Einteger_2Eint(V1d)))))
& p(ap(ap(c_2Einteger_2Eint__le,ap(ap(c_2Einteger_2Eint__sub,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V2k)),inj__ty_2Einteger_2Eint(V1d)))),inj__ty_2Einteger_2Eint(V1d))) ) ) ).
tff(conj_thm_2Eint__arith_2Eadd__to__great,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1d: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V1d)))
=> ? [V2k: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V2k)),inj__ty_2Einteger_2Eint(V1d)))))
& p(ap(ap(c_2Einteger_2Eint__le,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V2k)),inj__ty_2Einteger_2Eint(V1d)))),inj__ty_2Einteger_2Eint(V1d))) ) ) ).
tff(conj_thm_2Eint__arith_2EINT__LT__ADD__NUMERAL,axiom,
! [V0x: tp__ty_2Einteger_2Eint,V1y: tp__ty_2Enum_2Enum] :
( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(V1y)))))))
& p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,inj__ty_2Enum_2Enum(V1y)))))))
& ~ p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V0x)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,inj__ty_2Enum_2Enum(V1y))))))) ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__FORALL,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ( ! [V1n: tp__ty_2Enum_2Enum] : p(ap(V0P,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n))))
<=> ! [V2x: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V2x)))
=> p(ap(V0P,inj__ty_2Einteger_2Eint(V2x))) ) ) ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__EXISTS,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ( ? [V1n: tp__ty_2Enum_2Enum] : p(ap(V0P,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n))))
<=> ? [V2x: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V2x)))
& p(ap(V0P,inj__ty_2Einteger_2Eint(V2x))) ) ) ) ).
tff(lamtp_f2511,type,
f2511: $i > $i ).
tff(lameq_f2511,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ! [V1n: tp__ty_2Enum_2Enum] : ( ap(f2511(V0P),inj__ty_2Enum_2Enum(V1n)) = ap(V0P,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n))) ) ) ).
tff(lamtp_f2512,type,
f2512: $i > $i ).
tff(lameq_f2512,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ! [V2x: tp__ty_2Einteger_2Eint] : ( ap(f2512(V0P),inj__ty_2Einteger_2Eint(V2x)) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V2x))),ap(V0P,inj__ty_2Einteger_2Eint(V2x))) ) ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__UEXISTS,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ( p(ap(c_2Ebool_2E_3F_21(ty_2Enum_2Enum),f2511(V0P)))
<=> p(ap(c_2Ebool_2E_3F_21(ty_2Einteger_2Eint),f2512(V0P))) ) ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__SUB,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum] : ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,ap(ap(c_2Earithmetic_2E_2D,inj__ty_2Enum_2Enum(V0n)),inj__ty_2Enum_2Enum(V1m)))) = surj__ty_2Einteger_2Eint(ap(ap(ap(c_2Ebool_2ECOND(ty_2Einteger_2Eint),ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m)))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__sub,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m))))) ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__COND,axiom,
! [V0b: tp__o,V1n: tp__ty_2Enum_2Enum,V2m: tp__ty_2Enum_2Enum] : ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,ap(ap(ap(c_2Ebool_2ECOND(ty_2Enum_2Enum),inj__o(V0b)),inj__ty_2Enum_2Enum(V1n)),inj__ty_2Enum_2Enum(V2m)))) = surj__ty_2Einteger_2Eint(ap(ap(ap(c_2Ebool_2ECOND(ty_2Einteger_2Eint),inj__o(V0b)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V2m)))) ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__ODD,axiom,
! [V0n: tp__ty_2Enum_2Enum] :
( p(ap(c_2Earithmetic_2EODD,inj__ty_2Enum_2Enum(V0n)))
<=> ~ p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n)))) ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__EVEN,axiom,
! [V0n: tp__ty_2Enum_2Enum] :
( p(ap(c_2Earithmetic_2EEVEN,inj__ty_2Enum_2Enum(V0n)))
<=> p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT2,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n)))) ) ).
tff(conj_thm_2Eint__arith_2EHO__SUB__ELIM,axiom,
! [V0P: $i] :
( mem(V0P,arr(ty_2Einteger_2Eint,bool))
=> ! [V1a: tp__ty_2Enum_2Enum,V2b: tp__ty_2Enum_2Enum] :
( p(ap(V0P,ap(c_2Einteger_2Eint__of__num,ap(ap(c_2Earithmetic_2E_2D,inj__ty_2Enum_2Enum(V1a)),inj__ty_2Enum_2Enum(V2b)))))
<=> ( ( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V2b))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1a))))
& p(ap(V0P,ap(ap(c_2Einteger_2Eint__add,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1a))),ap(c_2Einteger_2Eint__neg,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V2b)))))) )
| ( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1a))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V2b))))
& p(ap(V0P,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0)))) ) ) ) ) ).
tff(conj_thm_2Eint__arith_2ECONJ__EQ__ELIM,axiom,
! [A_27a: del,V0P: $i] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1v: $i] :
( mem(V1v,A_27a)
=> ! [V2e: $i] :
( mem(V2e,A_27a)
=> ( ( ( V1v = V2e )
& p(ap(V0P,V1v)) )
<=> ( ( V1v = V2e )
& p(ap(V0P,V2e)) ) ) ) ) ) ).
tff(conj_thm_2Eint__arith_2Eelim__neg__ones,axiom,
! [V0x: tp__ty_2Einteger_2Eint] : ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__neg,ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))))),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))) = V0x ) ).
tff(conj_thm_2Eint__arith_2Eelim__minus__ones,axiom,
! [V0x: tp__ty_2Einteger_2Eint] : ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__sub,ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0x)),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))) = V0x ) ).
tff(conj_thm_2Eint__arith_2EINT__NUM__DIVIDES,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum] :
( p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m))))
<=> p(ap(ap(c_2Edivides_2Edivides,inj__ty_2Enum_2Enum(V0n)),inj__ty_2Enum_2Enum(V1m))) ) ).
tff(conj_thm_2Eint__arith_2EINT__LINEAR__GCD,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum] :
? [V2p: tp__ty_2Einteger_2Eint,V3q: tp__ty_2Einteger_2Eint] : ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V2p)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n)))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V3q)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m))))) = surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,ap(ap(c_2Egcd_2Egcd,inj__ty_2Enum_2Enum(V0n)),inj__ty_2Enum_2Enum(V1m)))) ) ).
tff(conj_thm_2Eint__arith_2EINT__DIVIDES__LRMUL,axiom,
! [V0p: tp__ty_2Einteger_2Eint,V1q: tp__ty_2Einteger_2Eint,V2r: tp__ty_2Einteger_2Eint] :
( ( V1q != surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) )
=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0p)),inj__ty_2Einteger_2Eint(V1q))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V2r)),inj__ty_2Einteger_2Eint(V1q))))
<=> p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V0p)),inj__ty_2Einteger_2Eint(V2r))) ) ) ).
tff(conj_thm_2Eint__arith_2EINT__DIVIDES__RELPRIME__MUL,axiom,
! [V0p: tp__ty_2Enum_2Enum,V1q: tp__ty_2Enum_2Enum,V2r: tp__ty_2Einteger_2Eint] :
( ( surj__ty_2Enum_2Enum(ap(ap(c_2Egcd_2Egcd,inj__ty_2Enum_2Enum(V0p)),inj__ty_2Enum_2Enum(V1q))) = surj__ty_2Enum_2Enum(ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))) )
=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0p))),ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1q))),inj__ty_2Einteger_2Eint(V2r))))
<=> p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0p))),inj__ty_2Einteger_2Eint(V2r))) ) ) ).
tff(conj_thm_2Eint__arith_2Egcdthm2,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1a: tp__ty_2Enum_2Enum,V2x: tp__ty_2Einteger_2Eint,V3b: tp__ty_2Einteger_2Eint,V4d: tp__ty_2Enum_2Enum,V5p: tp__ty_2Einteger_2Eint,V6q: tp__ty_2Einteger_2Eint] :
( ( ( V4d = surj__ty_2Enum_2Enum(ap(ap(c_2Egcd_2Egcd,inj__ty_2Enum_2Enum(V1a)),inj__ty_2Enum_2Enum(V0m))) )
& ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V4d))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V5p)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1a)))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V6q)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))))) )
& ( V4d != fo__c_2Enum_2E0 )
& ( V0m != fo__c_2Enum_2E0 )
& ( V1a != fo__c_2Enum_2E0 ) )
=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1a))),inj__ty_2Einteger_2Eint(V2x))),inj__ty_2Einteger_2Eint(V3b))))
<=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V4d))),inj__ty_2Einteger_2Eint(V3b)))
& ? [V7t: tp__ty_2Einteger_2Eint] : ( V2x = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V5p))),ap(ap(c_2Einteger_2Eint__div,inj__ty_2Einteger_2Eint(V3b)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V4d))))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V7t)),ap(ap(c_2Einteger_2Eint__div,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V4d)))))) ) ) ) ) ).
tff(conj_thm_2Eint__arith_2Egcd1thm,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum,V2p: tp__ty_2Einteger_2Eint,V3q: tp__ty_2Einteger_2Eint] :
( ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V2p)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m)))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V3q)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n))))) = surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))) )
=> ( surj__ty_2Enum_2Enum(ap(ap(c_2Egcd_2Egcd,inj__ty_2Enum_2Enum(V0m)),inj__ty_2Enum_2Enum(V1n))) = surj__ty_2Enum_2Enum(ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))) ) ) ).
tff(conj_thm_2Eint__arith_2Egcd21__thm,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1a: tp__ty_2Enum_2Enum,V2x: tp__ty_2Einteger_2Eint,V3b: tp__ty_2Einteger_2Eint,V4p: tp__ty_2Einteger_2Eint,V5q: tp__ty_2Einteger_2Eint] :
( ( ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V4p)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1a)))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V5q)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))))) = surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))) )
& ( V0m != fo__c_2Enum_2E0 )
& ( V1a != fo__c_2Enum_2E0 ) )
=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1a))),inj__ty_2Einteger_2Eint(V2x))),inj__ty_2Einteger_2Eint(V3b))))
<=> ? [V6t: tp__ty_2Einteger_2Eint] : ( V2x = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V4p))),inj__ty_2Einteger_2Eint(V3b))),ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V6t)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))))) ) ) ) ).
tff(conj_thm_2Eint__arith_2Eelim__lt__coeffs1,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum,V2x: tp__ty_2Einteger_2Eint] :
( ( V1m != fo__c_2Enum_2E0 )
=> ( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m))),inj__ty_2Einteger_2Eint(V2x))))
<=> p(ap(ap(c_2Einteger_2Eint__lt,ap(ap(c_2Einteger_2Eint__div,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m)))),inj__ty_2Einteger_2Eint(V2x))) ) ) ).
tff(conj_thm_2Eint__arith_2Eelim__lt__coeffs2,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum,V2x: tp__ty_2Einteger_2Eint] :
( ( V1m != fo__c_2Enum_2E0 )
=> ( p(ap(ap(c_2Einteger_2Eint__lt,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m))),inj__ty_2Einteger_2Eint(V2x))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))))
<=> p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V2x)),ap(ap(ap(c_2Ebool_2ECOND(ty_2Einteger_2Eint),ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n)))),ap(ap(c_2Einteger_2Eint__div,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m)))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__div,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1m)))),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))))) ) ) ).
tff(conj_thm_2Eint__arith_2Eelim__le__coeffs,axiom,
! [V0m: tp__ty_2Einteger_2Eint,V1n: tp__ty_2Einteger_2Eint,V2x: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__lt,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),inj__ty_2Einteger_2Eint(V0m)))
=> ( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V0m)),inj__ty_2Einteger_2Eint(V2x))),inj__ty_2Einteger_2Eint(V1n))))
<=> p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V2x)),ap(ap(c_2Einteger_2Eint__div,inj__ty_2Einteger_2Eint(V1n)),inj__ty_2Einteger_2Eint(V0m))))) ) ) ).
tff(conj_thm_2Eint__arith_2Eelim__eq__coeffs,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( ( V0m != fo__c_2Enum_2E0 )
=> ( ( surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))),inj__ty_2Einteger_2Eint(V1x))) = V2y )
<=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))),inj__ty_2Einteger_2Eint(V2y)))
& ( V1x = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__div,inj__ty_2Einteger_2Eint(V2y)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m)))) ) ) ) ) ).
tff(conj_thm_2Eint__arith_2Ecooper__lemma__1,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum,V2a: tp__ty_2Enum_2Enum,V3b: tp__ty_2Einteger_2Eint,V4u: tp__ty_2Enum_2Enum,V5v: tp__ty_2Einteger_2Eint,V6p: tp__ty_2Einteger_2Eint,V7q: tp__ty_2Einteger_2Eint,V8x: tp__ty_2Einteger_2Eint,V9d: tp__ty_2Enum_2Enum] :
( ( ( V9d = surj__ty_2Enum_2Enum(ap(ap(c_2Egcd_2Egcd,ap(ap(c_2Earithmetic_2E_2A,inj__ty_2Enum_2Enum(V4u)),inj__ty_2Enum_2Enum(V0m))),ap(ap(c_2Earithmetic_2E_2A,inj__ty_2Enum_2Enum(V2a)),inj__ty_2Enum_2Enum(V1n)))) )
& ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V9d))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V6p)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V4u)))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m)))),ap(ap(c_2Einteger_2Eint__mul,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V7q)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V2a)))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n))))) )
& ( V0m != fo__c_2Enum_2E0 )
& ( V1n != fo__c_2Enum_2E0 )
& ( V2a != fo__c_2Enum_2E0 )
& ( V4u != fo__c_2Enum_2E0 ) )
=> ( ( p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V2a))),inj__ty_2Einteger_2Eint(V8x))),inj__ty_2Einteger_2Eint(V3b))))
& p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V4u))),inj__ty_2Einteger_2Eint(V8x))),inj__ty_2Einteger_2Eint(V5v)))) )
<=> ( p(ap(ap(c_2Einteger_2Eint__divides,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m))),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n)))),ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__add,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V9d))),inj__ty_2Einteger_2Eint(V8x))),ap(ap(c_2Einteger_2Eint__mul,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V5v)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0m)))),inj__ty_2Einteger_2Eint(V6p)))),ap(ap(c_2Einteger_2Eint__mul,ap(ap(c_2Einteger_2Eint__mul,inj__ty_2Einteger_2Eint(V3b)),ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V1n)))),inj__ty_2Einteger_2Eint(V7q)))))
& p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V9d))),ap(ap(c_2Einteger_2Eint__sub,ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V2a))),inj__ty_2Einteger_2Eint(V5v))),ap(ap(c_2Einteger_2Eint__mul,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V4u))),inj__ty_2Einteger_2Eint(V3b))))) ) ) ) ).
tff(ax_thm_2Eint__arith_2Ebmarker__def,axiom,
! [V0b: tp__o] :
( p(ap(c_2Eint__arith_2Ebmarker,inj__o(V0b)))
<=> p(inj__o(V0b)) ) ).
tff(conj_thm_2Eint__arith_2Ebmarker__rewrites,axiom,
! [V0p: tp__o,V1q: tp__o,V2r: tp__o] :
( ( ( p(inj__o(V1q))
& p(ap(c_2Eint__arith_2Ebmarker,inj__o(V0p))) )
<=> ( p(ap(c_2Eint__arith_2Ebmarker,inj__o(V0p)))
& p(inj__o(V1q)) ) )
& ( ( p(inj__o(V1q))
& p(ap(c_2Eint__arith_2Ebmarker,inj__o(V0p)))
& p(inj__o(V2r)) )
<=> ( p(ap(c_2Eint__arith_2Ebmarker,inj__o(V0p)))
& p(inj__o(V1q))
& p(inj__o(V2r)) ) )
& ( ( p(ap(c_2Eint__arith_2Ebmarker,inj__o(V0p)))
& p(inj__o(V1q))
& p(inj__o(V2r)) )
<=> ( p(ap(c_2Eint__arith_2Ebmarker,inj__o(V0p)))
& p(inj__o(V1q))
& p(inj__o(V2r)) ) ) ) ).
tff(conj_thm_2Eint__arith_2ENOT__INT__DIVIDES,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1d: tp__ty_2Einteger_2Eint] :
( ( V0c != surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) )
=> ( ~ p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1d)))
<=> ? [V2i: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))),inj__ty_2Einteger_2Eint(V2i)))
& p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V2i)),ap(ap(c_2Einteger_2Eint__sub,ap(c_2Einteger_2EABS,inj__ty_2Einteger_2Eint(V0c))),ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO)))))))
& p(ap(ap(c_2Einteger_2Eint__divides,inj__ty_2Einteger_2Eint(V0c)),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1d)),inj__ty_2Einteger_2Eint(V2i)))) ) ) ) ).
tff(conj_thm_2Eint__arith_2ENOT__INT__DIVIDES__POS,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1d: tp__ty_2Einteger_2Eint] :
( ( V0n != fo__c_2Enum_2E0 )
=> ( ~ p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),inj__ty_2Einteger_2Eint(V1d)))
<=> ? [V2i: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,inj__ty_2Enum_2Enum(fo__c_2Earithmetic_2EZERO))))),inj__ty_2Einteger_2Eint(V2i)))
& p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V2i)),ap(ap(c_2Einteger_2Eint__sub,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(fo__c_2Earithmetic_2EZERO)))))))
& p(ap(ap(c_2Einteger_2Eint__divides,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(V0n))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V1d)),inj__ty_2Einteger_2Eint(V2i)))) ) ) ) ).
tff(conj_thm_2Eint__arith_2Ele__context__rwt1,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))))
=> ( p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V1x)),inj__ty_2Einteger_2Eint(V2y)))
=> ( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V2y))))
<=> $true ) ) ) ).
tff(conj_thm_2Eint__arith_2Ele__context__rwt2,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))))
=> ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V2y)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V1x))))
=> ( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0c))),inj__ty_2Einteger_2Eint(V2y))))
<=> $false ) ) ) ).
tff(conj_thm_2Eint__arith_2Ele__context__rwt3,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))))
=> ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V1x)),inj__ty_2Einteger_2Eint(V2y)))
=> ( ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V2y))) )
<=> $false ) ) ) ).
tff(conj_thm_2Eint__arith_2Ele__context__rwt4,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))))
=> ( p(ap(ap(c_2Einteger_2Eint__lt,inj__ty_2Einteger_2Eint(V1x)),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V2y))))
=> ( ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0c))),inj__ty_2Einteger_2Eint(V2y))) )
<=> $false ) ) ) ).
tff(conj_thm_2Eint__arith_2Ele__context__rwt5,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint] :
( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))))
=> ( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0c))),ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V1x)))))
<=> ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))) ) ) ) ).
tff(conj_thm_2Eint__arith_2Eeq__context__rwt1,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))) )
=> ( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V2y))))
<=> p(ap(ap(c_2Einteger_2Eint__le,inj__ty_2Einteger_2Eint(V1x)),inj__ty_2Einteger_2Eint(V2y))) ) ) ).
tff(conj_thm_2Eint__arith_2Eeq__context__rwt2,axiom,
! [V0c: tp__ty_2Einteger_2Eint,V1x: tp__ty_2Einteger_2Eint,V2y: tp__ty_2Einteger_2Eint] :
( ( surj__ty_2Einteger_2Eint(ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = surj__ty_2Einteger_2Eint(ap(ap(c_2Einteger_2Eint__add,inj__ty_2Einteger_2Eint(V0c)),inj__ty_2Einteger_2Eint(V1x))) )
=> ( p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__of__num,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),ap(ap(c_2Einteger_2Eint__add,ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V0c))),inj__ty_2Einteger_2Eint(V2y))))
<=> p(ap(ap(c_2Einteger_2Eint__le,ap(c_2Einteger_2Eint__neg,inj__ty_2Einteger_2Eint(V1x))),inj__ty_2Einteger_2Eint(V2y))) ) ) ).
%------------------------------------------------------------------------------