TSTP Solution File: NUM639^4 by cocATP---0.2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : NUM639^4 : TPTP v7.1.0. Released v7.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : python CASC.py /export/starexec/sandbox2/benchmark/theBenchmark.p

% Computer : n093.star.cs.uiowa.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2609 0 2.40GHz
% Memory   : 32218.625MB
% OS       : Linux 3.10.0-693.2.2.el7.x86_64
% CPULimit : 300s
% DateTime : Mon Jan  8 13:11:15 EST 2018

% Result   : Unknown 1.74s
% Output   : None 
% Verified : 
% SZS Type : None (Parsing solution fails)
% Syntax   : Number of formulae    : 0

% Comments : 
%------------------------------------------------------------------------------
%----No solution output by system
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.03  % Problem  : NUM639^4 : TPTP v7.1.0. Released v7.1.0.
% 0.00/0.04  % Command  : python CASC.py /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.02/0.23  % Computer : n093.star.cs.uiowa.edu
% 0.02/0.23  % Model    : x86_64 x86_64
% 0.02/0.23  % CPU      : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% 0.02/0.23  % Memory   : 32218.625MB
% 0.02/0.23  % OS       : Linux 3.10.0-693.2.2.el7.x86_64
% 0.02/0.23  % CPULimit : 300
% 0.02/0.23  % DateTime : Fri Jan  5 11:19:30 CST 2018
% 0.02/0.23  % CPUTime  : 
% 0.09/0.28  Python 2.7.13
% 0.33/0.72  Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox2/benchmark/', '/export/starexec/sandbox2/benchmark/']
% 0.33/0.72  Failed to open /home/cristobal/cocATP/CASC/TPTP/Axioms/NUM007^0.ax, trying next directory
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc980a70>, <kernel.DependentProduct object at 0x2aacfc980950>) of role type named typ_is_of
% 0.33/0.72  Using role type
% 0.33/0.72  Declaring is_of:(fofType->((fofType->Prop)->Prop))
% 0.33/0.72  FOF formula (((eq (fofType->((fofType->Prop)->Prop))) is_of) (fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0))) of role definition named def_is_of
% 0.33/0.72  A new definition: (((eq (fofType->((fofType->Prop)->Prop))) is_of) (fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)))
% 0.33/0.72  Defined: is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0))
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc980a70>, <kernel.DependentProduct object at 0x2aacfc9800e0>) of role type named typ_all_of
% 0.33/0.72  Using role type
% 0.33/0.72  Declaring all_of:((fofType->Prop)->((fofType->Prop)->Prop))
% 0.33/0.72  FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) all_of) (fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2))))) of role definition named def_all_of
% 0.33/0.72  A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) all_of) (fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))))
% 0.33/0.72  Defined: all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2))))
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc9800e0>, <kernel.DependentProduct object at 0x2aacfc980638>) of role type named typ_eps
% 0.33/0.72  Using role type
% 0.33/0.72  Declaring eps:((fofType->Prop)->fofType)
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc980560>, <kernel.DependentProduct object at 0x2aacfc980b48>) of role type named typ_in
% 0.33/0.72  Using role type
% 0.33/0.72  Declaring in:(fofType->(fofType->Prop))
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc9803f8>, <kernel.DependentProduct object at 0x2aacfc9800e0>) of role type named typ_d_Subq
% 0.33/0.72  Using role type
% 0.33/0.72  Declaring d_Subq:(fofType->(fofType->Prop))
% 0.33/0.72  FOF formula (((eq (fofType->(fofType->Prop))) d_Subq) (fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1))))) of role definition named def_d_Subq
% 0.33/0.72  A new definition: (((eq (fofType->(fofType->Prop))) d_Subq) (fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))))
% 0.33/0.72  Defined: d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1))))
% 0.33/0.72  FOF formula (forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1)))) of role axiom named set_ext
% 0.33/0.72  A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 0.33/0.72  FOF formula (forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1)))) of role axiom named k_In_ind
% 0.33/0.72  A new axiom: (forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc980440>, <kernel.Single object at 0x2aacfc980b90>) of role type named typ_emptyset
% 0.33/0.72  Using role type
% 0.33/0.72  Declaring emptyset:fofType
% 0.33/0.72  FOF formula (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False) of role axiom named k_EmptyAx
% 0.33/0.72  A new axiom: (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc980488>, <kernel.DependentProduct object at 0x2aacfc9800e0>) of role type named typ_union
% 0.33/0.72  Using role type
% 0.33/0.72  Declaring union:(fofType->fofType)
% 0.33/0.72  FOF formula (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0)))))) of role axiom named k_UnionEq
% 0.33/0.72  A new axiom: (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 0.33/0.72  FOF formula (<kernel.Constant object at 0x2aacfc9807e8>, <kernel.DependentProduct object at 0x2aacfc980830>) of role type named typ_power
% 0.33/0.72  Using role type
% 0.33/0.73  Declaring power:(fofType->fofType)
% 0.33/0.73  FOF formula (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))) of role axiom named k_PowerEq
% 0.33/0.73  A new axiom: (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 0.33/0.73  FOF formula (<kernel.Constant object at 0x2aacfc980cf8>, <kernel.DependentProduct object at 0x2aacfc980638>) of role type named typ_repl
% 0.33/0.73  Using role type
% 0.33/0.73  Declaring repl:(fofType->((fofType->fofType)->fofType))
% 0.33/0.73  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3))))))) of role axiom named k_ReplEq
% 0.33/0.73  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 0.33/0.73  FOF formula (<kernel.Constant object at 0x2aacfc693a28>, <kernel.DependentProduct object at 0x2aacfc980cf8>) of role type named typ_d_Union_closed
% 0.33/0.73  Using role type
% 0.33/0.73  Declaring d_Union_closed:(fofType->Prop)
% 0.33/0.73  FOF formula (((eq (fofType->Prop)) d_Union_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0))))) of role definition named def_d_Union_closed
% 0.33/0.73  A new definition: (((eq (fofType->Prop)) d_Union_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))))
% 0.33/0.73  Defined: d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0))))
% 0.33/0.73  FOF formula (<kernel.Constant object at 0x2aacfc980cf8>, <kernel.DependentProduct object at 0x2aacfc980dd0>) of role type named typ_d_Power_closed
% 0.33/0.73  Using role type
% 0.33/0.73  Declaring d_Power_closed:(fofType->Prop)
% 0.33/0.73  FOF formula (((eq (fofType->Prop)) d_Power_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0))))) of role definition named def_d_Power_closed
% 0.33/0.73  A new definition: (((eq (fofType->Prop)) d_Power_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))))
% 0.33/0.73  Defined: d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0))))
% 0.33/0.73  FOF formula (<kernel.Constant object at 0x2aacfc980dd0>, <kernel.DependentProduct object at 0x2aacfc9805f0>) of role type named typ_d_Repl_closed
% 0.33/0.73  Using role type
% 0.33/0.73  Declaring d_Repl_closed:(fofType->Prop)
% 0.33/0.73  FOF formula (((eq (fofType->Prop)) d_Repl_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0))))))) of role definition named def_d_Repl_closed
% 0.33/0.73  A new definition: (((eq (fofType->Prop)) d_Repl_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))))
% 0.33/0.73  Defined: d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0))))))
% 0.33/0.73  FOF formula (<kernel.Constant object at 0x2aacfc9805f0>, <kernel.DependentProduct object at 0x2aacfc980e60>) of role type named typ_d_ZF_closed
% 0.33/0.73  Using role type
% 0.33/0.73  Declaring d_ZF_closed:(fofType->Prop)
% 0.33/0.73  FOF formula (((eq (fofType->Prop)) d_ZF_closed) (fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0)))) of role definition named def_d_ZF_closed
% 0.33/0.73  A new definition: (((eq (fofType->Prop)) d_ZF_closed) (fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))))
% 0.33/0.73  Defined: d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0)))
% 0.33/0.73  FOF formula (<kernel.Constant object at 0x2aacfc980e60>, <kernel.DependentProduct object at 0x2aacfc980638>) of role type named typ_univof
% 0.33/0.73  Using role type
% 0.33/0.73  Declaring univof:(fofType->fofType)
% 0.33/0.73  FOF formula (forall (X0:fofType), ((in X0) (univof X0))) of role axiom named k_UnivOf_In
% 0.33/0.73  A new axiom: (forall (X0:fofType), ((in X0) (univof X0)))
% 0.33/0.73  FOF formula (forall (X0:fofType), (d_ZF_closed (univof X0))) of role axiom named k_UnivOf_ZF_closed
% 0.33/0.75  A new axiom: (forall (X0:fofType), (d_ZF_closed (univof X0)))
% 0.33/0.75  FOF formula (<kernel.Constant object at 0x2aacfc980518>, <kernel.DependentProduct object at 0x2aacfc9805f0>) of role type named typ_if
% 0.33/0.75  Using role type
% 0.33/0.75  Declaring if:(Prop->(fofType->(fofType->fofType)))
% 0.33/0.75  FOF formula (((eq (Prop->(fofType->(fofType->fofType)))) if) (fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2))))))) of role definition named def_if
% 0.33/0.75  A new definition: (((eq (Prop->(fofType->(fofType->fofType)))) if) (fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))))
% 0.33/0.75  Defined: if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2))))))
% 0.33/0.75  FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2)))) of role axiom named if_i_correct
% 0.33/0.75  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 0.33/0.75  FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2))) of role axiom named if_i_0
% 0.33/0.75  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 0.33/0.75  FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1))) of role axiom named if_i_1
% 0.33/0.75  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 0.33/0.75  FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2))) of role axiom named if_i_or
% 0.33/0.75  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 0.33/0.75  FOF formula (<kernel.Constant object at 0x2aacfc6996c8>, <kernel.DependentProduct object at 0x2aacfc980320>) of role type named typ_nIn
% 0.33/0.75  Using role type
% 0.33/0.75  Declaring nIn:(fofType->(fofType->Prop))
% 0.33/0.75  FOF formula (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))) of role definition named def_nIn
% 0.33/0.75  A new definition: (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)))
% 0.33/0.75  Defined: nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))
% 0.33/0.75  FOF formula (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))) of role axiom named k_PowerE
% 0.33/0.75  A new axiom: (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 0.33/0.75  FOF formula (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))) of role axiom named k_PowerI
% 0.33/0.75  A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 0.33/0.75  FOF formula (forall (X0:fofType), ((in X0) (power X0))) of role axiom named k_Self_In_Power
% 0.33/0.75  A new axiom: (forall (X0:fofType), ((in X0) (power X0)))
% 0.33/0.75  FOF formula (<kernel.Constant object at 0x2aacfc699c68>, <kernel.DependentProduct object at 0x2aacfc980368>) of role type named typ_d_UPair
% 0.33/0.75  Using role type
% 0.33/0.75  Declaring d_UPair:(fofType->(fofType->fofType))
% 0.33/0.75  FOF formula (((eq (fofType->(fofType->fofType))) d_UPair) (fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1))))) of role definition named def_d_UPair
% 0.33/0.75  A new definition: (((eq (fofType->(fofType->fofType))) d_UPair) (fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))))
% 0.33/0.75  Defined: d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1))))
% 0.33/0.75  FOF formula (<kernel.Constant object at 0x2aacfc6996c8>, <kernel.DependentProduct object at 0x2aacfc5b8098>) of role type named typ_d_Sing
% 0.33/0.75  Using role type
% 0.33/0.77  Declaring d_Sing:(fofType->fofType)
% 0.33/0.77  FOF formula (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0))) of role definition named def_d_Sing
% 0.33/0.77  A new definition: (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0)))
% 0.33/0.77  Defined: d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0))
% 0.33/0.77  FOF formula (<kernel.Constant object at 0x2aacfc980368>, <kernel.DependentProduct object at 0x2aacfc5b8098>) of role type named typ_binunion
% 0.33/0.77  Using role type
% 0.33/0.77  Declaring binunion:(fofType->(fofType->fofType))
% 0.33/0.77  FOF formula (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))) of role definition named def_binunion
% 0.33/0.77  A new definition: (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))))
% 0.33/0.77  Defined: binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))
% 0.33/0.77  FOF formula (<kernel.Constant object at 0x2aacfc980368>, <kernel.DependentProduct object at 0x2aacfc5b8950>) of role type named typ_famunion
% 0.33/0.77  Using role type
% 0.33/0.77  Declaring famunion:(fofType->((fofType->fofType)->fofType))
% 0.33/0.77  FOF formula (((eq (fofType->((fofType->fofType)->fofType))) famunion) (fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1)))) of role definition named def_famunion
% 0.33/0.77  A new definition: (((eq (fofType->((fofType->fofType)->fofType))) famunion) (fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))))
% 0.33/0.77  Defined: famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1)))
% 0.33/0.77  FOF formula (<kernel.Constant object at 0x2aacfc980368>, <kernel.DependentProduct object at 0x2aacfc5b8518>) of role type named typ_d_Sep
% 0.33/0.77  Using role type
% 0.33/0.77  Declaring d_Sep:(fofType->((fofType->Prop)->fofType))
% 0.33/0.77  FOF formula (((eq (fofType->((fofType->Prop)->fofType))) d_Sep) (fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset))) of role definition named def_d_Sep
% 0.33/0.77  A new definition: (((eq (fofType->((fofType->Prop)->fofType))) d_Sep) (fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)))
% 0.33/0.77  Defined: d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset))
% 0.33/0.77  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1))))) of role axiom named k_SepI
% 0.33/0.77  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 0.33/0.77  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0))) of role axiom named k_SepE1
% 0.33/0.77  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 0.33/0.77  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2))) of role axiom named k_SepE2
% 0.33/0.77  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 0.33/0.77  FOF formula (<kernel.Constant object at 0x2aacfc5b8950>, <kernel.DependentProduct object at 0x2aacfc5b84d0>) of role type named typ_d_ReplSep
% 0.33/0.77  Using role type
% 0.33/0.77  Declaring d_ReplSep:(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 0.33/0.77  FOF formula (((eq (fofType->((fofType->Prop)->((fofType->fofType)->fofType)))) d_ReplSep) (fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1)))) of role definition named def_d_ReplSep
% 0.33/0.77  A new definition: (((eq (fofType->((fofType->Prop)->((fofType->fofType)->fofType)))) d_ReplSep) (fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))))
% 0.33/0.77  Defined: d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1)))
% 0.33/0.77  FOF formula (<kernel.Constant object at 0x2aacfc5b8128>, <kernel.DependentProduct object at 0x2aacf4d2e950>) of role type named typ_setminus
% 0.41/0.78  Using role type
% 0.41/0.78  Declaring setminus:(fofType->(fofType->fofType))
% 0.41/0.78  FOF formula (((eq (fofType->(fofType->fofType))) setminus) (fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1))))) of role definition named def_setminus
% 0.41/0.78  A new definition: (((eq (fofType->(fofType->fofType))) setminus) (fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))))
% 0.41/0.78  Defined: setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1))))
% 0.41/0.78  FOF formula (<kernel.Constant object at 0x2aacfc5b8128>, <kernel.DependentProduct object at 0x2aacf4d2e0e0>) of role type named typ_d_In_rec_G
% 0.41/0.78  Using role type
% 0.41/0.78  Declaring d_In_rec_G:((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 0.41/0.78  FOF formula (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))) d_In_rec_G) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2))))) of role definition named def_d_In_rec_G
% 0.41/0.78  A new definition: (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))) d_In_rec_G) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))))
% 0.41/0.78  Defined: d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2))))
% 0.41/0.78  FOF formula (<kernel.Constant object at 0x2aacfc5b8128>, <kernel.DependentProduct object at 0x2aacf4d2e680>) of role type named typ_d_In_rec
% 0.41/0.78  Using role type
% 0.41/0.78  Declaring d_In_rec:((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 0.41/0.78  FOF formula (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->fofType))) d_In_rec) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1)))) of role definition named def_d_In_rec
% 0.41/0.78  A new definition: (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->fofType))) d_In_rec) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))))
% 0.41/0.78  Defined: d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1)))
% 0.41/0.78  FOF formula (<kernel.Constant object at 0x2aacf4d2e680>, <kernel.DependentProduct object at 0x2aacf4d2e320>) of role type named typ_ordsucc
% 0.41/0.78  Using role type
% 0.41/0.78  Declaring ordsucc:(fofType->fofType)
% 0.41/0.78  FOF formula (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))) of role definition named def_ordsucc
% 0.41/0.78  A new definition: (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0))))
% 0.41/0.78  Defined: ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))
% 0.41/0.78  FOF formula (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))) of role axiom named neq_ordsucc_0
% 0.41/0.78  A new axiom: (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 0.41/0.78  FOF formula (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))) of role axiom named ordsucc_inj
% 0.41/0.78  A new axiom: (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 0.41/0.78  FOF formula ((in emptyset) (ordsucc emptyset)) of role axiom named k_In_0_1
% 0.41/0.78  A new axiom: ((in emptyset) (ordsucc emptyset))
% 0.41/0.78  FOF formula (<kernel.Constant object at 0x2aacf4d2e2d8>, <kernel.DependentProduct object at 0x2aacf4d2e950>) of role type named typ_nat_p
% 0.41/0.78  Using role type
% 0.41/0.78  Declaring nat_p:(fofType->Prop)
% 0.41/0.78  FOF formula (((eq (fofType->Prop)) nat_p) (fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0)))))) of role definition named def_nat_p
% 0.41/0.80  A new definition: (((eq (fofType->Prop)) nat_p) (fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))))
% 0.41/0.80  Defined: nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0)))))
% 0.41/0.80  FOF formula (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))) of role axiom named nat_ordsucc
% 0.41/0.80  A new axiom: (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 0.41/0.80  FOF formula (nat_p (ordsucc emptyset)) of role axiom named nat_1
% 0.41/0.80  A new axiom: (nat_p (ordsucc emptyset))
% 0.41/0.80  FOF formula (forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1)))))) of role axiom named nat_ind
% 0.41/0.80  A new axiom: (forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 0.41/0.80  FOF formula (forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1)))))))) of role axiom named nat_inv
% 0.41/0.80  A new axiom: (forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 0.41/0.80  FOF formula (<kernel.Constant object at 0x2aacf4d2e9e0>, <kernel.Single object at 0x2aacf4d2e710>) of role type named typ_omega
% 0.41/0.80  Using role type
% 0.41/0.80  Declaring omega:fofType
% 0.41/0.80  FOF formula (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p)) of role definition named def_omega
% 0.41/0.80  A new definition: (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p))
% 0.41/0.80  Defined: omega:=((d_Sep (univof emptyset)) nat_p)
% 0.41/0.80  FOF formula (forall (X0:fofType), (((in X0) omega)->(nat_p X0))) of role axiom named omega_nat_p
% 0.41/0.80  A new axiom: (forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 0.41/0.80  FOF formula (forall (X0:fofType), ((nat_p X0)->((in X0) omega))) of role axiom named nat_p_omega
% 0.41/0.80  A new axiom: (forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 0.41/0.80  FOF formula (<kernel.Constant object at 0x2aacf4d2e290>, <kernel.DependentProduct object at 0x2aacf4d2e710>) of role type named typ_d_Inj1
% 0.41/0.80  Using role type
% 0.41/0.80  Declaring d_Inj1:(fofType->fofType)
% 0.41/0.80  FOF formula (((eq (fofType->fofType)) d_Inj1) (d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1))))) of role definition named def_d_Inj1
% 0.41/0.80  A new definition: (((eq (fofType->fofType)) d_Inj1) (d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))))
% 0.41/0.80  Defined: d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1))))
% 0.41/0.80  FOF formula (<kernel.Constant object at 0x2aacf4d2e9e0>, <kernel.DependentProduct object at 0x2aacf4d2ed40>) of role type named typ_d_Inj0
% 0.41/0.80  Using role type
% 0.41/0.80  Declaring d_Inj0:(fofType->fofType)
% 0.41/0.80  FOF formula (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1))) of role definition named def_d_Inj0
% 0.41/0.80  A new definition: (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1)))
% 0.41/0.80  Defined: d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1))
% 0.41/0.80  FOF formula (<kernel.Constant object at 0x2aacf4d2ed40>, <kernel.DependentProduct object at 0x2aacf4d2e710>) of role type named typ_d_Unj
% 0.41/0.80  Using role type
% 0.41/0.80  Declaring d_Unj:(fofType->fofType)
% 0.41/0.80  FOF formula (((eq (fofType->fofType)) d_Unj) (d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset)))))) of role definition named def_d_Unj
% 0.41/0.80  A new definition: (((eq (fofType->fofType)) d_Unj) (d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))))
% 0.41/0.80  Defined: d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset)))))
% 0.41/0.80  FOF formula (<kernel.Constant object at 0x2aacf4d2e290>, <kernel.DependentProduct object at 0x2aacf4d2e710>) of role type named typ_pair
% 0.41/0.80  Using role type
% 0.41/0.80  Declaring pair:(fofType->(fofType->fofType))
% 0.41/0.80  FOF formula (((eq (fofType->(fofType->fofType))) pair) (fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1)))) of role definition named def_pair
% 0.41/0.81  A new definition: (((eq (fofType->(fofType->fofType))) pair) (fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))))
% 0.41/0.81  Defined: pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1)))
% 0.41/0.81  FOF formula (<kernel.Constant object at 0x2aacf4d2e710>, <kernel.DependentProduct object at 0x2aacf4d2e518>) of role type named typ_proj0
% 0.41/0.81  Using role type
% 0.41/0.81  Declaring proj0:(fofType->fofType)
% 0.41/0.81  FOF formula (((eq (fofType->fofType)) proj0) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj))) of role definition named def_proj0
% 0.41/0.81  A new definition: (((eq (fofType->fofType)) proj0) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)))
% 0.41/0.81  Defined: proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj))
% 0.41/0.81  FOF formula (<kernel.Constant object at 0x2aacf4d2e518>, <kernel.DependentProduct object at 0x2aacf4d2e440>) of role type named typ_proj1
% 0.41/0.81  Using role type
% 0.41/0.81  Declaring _TPTP_proj1:(fofType->fofType)
% 0.41/0.81  FOF formula (((eq (fofType->fofType)) _TPTP_proj1) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj))) of role definition named def_proj1
% 0.41/0.81  A new definition: (((eq (fofType->fofType)) _TPTP_proj1) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)))
% 0.41/0.81  Defined: _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj))
% 0.41/0.81  FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)) of role axiom named proj0_pair_eq
% 0.41/0.81  A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 0.41/0.81  FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)) of role axiom named proj1_pair_eq
% 0.41/0.81  A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 0.41/0.81  FOF formula (<kernel.Constant object at 0x2aacf4d2ee18>, <kernel.DependentProduct object at 0x2aacf4d2e8c0>) of role type named typ_d_Sigma
% 0.41/0.81  Using role type
% 0.41/0.81  Declaring d_Sigma:(fofType->((fofType->fofType)->fofType))
% 0.41/0.81  FOF formula (((eq (fofType->((fofType->fofType)->fofType))) d_Sigma) (fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2)))))) of role definition named def_d_Sigma
% 0.41/0.81  A new definition: (((eq (fofType->((fofType->fofType)->fofType))) d_Sigma) (fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))))
% 0.41/0.81  Defined: d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2)))))
% 0.41/0.81  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1)))))) of role axiom named pair_Sigma
% 0.41/0.82  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 0.41/0.82  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))) of role axiom named k_Sigma_eta_proj0_proj1
% 0.41/0.82  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 0.41/0.82  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2))) of role axiom named proj_Sigma_eta
% 0.41/0.83  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 0.41/0.83  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0))) of role axiom named proj0_Sigma
% 0.41/0.83  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 0.41/0.83  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))) of role axiom named proj1_Sigma
% 0.41/0.83  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 0.41/0.83  FOF formula (<kernel.Constant object at 0x2aacf4d2e290>, <kernel.DependentProduct object at 0x2aacf4d2ee18>) of role type named typ_setprod
% 0.41/0.83  Using role type
% 0.41/0.83  Declaring setprod:(fofType->(fofType->fofType))
% 0.41/0.83  FOF formula (((eq (fofType->(fofType->fofType))) setprod) (fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1)))) of role definition named def_setprod
% 0.41/0.83  A new definition: (((eq (fofType->(fofType->fofType))) setprod) (fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))))
% 0.41/0.83  Defined: setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1)))
% 0.41/0.83  FOF formula (<kernel.Constant object at 0x2aacf4d2ee18>, <kernel.DependentProduct object at 0x2aacf4d2ecb0>) of role type named typ_ap
% 0.41/0.83  Using role type
% 0.41/0.83  Declaring ap:(fofType->(fofType->fofType))
% 0.41/0.83  FOF formula (((eq (fofType->(fofType->fofType))) ap) (fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1))) of role definition named def_ap
% 0.41/0.83  A new definition: (((eq (fofType->(fofType->fofType))) ap) (fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)))
% 0.41/0.83  Defined: ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1))
% 0.41/0.83  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2)))) of role axiom named beta
% 0.41/0.83  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 0.41/0.83  FOF formula (<kernel.Constant object at 0x2aacf4d2eea8>, <kernel.DependentProduct object at 0x2aacf4d2e440>) of role type named typ_pair_p
% 0.41/0.83  Using role type
% 0.41/0.83  Declaring pair_p:(fofType->Prop)
% 0.41/0.83  FOF formula (((eq (fofType->Prop)) pair_p) (fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0))) of role definition named def_pair_p
% 0.41/0.83  A new definition: (((eq (fofType->Prop)) pair_p) (fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)))
% 0.41/0.83  Defined: pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0))
% 0.41/0.83  FOF formula (<kernel.Constant object at 0x2aacf4d2e290>, <kernel.DependentProduct object at 0x2aacf4d2ecb0>) of role type named typ_d_Pi
% 0.41/0.83  Using role type
% 0.41/0.83  Declaring d_Pi:(fofType->((fofType->fofType)->fofType))
% 0.41/0.83  FOF formula (((eq (fofType->((fofType->fofType)->fofType))) d_Pi) (fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))))) of role definition named def_d_Pi
% 0.41/0.83  A new definition: (((eq (fofType->((fofType->fofType)->fofType))) d_Pi) (fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))))
% 0.41/0.83  Defined: d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))))
% 0.41/0.85  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1)))) of role axiom named lam_Pi
% 0.41/0.85  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 0.41/0.85  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))) of role axiom named ap_Pi
% 0.41/0.85  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 0.41/0.85  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3)))))) of role axiom named k_Pi_ext
% 0.41/0.85  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 0.41/0.85  FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2)))) of role axiom named xi_ext
% 0.41/0.85  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))
% 0.41/0.85  FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset))))) of role axiom named k_If_In_01
% 0.41/0.85  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 0.41/0.85  FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2)))) of role axiom named k_If_In_then_E
% 0.41/0.85  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 0.41/0.85  FOF formula (<kernel.Constant object at 0x2aacf4d2e290>, <kernel.DependentProduct object at 0x2aacffd35440>) of role type named typ_imp
% 0.41/0.85  Using role type
% 0.41/0.85  Declaring imp:(Prop->(Prop->Prop))
% 0.41/0.85  FOF formula (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1))) of role definition named def_imp
% 0.41/0.85  A new definition: (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1)))
% 0.41/0.85  Defined: imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1))
% 0.41/0.85  FOF formula (<kernel.Constant object at 0x2aacffd35440>, <kernel.DependentProduct object at 0x2aacffd354d0>) of role type named typ_d_not
% 0.41/0.85  Using role type
% 0.41/0.85  Declaring d_not:(Prop->Prop)
% 0.41/0.85  FOF formula (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False))) of role definition named def_d_not
% 0.41/0.85  A new definition: (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False)))
% 0.41/0.85  Defined: d_not:=(fun (X0:Prop)=> ((imp X0) False))
% 0.41/0.85  FOF formula (<kernel.Constant object at 0x2aacffd354d0>, <kernel.DependentProduct object at 0x2aacffd357e8>) of role type named typ_wel
% 0.41/0.85  Using role type
% 0.41/0.85  Declaring wel:(Prop->Prop)
% 0.41/0.85  FOF formula (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0)))) of role definition named def_wel
% 0.41/0.85  A new definition: (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0))))
% 0.41/0.85  Defined: wel:=(fun (X0:Prop)=> (d_not (d_not X0)))
% 0.41/0.85  FOF formula (forall (X0:Prop), ((wel X0)->X0)) of role axiom named l_et
% 0.41/0.85  A new axiom: (forall (X0:Prop), ((wel X0)->X0))
% 0.41/0.85  FOF formula (<kernel.Constant object at 0x2aacffd35128>, <kernel.Sort object at 0x2aacfca016c8>) of role type named typ_obvious
% 0.41/0.85  Using role type
% 0.41/0.85  Declaring obvious:Prop
% 0.41/0.85  FOF formula (((eq Prop) obvious) ((imp False) False)) of role definition named def_obvious
% 0.41/0.85  A new definition: (((eq Prop) obvious) ((imp False) False))
% 0.41/0.87  Defined: obvious:=((imp False) False)
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd35320>, <kernel.DependentProduct object at 0x2aacffd35050>) of role type named typ_l_ec
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring l_ec:(Prop->(Prop->Prop))
% 0.41/0.87  FOF formula (((eq (Prop->(Prop->Prop))) l_ec) (fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1)))) of role definition named def_l_ec
% 0.41/0.87  A new definition: (((eq (Prop->(Prop->Prop))) l_ec) (fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))))
% 0.41/0.87  Defined: l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1)))
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd35050>, <kernel.DependentProduct object at 0x2aacffd35128>) of role type named typ_d_and
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring d_and:(Prop->(Prop->Prop))
% 0.41/0.87  FOF formula (((eq (Prop->(Prop->Prop))) d_and) (fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1)))) of role definition named def_d_and
% 0.41/0.87  A new definition: (((eq (Prop->(Prop->Prop))) d_and) (fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))))
% 0.41/0.87  Defined: d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1)))
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd35128>, <kernel.DependentProduct object at 0x2aacffd35320>) of role type named typ_l_or
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring l_or:(Prop->(Prop->Prop))
% 0.41/0.87  FOF formula (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0)))) of role definition named def_l_or
% 0.41/0.87  A new definition: (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0))))
% 0.41/0.87  Defined: l_or:=(fun (X0:Prop)=> (imp (d_not X0)))
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd35320>, <kernel.DependentProduct object at 0x2aacffd356c8>) of role type named typ_orec
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring orec:(Prop->(Prop->Prop))
% 0.41/0.87  FOF formula (((eq (Prop->(Prop->Prop))) orec) (fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1)))) of role definition named def_orec
% 0.41/0.87  A new definition: (((eq (Prop->(Prop->Prop))) orec) (fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))))
% 0.41/0.87  Defined: orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1)))
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd356c8>, <kernel.DependentProduct object at 0x2aacffd35128>) of role type named typ_l_iff
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring l_iff:(Prop->(Prop->Prop))
% 0.41/0.87  FOF formula (((eq (Prop->(Prop->Prop))) l_iff) (fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0)))) of role definition named def_l_iff
% 0.41/0.87  A new definition: (((eq (Prop->(Prop->Prop))) l_iff) (fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))))
% 0.41/0.87  Defined: l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0)))
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd35128>, <kernel.DependentProduct object at 0x2aacffd35878>) of role type named typ_all
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring all:(fofType->((fofType->Prop)->Prop))
% 0.41/0.87  FOF formula (((eq (fofType->((fofType->Prop)->Prop))) all) (fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0))))) of role definition named def_all
% 0.41/0.87  A new definition: (((eq (fofType->((fofType->Prop)->Prop))) all) (fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))))
% 0.41/0.87  Defined: all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0))))
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd35878>, <kernel.DependentProduct object at 0x2aacffd35c68>) of role type named typ_non
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring non:(fofType->((fofType->Prop)->(fofType->Prop)))
% 0.41/0.87  FOF formula (((eq (fofType->((fofType->Prop)->(fofType->Prop)))) non) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2)))) of role definition named def_non
% 0.41/0.87  A new definition: (((eq (fofType->((fofType->Prop)->(fofType->Prop)))) non) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))))
% 0.41/0.87  Defined: non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2)))
% 0.41/0.87  FOF formula (<kernel.Constant object at 0x2aacffd35c68>, <kernel.DependentProduct object at 0x2aacffd35680>) of role type named typ_l_some
% 0.41/0.87  Using role type
% 0.41/0.87  Declaring l_some:(fofType->((fofType->Prop)->Prop))
% 0.41/0.87  FOF formula (((eq (fofType->((fofType->Prop)->Prop))) l_some) (fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1))))) of role definition named def_l_some
% 0.50/0.88  A new definition: (((eq (fofType->((fofType->Prop)->Prop))) l_some) (fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))))
% 0.50/0.88  Defined: l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1))))
% 0.50/0.88  FOF formula (<kernel.Constant object at 0x2aacffd35680>, <kernel.DependentProduct object at 0x2aacffd35cb0>) of role type named typ_or3
% 0.50/0.88  Using role type
% 0.50/0.88  Declaring or3:(Prop->(Prop->(Prop->Prop)))
% 0.50/0.88  FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) or3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2)))) of role definition named def_or3
% 0.50/0.88  A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) or3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))))
% 0.50/0.88  Defined: or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2)))
% 0.50/0.88  FOF formula (<kernel.Constant object at 0x2aacffd35cb0>, <kernel.DependentProduct object at 0x2aacffd35a70>) of role type named typ_and3
% 0.50/0.88  Using role type
% 0.50/0.88  Declaring and3:(Prop->(Prop->(Prop->Prop)))
% 0.50/0.88  FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) and3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2)))) of role definition named def_and3
% 0.50/0.88  A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) and3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))))
% 0.50/0.88  Defined: and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2)))
% 0.50/0.88  FOF formula (<kernel.Constant object at 0x2aacffd35a70>, <kernel.DependentProduct object at 0x2aacffd35cf8>) of role type named typ_ec3
% 0.50/0.88  Using role type
% 0.50/0.88  Declaring ec3:(Prop->(Prop->(Prop->Prop)))
% 0.50/0.88  FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) ec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0)))) of role definition named def_ec3
% 0.50/0.88  A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) ec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))))
% 0.50/0.88  Defined: ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0)))
% 0.50/0.88  FOF formula (<kernel.Constant object at 0x2aacffd35cf8>, <kernel.DependentProduct object at 0x2aacffd35d40>) of role type named typ_orec3
% 0.50/0.88  Using role type
% 0.50/0.88  Declaring orec3:(Prop->(Prop->(Prop->Prop)))
% 0.50/0.88  FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) orec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2)))) of role definition named def_orec3
% 0.50/0.88  A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) orec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))))
% 0.50/0.88  Defined: orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2)))
% 0.50/0.88  FOF formula (<kernel.Constant object at 0x2aacffd35d40>, <kernel.DependentProduct object at 0x2aacffd35cb0>) of role type named typ_e_is
% 0.50/0.88  Using role type
% 0.50/0.88  Declaring e_is:(fofType->(fofType->(fofType->Prop)))
% 0.50/0.88  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) e_is) (fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))) of role definition named def_e_is
% 0.50/0.88  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) e_is) (fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)))
% 0.50/0.88  Defined: e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))
% 0.50/0.88  FOF formula (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1)))) of role axiom named refis
% 0.50/0.88  A new axiom: (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 0.50/0.88  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3)))))))) of role axiom named e_isp
% 0.50/0.88  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 0.52/0.90  FOF formula (<kernel.Constant object at 0x2aacffd35cf8>, <kernel.DependentProduct object at 0x2aacffd356c8>) of role type named typ_amone
% 0.52/0.90  Using role type
% 0.52/0.90  Declaring amone:(fofType->((fofType->Prop)->Prop))
% 0.52/0.90  FOF formula (((eq (fofType->((fofType->Prop)->Prop))) amone) (fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3))))))))) of role definition named def_amone
% 0.52/0.90  A new definition: (((eq (fofType->((fofType->Prop)->Prop))) amone) (fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))))
% 0.52/0.90  Defined: amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3))))))))
% 0.52/0.90  FOF formula (<kernel.Constant object at 0x2aacffd356c8>, <kernel.DependentProduct object at 0x2aacffd35f80>) of role type named typ_one
% 0.52/0.90  Using role type
% 0.52/0.90  Declaring one:(fofType->((fofType->Prop)->Prop))
% 0.52/0.90  FOF formula (((eq (fofType->((fofType->Prop)->Prop))) one) (fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1)))) of role definition named def_one
% 0.52/0.90  A new definition: (((eq (fofType->((fofType->Prop)->Prop))) one) (fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))))
% 0.52/0.90  Defined: one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1)))
% 0.52/0.90  FOF formula (<kernel.Constant object at 0x2aacffd35f80>, <kernel.DependentProduct object at 0x2aacffd35d88>) of role type named typ_ind
% 0.52/0.90  Using role type
% 0.52/0.90  Declaring ind:(fofType->((fofType->Prop)->fofType))
% 0.52/0.90  FOF formula (((eq (fofType->((fofType->Prop)->fofType))) ind) (fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2)))))) of role definition named def_ind
% 0.52/0.90  A new definition: (((eq (fofType->((fofType->Prop)->fofType))) ind) (fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))))
% 0.52/0.90  Defined: ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2)))))
% 0.52/0.90  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0))))) of role axiom named ind_p
% 0.52/0.90  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 0.52/0.90  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))) of role axiom named oneax
% 0.52/0.90  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 0.52/0.90  FOF formula (<kernel.Constant object at 0x2aacffd35cf8>, <kernel.DependentProduct object at 0x2aacffd35fc8>) of role type named typ_injective
% 0.52/0.90  Using role type
% 0.52/0.90  Declaring injective:(fofType->(fofType->(fofType->Prop)))
% 0.52/0.90  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) injective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4)))))))) of role definition named def_injective
% 0.52/0.90  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) injective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))))
% 0.52/0.90  Defined: injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4)))))))
% 0.52/0.90  FOF formula (<kernel.Constant object at 0x2aacffd35d88>, <kernel.DependentProduct object at 0x2aacffd35560>) of role type named typ_image
% 0.52/0.90  Using role type
% 0.52/0.90  Declaring image:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.52/0.90  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) image) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))) of role definition named def_image
% 0.52/0.91  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) image) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))))
% 0.52/0.91  Defined: image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))
% 0.52/0.91  FOF formula (<kernel.Constant object at 0x2aacffd35cf8>, <kernel.DependentProduct object at 0x2aacffd3b050>) of role type named typ_tofs
% 0.52/0.91  Using role type
% 0.52/0.91  Declaring tofs:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.52/0.91  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap)) of role definition named def_tofs
% 0.52/0.91  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap))
% 0.52/0.91  Defined: tofs:=(fun (X0:fofType) (X1:fofType)=> ap)
% 0.52/0.91  FOF formula (<kernel.Constant object at 0x2aacffd35d88>, <kernel.DependentProduct object at 0x2aacffd3b290>) of role type named typ_soft
% 0.52/0.91  Using role type
% 0.52/0.91  Declaring soft:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.52/0.91  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) soft) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))) of role definition named def_soft
% 0.52/0.91  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) soft) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))))
% 0.52/0.91  Defined: soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))
% 0.52/0.91  FOF formula (<kernel.Constant object at 0x2aacffd35d88>, <kernel.DependentProduct object at 0x2aacffd3b290>) of role type named typ_inverse
% 0.52/0.91  Using role type
% 0.52/0.91  Declaring inverse:(fofType->(fofType->(fofType->fofType)))
% 0.52/0.91  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) inverse) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset))))) of role definition named def_inverse
% 0.52/0.91  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) inverse) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))))
% 0.52/0.91  Defined: inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset))))
% 0.52/0.91  FOF formula (<kernel.Constant object at 0x2aacffd35d88>, <kernel.DependentProduct object at 0x2aacffd3b7e8>) of role type named typ_surjective
% 0.52/0.91  Using role type
% 0.52/0.91  Declaring surjective:(fofType->(fofType->(fofType->Prop)))
% 0.52/0.91  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) surjective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2)))) of role definition named def_surjective
% 0.52/0.91  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) surjective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))))
% 0.52/0.91  Defined: surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2)))
% 0.52/0.91  FOF formula (<kernel.Constant object at 0x2aacffd3b7e8>, <kernel.DependentProduct object at 0x2aacffd3b3b0>) of role type named typ_bijective
% 0.52/0.91  Using role type
% 0.52/0.91  Declaring bijective:(fofType->(fofType->(fofType->Prop)))
% 0.52/0.91  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) bijective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2)))) of role definition named def_bijective
% 0.52/0.91  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) bijective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))))
% 0.52/0.91  Defined: bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2)))
% 0.55/0.94  FOF formula (<kernel.Constant object at 0x2aacffd3b3b0>, <kernel.DependentProduct object at 0x2aacffd3b3f8>) of role type named typ_invf
% 0.55/0.94  Using role type
% 0.55/0.94  Declaring invf:(fofType->(fofType->(fofType->fofType)))
% 0.55/0.94  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) invf) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2)))) of role definition named def_invf
% 0.55/0.94  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) invf) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))))
% 0.55/0.94  Defined: invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2)))
% 0.55/0.94  FOF formula (<kernel.Constant object at 0x2aacffd3b3f8>, <kernel.DependentProduct object at 0x2aacffd3b128>) of role type named typ_inj_h
% 0.55/0.94  Using role type
% 0.55/0.94  Declaring inj_h:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.55/0.94  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) inj_h) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5)))))) of role definition named def_inj_h
% 0.55/0.94  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) inj_h) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))))
% 0.55/0.94  Defined: inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5)))))
% 0.55/0.94  FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3))))))) of role axiom named e_fisi
% 0.55/0.94  A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 0.55/0.94  FOF formula (<kernel.Constant object at 0x2aacffd3b998>, <kernel.DependentProduct object at 0x2aacffd3b1b8>) of role type named typ_e_in
% 0.55/0.94  Using role type
% 0.55/0.94  Declaring e_in:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.55/0.94  FOF formula (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) e_in) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2)) of role definition named def_e_in
% 0.55/0.94  A new definition: (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) e_in) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2))
% 0.55/0.94  Defined: e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2)
% 0.55/0.94  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))) of role axiom named e_in_p
% 0.55/0.94  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 0.55/0.94  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2))))) of role axiom named e_inp
% 0.55/0.94  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 0.55/0.94  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))) of role axiom named otax1
% 0.55/0.94  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 0.55/0.94  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2))))) of role axiom named otax2
% 0.55/0.95  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 0.55/0.95  FOF formula (<kernel.Constant object at 0x2aacffd3b170>, <kernel.DependentProduct object at 0x2aacffd3bcf8>) of role type named typ_out
% 0.55/0.95  Using role type
% 0.55/0.95  Declaring out:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.55/0.95  FOF formula (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) out) (fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))) of role definition named def_out
% 0.55/0.95  A new definition: (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) out) (fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))))
% 0.55/0.95  Defined: out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 0.55/0.95  FOF formula (<kernel.Constant object at 0x2aacffd3bcf8>, <kernel.DependentProduct object at 0x2aacffd3b638>) of role type named typ_d_pair
% 0.55/0.95  Using role type
% 0.55/0.95  Declaring d_pair:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.55/0.95  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair)) of role definition named def_d_pair
% 0.55/0.95  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair))
% 0.55/0.95  Defined: d_pair:=(fun (X0:fofType) (X1:fofType)=> pair)
% 0.55/0.95  FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1))))))))) of role axiom named e_pair_p
% 0.55/0.95  A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 0.55/0.95  FOF formula (<kernel.Constant object at 0x2aacffd3b9e0>, <kernel.DependentProduct object at 0x2aacffd3bb48>) of role type named typ_first
% 0.55/0.95  Using role type
% 0.55/0.95  Declaring first:(fofType->(fofType->(fofType->fofType)))
% 0.55/0.95  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0)) of role definition named def_first
% 0.55/0.95  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0))
% 0.55/0.95  Defined: first:=(fun (X0:fofType) (X1:fofType)=> proj0)
% 0.55/0.95  FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))) of role axiom named first_p
% 0.55/0.95  A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 0.55/0.95  FOF formula (<kernel.Constant object at 0x2aacffd3b2d8>, <kernel.DependentProduct object at 0x2aacffd3ba28>) of role type named typ_second
% 0.55/0.95  Using role type
% 0.55/0.95  Declaring second:(fofType->(fofType->(fofType->fofType)))
% 0.55/0.95  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)) of role definition named def_second
% 0.55/0.95  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1))
% 0.55/0.95  Defined: second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)
% 0.55/0.95  FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1)))))) of role axiom named second_p
% 0.55/0.95  A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 0.55/0.97  FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2)))) of role axiom named pairis1
% 0.55/0.97  A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 0.55/0.97  FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2)))))) of role axiom named firstis1
% 0.55/0.97  A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 0.55/0.97  FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3)))))) of role axiom named secondis1
% 0.55/0.97  A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 0.55/0.97  FOF formula (<kernel.Constant object at 0x2aacffd3b7a0>, <kernel.DependentProduct object at 0x2aacffd3bfc8>) of role type named typ_prop1
% 0.55/0.97  Using role type
% 0.55/0.97  Declaring prop1:(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 0.55/0.97  FOF formula (((eq (Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))) prop1) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3))))) of role definition named def_prop1
% 0.55/0.97  A new definition: (((eq (Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))) prop1) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))))
% 0.55/0.97  Defined: prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3))))
% 0.55/0.97  FOF formula (<kernel.Constant object at 0x2aacffd3bfc8>, <kernel.DependentProduct object at 0x2aacffd3b7a0>) of role type named typ_ite
% 0.55/0.97  Using role type
% 0.55/0.97  Declaring ite:(Prop->(fofType->(fofType->(fofType->fofType))))
% 0.55/0.97  FOF formula (((eq (Prop->(fofType->(fofType->(fofType->fofType))))) ite) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3)))) of role definition named def_ite
% 0.55/0.97  A new definition: (((eq (Prop->(fofType->(fofType->(fofType->fofType))))) ite) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))))
% 0.55/0.97  Defined: ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3)))
% 0.55/0.97  FOF formula (<kernel.Constant object at 0x2aacffd3b7a0>, <kernel.DependentProduct object at 0x2aacffd3bdd0>) of role type named typ_wissel_wa
% 0.55/0.97  Using role type
% 0.55/0.97  Declaring wissel_wa:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.55/0.97  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wa) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3))) of role definition named def_wissel_wa
% 0.55/0.97  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wa) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)))
% 0.55/0.97  Defined: wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3))
% 0.55/0.97  FOF formula (<kernel.Constant object at 0x2aacffd3bdd0>, <kernel.DependentProduct object at 0x2aacffd3b5a8>) of role type named typ_wissel_wb
% 0.55/0.99  Using role type
% 0.55/0.99  Declaring wissel_wb:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.55/0.99  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wb) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3)))) of role definition named def_wissel_wb
% 0.55/0.99  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wb) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))))
% 0.55/0.99  Defined: wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3)))
% 0.55/0.99  FOF formula (<kernel.Constant object at 0x2aacffd3b5a8>, <kernel.DependentProduct object at 0x2aacffd3bf38>) of role type named typ_wissel
% 0.55/0.99  Using role type
% 0.55/0.99  Declaring wissel:(fofType->(fofType->(fofType->fofType)))
% 0.55/0.99  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) wissel) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2)))) of role definition named def_wissel
% 0.55/0.99  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) wissel) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))))
% 0.55/0.99  Defined: wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2)))
% 0.55/0.99  FOF formula (<kernel.Constant object at 0x2aacffd3bf38>, <kernel.DependentProduct object at 0x2aacffd3b3b0>) of role type named typ_changef
% 0.55/0.99  Using role type
% 0.55/0.99  Declaring changef:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.55/0.99  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) changef) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5)))))) of role definition named def_changef
% 0.55/0.99  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) changef) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))))
% 0.55/0.99  Defined: changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5)))))
% 0.55/0.99  FOF formula (<kernel.Constant object at 0x2aacffd3be60>, <kernel.DependentProduct object at 0x2aacffd3b7a0>) of role type named typ_r_ec
% 0.55/0.99  Using role type
% 0.55/0.99  Declaring r_ec:(Prop->(Prop->Prop))
% 0.55/0.99  FOF formula (((eq (Prop->(Prop->Prop))) r_ec) (fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1)))) of role definition named def_r_ec
% 0.55/0.99  A new definition: (((eq (Prop->(Prop->Prop))) r_ec) (fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))))
% 0.55/0.99  Defined: r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1)))
% 0.55/0.99  FOF formula (<kernel.Constant object at 0x2aacffd3b7a0>, <kernel.DependentProduct object at 0x2aacffd3bfc8>) of role type named typ_esti
% 0.55/0.99  Using role type
% 0.55/0.99  Declaring esti:(fofType->(fofType->(fofType->Prop)))
% 0.55/0.99  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in)) of role definition named def_esti
% 0.55/0.99  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in))
% 0.55/0.99  Defined: esti:=(fun (X0:fofType)=> in)
% 0.55/0.99  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0))))) of role axiom named setof_p
% 0.55/0.99  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 0.55/0.99  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1)))))) of role axiom named estii
% 0.55/0.99  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 0.55/0.99  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2))))) of role axiom named estie
% 0.55/1.00  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 0.55/1.00  FOF formula (<kernel.Constant object at 0x2aacffd3bfc8>, <kernel.DependentProduct object at 0x2aacffd3bea8>) of role type named typ_empty
% 0.55/1.00  Using role type
% 0.55/1.00  Declaring empty:(fofType->(fofType->Prop))
% 0.55/1.00  FOF formula (((eq (fofType->(fofType->Prop))) empty) (fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))) of role definition named def_empty
% 0.55/1.00  A new definition: (((eq (fofType->(fofType->Prop))) empty) (fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))))
% 0.55/1.00  Defined: empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))
% 0.55/1.00  FOF formula (<kernel.Constant object at 0x2aacffd3b8c0>, <kernel.DependentProduct object at 0x2aacffd41050>) of role type named typ_nonempty
% 0.55/1.00  Using role type
% 0.55/1.00  Declaring nonempty:(fofType->(fofType->Prop))
% 0.55/1.00  FOF formula (((eq (fofType->(fofType->Prop))) nonempty) (fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))) of role definition named def_nonempty
% 0.55/1.00  A new definition: (((eq (fofType->(fofType->Prop))) nonempty) (fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))
% 0.55/1.00  Defined: nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))
% 0.55/1.00  FOF formula (<kernel.Constant object at 0x2aacffd3bf80>, <kernel.DependentProduct object at 0x2aacffd41248>) of role type named typ_incl
% 0.55/1.00  Using role type
% 0.55/1.00  Declaring incl:(fofType->(fofType->(fofType->Prop)))
% 0.55/1.00  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) incl) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2)))))) of role definition named def_incl
% 0.55/1.00  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) incl) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))))
% 0.55/1.00  Defined: incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2)))))
% 0.55/1.00  FOF formula (<kernel.Constant object at 0x2aacffd3bf80>, <kernel.DependentProduct object at 0x2aacffd411b8>) of role type named typ_st_disj
% 0.55/1.00  Using role type
% 0.55/1.00  Declaring st_disj:(fofType->(fofType->(fofType->Prop)))
% 0.55/1.00  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) st_disj) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2)))))) of role definition named def_st_disj
% 0.55/1.00  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) st_disj) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))))
% 0.55/1.00  Defined: st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2)))))
% 0.55/1.00  FOF formula (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2)))))))) of role axiom named isseti
% 0.55/1.00  A new axiom: (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 0.55/1.00  FOF formula (<kernel.Constant object at 0x2aacffd3bf80>, <kernel.DependentProduct object at 0x2aacffd415f0>) of role type named typ_nissetprop
% 0.55/1.00  Using role type
% 0.55/1.00  Declaring nissetprop:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.55/1.00  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) nissetprop) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2))))) of role definition named def_nissetprop
% 0.63/1.02  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) nissetprop) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))))
% 0.63/1.02  Defined: nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2))))
% 0.63/1.02  FOF formula (<kernel.Constant object at 0x2aacffd415f0>, <kernel.DependentProduct object at 0x2aacffd411b8>) of role type named typ_unmore
% 0.63/1.02  Using role type
% 0.63/1.02  Declaring unmore:(fofType->(fofType->(fofType->fofType)))
% 0.63/1.02  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) unmore) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4)))))))) of role definition named def_unmore
% 0.63/1.02  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) unmore) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))))
% 0.63/1.02  Defined: unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4)))))))
% 0.63/1.02  FOF formula (<kernel.Constant object at 0x2aacffd411b8>, <kernel.DependentProduct object at 0x2aacffd417e8>) of role type named typ_ecelt
% 0.63/1.02  Using role type
% 0.63/1.02  Declaring ecelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.63/1.02  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2)))) of role definition named def_ecelt
% 0.63/1.02  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))))
% 0.63/1.02  Defined: ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2)))
% 0.63/1.02  FOF formula (<kernel.Constant object at 0x2aacffd417e8>, <kernel.DependentProduct object at 0x2aacffd417a0>) of role type named typ_ecp
% 0.63/1.02  Using role type
% 0.63/1.02  Declaring ecp:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.63/1.02  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) ecp) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3)))) of role definition named def_ecp
% 0.63/1.02  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) ecp) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))))
% 0.63/1.02  Defined: ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3)))
% 0.63/1.02  FOF formula (<kernel.Constant object at 0x2aacffd417a0>, <kernel.DependentProduct object at 0x2aacffd41b00>) of role type named typ_anec
% 0.63/1.02  Using role type
% 0.63/1.02  Declaring anec:(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 0.63/1.02  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->Prop)))) anec) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2)))) of role definition named def_anec
% 0.63/1.02  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->Prop)))) anec) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))))
% 0.63/1.02  Defined: anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2)))
% 0.63/1.02  FOF formula (<kernel.Constant object at 0x2aacffd41b00>, <kernel.DependentProduct object at 0x2aacffd417e8>) of role type named typ_ect
% 0.63/1.02  Using role type
% 0.63/1.02  Declaring ect:(fofType->((fofType->(fofType->Prop))->fofType))
% 0.63/1.02  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->fofType))) ect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1)))) of role definition named def_ect
% 0.63/1.02  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->fofType))) ect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))))
% 0.63/1.03  Defined: ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1)))
% 0.63/1.03  FOF formula (<kernel.Constant object at 0x2aacffd417e8>, <kernel.DependentProduct object at 0x2aacffd41200>) of role type named typ_ectset
% 0.63/1.03  Using role type
% 0.63/1.03  Declaring ectset:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.63/1.03  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectset) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1)))) of role definition named def_ectset
% 0.63/1.03  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectset) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))))
% 0.63/1.03  Defined: ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1)))
% 0.63/1.03  FOF formula (<kernel.Constant object at 0x2aacffd41200>, <kernel.DependentProduct object at 0x2aacffd41050>) of role type named typ_ectelt
% 0.63/1.03  Using role type
% 0.63/1.03  Declaring ectelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.63/1.03  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2)))) of role definition named def_ectelt
% 0.63/1.03  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))))
% 0.63/1.03  Defined: ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2)))
% 0.63/1.03  FOF formula (<kernel.Constant object at 0x2aacffd41050>, <kernel.DependentProduct object at 0x2aacffd419e0>) of role type named typ_ecect
% 0.63/1.03  Using role type
% 0.63/1.03  Declaring ecect:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.63/1.03  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1)))) of role definition named def_ecect
% 0.63/1.03  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))))
% 0.63/1.03  Defined: ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1)))
% 0.63/1.03  FOF formula (<kernel.Constant object at 0x2aacffd419e0>, <kernel.DependentProduct object at 0x2aacffd413f8>) of role type named typ_fixfu
% 0.63/1.03  Using role type
% 0.63/1.03  Declaring fixfu:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.63/1.03  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5))))))))) of role definition named def_fixfu
% 0.63/1.03  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))))
% 0.63/1.03  Defined: fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5))))))))
% 0.63/1.03  FOF formula (<kernel.Constant object at 0x2aacffd413f8>, <kernel.DependentProduct object at 0x2aacffd41878>) of role type named typ_d_10_prop1
% 0.63/1.03  Using role type
% 0.63/1.03  Declaring d_10_prop1:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 0.63/1.03  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))) d_10_prop1) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5)))) of role definition named def_d_10_prop1
% 0.63/1.05  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))) d_10_prop1) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))))
% 0.63/1.05  Defined: d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5)))
% 0.63/1.05  FOF formula (<kernel.Constant object at 0x2aacffd41878>, <kernel.DependentProduct object at 0x2aacffd41ab8>) of role type named typ_prop2
% 0.63/1.05  Using role type
% 0.63/1.05  Declaring prop2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 0.63/1.05  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))) prop2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5)))) of role definition named def_prop2
% 0.63/1.05  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))) prop2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))))
% 0.63/1.05  Defined: prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5)))
% 0.63/1.05  FOF formula (<kernel.Constant object at 0x2aacffd41ab8>, <kernel.DependentProduct object at 0x2aacffd411b8>) of role type named typ_indeq
% 0.63/1.05  Using role type
% 0.63/1.05  Declaring indeq:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.63/1.05  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) indeq) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4)))) of role definition named def_indeq
% 0.63/1.05  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) indeq) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))))
% 0.63/1.05  Defined: indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4)))
% 0.63/1.05  FOF formula (<kernel.Constant object at 0x2aacffd411b8>, <kernel.DependentProduct object at 0x2aacffd41680>) of role type named typ_fixfu2
% 0.63/1.05  Using role type
% 0.63/1.05  Declaring fixfu2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.63/1.05  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7)))))))))))))) of role definition named def_fixfu2
% 0.63/1.05  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))))
% 0.63/1.05  Defined: fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7)))))))))))))
% 0.63/1.06  FOF formula (<kernel.Constant object at 0x2aacffd41680>, <kernel.DependentProduct object at 0x2aacffd41440>) of role type named typ_d_11_i
% 0.63/1.06  Using role type
% 0.63/1.06  Declaring d_11_i:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.63/1.06  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) d_11_i) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2))))) of role definition named def_d_11_i
% 0.63/1.06  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) d_11_i) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))))
% 0.63/1.06  Defined: d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2))))
% 0.63/1.06  FOF formula (<kernel.Constant object at 0x2aacffd41440>, <kernel.DependentProduct object at 0x2aacffd41a70>) of role type named typ_indeq2
% 0.63/1.06  Using role type
% 0.63/1.06  Declaring indeq2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 0.63/1.06  FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))) indeq2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4)))) of role definition named def_indeq2
% 0.63/1.06  A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))) indeq2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))))
% 0.63/1.06  Defined: indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4)))
% 0.63/1.06  FOF formula (<kernel.Constant object at 0x2aacffd41a70>, <kernel.Single object at 0x2aacffd41440>) of role type named typ_nat
% 0.63/1.06  Using role type
% 0.63/1.06  Declaring nat:fofType
% 0.63/1.06  FOF formula (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))) of role definition named def_nat
% 0.63/1.06  A new definition: (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))))
% 0.63/1.06  Defined: nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))
% 0.63/1.06  FOF formula (<kernel.Constant object at 0x2aacffd41440>, <kernel.DependentProduct object at 0x2aacffd41050>) of role type named typ_n_is
% 0.63/1.06  Using role type
% 0.63/1.06  Declaring n_is:(fofType->(fofType->Prop))
% 0.63/1.06  FOF formula (((eq (fofType->(fofType->Prop))) n_is) (e_is nat)) of role definition named def_n_is
% 0.63/1.06  A new definition: (((eq (fofType->(fofType->Prop))) n_is) (e_is nat))
% 0.63/1.06  Defined: n_is:=(e_is nat)
% 0.63/1.06  FOF formula (<kernel.Constant object at 0x2aacffd41f38>, <kernel.DependentProduct object at 0x2aacffd41cb0>) of role type named typ_nis
% 0.63/1.06  Using role type
% 0.63/1.06  Declaring nis:(fofType->(fofType->Prop))
% 0.63/1.06  FOF formula (((eq (fofType->(fofType->Prop))) nis) (fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1)))) of role definition named def_nis
% 0.63/1.06  A new definition: (((eq (fofType->(fofType->Prop))) nis) (fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))))
% 0.63/1.06  Defined: nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1)))
% 0.63/1.06  FOF formula (<kernel.Constant object at 0x2aacffd41cb0>, <kernel.DependentProduct object at 0x2aacffd41050>) of role type named typ_n_in
% 0.63/1.06  Using role type
% 0.63/1.06  Declaring n_in:(fofType->(fofType->Prop))
% 0.63/1.06  FOF formula (((eq (fofType->(fofType->Prop))) n_in) (esti nat)) of role definition named def_n_in
% 0.63/1.06  A new definition: (((eq (fofType->(fofType->Prop))) n_in) (esti nat))
% 0.63/1.08  Defined: n_in:=(esti nat)
% 0.63/1.08  FOF formula (<kernel.Constant object at 0x2aacffd419e0>, <kernel.DependentProduct object at 0x2aacffd41050>) of role type named typ_n_some
% 0.63/1.08  Using role type
% 0.63/1.08  Declaring n_some:((fofType->Prop)->Prop)
% 0.63/1.08  FOF formula (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat)) of role definition named def_n_some
% 0.63/1.08  A new definition: (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat))
% 0.63/1.08  Defined: n_some:=(l_some nat)
% 0.63/1.08  FOF formula (<kernel.Constant object at 0x2aacffd41f80>, <kernel.DependentProduct object at 0x2aacffd41050>) of role type named typ_n_all
% 0.63/1.08  Using role type
% 0.63/1.08  Declaring n_all:((fofType->Prop)->Prop)
% 0.63/1.08  FOF formula (((eq ((fofType->Prop)->Prop)) n_all) (all nat)) of role definition named def_n_all
% 0.63/1.08  A new definition: (((eq ((fofType->Prop)->Prop)) n_all) (all nat))
% 0.63/1.08  Defined: n_all:=(all nat)
% 0.63/1.08  FOF formula (<kernel.Constant object at 0x2aacffd41c68>, <kernel.DependentProduct object at 0x2aacffd41050>) of role type named typ_n_one
% 0.63/1.08  Using role type
% 0.63/1.08  Declaring n_one:((fofType->Prop)->Prop)
% 0.63/1.08  FOF formula (((eq ((fofType->Prop)->Prop)) n_one) (one nat)) of role definition named def_n_one
% 0.63/1.08  A new definition: (((eq ((fofType->Prop)->Prop)) n_one) (one nat))
% 0.63/1.08  Defined: n_one:=(one nat)
% 0.63/1.08  FOF formula (<kernel.Constant object at 0x2aacffd41cb0>, <kernel.Single object at 0x2aacffd41c68>) of role type named typ_n_1
% 0.63/1.08  Using role type
% 0.63/1.08  Declaring n_1:fofType
% 0.63/1.08  FOF formula (((eq fofType) n_1) (ordsucc emptyset)) of role definition named def_n_1
% 0.63/1.08  A new definition: (((eq fofType) n_1) (ordsucc emptyset))
% 0.63/1.08  Defined: n_1:=(ordsucc emptyset)
% 0.63/1.08  FOF formula ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))) of role axiom named n_1_p
% 0.63/1.08  A new axiom: ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 0.63/1.08  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat))))) of role axiom named suc_p
% 0.63/1.08  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 0.63/1.08  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1))) of role axiom named n_ax3
% 0.63/1.08  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 0.63/1.08  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1)))))) of role axiom named n_ax4
% 0.63/1.08  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 0.63/1.08  FOF formula (<kernel.Constant object at 0x2aacffd41878>, <kernel.DependentProduct object at 0x2aacffd48878>) of role type named typ_cond1
% 0.63/1.08  Using role type
% 0.63/1.08  Declaring cond1:(fofType->Prop)
% 0.63/1.08  FOF formula (((eq (fofType->Prop)) cond1) (n_in n_1)) of role definition named def_cond1
% 0.63/1.08  A new definition: (((eq (fofType->Prop)) cond1) (n_in n_1))
% 0.63/1.08  Defined: cond1:=(n_in n_1)
% 0.63/1.08  FOF formula (<kernel.Constant object at 0x2aacffd41878>, <kernel.DependentProduct object at 0x2aacffd483b0>) of role type named typ_cond2
% 0.63/1.08  Using role type
% 0.63/1.08  Declaring cond2:(fofType->Prop)
% 0.63/1.08  FOF formula (((eq (fofType->Prop)) cond2) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0)))))) of role definition named def_cond2
% 0.63/1.08  A new definition: (((eq (fofType->Prop)) cond2) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))))
% 0.63/1.08  Defined: cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0)))))
% 0.63/1.08  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0))))))) of role axiom named n_ax5
% 0.63/1.08  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 0.63/1.08  FOF formula (<kernel.Constant object at 0x2aacffd48248>, <kernel.DependentProduct object at 0x2aacffd48758>) of role type named typ_i1_s
% 0.71/1.09  Using role type
% 0.71/1.09  Declaring i1_s:((fofType->Prop)->fofType)
% 0.71/1.09  FOF formula (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat)) of role definition named def_i1_s
% 0.71/1.09  A new definition: (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat))
% 0.71/1.09  Defined: i1_s:=(d_Sep nat)
% 0.71/1.09  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1))))))) of role axiom named satz1
% 0.71/1.09  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 0.71/1.09  FOF formula (<kernel.Constant object at 0x2aacfc5b1320>, <kernel.DependentProduct object at 0x2aacfc692b48>) of role type named typ_d_22_prop1
% 0.71/1.09  Using role type
% 0.71/1.09  Declaring d_22_prop1:(fofType->Prop)
% 0.71/1.09  FOF formula (((eq (fofType->Prop)) d_22_prop1) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))) of role definition named def_d_22_prop1
% 0.71/1.09  A new definition: (((eq (fofType->Prop)) d_22_prop1) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 0.71/1.09  Defined: d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0))
% 0.71/1.09  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))) of role axiom named satz2
% 0.71/1.09  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 0.71/1.09  FOF formula (<kernel.Constant object at 0x2aacfc5b1320>, <kernel.DependentProduct object at 0x2aacfc6928c0>) of role type named typ_d_23_prop1
% 0.71/1.09  Using role type
% 0.71/1.09  Declaring d_23_prop1:(fofType->Prop)
% 0.71/1.09  FOF formula (((eq (fofType->Prop)) d_23_prop1) (fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))) of role definition named def_d_23_prop1
% 0.71/1.09  A new definition: (((eq (fofType->Prop)) d_23_prop1) (fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 0.71/1.09  Defined: d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))
% 0.71/1.09  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))) of role axiom named satz3
% 0.71/1.09  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 0.71/1.09  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))) of role axiom named satz3a
% 0.71/1.09  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 0.71/1.09  FOF formula (<kernel.Constant object at 0x2aacfc5b1320>, <kernel.DependentProduct object at 0x2aacfc692a28>) of role type named typ_d_24_prop1
% 0.71/1.09  Using role type
% 0.71/1.09  Declaring d_24_prop1:(fofType->Prop)
% 0.71/1.09  FOF formula (((eq (fofType->Prop)) d_24_prop1) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1))))))) of role definition named def_d_24_prop1
% 0.71/1.09  A new definition: (((eq (fofType->Prop)) d_24_prop1) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))))
% 0.71/1.09  Defined: d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1))))))
% 0.71/1.09  FOF formula (<kernel.Constant object at 0x2aacfc692a28>, <kernel.DependentProduct object at 0x2aacfc6928c0>) of role type named typ_d_24_prop2
% 0.71/1.09  Using role type
% 0.71/1.09  Declaring d_24_prop2:(fofType->(fofType->Prop))
% 0.71/1.09  FOF formula (((eq (fofType->(fofType->Prop))) d_24_prop2) (fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1)))) of role definition named def_d_24_prop2
% 0.71/1.09  A new definition: (((eq (fofType->(fofType->Prop))) d_24_prop2) (fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))))
% 0.71/1.09  Defined: d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1)))
% 0.71/1.11  FOF formula (<kernel.Constant object at 0x2aacfc6928c0>, <kernel.DependentProduct object at 0x2aacfc692fc8>) of role type named typ_prop3
% 0.71/1.11  Using role type
% 0.71/1.11  Declaring prop3:(fofType->(fofType->(fofType->Prop)))
% 0.71/1.11  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) prop3) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2)))) of role definition named def_prop3
% 0.71/1.11  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) prop3) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))))
% 0.71/1.11  Defined: prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2)))
% 0.71/1.11  FOF formula (<kernel.Constant object at 0x2aacfc692e60>, <kernel.DependentProduct object at 0x2aacfc692ef0>) of role type named typ_prop4
% 0.71/1.11  Using role type
% 0.71/1.11  Declaring prop4:(fofType->Prop)
% 0.71/1.11  FOF formula (((eq (fofType->Prop)) prop4) (fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))) of role definition named def_prop4
% 0.71/1.11  A new definition: (((eq (fofType->Prop)) prop4) (fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))))
% 0.71/1.11  Defined: prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))
% 0.71/1.11  FOF formula (<kernel.Constant object at 0x2aacfc692ef0>, <kernel.DependentProduct object at 0x2aacfc692680>) of role type named typ_d_24_g
% 0.71/1.11  Using role type
% 0.71/1.11  Declaring d_24_g:(fofType->fofType)
% 0.71/1.11  FOF formula (((eq (fofType->fofType)) d_24_g) (fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1)))))) of role definition named def_d_24_g
% 0.71/1.11  A new definition: (((eq (fofType->fofType)) d_24_g) (fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))))
% 0.71/1.11  Defined: d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1)))))
% 0.71/1.11  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2)))))))))) of role axiom named satz4
% 0.71/1.11  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 0.71/1.11  FOF formula (<kernel.Constant object at 0x2aacfc692680>, <kernel.DependentProduct object at 0x2aacfc692710>) of role type named typ_plus
% 0.71/1.11  Using role type
% 0.71/1.11  Declaring plus:(fofType->fofType)
% 0.71/1.11  FOF formula (((eq (fofType->fofType)) plus) (fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))) of role definition named def_plus
% 0.71/1.11  A new definition: (((eq (fofType->fofType)) plus) (fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))))
% 0.71/1.11  Defined: plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))
% 0.71/1.11  FOF formula (<kernel.Constant object at 0x2aacfc692ef0>, <kernel.DependentProduct object at 0x2aacfc692cf8>) of role type named typ_n_pl
% 0.71/1.11  Using role type
% 0.71/1.11  Declaring n_pl:(fofType->(fofType->fofType))
% 0.71/1.11  FOF formula (((eq (fofType->(fofType->fofType))) n_pl) (fun (X0:fofType)=> (ap (plus X0)))) of role definition named def_n_pl
% 0.71/1.11  A new definition: (((eq (fofType->(fofType->fofType))) n_pl) (fun (X0:fofType)=> (ap (plus X0))))
% 0.71/1.11  Defined: n_pl:=(fun (X0:fofType)=> (ap (plus X0)))
% 0.71/1.11  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0)))) of role axiom named satz4a
% 0.71/1.11  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 0.71/1.11  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1))))))) of role axiom named satz4b
% 0.71/1.11  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 0.71/1.12  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0)))) of role axiom named satz4c
% 0.71/1.12  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 0.71/1.12  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1))))))) of role axiom named satz4d
% 0.71/1.12  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 0.71/1.12  FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))) of role conjecture named satz4e
% 0.71/1.12  Conjecture to prove = ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))):Prop
% 0.71/1.12  We need to prove ['((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))']
% 0.71/1.12  Parameter fofType:Type.
% 0.71/1.12  Definition is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop)).
% 0.71/1.12  Definition all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop)).
% 0.71/1.12  Parameter eps:((fofType->Prop)->fofType).
% 0.71/1.12  Parameter in:(fofType->(fofType->Prop)).
% 0.71/1.12  Definition d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop)).
% 0.71/1.12  Axiom set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1)))).
% 0.71/1.12  Axiom k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1)))).
% 0.71/1.12  Parameter emptyset:fofType.
% 0.71/1.12  Axiom k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False).
% 0.71/1.12  Parameter union:(fofType->fofType).
% 0.71/1.12  Axiom k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0)))))).
% 0.71/1.12  Parameter power:(fofType->fofType).
% 0.71/1.12  Axiom k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))).
% 0.71/1.12  Parameter repl:(fofType->((fofType->fofType)->fofType)).
% 0.71/1.12  Axiom k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3))))))).
% 0.71/1.12  Definition d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop).
% 0.71/1.12  Definition d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop).
% 0.71/1.12  Definition d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop).
% 0.71/1.12  Definition d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop).
% 0.71/1.12  Parameter univof:(fofType->fofType).
% 0.71/1.12  Axiom k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0))).
% 0.71/1.12  Axiom k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0))).
% 0.71/1.12  Definition if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType))).
% 0.71/1.12  Axiom if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2)))).
% 0.71/1.12  Axiom if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2))).
% 0.71/1.12  Axiom if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1))).
% 0.71/1.12  Axiom if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2))).
% 0.71/1.12  Definition nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop)).
% 0.71/1.12  Axiom k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))).
% 0.71/1.12  Axiom k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))).
% 0.71/1.12  Axiom k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0))).
% 0.71/1.12  Definition d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType)).
% 0.71/1.12  Definition d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType).
% 0.71/1.12  Definition binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType)).
% 0.71/1.12  Definition famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType)).
% 0.71/1.12  Definition d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType)).
% 0.71/1.12  Axiom k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1))))).
% 0.71/1.12  Axiom k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0))).
% 0.71/1.12  Axiom k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2))).
% 0.71/1.12  Definition d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType))).
% 0.71/1.12  Definition setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType)).
% 0.71/1.12  Definition d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop))).
% 0.71/1.12  Definition d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType)).
% 0.71/1.12  Definition ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType).
% 0.71/1.12  Axiom neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))).
% 0.71/1.12  Axiom ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))).
% 0.71/1.12  Axiom k_In_0_1:((in emptyset) (ordsucc emptyset)).
% 0.71/1.12  Definition nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop).
% 0.71/1.12  Axiom nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))).
% 0.71/1.12  Axiom nat_1:(nat_p (ordsucc emptyset)).
% 0.71/1.12  Axiom nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1)))))).
% 0.71/1.12  Axiom nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1)))))))).
% 0.71/1.12  Definition omega:=((d_Sep (univof emptyset)) nat_p):fofType.
% 0.71/1.12  Axiom omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0))).
% 0.71/1.12  Axiom nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega))).
% 0.71/1.12  Definition d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType).
% 0.71/1.12  Definition d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType).
% 0.71/1.12  Definition d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType).
% 0.71/1.12  Definition pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType)).
% 0.71/1.12  Definition proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType).
% 0.71/1.12  Definition _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType).
% 0.71/1.12  Axiom proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)).
% 0.71/1.12  Axiom proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)).
% 0.71/1.12  Definition d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType)).
% 0.71/1.12  Axiom pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1)))))).
% 0.71/1.12  Axiom k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))).
% 0.71/1.12  Axiom proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2))).
% 0.71/1.12  Axiom proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0))).
% 0.71/1.12  Axiom proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))).
% 0.71/1.12  Definition setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType)).
% 0.71/1.12  Definition ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType)).
% 0.71/1.12  Axiom beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2)))).
% 0.71/1.12  Definition pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop).
% 0.71/1.12  Definition d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType)).
% 0.71/1.12  Axiom lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1)))).
% 0.71/1.12  Axiom ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))).
% 0.71/1.12  Axiom k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3)))))).
% 0.71/1.12  Axiom xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2)))).
% 0.71/1.12  Axiom k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset))))).
% 0.71/1.12  Axiom k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2)))).
% 0.71/1.12  Definition imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop)).
% 0.71/1.12  Definition d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop).
% 0.71/1.12  Definition wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop).
% 0.71/1.12  Axiom l_et:(forall (X0:Prop), ((wel X0)->X0)).
% 0.71/1.12  Definition obvious:=((imp False) False):Prop.
% 0.71/1.12  Definition l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop)).
% 0.71/1.12  Definition d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.71/1.13  Definition l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop)).
% 0.71/1.13  Definition orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.71/1.13  Definition l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop)).
% 0.71/1.13  Definition all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop)).
% 0.71/1.13  Definition non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop))).
% 0.71/1.13  Definition l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop)).
% 0.71/1.13  Definition or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.71/1.13  Definition and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.71/1.13  Definition ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop))).
% 0.71/1.13  Definition orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.71/1.13  Definition e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop))).
% 0.71/1.13  Axiom refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1)))).
% 0.71/1.13  Axiom e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3)))))))).
% 0.71/1.13  Definition amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop)).
% 0.71/1.13  Definition one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop)).
% 0.71/1.13  Definition ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType)).
% 0.71/1.13  Axiom ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0))))).
% 0.71/1.13  Axiom oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))).
% 0.71/1.13  Definition injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop))).
% 0.71/1.13  Definition image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop)))).
% 0.71/1.13  Definition tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.71/1.13  Definition soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.71/1.13  Definition inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType))).
% 0.71/1.13  Definition surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.71/1.13  Definition bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.71/1.13  Definition invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.71/1.13  Definition inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType))))).
% 0.71/1.13  Axiom e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3))))))).
% 0.71/1.13  Definition e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType))).
% 0.71/1.13  Axiom e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))).
% 0.71/1.13  Axiom e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2))))).
% 0.71/1.13  Axiom otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))).
% 0.71/1.13  Axiom otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2))))).
% 0.71/1.13  Definition out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType))).
% 0.71/1.13  Definition d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.71/1.13  Axiom e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1))))))))).
% 0.71/1.13  Definition first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType))).
% 0.71/1.13  Axiom first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))).
% 0.71/1.13  Definition second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType))).
% 0.71/1.13  Axiom second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1)))))).
% 0.71/1.13  Axiom pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2)))).
% 0.71/1.13  Axiom firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2)))))).
% 0.71/1.13  Axiom secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3)))))).
% 0.71/1.13  Definition prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop))))).
% 0.71/1.13  Definition ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType)))).
% 0.71/1.13  Definition wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.71/1.13  Definition wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.71/1.13  Definition wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.71/1.13  Definition changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType))))).
% 0.71/1.13  Definition r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop)).
% 0.71/1.13  Definition esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop))).
% 0.71/1.13  Axiom setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0))))).
% 0.71/1.13  Axiom estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1)))))).
% 0.71/1.13  Axiom estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2))))).
% 0.71/1.13  Definition empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop)).
% 0.71/1.13  Definition nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop)).
% 0.71/1.13  Definition incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop))).
% 0.71/1.13  Definition st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop))).
% 0.71/1.13  Axiom isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2)))))))).
% 0.71/1.13  Definition nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop)))).
% 0.71/1.13  Definition unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType))).
% 0.71/1.13  Definition ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.71/1.13  Definition ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))).
% 0.71/1.13  Definition anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop))).
% 0.71/1.13  Definition ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType)).
% 0.71/1.13  Definition ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.71/1.13  Definition ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.71/1.13  Definition ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.71/1.13  Definition fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))).
% 0.71/1.13  Definition d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop))))))).
% 0.71/1.13  Definition prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop)))))).
% 0.71/1.13  Definition indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType))))).
% 0.71/1.13  Definition fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))).
% 0.71/1.13  Definition d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType))))).
% 0.71/1.13  Definition indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType)))))).
% 0.71/1.13  Definition nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType.
% 0.71/1.13  Definition n_is:=(e_is nat):(fofType->(fofType->Prop)).
% 0.71/1.13  Definition nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop)).
% 0.71/1.13  Definition n_in:=(esti nat):(fofType->(fofType->Prop)).
% 0.71/1.13  Definition n_some:=(l_some nat):((fofType->Prop)->Prop).
% 0.71/1.13  Definition n_all:=(all nat):((fofType->Prop)->Prop).
% 0.71/1.13  Definition n_one:=(one nat):((fofType->Prop)->Prop).
% 0.71/1.13  Definition n_1:=(ordsucc emptyset):fofType.
% 0.71/1.13  Axiom n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))).
% 0.71/1.13  Axiom suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat))))).
% 0.71/1.13  Axiom n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1))).
% 0.71/1.13  Axiom n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1)))))).
% 0.71/1.13  Definition cond1:=(n_in n_1):(fofType->Prop).
% 0.71/1.13  Definition cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop).
% 0.71/1.13  Axiom n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0))))))).
% 0.71/1.13  Definition i1_s:=(d_Sep nat):((fofType->Prop)->fofType).
% 0.71/1.13  Axiom satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1))))))).
% 0.71/1.13  Definition d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop).
% 0.71/1.13  Axiom satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))).
% 0.71/1.13  Definition d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop).
% 0.71/1.13  Axiom satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))).
% 0.71/1.13  Axiom satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))).
% 0.71/1.13  Definition d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop).
% 0.71/1.13  Definition d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop)).
% 0.71/1.13  Definition prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 1.72/2.10  Definition prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop).
% 1.72/2.10  Definition d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType).
% 1.72/2.10  Axiom satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2)))))))))).
% 1.72/2.10  Definition plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType).
% 1.72/2.10  Definition n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType)).
% 1.72/2.10  Axiom satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0)))).
% 1.72/2.10  Axiom satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1))))))).
% 1.72/2.10  Axiom satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0)))).
% 1.72/2.10  Axiom satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1))))))).
% 1.72/2.10  Trying to prove ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 1.72/2.10  --- does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))))
% 1.72/2.10  ---context
% 1.72/2.10  False:Prop
% 1.72/2.10  False_rect:(forall (P:Type), (False->P))
% 1.72/2.10  I:True
% 1.72/2.10  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.72/2.10  True:Prop
% 1.72/2.10  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.72/2.10  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.72/2.10  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.72/2.10  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.72/2.10  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.72/2.10  and:(Prop->(Prop->Prop))
% 1.72/2.10  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.72/2.10  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.72/2.10  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.72/2.10  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.72/2.10  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.72/2.10  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.72/2.10  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.72/2.10  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.72/2.10  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.72/2.10  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.72/2.10  classic:(forall (P:Prop), ((or P) (not P)))
% 1.72/2.10  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.72/2.10  cond1:=(n_in n_1):(fofType->Prop)
% 1.72/2.10  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.72/2.10  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.72/2.10  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.72/2.10  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.72/2.10  d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 1.72/2.10  d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 1.72/2.10  d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 1.72/2.10  d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 1.72/2.10  d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 1.72/2.10  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.72/2.10  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.72/2.10  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.72/2.10  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.72/2.10  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.72/2.10  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.72/2.10  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.72/2.10  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.72/2.10  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.72/2.10  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.72/2.10  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.72/2.10  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.72/2.10  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.72/2.10  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.72/2.10  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.72/2.10  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.72/2.10  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.72/2.10  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.72/2.10  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.72/2.10  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.72/2.10  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.72/2.10  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.72/2.10  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.72/2.10  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.72/2.10  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.72/2.10  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.72/2.10  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.72/2.10  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.72/2.10  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.72/2.10  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.72/2.10  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.72/2.10  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.72/2.10  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.72/2.10  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.72/2.10  emptyset:fofType
% 1.72/2.10  eps:((fofType->Prop)->fofType)
% 1.72/2.10  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.72/2.10  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.72/2.10  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.72/2.10  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.72/2.10  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.72/2.10  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.72/2.10  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.72/2.10  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.72/2.10  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.72/2.10  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.72/2.10  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.72/2.10  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.72/2.10  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.72/2.10  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.72/2.10  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.72/2.10  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.72/2.10  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.72/2.10  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.72/2.10  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.72/2.10  fofType:Type
% 1.72/2.10  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.72/2.10  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.72/2.10  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.72/2.10  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.72/2.10  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.72/2.10  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.72/2.10  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.72/2.10  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.72/2.10  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.72/2.10  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.72/2.10  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.72/2.10  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.72/2.10  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.72/2.10  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.72/2.10  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.72/2.10  in:(fofType->(fofType->Prop))
% 1.72/2.10  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.72/2.10  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.72/2.10  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.72/2.10  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.72/2.10  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.72/2.10  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.72/2.10  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.72/2.10  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.72/2.10  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.72/2.10  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.72/2.10  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.72/2.10  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.72/2.10  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.72/2.10  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.72/2.10  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.72/2.10  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.72/2.10  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.72/2.10  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.72/2.10  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.72/2.10  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.72/2.10  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.72/2.10  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.72/2.10  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.72/2.10  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.72/2.10  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.72/2.10  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.72/2.10  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.72/2.10  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.72/2.10  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.72/2.10  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.72/2.10  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.72/2.10  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.72/2.10  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.72/2.10  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.72/2.10  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.72/2.10  n_1:=(ordsucc emptyset):fofType
% 1.72/2.10  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.72/2.10  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.72/2.10  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.72/2.10  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.72/2.10  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.72/2.10  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.72/2.10  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.72/2.10  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.72/2.10  n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 1.72/2.10  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.72/2.10  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.72/2.10  nat_1:(nat_p (ordsucc emptyset))
% 1.72/2.10  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.72/2.10  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.72/2.10  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.72/2.10  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.72/2.10  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.72/2.10  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.72/2.10  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.72/2.10  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.72/2.10  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.72/2.10  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.72/2.10  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.72/2.10  obvious:=((imp False) False):Prop
% 1.72/2.10  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.72/2.10  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.72/2.10  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.72/2.10  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.72/2.10  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.72/2.10  or:(Prop->(Prop->Prop))
% 1.72/2.10  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.72/2.10  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.72/2.10  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.72/2.10  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.72/2.10  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.72/2.10  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.72/2.10  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.72/2.10  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.72/2.10  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.72/2.10  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.72/2.10  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.72/2.10  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.72/2.10  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.72/2.10  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.72/2.10  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.72/2.10  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.72/2.10  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.72/2.10  plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 1.72/2.10  power:(fofType->fofType)
% 1.72/2.10  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.72/2.10  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.72/2.10  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.72/2.10  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.72/2.10  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.72/2.10  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.72/2.10  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.72/2.10  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.72/2.10  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.72/2.10  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.72/2.10  prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 1.72/2.10  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.72/2.10  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.72/2.10  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.72/2.10  repl:(fofType->((fofType->fofType)->fofType))
% 1.72/2.10  satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 1.72/2.10  satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 1.72/2.10  satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.72/2.10  satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.72/2.10  satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 1.72/2.10  satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 1.72/2.10  satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 1.72/2.10  satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 1.72/2.10  satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 1.72/2.10  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.72/2.10  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.72/2.10  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.72/2.10  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.72/2.10  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.72/2.10  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.72/2.10  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.72/2.10  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.72/2.10  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.72/2.10  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.72/2.10  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.72/2.10  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.72/2.10  union:(fofType->fofType)
% 1.72/2.10  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.72/2.10  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.12  univof:(fofType->fofType)
% 1.74/2.12  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.12  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.74/2.12  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.12  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.12  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.12  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))
% 1.74/2.12  ---termcontext
% 1.74/2.12  [[[False:Prop
% 1.74/2.12  False_rect:(forall (P:Type), (False->P))
% 1.74/2.12  I:True
% 1.74/2.12  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.74/2.12  True:Prop
% 1.74/2.12  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.74/2.12  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.12  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.74/2.12  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.12  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.12  and:(Prop->(Prop->Prop))
% 1.74/2.12  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.74/2.12  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.74/2.12  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.74/2.12  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.74/2.12  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.74/2.12  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.74/2.12  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.74/2.12  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.12  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.12  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.74/2.12  classic:(forall (P:Prop), ((or P) (not P)))
% 1.74/2.12  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.74/2.12  cond1:=(n_in n_1):(fofType->Prop)
% 1.74/2.12  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.74/2.12  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.74/2.12  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.74/2.12  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.12  d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 1.74/2.12  d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 1.74/2.12  d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 1.74/2.12  d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 1.74/2.12  d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 1.74/2.12  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.74/2.12  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.74/2.12  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.74/2.12  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.74/2.12  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.12  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.74/2.12  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.74/2.12  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.74/2.12  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.74/2.12  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.12  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.74/2.12  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.74/2.12  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.74/2.12  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.74/2.12  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.74/2.12  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.74/2.12  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.74/2.12  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.74/2.12  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.12  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.12  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.74/2.12  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.74/2.12  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.74/2.12  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.74/2.12  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.74/2.12  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.74/2.12  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.12  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.12  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.12  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.12  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.74/2.12  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.12  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.12  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.74/2.12  emptyset:fofType
% 1.74/2.12  eps:((fofType->Prop)->fofType)
% 1.74/2.12  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.74/2.12  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.74/2.12  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.74/2.12  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.74/2.12  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.74/2.12  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.74/2.12  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.74/2.12  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.74/2.12  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.74/2.12  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.74/2.12  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.74/2.12  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.74/2.12  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.74/2.12  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.12  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.12  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.74/2.12  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.74/2.12  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.12  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.12  fofType:Type
% 1.74/2.12  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.74/2.12  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.74/2.12  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.74/2.12  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.74/2.12  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.74/2.12  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.74/2.12  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.74/2.12  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.74/2.12  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.74/2.12  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.74/2.12  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.74/2.12  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.74/2.12  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.74/2.12  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.74/2.12  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.74/2.12  in:(fofType->(fofType->Prop))
% 1.74/2.12  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.74/2.12  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.74/2.12  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.74/2.12  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.12  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.12  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.12  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.12  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.74/2.12  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.74/2.12  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.12  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.74/2.12  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.74/2.12  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.74/2.12  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.74/2.12  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.74/2.12  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.74/2.12  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.74/2.12  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.74/2.12  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.74/2.12  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.74/2.12  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.74/2.12  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.74/2.12  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.74/2.12  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.74/2.12  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.74/2.12  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.74/2.12  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.74/2.12  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.74/2.12  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.74/2.12  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.74/2.12  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.74/2.12  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.74/2.12  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.12  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.74/2.12  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.74/2.12  n_1:=(ordsucc emptyset):fofType
% 1.74/2.12  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.74/2.12  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.74/2.12  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.74/2.12  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.74/2.12  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.74/2.12  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.74/2.12  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.74/2.12  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.74/2.12  n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 1.74/2.12  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.74/2.12  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.74/2.12  nat_1:(nat_p (ordsucc emptyset))
% 1.74/2.12  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.74/2.12  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.74/2.12  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.74/2.12  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.74/2.12  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.74/2.12  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.74/2.12  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.74/2.12  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.74/2.12  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.74/2.12  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.74/2.12  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.74/2.12  obvious:=((imp False) False):Prop
% 1.74/2.12  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.74/2.12  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.74/2.12  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.12  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.74/2.12  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.12  or:(Prop->(Prop->Prop))
% 1.74/2.12  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.74/2.12  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.74/2.12  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.74/2.12  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.74/2.12  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.74/2.12  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.74/2.12  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.74/2.12  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.74/2.12  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.12  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.74/2.12  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.74/2.12  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.74/2.12  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.74/2.12  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.74/2.12  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.74/2.12  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.74/2.12  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.74/2.12  plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 1.74/2.12  power:(fofType->fofType)
% 1.74/2.12  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.74/2.12  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.74/2.12  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.74/2.12  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.74/2.12  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.74/2.12  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.74/2.12  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.74/2.12  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.74/2.12  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.74/2.12  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.74/2.12  prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 1.74/2.12  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.74/2.12  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.74/2.12  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.74/2.12  repl:(fofType->((fofType->fofType)->fofType))
% 1.74/2.12  satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 1.74/2.12  satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 1.74/2.12  satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.74/2.12  satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.74/2.12  satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 1.74/2.12  satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 1.74/2.12  satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 1.74/2.12  satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 1.74/2.12  satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 1.74/2.12  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.12  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.74/2.12  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.74/2.12  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.74/2.12  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.74/2.12  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.74/2.12  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.74/2.12  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.12  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.74/2.12  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.74/2.12  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.12  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.12  union:(fofType->fofType)
% 1.74/2.12  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.74/2.12  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.12  univof:(fofType->fofType)
% 1.74/2.12  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.74/2.13  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.13  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.13  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]X0:fofType
% 1.74/2.13  X1:(fofType->Prop)
% 1.74/2.13  X2:fofType]x:((is_of X2) (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1))))]x0:fofType
% 1.74/2.13  ---subcontext
% 1.74/2.13  [False:Prop
% 1.74/2.13  False_rect:(forall (P:Type), (False->P))
% 1.74/2.13  I:True
% 1.74/2.13  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.74/2.13  True:Prop
% 1.74/2.13  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.74/2.13  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.13  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.74/2.13  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.13  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.13  and:(Prop->(Prop->Prop))
% 1.74/2.13  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.74/2.13  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.74/2.13  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.74/2.13  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.74/2.13  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.74/2.13  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.74/2.13  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.74/2.13  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.13  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.13  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.74/2.13  classic:(forall (P:Prop), ((or P) (not P)))
% 1.74/2.13  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.74/2.13  cond1:=(n_in n_1):(fofType->Prop)
% 1.74/2.13  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.74/2.13  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.74/2.13  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.74/2.13  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.13  d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 1.74/2.13  d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 1.74/2.13  d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 1.74/2.13  d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 1.74/2.13  d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 1.74/2.13  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.74/2.13  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.74/2.13  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.74/2.13  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.74/2.13  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.13  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.74/2.13  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.74/2.13  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.74/2.13  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.74/2.13  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.13  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.74/2.13  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.74/2.13  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.74/2.13  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.74/2.13  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.74/2.13  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.74/2.13  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.74/2.13  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.74/2.13  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.13  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.13  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.74/2.13  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.74/2.13  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.74/2.13  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.74/2.13  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.74/2.13  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.74/2.13  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.13  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.13  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.13  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.13  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.74/2.13  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.13  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.13  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.74/2.13  emptyset:fofType
% 1.74/2.13  eps:((fofType->Prop)->fofType)
% 1.74/2.13  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.74/2.13  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.74/2.13  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.74/2.13  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.74/2.13  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.74/2.13  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.74/2.13  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.74/2.13  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.74/2.13  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.74/2.13  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.74/2.13  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.74/2.13  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.74/2.13  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.74/2.13  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.13  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.74/2.13  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.74/2.13  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.13  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.13  fofType:Type
% 1.74/2.13  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.74/2.13  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.74/2.13  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.74/2.13  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.74/2.13  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.74/2.13  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.74/2.13  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.74/2.13  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.74/2.13  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.74/2.13  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.74/2.13  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.74/2.13  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.74/2.13  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.74/2.13  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.74/2.13  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.74/2.13  in:(fofType->(fofType->Prop))
% 1.74/2.13  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.74/2.13  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.74/2.13  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.74/2.13  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.13  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.13  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.74/2.13  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.74/2.13  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.13  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.74/2.13  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.74/2.13  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.74/2.13  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.74/2.13  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.74/2.13  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.74/2.13  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.74/2.13  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.74/2.13  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.74/2.13  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.74/2.13  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.74/2.13  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.74/2.13  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.74/2.13  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.74/2.13  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.74/2.13  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.74/2.13  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.74/2.13  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.74/2.13  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.74/2.13  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.74/2.13  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.74/2.13  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.74/2.13  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.13  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.74/2.13  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.74/2.13  n_1:=(ordsucc emptyset):fofType
% 1.74/2.13  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.74/2.13  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.74/2.13  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.74/2.13  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.74/2.13  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.74/2.13  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.74/2.13  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.74/2.13  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.74/2.13  n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 1.74/2.13  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.74/2.13  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.74/2.13  nat_1:(nat_p (ordsucc emptyset))
% 1.74/2.13  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.74/2.13  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.74/2.13  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.74/2.13  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.74/2.13  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.74/2.13  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.74/2.13  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.74/2.13  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.74/2.13  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.74/2.13  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.74/2.13  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.74/2.13  obvious:=((imp False) False):Prop
% 1.74/2.13  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.74/2.13  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.74/2.13  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.13  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.74/2.13  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.13  or:(Prop->(Prop->Prop))
% 1.74/2.13  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.74/2.13  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.74/2.13  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.74/2.13  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.74/2.13  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.74/2.13  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.74/2.13  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.74/2.13  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.74/2.13  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.13  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.74/2.13  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.74/2.13  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.74/2.13  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.74/2.13  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.74/2.13  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.74/2.13  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.74/2.13  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.74/2.13  plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 1.74/2.13  power:(fofType->fofType)
% 1.74/2.13  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.74/2.13  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.74/2.13  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.74/2.13  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.74/2.13  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.74/2.13  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.74/2.13  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.74/2.13  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.74/2.13  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.74/2.13  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.74/2.13  prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 1.74/2.13  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.74/2.13  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.74/2.13  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.74/2.13  repl:(fofType->((fofType->fofType)->fofType))
% 1.74/2.13  satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 1.74/2.13  satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 1.74/2.13  satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.74/2.13  satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.74/2.13  satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 1.74/2.13  satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 1.74/2.13  satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 1.74/2.13  satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 1.74/2.13  satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 1.74/2.13  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.74/2.13  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.74/2.13  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.74/2.13  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.74/2.13  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.74/2.13  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.74/2.13  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.13  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.74/2.13  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.74/2.13  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.13  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.13  union:(fofType->fofType)
% 1.74/2.13  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.74/2.13  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.13  univof:(fofType->fofType)
% 1.74/2.13  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.74/2.13  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.13  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]
% 1.74/2.15  ---termsubcontext
% 1.74/2.15  [[[[False:Prop
% 1.74/2.15  False_rect:(forall (P:Type), (False->P))
% 1.74/2.15  I:True
% 1.74/2.15  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.74/2.15  True:Prop
% 1.74/2.15  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.74/2.15  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.15  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.74/2.15  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.15  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.15  and:(Prop->(Prop->Prop))
% 1.74/2.15  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.74/2.15  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.74/2.15  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.74/2.15  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.74/2.15  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.74/2.15  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.74/2.15  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.74/2.15  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.15  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.15  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.74/2.15  classic:(forall (P:Prop), ((or P) (not P)))
% 1.74/2.15  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.74/2.15  cond1:=(n_in n_1):(fofType->Prop)
% 1.74/2.15  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.74/2.15  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.74/2.15  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.74/2.15  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.15  d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 1.74/2.15  d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 1.74/2.15  d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 1.74/2.15  d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 1.74/2.15  d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 1.74/2.15  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.74/2.15  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.74/2.15  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.74/2.15  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.74/2.15  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.15  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.74/2.15  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.74/2.15  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.74/2.15  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.74/2.15  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.15  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.74/2.15  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.74/2.15  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.74/2.15  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.74/2.15  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.74/2.15  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.74/2.15  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.74/2.15  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.74/2.15  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.15  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.74/2.15  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.74/2.15  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.74/2.15  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.74/2.15  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.74/2.15  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.74/2.15  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.15  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.15  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.15  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.15  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.74/2.15  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.15  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.74/2.15  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.74/2.15  emptyset:fofType
% 1.74/2.15  eps:((fofType->Prop)->fofType)
% 1.74/2.15  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.74/2.15  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.74/2.15  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.74/2.15  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.74/2.15  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.74/2.15  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.74/2.15  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.74/2.15  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.74/2.15  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.74/2.15  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.74/2.15  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.74/2.15  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.74/2.15  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.74/2.15  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.74/2.15  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.15  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.74/2.15  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.74/2.15  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.15  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.74/2.15  fofType:Type
% 1.74/2.15  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.74/2.15  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.74/2.15  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.74/2.15  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.74/2.15  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.74/2.15  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.74/2.15  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.74/2.15  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.74/2.15  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.74/2.15  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.74/2.15  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.74/2.15  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.74/2.15  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.74/2.15  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.74/2.15  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.74/2.15  in:(fofType->(fofType->Prop))
% 1.74/2.15  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.74/2.15  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.74/2.15  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.74/2.15  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.15  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.74/2.15  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.15  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.15  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.74/2.15  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.74/2.15  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.74/2.15  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.74/2.15  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.74/2.15  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.74/2.15  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.74/2.15  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.74/2.15  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.74/2.15  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.74/2.15  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.74/2.15  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.74/2.15  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.74/2.15  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.74/2.15  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.74/2.15  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.74/2.15  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.74/2.15  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.74/2.15  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.74/2.15  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.74/2.15  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.74/2.15  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.74/2.15  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.74/2.15  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.74/2.15  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.15  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.74/2.15  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.74/2.15  n_1:=(ordsucc emptyset):fofType
% 1.74/2.15  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.74/2.15  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.74/2.15  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.74/2.15  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.74/2.15  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.74/2.15  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.74/2.15  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.74/2.15  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.74/2.15  n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 1.74/2.15  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.74/2.15  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.74/2.15  nat_1:(nat_p (ordsucc emptyset))
% 1.74/2.15  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.74/2.15  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.74/2.15  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.74/2.15  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.74/2.15  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.74/2.15  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.74/2.15  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.74/2.15  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.74/2.15  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.74/2.15  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.74/2.15  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.74/2.15  obvious:=((imp False) False):Prop
% 1.74/2.15  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.74/2.15  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.74/2.15  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.74/2.15  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.74/2.15  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.15  or:(Prop->(Prop->Prop))
% 1.74/2.15  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.74/2.15  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.74/2.15  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.74/2.15  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.74/2.15  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.74/2.15  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.74/2.15  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.74/2.15  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.74/2.15  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.74/2.15  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.74/2.15  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.74/2.15  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.74/2.15  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.74/2.15  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.74/2.15  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.74/2.15  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.74/2.15  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.74/2.15  plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 1.74/2.15  power:(fofType->fofType)
% 1.74/2.15  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.74/2.15  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.74/2.15  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.74/2.15  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.74/2.15  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.74/2.15  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.74/2.15  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.74/2.15  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.74/2.15  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.74/2.15  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.74/2.15  prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 1.74/2.15  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.74/2.15  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.74/2.15  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.74/2.15  repl:(fofType->((fofType->fofType)->fofType))
% 1.74/2.15  satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 1.74/2.15  satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 1.74/2.15  satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.74/2.15  satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 1.74/2.15  satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 1.74/2.15  satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 1.74/2.15  satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 1.74/2.15  satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 1.74/2.15  satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 1.74/2.15  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.15  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.74/2.15  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.74/2.15  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.74/2.15  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.74/2.15  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.74/2.15  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.74/2.15  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.74/2.15  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.74/2.15  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.74/2.15  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  union:(fofType->fofType)
% 1.74/2.15  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.74/2.15  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.74/2.15  univof:(fofType->fofType)
% 1.74/2.15  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.15  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.74/2.15  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.74/2.15  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.74/2.15  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]X0:fofType
% 1.74/2.15  X1:(fofType->Prop)
% 1.74/2.15  X2:fofType]x:((is_of X2) (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1))))]x0:fofType] (rdef{??}) X2:=((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))):Prop
% 1.74/2.15  ---
% 1.74/2.15  self=((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))):Prop
% 1.74/2.15  term=(((e_in X0) X1) X2):fofType
% 1.74/2.15  --- does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))))
% 1.74/2.15  Unexpected exception Does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))))
% 1.74/2.15  
% 1.74/2.15  Traceback (most recent call last):
% 1.74/2.15    File "CASC.py", line 80, in <module>
% 1.74/2.15      proof=problem.solve()
% 1.74/2.15    File "/export/starexec/sandbox2/solver/bin/TPTP.py", line 95, in solve
% 1.74/2.15      for x in self.solveyielding():
% 1.74/2.15    File "/export/starexec/sandbox2/solver/bin/TPTP.py", line 83, in solveyielding
% 1.74/2.15      for proof in proofgen: yield proof
% 1.74/2.15    File "/export/starexec/sandbox2/solver/bin/prover.py", line 422, in proveyielding
% 1.74/2.15      results=node.look() #Can add nodes
% 1.74/2.15    File "/export/starexec/sandbox2/solver/bin/prover.py", line 1221, in look
% 1.74/2.15      matching=target.match(term.body,self.context,termbodycontext,instantiate=True)
% 1.74/2.15    File "/export/starexec/sandbox2/solver/bin/kernel.py", line 576, in match
% 1.74/2.15      atermmatch=s.abstracttermmatch(params,context,termcontext,instantiate=instantiate)
% 1.74/2.15    File "/export/starexec/sandbox2/solver/bin/kernel.py", line 1192, in abstracttermmatch
% 1.74/2.15      print "t=%s:%s" % (t,t.gettype(termsubcontext))
% 1.74/2.15  kernel.TypecheckError: Does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))))
% 1.74/2.15  
%------------------------------------------------------------------------------