ITP001 Axioms: ITP084_5.ax
%------------------------------------------------------------------------------
% File : ITP084_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 : hrat_2.ax [Gau20]
% : HL4084_5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 113 ( 61 unt; 31 typ; 0 def)
% Number of atoms : 863 ( 51 equ)
% Maximal formula atoms : 5 ( 7 avg)
% Number of connectives : 33 ( 2 ~; 4 |; 10 &)
% ( 5 <=>; 12 =>; 0 <=; 0 <~>)
% Maximal formula depth : 7 ( 3 avg)
% Maximal term depth : 3 ( 1 avg)
% Number of FOOLs : 750 ( 750 fml; 0 var)
% Number of types : 2 ( 1 usr)
% Number of type conns : 15 ( 11 >; 4 *; 0 +; 0 <<)
% Number of predicates : 29 ( 28 usr; 12 prp; 0-2 aty)
% Number of functors : 30 ( 30 usr; 19 con; 0-2 aty)
% Number of variables : 130 ( 120 !; 10 ?; 130 :)
% SPC : TF0_SAT_EQU_NAR
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
tff(tp_ty_2Ehrat_2Ehrat,type,
ty_2Ehrat_2Ehrat: del ).
tff(stp_ty_2Ehrat_2Ehrat,type,
tp__ty_2Ehrat_2Ehrat: $tType ).
tff(stp_inj_ty_2Ehrat_2Ehrat,type,
inj__ty_2Ehrat_2Ehrat: tp__ty_2Ehrat_2Ehrat > $i ).
tff(stp_surj_ty_2Ehrat_2Ehrat,type,
surj__ty_2Ehrat_2Ehrat: $i > tp__ty_2Ehrat_2Ehrat ).
tff(stp_inj_surj_ty_2Ehrat_2Ehrat,axiom,
! [X: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(inj__ty_2Ehrat_2Ehrat(X)) = X ) ).
tff(stp_inj_mem_ty_2Ehrat_2Ehrat,axiom,
! [X: tp__ty_2Ehrat_2Ehrat] : mem(inj__ty_2Ehrat_2Ehrat(X),ty_2Ehrat_2Ehrat) ).
tff(stp_iso_mem_ty_2Ehrat_2Ehrat,axiom,
! [X: $i] :
( mem(X,ty_2Ehrat_2Ehrat)
=> ( X = inj__ty_2Ehrat_2Ehrat(surj__ty_2Ehrat_2Ehrat(X)) ) ) ).
tff(tp_c_2Ehrat_2Ehrat__1,type,
c_2Ehrat_2Ehrat__1: $i ).
tff(mem_c_2Ehrat_2Ehrat__1,axiom,
mem(c_2Ehrat_2Ehrat__1,ty_2Ehrat_2Ehrat) ).
tff(stp_fo_c_2Ehrat_2Ehrat__1,type,
fo__c_2Ehrat_2Ehrat__1: tp__ty_2Ehrat_2Ehrat ).
tff(stp_eq_fo_c_2Ehrat_2Ehrat__1,axiom,
inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__1) = c_2Ehrat_2Ehrat__1 ).
tff(tp_c_2Ehrat_2Ehrat__ABS,type,
c_2Ehrat_2Ehrat__ABS: $i ).
tff(mem_c_2Ehrat_2Ehrat__ABS,axiom,
mem(c_2Ehrat_2Ehrat__ABS,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),ty_2Ehrat_2Ehrat)) ).
tff(stp_fo_c_2Ehrat_2Ehrat__ABS,type,
fo__c_2Ehrat_2Ehrat__ABS: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum > tp__ty_2Ehrat_2Ehrat ).
tff(stp_eq_fo_c_2Ehrat_2Ehrat__ABS,axiom,
! [X0: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__ABS(X0)) = ap(c_2Ehrat_2Ehrat__ABS,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(X0)) ) ).
tff(tp_c_2Ehrat_2Ehrat__ABS__CLASS,type,
c_2Ehrat_2Ehrat__ABS__CLASS: $i ).
tff(mem_c_2Ehrat_2Ehrat__ABS__CLASS,axiom,
mem(c_2Ehrat_2Ehrat__ABS__CLASS,arr(arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool),ty_2Ehrat_2Ehrat)) ).
tff(tp_c_2Ehrat_2Ehrat__REP,type,
c_2Ehrat_2Ehrat__REP: $i ).
tff(mem_c_2Ehrat_2Ehrat__REP,axiom,
mem(c_2Ehrat_2Ehrat__REP,arr(ty_2Ehrat_2Ehrat,ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).
tff(tp_c_2Ehrat_2Ehrat__REP__CLASS,type,
c_2Ehrat_2Ehrat__REP__CLASS: $i ).
tff(mem_c_2Ehrat_2Ehrat__REP__CLASS,axiom,
mem(c_2Ehrat_2Ehrat__REP__CLASS,arr(ty_2Ehrat_2Ehrat,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool))) ).
tff(stp_fo_c_2Ehrat_2Ehrat__REP__CLASS,type,
fo__c_2Ehrat_2Ehrat__REP__CLASS: ( tp__ty_2Ehrat_2Ehrat * tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum ) > tp__o ).
tff(stp_eq_fo_c_2Ehrat_2Ehrat__REP__CLASS,axiom,
! [X0: tp__ty_2Ehrat_2Ehrat,X1: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( inj__o(fo__c_2Ehrat_2Ehrat__REP__CLASS(X0,X1)) = ap(ap(c_2Ehrat_2Ehrat__REP__CLASS,inj__ty_2Ehrat_2Ehrat(X0)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(X1)) ) ).
tff(tp_c_2Ehrat_2Ehrat__add,type,
c_2Ehrat_2Ehrat__add: $i ).
tff(mem_c_2Ehrat_2Ehrat__add,axiom,
mem(c_2Ehrat_2Ehrat__add,arr(ty_2Ehrat_2Ehrat,arr(ty_2Ehrat_2Ehrat,ty_2Ehrat_2Ehrat))) ).
tff(stp_fo_c_2Ehrat_2Ehrat__add,type,
fo__c_2Ehrat_2Ehrat__add: ( tp__ty_2Ehrat_2Ehrat * tp__ty_2Ehrat_2Ehrat ) > tp__ty_2Ehrat_2Ehrat ).
tff(stp_eq_fo_c_2Ehrat_2Ehrat__add,axiom,
! [X0: tp__ty_2Ehrat_2Ehrat,X1: tp__ty_2Ehrat_2Ehrat] : ( inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__add(X0,X1)) = ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(X0)),inj__ty_2Ehrat_2Ehrat(X1)) ) ).
tff(tp_c_2Ehrat_2Ehrat__inv,type,
c_2Ehrat_2Ehrat__inv: $i ).
tff(mem_c_2Ehrat_2Ehrat__inv,axiom,
mem(c_2Ehrat_2Ehrat__inv,arr(ty_2Ehrat_2Ehrat,ty_2Ehrat_2Ehrat)) ).
tff(stp_fo_c_2Ehrat_2Ehrat__inv,type,
fo__c_2Ehrat_2Ehrat__inv: tp__ty_2Ehrat_2Ehrat > tp__ty_2Ehrat_2Ehrat ).
tff(stp_eq_fo_c_2Ehrat_2Ehrat__inv,axiom,
! [X0: tp__ty_2Ehrat_2Ehrat] : ( inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__inv(X0)) = ap(c_2Ehrat_2Ehrat__inv,inj__ty_2Ehrat_2Ehrat(X0)) ) ).
tff(tp_c_2Ehrat_2Ehrat__mul,type,
c_2Ehrat_2Ehrat__mul: $i ).
tff(mem_c_2Ehrat_2Ehrat__mul,axiom,
mem(c_2Ehrat_2Ehrat__mul,arr(ty_2Ehrat_2Ehrat,arr(ty_2Ehrat_2Ehrat,ty_2Ehrat_2Ehrat))) ).
tff(stp_fo_c_2Ehrat_2Ehrat__mul,type,
fo__c_2Ehrat_2Ehrat__mul: ( tp__ty_2Ehrat_2Ehrat * tp__ty_2Ehrat_2Ehrat ) > tp__ty_2Ehrat_2Ehrat ).
tff(stp_eq_fo_c_2Ehrat_2Ehrat__mul,axiom,
! [X0: tp__ty_2Ehrat_2Ehrat,X1: tp__ty_2Ehrat_2Ehrat] : ( inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__mul(X0,X1)) = ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(X0)),inj__ty_2Ehrat_2Ehrat(X1)) ) ).
tff(tp_c_2Ehrat_2Ehrat__sucint,type,
c_2Ehrat_2Ehrat__sucint: $i ).
tff(mem_c_2Ehrat_2Ehrat__sucint,axiom,
mem(c_2Ehrat_2Ehrat__sucint,arr(ty_2Enum_2Enum,ty_2Ehrat_2Ehrat)) ).
tff(stp_fo_c_2Ehrat_2Ehrat__sucint,type,
fo__c_2Ehrat_2Ehrat__sucint: tp__ty_2Enum_2Enum > tp__ty_2Ehrat_2Ehrat ).
tff(stp_eq_fo_c_2Ehrat_2Ehrat__sucint,axiom,
! [X0: tp__ty_2Enum_2Enum] : ( inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__sucint(X0)) = ap(c_2Ehrat_2Ehrat__sucint,inj__ty_2Enum_2Enum(X0)) ) ).
tff(tp_c_2Ehrat_2Etrat__1,type,
c_2Ehrat_2Etrat__1: $i ).
tff(mem_c_2Ehrat_2Etrat__1,axiom,
mem(c_2Ehrat_2Etrat__1,ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)) ).
tff(tp_c_2Ehrat_2Etrat__add,type,
c_2Ehrat_2Etrat__add: $i ).
tff(mem_c_2Ehrat_2Etrat__add,axiom,
mem(c_2Ehrat_2Etrat__add,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)))) ).
tff(tp_c_2Ehrat_2Etrat__eq,type,
c_2Ehrat_2Etrat__eq: $i ).
tff(mem_c_2Ehrat_2Etrat__eq,axiom,
mem(c_2Ehrat_2Etrat__eq,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool))) ).
tff(stp_fo_c_2Ehrat_2Etrat__eq,type,
fo__c_2Ehrat_2Etrat__eq: ( tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum * tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum ) > tp__o ).
tff(stp_eq_fo_c_2Ehrat_2Etrat__eq,axiom,
! [X0: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,X1: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( inj__o(fo__c_2Ehrat_2Etrat__eq(X0,X1)) = ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(X0)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(X1)) ) ).
tff(tp_c_2Ehrat_2Etrat__inv,type,
c_2Ehrat_2Etrat__inv: $i ).
tff(mem_c_2Ehrat_2Etrat__inv,axiom,
mem(c_2Ehrat_2Etrat__inv,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).
tff(tp_c_2Ehrat_2Etrat__mul,type,
c_2Ehrat_2Etrat__mul: $i ).
tff(mem_c_2Ehrat_2Etrat__mul,axiom,
mem(c_2Ehrat_2Etrat__mul,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)))) ).
tff(tp_c_2Ehrat_2Etrat__sucint,type,
c_2Ehrat_2Etrat__sucint: $i ).
tff(mem_c_2Ehrat_2Etrat__sucint,axiom,
mem(c_2Ehrat_2Etrat__sucint,arr(ty_2Enum_2Enum,ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum))) ).
tff(ax_thm_2Ehrat_2Etrat__1,axiom,
surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(c_2Ehrat_2Etrat__1) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(fo__c_2Enum_2E0)),inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) ).
tff(ax_thm_2Ehrat_2Etrat__inv,axiom,
! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum] : ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(c_2Ehrat_2Etrat__inv,ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V0x)),inj__ty_2Enum_2Enum(V1y)))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V1y)),inj__ty_2Enum_2Enum(V0x))) ) ).
tff(ax_thm_2Ehrat_2Etrat__add,axiom,
! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum,V2x_27: tp__ty_2Enum_2Enum,V3y_27: tp__ty_2Enum_2Enum] : ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Ehrat_2Etrat__add,ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V0x)),inj__ty_2Enum_2Enum(V1y))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V2x_27)),inj__ty_2Enum_2Enum(V3y_27)))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),ap(c_2Eprim__rec_2EPRE,ap(ap(c_2Earithmetic_2E_2B,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V0x))),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V3y_27)))),ap(ap(c_2Earithmetic_2E_2A,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V2x_27))),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V1y)))))),ap(c_2Eprim__rec_2EPRE,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V1y))),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V3y_27)))))) ) ).
tff(ax_thm_2Ehrat_2Etrat__mul,axiom,
! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum,V2x_27: tp__ty_2Enum_2Enum,V3y_27: tp__ty_2Enum_2Enum] : ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Ehrat_2Etrat__mul,ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V0x)),inj__ty_2Enum_2Enum(V1y))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V2x_27)),inj__ty_2Enum_2Enum(V3y_27)))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),ap(c_2Eprim__rec_2EPRE,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V0x))),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V2x_27))))),ap(c_2Eprim__rec_2EPRE,ap(ap(c_2Earithmetic_2E_2A,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V1y))),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V3y_27)))))) ) ).
tff(ax_thm_2Ehrat_2Etrat__sucint,axiom,
( ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(c_2Ehrat_2Etrat__sucint,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(c_2Ehrat_2Etrat__1) )
& ! [V0n: tp__ty_2Enum_2Enum] : ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(c_2Ehrat_2Etrat__sucint,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V0n)))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Ehrat_2Etrat__add,ap(c_2Ehrat_2Etrat__sucint,inj__ty_2Enum_2Enum(V0n))),c_2Ehrat_2Etrat__1)) ) ) ).
tff(ax_thm_2Ehrat_2Etrat__eq,axiom,
! [V0x: tp__ty_2Enum_2Enum,V1y: tp__ty_2Enum_2Enum,V2x_27: tp__ty_2Enum_2Enum,V3y_27: tp__ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V0x)),inj__ty_2Enum_2Enum(V1y))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V2x_27)),inj__ty_2Enum_2Enum(V3y_27))))
<=> ( surj__ty_2Enum_2Enum(ap(ap(c_2Earithmetic_2E_2A,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V0x))),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V3y_27)))) = surj__ty_2Enum_2Enum(ap(ap(c_2Earithmetic_2E_2A,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V2x_27))),ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V1y)))) ) ) ).
tff(conj_thm_2Ehrat_2ETRAT__EQ__REFL,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p))) ).
tff(conj_thm_2Ehrat_2ETRAT__EQ__SYM,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1q: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)))
<=> p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__EQ__TRANS,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1q: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2r: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( ( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)))
& p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r))) )
=> p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__EQ__AP,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1q: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( ( V0p = V1q )
=> p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__ADD__SYM__EQ,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__MUL__SYM__EQ,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__INV__WELLDEFINED,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1q: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)))
=> p(ap(ap(c_2Ehrat_2Etrat__eq,ap(c_2Ehrat_2Etrat__inv,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p))),ap(c_2Ehrat_2Etrat__inv,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__ADD__WELLDEFINED,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1q: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2r: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)))
=> p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r))),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__ADD__WELLDEFINED2,axiom,
! [V0p1: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1p2: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2q1: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V3q2: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( ( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p1)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1p2)))
& p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2q1)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3q2))) )
=> p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p1)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2q1))),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1p2)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3q2)))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__MUL__WELLDEFINED,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1q: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2r: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)))
=> p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r))),ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__MUL__WELLDEFINED2,axiom,
! [V0p1: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1p2: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2q1: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V3q2: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( ( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p1)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1p2)))
& p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2q1)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3q2))) )
=> p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p1)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2q1))),ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1p2)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3q2)))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__ADD__SYM,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)))) ).
tff(conj_thm_2Ehrat_2ETRAT__ADD__ASSOC,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2j: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2j)))),ap(ap(c_2Ehrat_2Etrat__add,ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2j)))) ).
tff(conj_thm_2Ehrat_2ETRAT__MUL__SYM,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))),ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)))) ).
tff(conj_thm_2Ehrat_2ETRAT__MUL__ASSOC,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2j: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2j)))),ap(ap(c_2Ehrat_2Etrat__mul,ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2j)))) ).
tff(conj_thm_2Ehrat_2ETRAT__LDISTRIB,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V2j: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2j)))),ap(ap(c_2Ehrat_2Etrat__add,ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))),ap(ap(c_2Ehrat_2Etrat__mul,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2j))))) ).
tff(conj_thm_2Ehrat_2ETRAT__MUL__LID,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__mul,c_2Ehrat_2Etrat__1),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h))),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h))) ).
tff(conj_thm_2Ehrat_2ETRAT__MUL__LINV,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__mul,ap(c_2Ehrat_2Etrat__inv,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h))),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h))),c_2Ehrat_2Etrat__1)) ).
tff(conj_thm_2Ehrat_2ETRAT__NOZERO,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ~ p(ap(ap(c_2Ehrat_2Etrat__eq,ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i))),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h))) ).
tff(conj_thm_2Ehrat_2ETRAT__ADD__TOTAL,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1i: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)))
| ? [V2d: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2d))))
| ? [V3d: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1i)),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3d)))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__SUCINT__0,axiom,
! [V0n: tp__ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(c_2Ehrat_2Etrat__sucint,inj__ty_2Enum_2Enum(V0n))),ap(ap(c_2Epair_2E_2C(ty_2Enum_2Enum,ty_2Enum_2Enum),inj__ty_2Enum_2Enum(V0n)),inj__ty_2Enum_2Enum(fo__c_2Enum_2E0)))) ).
tff(conj_thm_2Ehrat_2ETRAT__ARCH,axiom,
! [V0h: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
? [V1n: tp__ty_2Enum_2Enum,V2d: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(c_2Ehrat_2Etrat__sucint,inj__ty_2Enum_2Enum(V1n))),ap(ap(c_2Ehrat_2Etrat__add,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0h)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2d)))) ).
tff(conj_thm_2Ehrat_2ETRAT__SUCINT,axiom,
( p(ap(ap(c_2Ehrat_2Etrat__eq,ap(c_2Ehrat_2Etrat__sucint,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))),c_2Ehrat_2Etrat__1))
& ! [V0n: tp__ty_2Enum_2Enum] : p(ap(ap(c_2Ehrat_2Etrat__eq,ap(c_2Ehrat_2Etrat__sucint,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V0n)))),ap(ap(c_2Ehrat_2Etrat__add,ap(c_2Ehrat_2Etrat__sucint,inj__ty_2Enum_2Enum(V0n))),c_2Ehrat_2Etrat__1))) ) ).
tff(conj_thm_2Ehrat_2ETRAT__EQ__EQUIV,axiom,
! [V0p: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum,V1q: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)))
<=> ( ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0p)) = ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V1q)) ) ) ).
tff(lamtp_f2275,type,
f2275: $i > $i ).
tff(lameq_f2275,axiom,
! [V1c: $i] :
( mem(V1c,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool))
=> ! [V2r: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( ap(f2275(V1c),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r))),ap(ap(c_2Emin_2E_3D(arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool)),V1c),ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)))) ) ) ).
tff(lamtp_f2276,type,
f2276: $i ).
tff(lameq_f2276,axiom,
! [V1c: $i] : ( ap(f2276,V1c) = ap(c_2Ebool_2E_3F(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)),f2275(V1c)) ) ).
tff(ax_thm_2Ehrat_2Ehrat__TY__DEF,axiom,
? [V0rep: $i] :
( mem(V0rep,arr(ty_2Ehrat_2Ehrat,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool)))
& p(ap(ap(c_2Ebool_2ETYPE__DEFINITION(arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool),ty_2Ehrat_2Ehrat),f2276),V0rep)) ) ).
tff(lamtp_f2277,type,
f2277: $i > $i ).
tff(lameq_f2277,axiom,
! [V2c: $i] :
( mem(V2c,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool))
=> ! [V3r: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( ap(f2277(V2c),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3r)) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3r)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3r))),ap(ap(c_2Emin_2E_3D(arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool)),V2c),ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V3r)))) ) ) ).
tff(lamtp_f2278,type,
f2278: $i ).
tff(lameq_f2278,axiom,
! [V2c: $i] : ( ap(f2278,V2c) = ap(c_2Ebool_2E_3F(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)),f2277(V2c)) ) ).
tff(ax_thm_2Ehrat_2Ehrat__bijections,axiom,
( ! [V0a: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS__CLASS,ap(c_2Ehrat_2Ehrat__REP__CLASS,inj__ty_2Ehrat_2Ehrat(V0a)))) = V0a )
& ! [V1r: $i] :
( mem(V1r,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool))
=> ( p(ap(f2278,V1r))
<=> ( ap(c_2Ehrat_2Ehrat__REP__CLASS,ap(c_2Ehrat_2Ehrat__ABS__CLASS,V1r)) = V1r ) ) ) ) ).
tff(conj_thm_2Ehrat_2Ehrat__ABS__REP__CLASS,axiom,
( ! [V0a: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS__CLASS,ap(c_2Ehrat_2Ehrat__REP__CLASS,inj__ty_2Ehrat_2Ehrat(V0a)))) = V0a )
& ! [V1c: $i] :
( mem(V1c,arr(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),bool))
=> ( ? [V2r: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] :
( p(ap(ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)),inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)))
& ( V1c = ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V2r)) ) )
<=> ( ap(c_2Ehrat_2Ehrat__REP__CLASS,ap(c_2Ehrat_2Ehrat__ABS__CLASS,V1c)) = V1c ) ) ) ) ).
tff(ax_thm_2Ehrat_2Ehrat__REP__def,axiom,
! [V0a: tp__ty_2Ehrat_2Ehrat] : ( surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(c_2Ehrat_2Ehrat__REP,inj__ty_2Ehrat_2Ehrat(V0a))) = surj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(ap(c_2Emin_2E_40(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum)),ap(c_2Ehrat_2Ehrat__REP__CLASS,inj__ty_2Ehrat_2Ehrat(V0a)))) ) ).
tff(ax_thm_2Ehrat_2Ehrat__ABS__def,axiom,
! [V0r: tp__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum] : ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0r))) = surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS__CLASS,ap(c_2Ehrat_2Etrat__eq,inj__c_ty_2Epair_2Eprod_ty_2Enum_2Enum_ty_2Enum_2Enum(V0r)))) ) ).
tff(conj_thm_2Ehrat_2Ehrat__QUOTIENT,axiom,
p(ap(ap(ap(c_2Equotient_2EQUOTIENT(ty_2Epair_2Eprod(ty_2Enum_2Enum,ty_2Enum_2Enum),ty_2Ehrat_2Ehrat),c_2Ehrat_2Etrat__eq),c_2Ehrat_2Ehrat__ABS),c_2Ehrat_2Ehrat__REP)) ).
tff(ax_thm_2Ehrat_2Ehrat__1,axiom,
fo__c_2Ehrat_2Ehrat__1 = surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS,c_2Ehrat_2Etrat__1)) ).
tff(ax_thm_2Ehrat_2Ehrat__inv,axiom,
! [V0T1: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__inv,inj__ty_2Ehrat_2Ehrat(V0T1))) = surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS,ap(c_2Ehrat_2Etrat__inv,ap(c_2Ehrat_2Ehrat__REP,inj__ty_2Ehrat_2Ehrat(V0T1))))) ) ).
tff(ax_thm_2Ehrat_2Ehrat__add,axiom,
! [V0T1: tp__ty_2Ehrat_2Ehrat,V1T2: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V0T1)),inj__ty_2Ehrat_2Ehrat(V1T2))) = surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS,ap(ap(c_2Ehrat_2Etrat__add,ap(c_2Ehrat_2Ehrat__REP,inj__ty_2Ehrat_2Ehrat(V0T1))),ap(c_2Ehrat_2Ehrat__REP,inj__ty_2Ehrat_2Ehrat(V1T2))))) ) ).
tff(ax_thm_2Ehrat_2Ehrat__mul,axiom,
! [V0T1: tp__ty_2Ehrat_2Ehrat,V1T2: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V0T1)),inj__ty_2Ehrat_2Ehrat(V1T2))) = surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS,ap(ap(c_2Ehrat_2Etrat__mul,ap(c_2Ehrat_2Ehrat__REP,inj__ty_2Ehrat_2Ehrat(V0T1))),ap(c_2Ehrat_2Ehrat__REP,inj__ty_2Ehrat_2Ehrat(V1T2))))) ) ).
tff(ax_thm_2Ehrat_2Ehrat__sucint,axiom,
! [V0T1: tp__ty_2Enum_2Enum] : ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__sucint,inj__ty_2Enum_2Enum(V0T1))) = surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__ABS,ap(c_2Ehrat_2Etrat__sucint,inj__ty_2Enum_2Enum(V0T1)))) ) ).
tff(conj_thm_2Ehrat_2EHRAT__ADD__SYM,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat,V1i: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V1i))) = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V1i)),inj__ty_2Ehrat_2Ehrat(V0h))) ) ).
tff(conj_thm_2Ehrat_2EHRAT__ADD__ASSOC,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat,V1i: tp__ty_2Ehrat_2Ehrat,V2j: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V0h)),ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V1i)),inj__ty_2Ehrat_2Ehrat(V2j)))) = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V1i))),inj__ty_2Ehrat_2Ehrat(V2j))) ) ).
tff(conj_thm_2Ehrat_2EHRAT__MUL__SYM,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat,V1i: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V1i))) = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V1i)),inj__ty_2Ehrat_2Ehrat(V0h))) ) ).
tff(conj_thm_2Ehrat_2EHRAT__MUL__ASSOC,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat,V1i: tp__ty_2Ehrat_2Ehrat,V2j: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V0h)),ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V1i)),inj__ty_2Ehrat_2Ehrat(V2j)))) = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V1i))),inj__ty_2Ehrat_2Ehrat(V2j))) ) ).
tff(conj_thm_2Ehrat_2EHRAT__LDISTRIB,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat,V1i: tp__ty_2Ehrat_2Ehrat,V2j: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V0h)),ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V1i)),inj__ty_2Ehrat_2Ehrat(V2j)))) = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V1i))),ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V2j)))) ) ).
tff(conj_thm_2Ehrat_2EHRAT__MUL__LID,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__1)),inj__ty_2Ehrat_2Ehrat(V0h))) = V0h ) ).
tff(conj_thm_2Ehrat_2EHRAT__MUL__LINV,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__mul,ap(c_2Ehrat_2Ehrat__inv,inj__ty_2Ehrat_2Ehrat(V0h))),inj__ty_2Ehrat_2Ehrat(V0h))) = fo__c_2Ehrat_2Ehrat__1 ) ).
tff(conj_thm_2Ehrat_2EHRAT__NOZERO,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat,V1i: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V1i))) != V0h ) ).
tff(conj_thm_2Ehrat_2EHRAT__ADD__TOTAL,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat,V1i: tp__ty_2Ehrat_2Ehrat] :
( ( V0h = V1i )
| ? [V2d: tp__ty_2Ehrat_2Ehrat] : ( V0h = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V1i)),inj__ty_2Ehrat_2Ehrat(V2d))) )
| ? [V3d: tp__ty_2Ehrat_2Ehrat] : ( V1i = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V3d))) ) ) ).
tff(conj_thm_2Ehrat_2EHRAT__ARCH,axiom,
! [V0h: tp__ty_2Ehrat_2Ehrat] :
? [V1n: tp__ty_2Enum_2Enum,V2d: tp__ty_2Ehrat_2Ehrat] : ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__sucint,inj__ty_2Enum_2Enum(V1n))) = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,inj__ty_2Ehrat_2Ehrat(V0h)),inj__ty_2Ehrat_2Ehrat(V2d))) ) ).
tff(conj_thm_2Ehrat_2EHRAT__SUCINT,axiom,
( ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__sucint,inj__ty_2Enum_2Enum(fo__c_2Enum_2E0))) = fo__c_2Ehrat_2Ehrat__1 )
& ! [V0n: tp__ty_2Enum_2Enum] : ( surj__ty_2Ehrat_2Ehrat(ap(c_2Ehrat_2Ehrat__sucint,ap(c_2Enum_2ESUC,inj__ty_2Enum_2Enum(V0n)))) = surj__ty_2Ehrat_2Ehrat(ap(ap(c_2Ehrat_2Ehrat__add,ap(c_2Ehrat_2Ehrat__sucint,inj__ty_2Enum_2Enum(V0n))),inj__ty_2Ehrat_2Ehrat(fo__c_2Ehrat_2Ehrat__1))) ) ) ).
%------------------------------------------------------------------------------