TSTP Solution File: NUM642^4 by cocATP---0.2.0
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : cocATP---0.2.0
% Problem : NUM642^4 : TPTP v7.1.0. Released v7.1.0.
% Transfm : none
% Format : tptp:raw
% Command : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% Computer : n095.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:16 EST 2018
% Result : Timeout 297.84s
% 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 : NUM642^4 : TPTP v7.1.0. Released v7.1.0.
% 0.00/0.03 % Command : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.02/0.23 % Computer : n095.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:23:29 CST 2018
% 0.02/0.23 % CPUTime :
% 0.07/0.25 Python 2.7.13
% 0.07/0.51 Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% 0.07/0.51 Failed to open /home/cristobal/cocATP/CASC/TPTP/Axioms/NUM007^0.ax, trying next directory
% 0.07/0.51 FOF formula (<kernel.Constant object at 0x2b87bed14f38>, <kernel.DependentProduct object at 0x2b87bed14560>) of role type named typ_is_of
% 0.07/0.51 Using role type
% 0.07/0.51 Declaring is_of:(fofType->((fofType->Prop)->Prop))
% 0.07/0.51 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.07/0.51 A new definition: (((eq (fofType->((fofType->Prop)->Prop))) is_of) (fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)))
% 0.07/0.51 Defined: is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0))
% 0.07/0.51 FOF formula (<kernel.Constant object at 0x2b87be9be290>, <kernel.DependentProduct object at 0x2b87bed14ab8>) of role type named typ_all_of
% 0.07/0.51 Using role type
% 0.07/0.51 Declaring all_of:((fofType->Prop)->((fofType->Prop)->Prop))
% 0.07/0.51 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.07/0.51 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.07/0.51 Defined: all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2))))
% 0.07/0.51 FOF formula (<kernel.Constant object at 0x2b87be9b7e60>, <kernel.DependentProduct object at 0x2b87bed14c20>) of role type named typ_eps
% 0.07/0.51 Using role type
% 0.07/0.51 Declaring eps:((fofType->Prop)->fofType)
% 0.07/0.51 FOF formula (<kernel.Constant object at 0x2b87be9b7e60>, <kernel.DependentProduct object at 0x2b87bed14c20>) of role type named typ_in
% 0.07/0.51 Using role type
% 0.07/0.51 Declaring in:(fofType->(fofType->Prop))
% 0.07/0.51 FOF formula (<kernel.Constant object at 0x2b87bf40cab8>, <kernel.DependentProduct object at 0x2b87bed14ab8>) of role type named typ_d_Subq
% 0.07/0.51 Using role type
% 0.07/0.51 Declaring d_Subq:(fofType->(fofType->Prop))
% 0.07/0.51 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.07/0.51 A new definition: (((eq (fofType->(fofType->Prop))) d_Subq) (fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))))
% 0.07/0.51 Defined: d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1))))
% 0.07/0.51 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.07/0.51 A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 0.07/0.51 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.07/0.51 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.07/0.51 FOF formula (<kernel.Constant object at 0x2b87bed14c68>, <kernel.Single object at 0x2b87bed14ef0>) of role type named typ_emptyset
% 0.07/0.51 Using role type
% 0.07/0.51 Declaring emptyset:fofType
% 0.07/0.51 FOF formula (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False) of role axiom named k_EmptyAx
% 0.07/0.51 A new axiom: (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 0.07/0.51 FOF formula (<kernel.Constant object at 0x2b87bed143b0>, <kernel.DependentProduct object at 0x2b87bed14248>) of role type named typ_union
% 0.07/0.51 Using role type
% 0.07/0.51 Declaring union:(fofType->fofType)
% 0.07/0.51 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.07/0.51 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.07/0.51 FOF formula (<kernel.Constant object at 0x2b87be9bbb48>, <kernel.DependentProduct object at 0x2b87bed14ea8>) of role type named typ_power
% 0.07/0.51 Using role type
% 0.07/0.53 Declaring power:(fofType->fofType)
% 0.07/0.53 FOF formula (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))) of role axiom named k_PowerEq
% 0.07/0.53 A new axiom: (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 0.07/0.53 FOF formula (<kernel.Constant object at 0x2b87be9bbb48>, <kernel.DependentProduct object at 0x2b87bed14908>) of role type named typ_repl
% 0.07/0.53 Using role type
% 0.07/0.53 Declaring repl:(fofType->((fofType->fofType)->fofType))
% 0.07/0.53 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.07/0.53 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.07/0.53 FOF formula (<kernel.Constant object at 0x2b87be9bb9e0>, <kernel.DependentProduct object at 0x2b87bed144d0>) of role type named typ_d_Union_closed
% 0.07/0.53 Using role type
% 0.07/0.53 Declaring d_Union_closed:(fofType->Prop)
% 0.07/0.53 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.07/0.53 A new definition: (((eq (fofType->Prop)) d_Union_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))))
% 0.07/0.53 Defined: d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0))))
% 0.07/0.53 FOF formula (<kernel.Constant object at 0x2b87bed144d0>, <kernel.DependentProduct object at 0x2b87bed14ea8>) of role type named typ_d_Power_closed
% 0.07/0.53 Using role type
% 0.07/0.53 Declaring d_Power_closed:(fofType->Prop)
% 0.07/0.53 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.07/0.53 A new definition: (((eq (fofType->Prop)) d_Power_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))))
% 0.07/0.53 Defined: d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0))))
% 0.07/0.53 FOF formula (<kernel.Constant object at 0x2b87bed14ef0>, <kernel.DependentProduct object at 0x2b87bed143b0>) of role type named typ_d_Repl_closed
% 0.07/0.53 Using role type
% 0.07/0.53 Declaring d_Repl_closed:(fofType->Prop)
% 0.07/0.53 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.07/0.53 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.07/0.53 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.07/0.53 FOF formula (<kernel.Constant object at 0x2b87bed144d0>, <kernel.DependentProduct object at 0x2b87bed9ea70>) of role type named typ_d_ZF_closed
% 0.07/0.53 Using role type
% 0.07/0.53 Declaring d_ZF_closed:(fofType->Prop)
% 0.07/0.53 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.07/0.53 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.07/0.53 Defined: d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0)))
% 0.07/0.53 FOF formula (<kernel.Constant object at 0x2b87bed14ef0>, <kernel.DependentProduct object at 0x2b87bed9ec68>) of role type named typ_univof
% 0.07/0.53 Using role type
% 0.07/0.53 Declaring univof:(fofType->fofType)
% 0.07/0.53 FOF formula (forall (X0:fofType), ((in X0) (univof X0))) of role axiom named k_UnivOf_In
% 0.07/0.53 A new axiom: (forall (X0:fofType), ((in X0) (univof X0)))
% 0.07/0.53 FOF formula (forall (X0:fofType), (d_ZF_closed (univof X0))) of role axiom named k_UnivOf_ZF_closed
% 0.35/0.54 A new axiom: (forall (X0:fofType), (d_ZF_closed (univof X0)))
% 0.35/0.54 FOF formula (<kernel.Constant object at 0x2b87bed143b0>, <kernel.DependentProduct object at 0x2b87bed9ec68>) of role type named typ_if
% 0.35/0.54 Using role type
% 0.35/0.54 Declaring if:(Prop->(fofType->(fofType->fofType)))
% 0.35/0.54 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.35/0.54 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.35/0.54 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.35/0.54 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.35/0.54 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.35/0.54 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.35/0.54 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 0.35/0.54 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.35/0.54 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 0.35/0.54 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.35/0.54 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.35/0.54 FOF formula (<kernel.Constant object at 0x2b87bed9eb00>, <kernel.DependentProduct object at 0x2b87bf434290>) of role type named typ_nIn
% 0.35/0.54 Using role type
% 0.35/0.54 Declaring nIn:(fofType->(fofType->Prop))
% 0.35/0.54 FOF formula (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))) of role definition named def_nIn
% 0.35/0.54 A new definition: (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)))
% 0.35/0.54 Defined: nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))
% 0.35/0.54 FOF formula (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))) of role axiom named k_PowerE
% 0.35/0.54 A new axiom: (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 0.35/0.54 FOF formula (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))) of role axiom named k_PowerI
% 0.35/0.54 A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 0.35/0.54 FOF formula (forall (X0:fofType), ((in X0) (power X0))) of role axiom named k_Self_In_Power
% 0.35/0.54 A new axiom: (forall (X0:fofType), ((in X0) (power X0)))
% 0.35/0.54 FOF formula (<kernel.Constant object at 0x2b87bf434908>, <kernel.DependentProduct object at 0x2b87bf434f38>) of role type named typ_d_UPair
% 0.35/0.54 Using role type
% 0.35/0.54 Declaring d_UPair:(fofType->(fofType->fofType))
% 0.35/0.54 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.35/0.54 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.35/0.54 Defined: d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1))))
% 0.35/0.54 FOF formula (<kernel.Constant object at 0x2b87bf434f38>, <kernel.DependentProduct object at 0x2b87bf434e18>) of role type named typ_d_Sing
% 0.35/0.54 Using role type
% 0.35/0.56 Declaring d_Sing:(fofType->fofType)
% 0.35/0.56 FOF formula (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0))) of role definition named def_d_Sing
% 0.35/0.56 A new definition: (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0)))
% 0.35/0.56 Defined: d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0))
% 0.35/0.56 FOF formula (<kernel.Constant object at 0x2b87bf434e18>, <kernel.DependentProduct object at 0x2b87bf434128>) of role type named typ_binunion
% 0.35/0.56 Using role type
% 0.35/0.56 Declaring binunion:(fofType->(fofType->fofType))
% 0.35/0.56 FOF formula (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))) of role definition named def_binunion
% 0.35/0.56 A new definition: (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))))
% 0.35/0.56 Defined: binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))
% 0.35/0.56 FOF formula (<kernel.Constant object at 0x2b87bf434128>, <kernel.DependentProduct object at 0x2b87bf4343f8>) of role type named typ_famunion
% 0.35/0.56 Using role type
% 0.35/0.56 Declaring famunion:(fofType->((fofType->fofType)->fofType))
% 0.35/0.56 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.35/0.56 A new definition: (((eq (fofType->((fofType->fofType)->fofType))) famunion) (fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))))
% 0.35/0.56 Defined: famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1)))
% 0.35/0.56 FOF formula (<kernel.Constant object at 0x2b87bf4343f8>, <kernel.DependentProduct object at 0x2b87bf434518>) of role type named typ_d_Sep
% 0.35/0.56 Using role type
% 0.35/0.56 Declaring d_Sep:(fofType->((fofType->Prop)->fofType))
% 0.35/0.56 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.35/0.56 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.35/0.56 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.35/0.56 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.35/0.56 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 0.35/0.56 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.35/0.56 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 0.35/0.56 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.35/0.56 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 0.35/0.56 FOF formula (<kernel.Constant object at 0x2b87bf434908>, <kernel.DependentProduct object at 0x2b87c149d320>) of role type named typ_d_ReplSep
% 0.35/0.56 Using role type
% 0.35/0.56 Declaring d_ReplSep:(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 0.35/0.56 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.35/0.56 A new definition: (((eq (fofType->((fofType->Prop)->((fofType->fofType)->fofType)))) d_ReplSep) (fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))))
% 0.35/0.56 Defined: d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1)))
% 0.35/0.56 FOF formula (<kernel.Constant object at 0x2b87bf434908>, <kernel.DependentProduct object at 0x2b87c149d488>) of role type named typ_setminus
% 0.35/0.57 Using role type
% 0.35/0.57 Declaring setminus:(fofType->(fofType->fofType))
% 0.35/0.57 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.35/0.57 A new definition: (((eq (fofType->(fofType->fofType))) setminus) (fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))))
% 0.35/0.57 Defined: setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1))))
% 0.35/0.57 FOF formula (<kernel.Constant object at 0x2b87bf434908>, <kernel.DependentProduct object at 0x2b87c149d440>) of role type named typ_d_In_rec_G
% 0.35/0.57 Using role type
% 0.35/0.57 Declaring d_In_rec_G:((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 0.35/0.57 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.35/0.57 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.35/0.57 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.35/0.57 FOF formula (<kernel.Constant object at 0x2b87c149d440>, <kernel.DependentProduct object at 0x2b87c149d710>) of role type named typ_d_In_rec
% 0.35/0.58 Using role type
% 0.35/0.58 Declaring d_In_rec:((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 0.35/0.58 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.35/0.58 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.35/0.58 Defined: d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1)))
% 0.35/0.58 FOF formula (<kernel.Constant object at 0x2b87c149d710>, <kernel.DependentProduct object at 0x2b87c149d4d0>) of role type named typ_ordsucc
% 0.35/0.58 Using role type
% 0.35/0.58 Declaring ordsucc:(fofType->fofType)
% 0.35/0.58 FOF formula (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))) of role definition named def_ordsucc
% 0.35/0.58 A new definition: (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0))))
% 0.35/0.58 Defined: ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))
% 0.35/0.58 FOF formula (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))) of role axiom named neq_ordsucc_0
% 0.35/0.58 A new axiom: (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 0.35/0.58 FOF formula (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))) of role axiom named ordsucc_inj
% 0.35/0.58 A new axiom: (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 0.35/0.58 FOF formula ((in emptyset) (ordsucc emptyset)) of role axiom named k_In_0_1
% 0.35/0.58 A new axiom: ((in emptyset) (ordsucc emptyset))
% 0.35/0.58 FOF formula (<kernel.Constant object at 0x2b87c149d488>, <kernel.DependentProduct object at 0x2b87c149d200>) of role type named typ_nat_p
% 0.35/0.58 Using role type
% 0.35/0.58 Declaring nat_p:(fofType->Prop)
% 0.35/0.58 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.35/0.59 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.35/0.59 Defined: nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0)))))
% 0.35/0.59 FOF formula (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))) of role axiom named nat_ordsucc
% 0.35/0.59 A new axiom: (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 0.35/0.59 FOF formula (nat_p (ordsucc emptyset)) of role axiom named nat_1
% 0.35/0.59 A new axiom: (nat_p (ordsucc emptyset))
% 0.35/0.59 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.35/0.59 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.35/0.59 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.35/0.59 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.35/0.59 FOF formula (<kernel.Constant object at 0x2b87c149db00>, <kernel.Single object at 0x2b87c149d830>) of role type named typ_omega
% 0.35/0.59 Using role type
% 0.35/0.59 Declaring omega:fofType
% 0.35/0.59 FOF formula (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p)) of role definition named def_omega
% 0.35/0.59 A new definition: (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p))
% 0.35/0.59 Defined: omega:=((d_Sep (univof emptyset)) nat_p)
% 0.35/0.59 FOF formula (forall (X0:fofType), (((in X0) omega)->(nat_p X0))) of role axiom named omega_nat_p
% 0.35/0.59 A new axiom: (forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 0.35/0.59 FOF formula (forall (X0:fofType), ((nat_p X0)->((in X0) omega))) of role axiom named nat_p_omega
% 0.35/0.59 A new axiom: (forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 0.35/0.59 FOF formula (<kernel.Constant object at 0x2b87c149d638>, <kernel.DependentProduct object at 0x2b87c149d830>) of role type named typ_d_Inj1
% 0.35/0.59 Using role type
% 0.35/0.59 Declaring d_Inj1:(fofType->fofType)
% 0.35/0.59 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.35/0.59 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.35/0.59 Defined: d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1))))
% 0.35/0.59 FOF formula (<kernel.Constant object at 0x2b87c149db00>, <kernel.DependentProduct object at 0x2b87c149de60>) of role type named typ_d_Inj0
% 0.35/0.59 Using role type
% 0.35/0.59 Declaring d_Inj0:(fofType->fofType)
% 0.35/0.59 FOF formula (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1))) of role definition named def_d_Inj0
% 0.35/0.59 A new definition: (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1)))
% 0.35/0.59 Defined: d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1))
% 0.35/0.59 FOF formula (<kernel.Constant object at 0x2b87c149de60>, <kernel.DependentProduct object at 0x2b87c149d830>) of role type named typ_d_Unj
% 0.35/0.59 Using role type
% 0.35/0.59 Declaring d_Unj:(fofType->fofType)
% 0.35/0.59 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.35/0.59 A new definition: (((eq (fofType->fofType)) d_Unj) (d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))))
% 0.35/0.59 Defined: d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset)))))
% 0.35/0.59 FOF formula (<kernel.Constant object at 0x2b87c149d638>, <kernel.DependentProduct object at 0x2b87c149d830>) of role type named typ_pair
% 0.35/0.59 Using role type
% 0.35/0.59 Declaring pair:(fofType->(fofType->fofType))
% 0.35/0.59 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.35/0.61 A new definition: (((eq (fofType->(fofType->fofType))) pair) (fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))))
% 0.35/0.61 Defined: pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1)))
% 0.35/0.61 FOF formula (<kernel.Constant object at 0x2b87c149d830>, <kernel.DependentProduct object at 0x2b87c149d518>) of role type named typ_proj0
% 0.35/0.61 Using role type
% 0.35/0.61 Declaring proj0:(fofType->fofType)
% 0.35/0.61 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.35/0.61 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.35/0.61 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.35/0.61 FOF formula (<kernel.Constant object at 0x2b87c149d518>, <kernel.DependentProduct object at 0x2b87c149d7a0>) of role type named typ_proj1
% 0.35/0.61 Using role type
% 0.35/0.61 Declaring _TPTP_proj1:(fofType->fofType)
% 0.35/0.61 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.35/0.61 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.35/0.61 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.35/0.61 FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)) of role axiom named proj0_pair_eq
% 0.35/0.61 A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 0.35/0.61 FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)) of role axiom named proj1_pair_eq
% 0.35/0.61 A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 0.35/0.61 FOF formula (<kernel.Constant object at 0x2b87c149dab8>, <kernel.DependentProduct object at 0x2b87c149d9e0>) of role type named typ_d_Sigma
% 0.35/0.61 Using role type
% 0.35/0.61 Declaring d_Sigma:(fofType->((fofType->fofType)->fofType))
% 0.35/0.61 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.35/0.61 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.35/0.61 Defined: d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2)))))
% 0.35/0.61 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.35/0.61 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.35/0.61 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.35/0.61 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.35/0.61 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.42/0.62 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.42/0.62 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.42/0.62 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 0.42/0.62 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.42/0.62 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.42/0.62 FOF formula (<kernel.Constant object at 0x2b87c149de60>, <kernel.DependentProduct object at 0x2b87c149d320>) of role type named typ_setprod
% 0.42/0.62 Using role type
% 0.42/0.62 Declaring setprod:(fofType->(fofType->fofType))
% 0.42/0.62 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.42/0.62 A new definition: (((eq (fofType->(fofType->fofType))) setprod) (fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))))
% 0.42/0.62 Defined: setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1)))
% 0.42/0.62 FOF formula (<kernel.Constant object at 0x2b87c149dea8>, <kernel.DependentProduct object at 0x2b87c149d518>) of role type named typ_ap
% 0.42/0.62 Using role type
% 0.42/0.62 Declaring ap:(fofType->(fofType->fofType))
% 0.42/0.62 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.42/0.62 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.42/0.62 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.42/0.62 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.42/0.62 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.42/0.62 FOF formula (<kernel.Constant object at 0x2b87c149def0>, <kernel.DependentProduct object at 0x2b87c20995f0>) of role type named typ_pair_p
% 0.42/0.62 Using role type
% 0.42/0.62 Declaring pair_p:(fofType->Prop)
% 0.42/0.62 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.42/0.62 A new definition: (((eq (fofType->Prop)) pair_p) (fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)))
% 0.42/0.62 Defined: pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0))
% 0.42/0.62 FOF formula (<kernel.Constant object at 0x2b87c149dea8>, <kernel.DependentProduct object at 0x2b87c20991b8>) of role type named typ_d_Pi
% 0.42/0.62 Using role type
% 0.42/0.62 Declaring d_Pi:(fofType->((fofType->fofType)->fofType))
% 0.42/0.62 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.42/0.62 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.42/0.62 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 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.42/0.64 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 0.42/0.64 FOF formula (<kernel.Constant object at 0x2b87c2099488>, <kernel.DependentProduct object at 0x2b87c20992d8>) of role type named typ_imp
% 0.42/0.64 Using role type
% 0.42/0.64 Declaring imp:(Prop->(Prop->Prop))
% 0.42/0.64 FOF formula (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1))) of role definition named def_imp
% 0.42/0.64 A new definition: (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1)))
% 0.42/0.64 Defined: imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1))
% 0.42/0.64 FOF formula (<kernel.Constant object at 0x2b87c20992d8>, <kernel.DependentProduct object at 0x2b87c2099710>) of role type named typ_d_not
% 0.42/0.64 Using role type
% 0.42/0.64 Declaring d_not:(Prop->Prop)
% 0.42/0.64 FOF formula (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False))) of role definition named def_d_not
% 0.42/0.64 A new definition: (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False)))
% 0.42/0.64 Defined: d_not:=(fun (X0:Prop)=> ((imp X0) False))
% 0.42/0.64 FOF formula (<kernel.Constant object at 0x2b87c2099710>, <kernel.DependentProduct object at 0x2b87c2099320>) of role type named typ_wel
% 0.42/0.64 Using role type
% 0.42/0.64 Declaring wel:(Prop->Prop)
% 0.42/0.64 FOF formula (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0)))) of role definition named def_wel
% 0.42/0.64 A new definition: (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0))))
% 0.42/0.64 Defined: wel:=(fun (X0:Prop)=> (d_not (d_not X0)))
% 0.42/0.64 FOF formula (forall (X0:Prop), ((wel X0)->X0)) of role axiom named l_et
% 0.42/0.64 A new axiom: (forall (X0:Prop), ((wel X0)->X0))
% 0.42/0.64 FOF formula (<kernel.Constant object at 0x2b87c2099758>, <kernel.Sort object at 0x2b87b7080950>) of role type named typ_obvious
% 0.42/0.64 Using role type
% 0.42/0.64 Declaring obvious:Prop
% 0.42/0.64 FOF formula (((eq Prop) obvious) ((imp False) False)) of role definition named def_obvious
% 0.42/0.64 A new definition: (((eq Prop) obvious) ((imp False) False))
% 0.42/0.66 Defined: obvious:=((imp False) False)
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099518>, <kernel.DependentProduct object at 0x2b87c2099200>) of role type named typ_l_ec
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring l_ec:(Prop->(Prop->Prop))
% 0.42/0.66 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.42/0.66 A new definition: (((eq (Prop->(Prop->Prop))) l_ec) (fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))))
% 0.42/0.66 Defined: l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1)))
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099200>, <kernel.DependentProduct object at 0x2b87c2099758>) of role type named typ_d_and
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring d_and:(Prop->(Prop->Prop))
% 0.42/0.66 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.42/0.66 A new definition: (((eq (Prop->(Prop->Prop))) d_and) (fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))))
% 0.42/0.66 Defined: d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1)))
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099758>, <kernel.DependentProduct object at 0x2b87c2099518>) of role type named typ_l_or
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring l_or:(Prop->(Prop->Prop))
% 0.42/0.66 FOF formula (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0)))) of role definition named def_l_or
% 0.42/0.66 A new definition: (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0))))
% 0.42/0.66 Defined: l_or:=(fun (X0:Prop)=> (imp (d_not X0)))
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099518>, <kernel.DependentProduct object at 0x2b87c2099440>) of role type named typ_orec
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring orec:(Prop->(Prop->Prop))
% 0.42/0.66 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.42/0.66 A new definition: (((eq (Prop->(Prop->Prop))) orec) (fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))))
% 0.42/0.66 Defined: orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1)))
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099440>, <kernel.DependentProduct object at 0x2b87c2099758>) of role type named typ_l_iff
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring l_iff:(Prop->(Prop->Prop))
% 0.42/0.66 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.42/0.66 A new definition: (((eq (Prop->(Prop->Prop))) l_iff) (fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))))
% 0.42/0.66 Defined: l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0)))
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099758>, <kernel.DependentProduct object at 0x2b87c2099998>) of role type named typ_all
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring all:(fofType->((fofType->Prop)->Prop))
% 0.42/0.66 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.42/0.66 A new definition: (((eq (fofType->((fofType->Prop)->Prop))) all) (fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))))
% 0.42/0.66 Defined: all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0))))
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099998>, <kernel.DependentProduct object at 0x2b87c2099d88>) of role type named typ_non
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring non:(fofType->((fofType->Prop)->(fofType->Prop)))
% 0.42/0.66 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.42/0.66 A new definition: (((eq (fofType->((fofType->Prop)->(fofType->Prop)))) non) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))))
% 0.42/0.66 Defined: non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2)))
% 0.42/0.66 FOF formula (<kernel.Constant object at 0x2b87c2099d88>, <kernel.DependentProduct object at 0x2b87c20994d0>) of role type named typ_l_some
% 0.42/0.66 Using role type
% 0.42/0.66 Declaring l_some:(fofType->((fofType->Prop)->Prop))
% 0.42/0.66 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.48/0.67 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.48/0.67 Defined: l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1))))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2b87c20994d0>, <kernel.DependentProduct object at 0x2b87c2099dd0>) of role type named typ_or3
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring or3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.67 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.48/0.67 A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) or3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))))
% 0.48/0.67 Defined: or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2b87c2099dd0>, <kernel.DependentProduct object at 0x2b87c2099f38>) of role type named typ_and3
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring and3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.67 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.48/0.67 A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) and3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))))
% 0.48/0.67 Defined: and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2b87c2099f38>, <kernel.DependentProduct object at 0x2b87c2099e18>) of role type named typ_ec3
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring ec3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.67 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.48/0.67 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.48/0.67 Defined: ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2b87c2099e18>, <kernel.DependentProduct object at 0x2b87c2099ea8>) of role type named typ_orec3
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring orec3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.67 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.48/0.67 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.48/0.67 Defined: orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2b87c2099ea8>, <kernel.DependentProduct object at 0x2b87c2099b90>) of role type named typ_e_is
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring e_is:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.67 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.48/0.67 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) e_is) (fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)))
% 0.48/0.67 Defined: e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))
% 0.48/0.67 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.48/0.67 A new axiom: (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 0.48/0.67 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.48/0.67 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.48/0.69 FOF formula (<kernel.Constant object at 0x2b87c2099d40>, <kernel.DependentProduct object at 0x2b87c2099d88>) of role type named typ_amone
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring amone:(fofType->((fofType->Prop)->Prop))
% 0.48/0.69 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.48/0.69 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.48/0.69 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.48/0.69 FOF formula (<kernel.Constant object at 0x2b87c2099d88>, <kernel.DependentProduct object at 0x2b87c2099a70>) of role type named typ_one
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring one:(fofType->((fofType->Prop)->Prop))
% 0.48/0.69 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.48/0.69 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.48/0.69 Defined: one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1)))
% 0.48/0.69 FOF formula (<kernel.Constant object at 0x2b87c2099a70>, <kernel.DependentProduct object at 0x2b87c2099f38>) of role type named typ_ind
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring ind:(fofType->((fofType->Prop)->fofType))
% 0.48/0.69 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.48/0.69 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.48/0.69 Defined: ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2)))))
% 0.48/0.69 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.48/0.69 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 0.48/0.69 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))) of role axiom named oneax
% 0.48/0.69 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 0.48/0.69 FOF formula (<kernel.Constant object at 0x2b87c2099f38>, <kernel.DependentProduct object at 0x2b87c2099560>) of role type named typ_injective
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring injective:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.69 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.48/0.69 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.48/0.69 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.48/0.69 FOF formula (<kernel.Constant object at 0x2b87c2099d88>, <kernel.DependentProduct object at 0x2b87c209f1b8>) of role type named typ_image
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring image:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.48/0.69 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.48/0.70 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.48/0.70 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.48/0.70 FOF formula (<kernel.Constant object at 0x2b87c2099d88>, <kernel.DependentProduct object at 0x2b87c209f200>) of role type named typ_tofs
% 0.48/0.70 Using role type
% 0.48/0.70 Declaring tofs:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.48/0.70 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap)) of role definition named def_tofs
% 0.48/0.70 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap))
% 0.48/0.70 Defined: tofs:=(fun (X0:fofType) (X1:fofType)=> ap)
% 0.48/0.70 FOF formula (<kernel.Constant object at 0x2b87c2099d88>, <kernel.DependentProduct object at 0x2b87c209f998>) of role type named typ_soft
% 0.48/0.70 Using role type
% 0.48/0.70 Declaring soft:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.48/0.70 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.48/0.70 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.48/0.70 Defined: soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))
% 0.48/0.70 FOF formula (<kernel.Constant object at 0x2b87c209f998>, <kernel.DependentProduct object at 0x2b87c209f290>) of role type named typ_inverse
% 0.48/0.70 Using role type
% 0.48/0.70 Declaring inverse:(fofType->(fofType->(fofType->fofType)))
% 0.48/0.70 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.48/0.70 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.48/0.70 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.48/0.70 FOF formula (<kernel.Constant object at 0x2b87c209f290>, <kernel.DependentProduct object at 0x2b87c209f908>) of role type named typ_surjective
% 0.48/0.70 Using role type
% 0.48/0.70 Declaring surjective:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.70 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.48/0.70 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) surjective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))))
% 0.48/0.70 Defined: surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2)))
% 0.48/0.70 FOF formula (<kernel.Constant object at 0x2b87c209f908>, <kernel.DependentProduct object at 0x2b87c209f248>) of role type named typ_bijective
% 0.48/0.70 Using role type
% 0.48/0.70 Declaring bijective:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.70 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.48/0.70 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.48/0.70 Defined: bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2)))
% 0.48/0.73 FOF formula (<kernel.Constant object at 0x2b87c209f248>, <kernel.DependentProduct object at 0x2b87c209f3b0>) of role type named typ_invf
% 0.48/0.73 Using role type
% 0.48/0.73 Declaring invf:(fofType->(fofType->(fofType->fofType)))
% 0.48/0.73 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.48/0.73 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) invf) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))))
% 0.48/0.73 Defined: invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2)))
% 0.48/0.73 FOF formula (<kernel.Constant object at 0x2b87c209f3b0>, <kernel.DependentProduct object at 0x2b87c209f290>) of role type named typ_inj_h
% 0.48/0.73 Using role type
% 0.48/0.73 Declaring inj_h:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.48/0.73 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.48/0.73 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.48/0.73 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.48/0.73 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.48/0.73 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.48/0.73 FOF formula (<kernel.Constant object at 0x2b87c209fab8>, <kernel.DependentProduct object at 0x2b87c209f2d8>) of role type named typ_e_in
% 0.48/0.73 Using role type
% 0.48/0.73 Declaring e_in:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.48/0.73 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.48/0.73 A new definition: (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) e_in) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2))
% 0.48/0.73 Defined: e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2)
% 0.48/0.73 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.48/0.73 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.48/0.73 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.48/0.73 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.48/0.73 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.48/0.73 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.48/0.73 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.48/0.74 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.48/0.74 FOF formula (<kernel.Constant object at 0x2b87c209f098>, <kernel.DependentProduct object at 0x2b87c209fe18>) of role type named typ_out
% 0.48/0.74 Using role type
% 0.48/0.74 Declaring out:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.48/0.74 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.48/0.74 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.48/0.74 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.48/0.74 FOF formula (<kernel.Constant object at 0x2b87c209fe18>, <kernel.DependentProduct object at 0x2b87c209f758>) of role type named typ_d_pair
% 0.48/0.74 Using role type
% 0.48/0.74 Declaring d_pair:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.48/0.74 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair)) of role definition named def_d_pair
% 0.48/0.74 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair))
% 0.48/0.74 Defined: d_pair:=(fun (X0:fofType) (X1:fofType)=> pair)
% 0.48/0.74 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.48/0.74 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.48/0.74 FOF formula (<kernel.Constant object at 0x2b87c209fb00>, <kernel.DependentProduct object at 0x2b87c209fc68>) of role type named typ_first
% 0.48/0.74 Using role type
% 0.48/0.74 Declaring first:(fofType->(fofType->(fofType->fofType)))
% 0.48/0.74 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0)) of role definition named def_first
% 0.48/0.74 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0))
% 0.48/0.74 Defined: first:=(fun (X0:fofType) (X1:fofType)=> proj0)
% 0.48/0.74 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.48/0.74 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.48/0.74 FOF formula (<kernel.Constant object at 0x2b87c209f098>, <kernel.DependentProduct object at 0x2b87c209f710>) of role type named typ_second
% 0.48/0.74 Using role type
% 0.48/0.74 Declaring second:(fofType->(fofType->(fofType->fofType)))
% 0.48/0.74 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)) of role definition named def_second
% 0.48/0.74 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1))
% 0.48/0.74 Defined: second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)
% 0.48/0.74 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.48/0.74 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.56/0.76 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.56/0.76 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.56/0.76 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.56/0.76 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.56/0.76 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.56/0.76 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.56/0.76 FOF formula (<kernel.Constant object at 0x2b87c209fef0>, <kernel.DependentProduct object at 0x2b87c209f680>) of role type named typ_prop1
% 0.56/0.76 Using role type
% 0.56/0.76 Declaring prop1:(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 0.56/0.76 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.56/0.76 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.56/0.76 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.56/0.76 FOF formula (<kernel.Constant object at 0x2b87c209f680>, <kernel.DependentProduct object at 0x2b87c209fef0>) of role type named typ_ite
% 0.56/0.76 Using role type
% 0.56/0.76 Declaring ite:(Prop->(fofType->(fofType->(fofType->fofType))))
% 0.56/0.76 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.56/0.76 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.56/0.76 Defined: ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3)))
% 0.56/0.76 FOF formula (<kernel.Constant object at 0x2b87c209fef0>, <kernel.DependentProduct object at 0x2b87c209f488>) of role type named typ_wissel_wa
% 0.56/0.76 Using role type
% 0.56/0.76 Declaring wissel_wa:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.56/0.76 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.56/0.76 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.56/0.76 Defined: wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3))
% 0.56/0.76 FOF formula (<kernel.Constant object at 0x2b87c209f488>, <kernel.DependentProduct object at 0x2b87c209ffc8>) of role type named typ_wissel_wb
% 0.56/0.78 Using role type
% 0.56/0.78 Declaring wissel_wb:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.56/0.78 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.56/0.78 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.56/0.78 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.56/0.78 FOF formula (<kernel.Constant object at 0x2b87c209ffc8>, <kernel.DependentProduct object at 0x2b87c209fd88>) of role type named typ_wissel
% 0.56/0.78 Using role type
% 0.56/0.78 Declaring wissel:(fofType->(fofType->(fofType->fofType)))
% 0.56/0.78 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.56/0.78 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.56/0.78 Defined: wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2)))
% 0.56/0.78 FOF formula (<kernel.Constant object at 0x2b87c209f878>, <kernel.DependentProduct object at 0x2b87c209f830>) of role type named typ_changef
% 0.56/0.78 Using role type
% 0.56/0.78 Declaring changef:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.56/0.78 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.56/0.78 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.56/0.78 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.56/0.78 FOF formula (<kernel.Constant object at 0x2b87c209f248>, <kernel.DependentProduct object at 0x2b87c209fd88>) of role type named typ_r_ec
% 0.56/0.78 Using role type
% 0.56/0.78 Declaring r_ec:(Prop->(Prop->Prop))
% 0.56/0.78 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.56/0.78 A new definition: (((eq (Prop->(Prop->Prop))) r_ec) (fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))))
% 0.56/0.78 Defined: r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1)))
% 0.56/0.78 FOF formula (<kernel.Constant object at 0x2b87c209fd88>, <kernel.DependentProduct object at 0x2b87c209f830>) of role type named typ_esti
% 0.56/0.78 Using role type
% 0.56/0.78 Declaring esti:(fofType->(fofType->(fofType->Prop)))
% 0.56/0.78 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in)) of role definition named def_esti
% 0.56/0.78 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in))
% 0.56/0.78 Defined: esti:=(fun (X0:fofType)=> in)
% 0.56/0.78 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.56/0.78 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 0.56/0.78 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.56/0.78 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.56/0.78 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.59/0.80 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.59/0.80 FOF formula (<kernel.Constant object at 0x2b87c209f830>, <kernel.DependentProduct object at 0x2b87c20a6638>) of role type named typ_empty
% 0.59/0.80 Using role type
% 0.59/0.80 Declaring empty:(fofType->(fofType->Prop))
% 0.59/0.80 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.59/0.80 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.59/0.80 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.59/0.80 FOF formula (<kernel.Constant object at 0x2b87c209f830>, <kernel.DependentProduct object at 0x2b87c20a6440>) of role type named typ_nonempty
% 0.59/0.80 Using role type
% 0.59/0.80 Declaring nonempty:(fofType->(fofType->Prop))
% 0.59/0.80 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.59/0.80 A new definition: (((eq (fofType->(fofType->Prop))) nonempty) (fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))
% 0.59/0.80 Defined: nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))
% 0.59/0.80 FOF formula (<kernel.Constant object at 0x2b87c209f830>, <kernel.DependentProduct object at 0x2b87c20a6098>) of role type named typ_incl
% 0.59/0.80 Using role type
% 0.59/0.80 Declaring incl:(fofType->(fofType->(fofType->Prop)))
% 0.59/0.80 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.59/0.80 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.59/0.80 Defined: incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2)))))
% 0.59/0.80 FOF formula (<kernel.Constant object at 0x2b87c20a6098>, <kernel.DependentProduct object at 0x2b87c20a6638>) of role type named typ_st_disj
% 0.59/0.80 Using role type
% 0.59/0.80 Declaring st_disj:(fofType->(fofType->(fofType->Prop)))
% 0.59/0.80 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.59/0.80 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.59/0.80 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.59/0.80 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.59/0.80 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.59/0.80 FOF formula (<kernel.Constant object at 0x2b87c20a62d8>, <kernel.DependentProduct object at 0x2b87c20a6710>) of role type named typ_nissetprop
% 0.59/0.80 Using role type
% 0.59/0.80 Declaring nissetprop:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.59/0.80 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.59/0.81 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.59/0.81 Defined: nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2))))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2b87c20a6710>, <kernel.DependentProduct object at 0x2b87c20a6098>) of role type named typ_unmore
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring unmore:(fofType->(fofType->(fofType->fofType)))
% 0.59/0.81 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.59/0.81 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.59/0.81 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.59/0.81 FOF formula (<kernel.Constant object at 0x2b87c20a6098>, <kernel.DependentProduct object at 0x2b87c20a6908>) of role type named typ_ecelt
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring ecelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.59/0.81 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.59/0.81 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.59/0.81 Defined: ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2)))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2b87c20a6908>, <kernel.DependentProduct object at 0x2b87c20a68c0>) of role type named typ_ecp
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring ecp:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.59/0.81 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.59/0.81 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.59/0.81 Defined: ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3)))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2b87c20a68c0>, <kernel.DependentProduct object at 0x2b87c20a6c20>) of role type named typ_anec
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring anec:(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 0.59/0.81 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.59/0.81 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.59/0.81 Defined: anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2)))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2b87c20a6c20>, <kernel.DependentProduct object at 0x2b87c20a6908>) of role type named typ_ect
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring ect:(fofType->((fofType->(fofType->Prop))->fofType))
% 0.59/0.81 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.59/0.81 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.64/0.83 Defined: ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1)))
% 0.64/0.83 FOF formula (<kernel.Constant object at 0x2b87c20a6908>, <kernel.DependentProduct object at 0x2b87c20a6560>) of role type named typ_ectset
% 0.64/0.83 Using role type
% 0.64/0.83 Declaring ectset:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.64/0.83 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.64/0.83 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.64/0.83 Defined: ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1)))
% 0.64/0.83 FOF formula (<kernel.Constant object at 0x2b87c20a6560>, <kernel.DependentProduct object at 0x2b87c20a63b0>) of role type named typ_ectelt
% 0.64/0.83 Using role type
% 0.64/0.83 Declaring ectelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.64/0.83 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.64/0.83 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.64/0.83 Defined: ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2)))
% 0.64/0.83 FOF formula (<kernel.Constant object at 0x2b87c20a63b0>, <kernel.DependentProduct object at 0x2b87c20a6b00>) of role type named typ_ecect
% 0.64/0.83 Using role type
% 0.64/0.83 Declaring ecect:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.64/0.83 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.64/0.83 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.64/0.83 Defined: ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1)))
% 0.64/0.83 FOF formula (<kernel.Constant object at 0x2b87c20a6b00>, <kernel.DependentProduct object at 0x2b87c20a6320>) of role type named typ_fixfu
% 0.64/0.83 Using role type
% 0.64/0.83 Declaring fixfu:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.64/0.83 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.64/0.83 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.64/0.83 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.64/0.83 FOF formula (<kernel.Constant object at 0x2b87c20a6320>, <kernel.DependentProduct object at 0x2b87c20a6998>) of role type named typ_d_10_prop1
% 0.64/0.83 Using role type
% 0.64/0.83 Declaring d_10_prop1:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 0.64/0.83 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.65/0.84 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.65/0.84 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.65/0.84 FOF formula (<kernel.Constant object at 0x2b87c20a6998>, <kernel.DependentProduct object at 0x2b87c20a6bd8>) of role type named typ_prop2
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring prop2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 0.65/0.84 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.65/0.84 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.65/0.84 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.65/0.84 FOF formula (<kernel.Constant object at 0x2b87c20a6bd8>, <kernel.DependentProduct object at 0x2b87c20a6e18>) of role type named typ_indeq
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring indeq:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.65/0.84 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.65/0.84 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.65/0.84 Defined: indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4)))
% 0.65/0.84 FOF formula (<kernel.Constant object at 0x2b87c20a6e18>, <kernel.DependentProduct object at 0x2b87c20a6d88>) of role type named typ_fixfu2
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring fixfu2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.65/0.84 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.65/0.84 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.65/0.84 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.65/0.85 FOF formula (<kernel.Constant object at 0x2b87c20a6d88>, <kernel.DependentProduct object at 0x2b87c20a60e0>) of role type named typ_d_11_i
% 0.65/0.85 Using role type
% 0.65/0.85 Declaring d_11_i:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.65/0.85 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.65/0.85 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.65/0.85 Defined: d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2))))
% 0.65/0.85 FOF formula (<kernel.Constant object at 0x2b87c20a60e0>, <kernel.DependentProduct object at 0x2b87c20a69e0>) of role type named typ_indeq2
% 0.65/0.85 Using role type
% 0.65/0.85 Declaring indeq2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 0.65/0.85 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.65/0.85 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.65/0.85 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.65/0.85 FOF formula (<kernel.Constant object at 0x2b87c20a69e0>, <kernel.Single object at 0x2b87c20a60e0>) of role type named typ_nat
% 0.65/0.85 Using role type
% 0.65/0.85 Declaring nat:fofType
% 0.65/0.85 FOF formula (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))) of role definition named def_nat
% 0.65/0.85 A new definition: (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))))
% 0.65/0.85 Defined: nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))
% 0.65/0.85 FOF formula (<kernel.Constant object at 0x2b87c20a60e0>, <kernel.DependentProduct object at 0x2b87c20a6b00>) of role type named typ_n_is
% 0.65/0.85 Using role type
% 0.65/0.85 Declaring n_is:(fofType->(fofType->Prop))
% 0.65/0.85 FOF formula (((eq (fofType->(fofType->Prop))) n_is) (e_is nat)) of role definition named def_n_is
% 0.65/0.85 A new definition: (((eq (fofType->(fofType->Prop))) n_is) (e_is nat))
% 0.65/0.85 Defined: n_is:=(e_is nat)
% 0.65/0.85 FOF formula (<kernel.Constant object at 0x2b87c20a6998>, <kernel.DependentProduct object at 0x2b87c20a6f38>) of role type named typ_nis
% 0.65/0.85 Using role type
% 0.65/0.85 Declaring nis:(fofType->(fofType->Prop))
% 0.65/0.85 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.65/0.85 A new definition: (((eq (fofType->(fofType->Prop))) nis) (fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))))
% 0.65/0.85 Defined: nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1)))
% 0.65/0.85 FOF formula (<kernel.Constant object at 0x2b87c20a6f38>, <kernel.DependentProduct object at 0x2b87c20a6b00>) of role type named typ_n_in
% 0.65/0.85 Using role type
% 0.65/0.85 Declaring n_in:(fofType->(fofType->Prop))
% 0.65/0.85 FOF formula (((eq (fofType->(fofType->Prop))) n_in) (esti nat)) of role definition named def_n_in
% 0.65/0.85 A new definition: (((eq (fofType->(fofType->Prop))) n_in) (esti nat))
% 0.65/0.87 Defined: n_in:=(esti nat)
% 0.65/0.87 FOF formula (<kernel.Constant object at 0x2b87c20a6d40>, <kernel.DependentProduct object at 0x2b87c20a6b00>) of role type named typ_n_some
% 0.65/0.87 Using role type
% 0.65/0.87 Declaring n_some:((fofType->Prop)->Prop)
% 0.65/0.87 FOF formula (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat)) of role definition named def_n_some
% 0.65/0.87 A new definition: (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat))
% 0.65/0.87 Defined: n_some:=(l_some nat)
% 0.65/0.87 FOF formula (<kernel.Constant object at 0x2b87c20a6f80>, <kernel.DependentProduct object at 0x2b87c20a6b00>) of role type named typ_n_all
% 0.65/0.87 Using role type
% 0.65/0.87 Declaring n_all:((fofType->Prop)->Prop)
% 0.65/0.87 FOF formula (((eq ((fofType->Prop)->Prop)) n_all) (all nat)) of role definition named def_n_all
% 0.65/0.87 A new definition: (((eq ((fofType->Prop)->Prop)) n_all) (all nat))
% 0.65/0.87 Defined: n_all:=(all nat)
% 0.65/0.87 FOF formula (<kernel.Constant object at 0x2b87c20a6d40>, <kernel.DependentProduct object at 0x2b87c20a6e18>) of role type named typ_n_one
% 0.65/0.87 Using role type
% 0.65/0.87 Declaring n_one:((fofType->Prop)->Prop)
% 0.65/0.87 FOF formula (((eq ((fofType->Prop)->Prop)) n_one) (one nat)) of role definition named def_n_one
% 0.65/0.87 A new definition: (((eq ((fofType->Prop)->Prop)) n_one) (one nat))
% 0.65/0.87 Defined: n_one:=(one nat)
% 0.65/0.87 FOF formula (<kernel.Constant object at 0x2b87c20a68c0>, <kernel.Single object at 0x2b87c20a6d40>) of role type named typ_n_1
% 0.65/0.87 Using role type
% 0.65/0.87 Declaring n_1:fofType
% 0.65/0.87 FOF formula (((eq fofType) n_1) (ordsucc emptyset)) of role definition named def_n_1
% 0.65/0.87 A new definition: (((eq fofType) n_1) (ordsucc emptyset))
% 0.65/0.87 Defined: n_1:=(ordsucc emptyset)
% 0.65/0.87 FOF formula ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))) of role axiom named n_1_p
% 0.65/0.87 A new axiom: ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 0.65/0.87 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.65/0.87 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.65/0.87 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.65/0.87 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 0.65/0.87 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.65/0.87 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.65/0.87 FOF formula (<kernel.Constant object at 0x2b87c20a6d40>, <kernel.DependentProduct object at 0x2b87c20ab290>) of role type named typ_cond1
% 0.65/0.87 Using role type
% 0.65/0.87 Declaring cond1:(fofType->Prop)
% 0.65/0.87 FOF formula (((eq (fofType->Prop)) cond1) (n_in n_1)) of role definition named def_cond1
% 0.65/0.87 A new definition: (((eq (fofType->Prop)) cond1) (n_in n_1))
% 0.65/0.87 Defined: cond1:=(n_in n_1)
% 0.65/0.87 FOF formula (<kernel.Constant object at 0x2b87c20ab998>, <kernel.DependentProduct object at 0x2b87c20ab4d0>) of role type named typ_cond2
% 0.65/0.87 Using role type
% 0.65/0.87 Declaring cond2:(fofType->Prop)
% 0.65/0.87 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.65/0.87 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.65/0.87 Defined: cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0)))))
% 0.65/0.87 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.65/0.87 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.65/0.87 FOF formula (<kernel.Constant object at 0x2b87c20ab2d8>, <kernel.DependentProduct object at 0x2b87c20ab878>) of role type named typ_i1_s
% 0.65/0.89 Using role type
% 0.65/0.89 Declaring i1_s:((fofType->Prop)->fofType)
% 0.65/0.89 FOF formula (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat)) of role definition named def_i1_s
% 0.65/0.89 A new definition: (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat))
% 0.65/0.89 Defined: i1_s:=(d_Sep nat)
% 0.65/0.89 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.65/0.89 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.65/0.89 FOF formula (<kernel.Constant object at 0x2b87bf424248>, <kernel.DependentProduct object at 0x2b87bf40cb00>) of role type named typ_d_22_prop1
% 0.65/0.89 Using role type
% 0.65/0.89 Declaring d_22_prop1:(fofType->Prop)
% 0.65/0.89 FOF formula (((eq (fofType->Prop)) d_22_prop1) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))) of role definition named def_d_22_prop1
% 0.65/0.89 A new definition: (((eq (fofType->Prop)) d_22_prop1) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 0.65/0.89 Defined: d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0))
% 0.65/0.89 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))) of role axiom named satz2
% 0.65/0.89 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 0.65/0.89 FOF formula (<kernel.Constant object at 0x2b87bf40cb00>, <kernel.DependentProduct object at 0x2b87bf432b48>) of role type named typ_d_23_prop1
% 0.65/0.89 Using role type
% 0.65/0.89 Declaring d_23_prop1:(fofType->Prop)
% 0.65/0.89 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.65/0.89 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.65/0.89 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.65/0.89 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.65/0.89 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.65/0.89 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.65/0.89 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.65/0.89 FOF formula (<kernel.Constant object at 0x2b87be9be290>, <kernel.DependentProduct object at 0x2b87be9bbb90>) of role type named typ_d_24_prop1
% 0.65/0.89 Using role type
% 0.65/0.89 Declaring d_24_prop1:(fofType->Prop)
% 0.65/0.89 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.65/0.89 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.65/0.89 Defined: d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1))))))
% 0.65/0.89 FOF formula (<kernel.Constant object at 0x2b87bf40ce60>, <kernel.DependentProduct object at 0x2b87be9bb9e0>) of role type named typ_d_24_prop2
% 0.65/0.89 Using role type
% 0.65/0.89 Declaring d_24_prop2:(fofType->(fofType->Prop))
% 0.65/0.89 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.65/0.89 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.65/0.89 Defined: d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1)))
% 0.65/0.90 FOF formula (<kernel.Constant object at 0x2b87bf432128>, <kernel.DependentProduct object at 0x2b87be9bb9e0>) of role type named typ_prop3
% 0.65/0.90 Using role type
% 0.65/0.90 Declaring prop3:(fofType->(fofType->(fofType->Prop)))
% 0.65/0.90 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.65/0.90 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.65/0.90 Defined: prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2)))
% 0.65/0.90 FOF formula (<kernel.Constant object at 0x2b87bf432128>, <kernel.DependentProduct object at 0x2b87bed14d40>) of role type named typ_prop4
% 0.65/0.90 Using role type
% 0.65/0.90 Declaring prop4:(fofType->Prop)
% 0.65/0.90 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.65/0.90 A new definition: (((eq (fofType->Prop)) prop4) (fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))))
% 0.65/0.90 Defined: prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))
% 0.65/0.90 FOF formula (<kernel.Constant object at 0x2b87bf432518>, <kernel.DependentProduct object at 0x2b87bed14b48>) of role type named typ_d_24_g
% 0.65/0.90 Using role type
% 0.65/0.90 Declaring d_24_g:(fofType->fofType)
% 0.65/0.90 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.65/0.90 A new definition: (((eq (fofType->fofType)) d_24_g) (fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))))
% 0.65/0.90 Defined: d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1)))))
% 0.65/0.90 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.65/0.90 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.65/0.90 FOF formula (<kernel.Constant object at 0x2b87be9bbe60>, <kernel.DependentProduct object at 0x2b87bed14d40>) of role type named typ_plus
% 0.65/0.90 Using role type
% 0.65/0.90 Declaring plus:(fofType->fofType)
% 0.65/0.90 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.65/0.90 A new definition: (((eq (fofType->fofType)) plus) (fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))))
% 0.65/0.90 Defined: plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))
% 0.65/0.90 FOF formula (<kernel.Constant object at 0x2b87be9bbe60>, <kernel.DependentProduct object at 0x2b87bed14488>) of role type named typ_n_pl
% 0.65/0.90 Using role type
% 0.65/0.90 Declaring n_pl:(fofType->(fofType->fofType))
% 0.65/0.90 FOF formula (((eq (fofType->(fofType->fofType))) n_pl) (fun (X0:fofType)=> (ap (plus X0)))) of role definition named def_n_pl
% 0.65/0.90 A new definition: (((eq (fofType->(fofType->fofType))) n_pl) (fun (X0:fofType)=> (ap (plus X0))))
% 0.65/0.90 Defined: n_pl:=(fun (X0:fofType)=> (ap (plus X0)))
% 0.65/0.90 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.65/0.90 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 0.65/0.90 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.65/0.90 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.72/0.92 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.72/0.92 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 0.72/0.92 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.72/0.92 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.72/0.92 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))) of role axiom named satz4e
% 0.72/0.92 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 0.72/0.92 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 ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1))))))) of role axiom named satz4f
% 0.72/0.92 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 ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 0.72/0.92 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0)))) of role axiom named satz4g
% 0.72/0.92 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 0.72/0.92 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 ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))) of role conjecture named satz4h
% 0.72/0.92 Conjecture to prove = ((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 ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))):Prop
% 0.72/0.92 We need to prove ['((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 ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1))))))']
% 0.72/0.92 Parameter fofType:Type.
% 0.72/0.92 Definition is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop)).
% 0.72/0.92 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.72/0.92 Parameter eps:((fofType->Prop)->fofType).
% 0.72/0.92 Parameter in:(fofType->(fofType->Prop)).
% 0.72/0.92 Definition d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop)).
% 0.72/0.92 Axiom set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1)))).
% 0.72/0.92 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.72/0.92 Parameter emptyset:fofType.
% 0.72/0.92 Axiom k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False).
% 0.72/0.92 Parameter union:(fofType->fofType).
% 0.72/0.92 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.72/0.92 Parameter power:(fofType->fofType).
% 0.72/0.92 Axiom k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))).
% 0.72/0.92 Parameter repl:(fofType->((fofType->fofType)->fofType)).
% 0.72/0.92 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.72/0.92 Definition d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop).
% 0.72/0.92 Definition d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop).
% 0.72/0.92 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.72/0.92 Definition d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop).
% 0.72/0.92 Parameter univof:(fofType->fofType).
% 0.72/0.92 Axiom k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0))).
% 0.72/0.92 Axiom k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0))).
% 0.72/0.92 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.72/0.92 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.72/0.92 Axiom if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2))).
% 0.72/0.92 Axiom if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1))).
% 0.72/0.92 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.72/0.92 Definition nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop)).
% 0.72/0.92 Axiom k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))).
% 0.72/0.92 Axiom k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))).
% 0.72/0.92 Axiom k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0))).
% 0.72/0.92 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.72/0.92 Definition d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType).
% 0.72/0.92 Definition binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType)).
% 0.72/0.92 Definition famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType)).
% 0.72/0.92 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.72/0.92 Axiom k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1))))).
% 0.72/0.92 Axiom k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0))).
% 0.72/0.92 Axiom k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2))).
% 0.72/0.92 Definition d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType))).
% 0.72/0.92 Definition setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType)).
% 0.72/0.92 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.72/0.92 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.72/0.92 Definition ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType).
% 0.72/0.92 Axiom neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))).
% 0.72/0.92 Axiom ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))).
% 0.72/0.92 Axiom k_In_0_1:((in emptyset) (ordsucc emptyset)).
% 0.72/0.92 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.72/0.92 Axiom nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))).
% 0.72/0.92 Axiom nat_1:(nat_p (ordsucc emptyset)).
% 0.72/0.92 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.72/0.92 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.72/0.92 Definition omega:=((d_Sep (univof emptyset)) nat_p):fofType.
% 0.72/0.92 Axiom omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0))).
% 0.72/0.92 Axiom nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega))).
% 0.72/0.92 Definition d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType).
% 0.72/0.92 Definition d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType).
% 0.72/0.92 Definition d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType).
% 0.72/0.92 Definition pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType)).
% 0.72/0.92 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.72/0.92 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.72/0.92 Axiom proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)).
% 0.72/0.92 Axiom proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)).
% 0.72/0.92 Definition d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType)).
% 0.72/0.92 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.72/0.92 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.72/0.92 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.72/0.92 Axiom proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0))).
% 0.72/0.92 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.72/0.92 Definition setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType)).
% 0.72/0.92 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.72/0.92 Axiom beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2)))).
% 0.72/0.92 Definition pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop).
% 0.72/0.92 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.72/0.92 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.72/0.92 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.72/0.92 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.72/0.92 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.72/0.92 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.72/0.92 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.72/0.92 Definition imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop)).
% 0.72/0.92 Definition d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop).
% 0.72/0.92 Definition wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop).
% 0.72/0.92 Axiom l_et:(forall (X0:Prop), ((wel X0)->X0)).
% 0.72/0.92 Definition obvious:=((imp False) False):Prop.
% 0.72/0.92 Definition l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop)).
% 0.72/0.92 Definition d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.72/0.92 Definition l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop)).
% 0.72/0.92 Definition orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.72/0.92 Definition l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop)).
% 0.72/0.92 Definition all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop)).
% 0.72/0.92 Definition non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop))).
% 0.72/0.92 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.72/0.92 Definition or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.72/0.92 Definition and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.72/0.92 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.72/0.92 Definition orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.72/0.92 Definition e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop))).
% 0.72/0.92 Axiom refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1)))).
% 0.72/0.92 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.72/0.92 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.72/0.92 Definition one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop)).
% 0.72/0.92 Definition ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType)).
% 0.72/0.92 Axiom ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0))))).
% 0.72/0.92 Axiom oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))).
% 0.72/0.92 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.72/0.92 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.72/0.93 Definition tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.72/0.93 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.72/0.93 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.72/0.93 Definition surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.72/0.93 Definition bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.72/0.93 Definition invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 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.72/0.93 Definition e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 Definition d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.72/0.93 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.72/0.93 Definition first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 Definition second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 Definition ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType)))).
% 0.72/0.93 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.72/0.93 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.72/0.93 Definition wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 Definition r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop)).
% 0.72/0.93 Definition esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop))).
% 0.72/0.93 Axiom setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0))))).
% 0.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 Definition nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop)).
% 0.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 Definition ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 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.72/0.93 Definition ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType)).
% 0.72/0.93 Definition ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 Definition ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 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.72/0.93 Definition nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType.
% 0.72/0.93 Definition n_is:=(e_is nat):(fofType->(fofType->Prop)).
% 0.72/0.93 Definition nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop)).
% 0.72/0.93 Definition n_in:=(esti nat):(fofType->(fofType->Prop)).
% 0.72/0.93 Definition n_some:=(l_some nat):((fofType->Prop)->Prop).
% 0.72/0.93 Definition n_all:=(all nat):((fofType->Prop)->Prop).
% 0.72/0.93 Definition n_one:=(one nat):((fofType->Prop)->Prop).
% 0.72/0.93 Definition n_1:=(ordsucc emptyset):fofType.
% 0.72/0.93 Axiom n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))).
% 0.72/0.93 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.72/0.93 Axiom n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1))).
% 0.72/0.93 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.72/0.93 Definition cond1:=(n_in n_1):(fofType->Prop).
% 0.72/0.93 Definition cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop).
% 0.72/0.93 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.72/0.93 Definition i1_s:=(d_Sep nat):((fofType->Prop)->fofType).
% 297.84/298.12 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))))))).
% 297.84/298.12 Definition d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop).
% 297.84/298.12 Axiom satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))).
% 297.84/298.12 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).
% 297.84/298.12 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))))))).
% 297.84/298.12 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))))))).
% 297.84/298.12 Definition d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop).
% 297.84/298.12 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)).
% 297.84/298.12 Definition prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 297.84/298.12 Definition prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop).
% 297.84/298.12 Definition d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType).
% 297.84/298.12 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)))))))))).
% 297.84/298.12 Definition plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType).
% 297.84/298.12 Definition n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType)).
% 297.84/298.12 Axiom satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0)))).
% 297.84/298.12 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))))))).
% 297.84/298.12 Axiom satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0)))).
% 297.84/298.12 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))))))).
% 297.84/298.12 Axiom satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))).
% 297.84/298.12 Axiom satz4f:((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 ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1))))))).
% 297.84/298.12 Axiom satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0)))).
% 297.84/298.12 Trying to prove ((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 ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1))))))
% 297.84/298.12 --- 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=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))))
% 297.84/298.12 ---context
% 297.84/298.12 False:Prop
% 297.84/298.12 False_rect:(forall (P:Type), (False->P))
% 297.84/298.12 I:True
% 297.84/298.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))
% 297.84/298.12 True:Prop
% 297.84/298.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)
% 297.84/298.12 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 297.84/298.12 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 297.84/298.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))
% 297.84/298.12 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.84/298.12 and:(Prop->(Prop->Prop))
% 297.84/298.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)))
% 297.84/298.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)))
% 297.84/298.12 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 297.84/298.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))
% 297.84/298.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)))))
% 297.84/298.12 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 297.84/298.12 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.84/298.12 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 297.84/298.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)))))
% 297.84/298.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)))))))
% 297.84/298.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))))))))
% 297.84/298.12 classic:(forall (P:Prop), ((or P) (not P)))
% 297.84/298.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))))))))
% 297.84/298.12 cond1:=(n_in n_1):(fofType->Prop)
% 297.84/298.12 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 297.84/298.12 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 297.84/298.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)))))))
% 297.84/298.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)))))
% 297.84/298.12 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 297.84/298.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)
% 297.84/298.12 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 297.84/298.12 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 297.84/298.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))
% 297.84/298.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))
% 297.84/298.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)))
% 297.84/298.12 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 297.84/298.12 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 297.84/298.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))
% 297.84/298.12 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 297.84/298.12 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 297.84/298.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)
% 297.84/298.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))
% 297.84/298.12 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 297.84/298.12 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 297.84/298.12 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 297.84/298.12 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 297.84/298.12 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 297.84/298.12 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 297.84/298.12 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 297.84/298.12 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.84/298.12 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 297.84/298.12 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.84/298.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)))))))
% 297.84/298.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)))))))
% 297.84/298.12 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 297.84/298.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))))))
% 297.84/298.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)))))
% 297.84/298.12 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 297.84/298.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))))))))
% 297.84/298.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)))))))))
% 297.84/298.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)))
% 297.84/298.12 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.84/298.12 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.84/298.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))))
% 297.84/298.12 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 297.84/298.12 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.84/298.12 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.84/298.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))
% 297.84/298.12 emptyset:fofType
% 297.84/298.12 eps:((fofType->Prop)->fofType)
% 297.84/298.12 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 297.84/298.12 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 297.84/298.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))))
% 297.84/298.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))))
% 297.84/298.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)))
% 297.84/298.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))))
% 297.84/298.12 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 297.84/298.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)))))
% 297.84/298.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))))))
% 297.84/298.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))))
% 297.84/298.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))))
% 297.84/298.12 ex:(forall (A:Type), ((A->Prop)->Prop))
% 297.84/298.12 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 297.84/298.12 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 297.84/298.12 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 297.84/298.12 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 297.84/298.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))))))
% 297.84/298.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))))))
% 297.84/298.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))))
% 297.84/298.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))))
% 297.84/298.12 fofType:Type
% 297.84/298.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)))
% 297.84/298.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)))
% 297.84/298.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)))
% 297.84/298.12 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 297.84/298.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)))
% 297.84/298.12 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 297.84/298.12 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 297.84/298.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))))
% 297.84/298.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)))
% 297.84/298.12 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 297.84/298.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))
% 297.84/298.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)))
% 297.84/298.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))))
% 297.84/298.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))))
% 297.84/298.12 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 297.84/298.12 in:(fofType->(fofType->Prop))
% 297.84/298.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)))
% 297.84/298.12 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 297.84/298.12 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 297.84/298.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))))))
% 297.84/298.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)))))
% 297.84/298.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)))))
% 297.84/298.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)))
% 297.84/298.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)))
% 297.84/298.12 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.84/298.12 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 297.84/298.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))))))))
% 297.84/298.12 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 297.84/298.12 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 297.84/298.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)))))
% 297.84/298.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))))
% 297.84/298.12 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 297.84/298.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))))
% 297.84/298.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))))))
% 297.84/298.12 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 297.84/298.12 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 297.84/298.12 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 297.84/298.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)))))))
% 297.84/298.12 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 297.84/298.12 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 297.84/298.12 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 297.84/298.12 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 297.84/298.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))))))
% 297.84/298.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))))))
% 297.84/298.12 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 297.84/298.12 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 297.84/298.12 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 297.84/298.12 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 297.84/298.12 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 297.84/298.12 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 297.84/298.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))
% 297.84/298.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))))
% 297.84/298.12 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 297.84/298.12 n_1:=(ordsucc emptyset):fofType
% 297.84/298.12 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 297.84/298.12 n_all:=(all nat):((fofType->Prop)->Prop)
% 297.84/298.12 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 297.84/298.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))))))
% 297.84/298.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)))))))
% 297.84/298.12 n_in:=(esti nat):(fofType->(fofType->Prop))
% 297.84/298.12 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 297.84/298.12 n_one:=(one nat):((fofType->Prop)->Prop)
% 297.84/298.12 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 297.84/298.12 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 297.84/298.12 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 297.84/298.12 nat_1:(nat_p (ordsucc emptyset))
% 297.84/298.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))))))
% 297.84/298.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))))))))
% 297.84/298.12 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 297.84/298.12 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 297.84/298.12 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 297.84/298.12 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 297.84/298.12 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 297.84/298.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))))
% 297.84/298.12 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 297.84/298.12 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 297.84/298.12 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 297.84/298.12 obvious:=((imp False) False):Prop
% 297.84/298.12 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 297.84/298.12 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 297.84/298.12 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 297.84/298.12 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 297.84/298.12 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.84/298.12 or:(Prop->(Prop->Prop))
% 297.84/298.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)))
% 297.84/298.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)))
% 297.84/298.12 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 297.84/298.12 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 297.84/298.12 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 297.84/298.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)))
% 297.84/298.12 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 297.84/298.12 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 297.84/298.12 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.84/298.12 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.84/298.12 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 297.84/298.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)))))
% 297.84/298.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)))
% 297.84/298.12 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 297.84/298.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))))))
% 297.84/298.12 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 297.84/298.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))))
% 297.84/298.12 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 297.84/298.12 power:(fofType->fofType)
% 297.84/298.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)
% 297.84/298.12 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 297.84/298.12 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 297.84/298.12 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 297.84/298.12 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 297.84/298.12 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 297.84/298.12 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 297.84/298.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)))
% 297.84/298.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)))))
% 297.84/298.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))))))
% 297.84/298.12 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.84/298.12 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 297.84/298.12 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 297.84/298.12 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 297.84/298.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))))))))))
% 297.84/298.12 repl:(fofType->((fofType->fofType)->fofType))
% 297.84/298.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)))))))
% 297.84/298.12 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 297.84/298.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)))))))
% 297.84/298.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)))))))
% 297.84/298.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))))))))))
% 297.84/298.12 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 297.84/298.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)))))))
% 297.84/298.12 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 297.84/298.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)))))))
% 297.84/298.12 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 297.84/298.12 satz4f:((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 ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 297.93/298.13 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 297.93/298.13 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.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))))))
% 297.93/298.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))))))
% 297.93/298.13 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 297.93/298.13 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 297.93/298.13 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 297.93/298.13 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 297.93/298.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))))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.13 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 297.93/298.13 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.13 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.13 union:(fofType->fofType)
% 297.93/298.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)))
% 297.93/298.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)))))))
% 297.93/298.13 univof:(fofType->fofType)
% 297.93/298.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)))
% 297.93/298.13 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 297.93/298.13 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.13 ---termcontext
% 297.93/298.13 [[[False:Prop
% 297.93/298.13 False_rect:(forall (P:Type), (False->P))
% 297.93/298.13 I:True
% 297.93/298.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))
% 297.93/298.13 True:Prop
% 297.93/298.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)
% 297.93/298.13 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 297.93/298.13 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 297.93/298.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))
% 297.93/298.13 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.13 and:(Prop->(Prop->Prop))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.13 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 297.93/298.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))
% 297.93/298.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)))))
% 297.93/298.13 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 297.93/298.13 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.13 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 297.93/298.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)))))
% 297.93/298.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)))))))
% 297.93/298.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))))))))
% 297.93/298.13 classic:(forall (P:Prop), ((or P) (not P)))
% 297.93/298.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))))))))
% 297.93/298.13 cond1:=(n_in n_1):(fofType->Prop)
% 297.93/298.13 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 297.93/298.13 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 297.93/298.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)))))))
% 297.93/298.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)))))
% 297.93/298.13 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 297.93/298.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)
% 297.93/298.13 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 297.93/298.13 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 297.93/298.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))
% 297.93/298.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))
% 297.93/298.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)))
% 297.93/298.13 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 297.93/298.13 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 297.93/298.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))
% 297.93/298.13 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 297.93/298.13 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 297.93/298.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)
% 297.93/298.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))
% 297.93/298.13 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 297.93/298.13 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 297.93/298.13 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 297.93/298.13 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 297.93/298.13 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 297.93/298.13 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 297.93/298.13 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 297.93/298.13 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.93/298.13 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 297.93/298.13 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.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)))))))
% 297.93/298.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)))))))
% 297.93/298.13 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 297.93/298.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))))))
% 297.93/298.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)))))
% 297.93/298.13 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.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))))))))
% 297.93/298.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)))))))))
% 297.93/298.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)))
% 297.93/298.13 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.13 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.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))))
% 297.93/298.13 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 297.93/298.13 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.13 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.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))
% 297.93/298.13 emptyset:fofType
% 297.93/298.13 eps:((fofType->Prop)->fofType)
% 297.93/298.13 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 297.93/298.13 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.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)))
% 297.93/298.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))))
% 297.93/298.13 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.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)))))
% 297.93/298.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))))))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.13 ex:(forall (A:Type), ((A->Prop)->Prop))
% 297.93/298.13 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 297.93/298.13 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 297.93/298.13 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 297.93/298.13 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.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))))))
% 297.93/298.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))))))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.13 fofType:Type
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.13 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 297.93/298.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)))
% 297.93/298.13 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 297.93/298.13 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 297.93/298.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))))
% 297.93/298.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)))
% 297.93/298.13 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 297.93/298.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))
% 297.93/298.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)))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.13 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 297.93/298.13 in:(fofType->(fofType->Prop))
% 297.93/298.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)))
% 297.93/298.13 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 297.93/298.13 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 297.93/298.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))))))
% 297.93/298.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)))))
% 297.93/298.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)))))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.13 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.13 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 297.93/298.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))))))))
% 297.93/298.13 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.13 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 297.93/298.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)))))
% 297.93/298.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))))
% 297.93/298.13 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 297.93/298.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))))
% 297.93/298.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))))))
% 297.93/298.13 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 297.93/298.13 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 297.93/298.13 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 297.93/298.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)))))))
% 297.93/298.13 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 297.93/298.13 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 297.93/298.13 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 297.93/298.13 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 297.93/298.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))))))
% 297.93/298.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))))))
% 297.93/298.13 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 297.93/298.13 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 297.93/298.13 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 297.93/298.13 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 297.93/298.13 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 297.93/298.13 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 297.93/298.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))
% 297.93/298.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))))
% 297.93/298.13 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 297.93/298.13 n_1:=(ordsucc emptyset):fofType
% 297.93/298.13 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 297.93/298.13 n_all:=(all nat):((fofType->Prop)->Prop)
% 297.93/298.13 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 297.93/298.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))))))
% 297.93/298.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)))))))
% 297.93/298.13 n_in:=(esti nat):(fofType->(fofType->Prop))
% 297.93/298.13 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 297.93/298.13 n_one:=(one nat):((fofType->Prop)->Prop)
% 297.93/298.13 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 297.93/298.13 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 297.93/298.13 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 297.93/298.13 nat_1:(nat_p (ordsucc emptyset))
% 297.93/298.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))))))
% 297.93/298.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))))))))
% 297.93/298.13 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 297.93/298.13 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 297.93/298.13 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 297.93/298.13 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 297.93/298.13 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 297.93/298.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))))
% 297.93/298.13 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 297.93/298.13 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 297.93/298.13 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 297.93/298.13 obvious:=((imp False) False):Prop
% 297.93/298.13 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 297.93/298.13 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 297.93/298.13 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 297.93/298.13 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 297.93/298.13 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.13 or:(Prop->(Prop->Prop))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.13 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 297.93/298.13 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 297.93/298.13 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 297.93/298.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)))
% 297.93/298.13 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 297.93/298.13 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 297.93/298.13 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.13 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.93/298.13 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 297.93/298.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)))))
% 297.93/298.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)))
% 297.93/298.13 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 297.93/298.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))))))
% 297.93/298.13 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 297.93/298.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))))
% 297.93/298.13 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 297.93/298.13 power:(fofType->fofType)
% 297.93/298.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)
% 297.93/298.13 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 297.93/298.13 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 297.93/298.13 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 297.93/298.13 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 297.93/298.13 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 297.93/298.13 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 297.93/298.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)))
% 297.93/298.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)))))
% 297.93/298.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))))))
% 297.93/298.13 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.13 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 297.93/298.13 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 297.93/298.13 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 297.93/298.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))))))))))
% 297.93/298.13 repl:(fofType->((fofType->fofType)->fofType))
% 297.93/298.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)))))))
% 297.93/298.13 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 297.93/298.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)))))))
% 297.93/298.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)))))))
% 297.93/298.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))))))))))
% 297.93/298.13 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 297.93/298.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)))))))
% 297.93/298.13 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 297.93/298.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)))))))
% 297.93/298.13 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 297.93/298.13 satz4f:((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 ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 297.93/298.15 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 297.93/298.15 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.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))))))
% 297.93/298.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))))))
% 297.93/298.15 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 297.93/298.15 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 297.93/298.15 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 297.93/298.15 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 297.93/298.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))))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.15 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 297.93/298.15 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.15 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.15 union:(fofType->fofType)
% 297.93/298.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)))
% 297.93/298.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)))))))
% 297.93/298.15 univof:(fofType->fofType)
% 297.93/298.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)))
% 297.93/298.15 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 297.93/298.15 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.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
% 297.93/298.15 X1:(fofType->Prop)
% 297.93/298.15 X2:fofType]x:((is_of X2) (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1))))]x0:fofType
% 297.93/298.15 ---subcontext
% 297.93/298.15 [False:Prop
% 297.93/298.15 False_rect:(forall (P:Type), (False->P))
% 297.93/298.15 I:True
% 297.93/298.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))
% 297.93/298.15 True:Prop
% 297.93/298.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)
% 297.93/298.15 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 297.93/298.15 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 297.93/298.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))
% 297.93/298.15 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.15 and:(Prop->(Prop->Prop))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.15 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 297.93/298.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))
% 297.93/298.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)))))
% 297.93/298.15 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 297.93/298.15 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.15 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 297.93/298.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)))))
% 297.93/298.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)))))))
% 297.93/298.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))))))))
% 297.93/298.15 classic:(forall (P:Prop), ((or P) (not P)))
% 297.93/298.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))))))))
% 297.93/298.15 cond1:=(n_in n_1):(fofType->Prop)
% 297.93/298.15 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 297.93/298.15 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 297.93/298.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)))))))
% 297.93/298.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)))))
% 297.93/298.15 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 297.93/298.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)
% 297.93/298.15 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 297.93/298.15 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 297.93/298.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))
% 297.93/298.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))
% 297.93/298.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)))
% 297.93/298.15 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 297.93/298.15 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 297.93/298.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))
% 297.93/298.15 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 297.93/298.15 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 297.93/298.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)
% 297.93/298.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))
% 297.93/298.15 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 297.93/298.15 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 297.93/298.15 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 297.93/298.15 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 297.93/298.15 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 297.93/298.15 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 297.93/298.15 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 297.93/298.15 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.93/298.15 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 297.93/298.15 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.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)))))))
% 297.93/298.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)))))))
% 297.93/298.15 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 297.93/298.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))))))
% 297.93/298.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)))))
% 297.93/298.15 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.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))))))))
% 297.93/298.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)))))))))
% 297.93/298.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)))
% 297.93/298.15 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.15 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.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))))
% 297.93/298.15 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 297.93/298.15 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.15 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.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))
% 297.93/298.15 emptyset:fofType
% 297.93/298.15 eps:((fofType->Prop)->fofType)
% 297.93/298.15 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 297.93/298.15 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.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)))
% 297.93/298.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))))
% 297.93/298.15 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.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)))))
% 297.93/298.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))))))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.15 ex:(forall (A:Type), ((A->Prop)->Prop))
% 297.93/298.15 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 297.93/298.15 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 297.93/298.15 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 297.93/298.15 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.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))))))
% 297.93/298.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))))))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.15 fofType:Type
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.15 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 297.93/298.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)))
% 297.93/298.15 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 297.93/298.15 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 297.93/298.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))))
% 297.93/298.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)))
% 297.93/298.15 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 297.93/298.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))
% 297.93/298.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)))
% 297.93/298.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))))
% 297.93/298.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))))
% 297.93/298.15 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 297.93/298.15 in:(fofType->(fofType->Prop))
% 297.93/298.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)))
% 297.93/298.15 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 297.93/298.15 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 297.93/298.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))))))
% 297.93/298.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)))))
% 297.93/298.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)))))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.15 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.15 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 297.93/298.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))))))))
% 297.93/298.15 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.15 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 297.93/298.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)))))
% 297.93/298.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))))
% 297.93/298.15 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 297.93/298.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))))
% 297.93/298.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))))))
% 297.93/298.15 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 297.93/298.15 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 297.93/298.15 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 297.93/298.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)))))))
% 297.93/298.15 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 297.93/298.15 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 297.93/298.15 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 297.93/298.15 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 297.93/298.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))))))
% 297.93/298.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))))))
% 297.93/298.15 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 297.93/298.15 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 297.93/298.15 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 297.93/298.15 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 297.93/298.15 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 297.93/298.15 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 297.93/298.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))
% 297.93/298.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))))
% 297.93/298.15 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 297.93/298.15 n_1:=(ordsucc emptyset):fofType
% 297.93/298.15 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 297.93/298.15 n_all:=(all nat):((fofType->Prop)->Prop)
% 297.93/298.15 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 297.93/298.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))))))
% 297.93/298.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)))))))
% 297.93/298.15 n_in:=(esti nat):(fofType->(fofType->Prop))
% 297.93/298.15 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 297.93/298.15 n_one:=(one nat):((fofType->Prop)->Prop)
% 297.93/298.15 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 297.93/298.15 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 297.93/298.15 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 297.93/298.15 nat_1:(nat_p (ordsucc emptyset))
% 297.93/298.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))))))
% 297.93/298.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))))))))
% 297.93/298.15 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 297.93/298.15 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 297.93/298.15 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 297.93/298.15 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 297.93/298.15 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 297.93/298.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))))
% 297.93/298.15 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 297.93/298.15 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 297.93/298.15 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 297.93/298.15 obvious:=((imp False) False):Prop
% 297.93/298.15 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 297.93/298.15 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 297.93/298.15 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 297.93/298.15 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 297.93/298.15 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.15 or:(Prop->(Prop->Prop))
% 297.93/298.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)))
% 297.93/298.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)))
% 297.93/298.15 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 297.93/298.15 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 297.93/298.15 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 297.93/298.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)))
% 297.93/298.15 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 297.93/298.15 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 297.93/298.15 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.15 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.93/298.15 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 297.93/298.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)))))
% 297.93/298.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)))
% 297.93/298.15 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 297.93/298.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))))))
% 297.93/298.15 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 297.93/298.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))))
% 297.93/298.15 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 297.93/298.15 power:(fofType->fofType)
% 297.93/298.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)
% 297.93/298.15 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 297.93/298.15 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 297.93/298.15 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 297.93/298.15 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 297.93/298.15 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 297.93/298.15 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 297.93/298.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)))
% 297.93/298.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)))))
% 297.93/298.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))))))
% 297.93/298.15 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.15 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 297.93/298.15 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 297.93/298.15 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 297.93/298.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))))))))))
% 297.93/298.15 repl:(fofType->((fofType->fofType)->fofType))
% 297.93/298.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)))))))
% 297.93/298.15 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 297.93/298.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)))))))
% 297.93/298.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)))))))
% 297.93/298.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))))))))))
% 297.93/298.15 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 297.93/298.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)))))))
% 297.93/298.15 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 297.93/298.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)))))))
% 297.93/298.15 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 297.93/298.15 satz4f:((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 ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 297.93/298.17 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 297.93/298.17 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.17 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))))))
% 297.93/298.17 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))))))
% 297.93/298.17 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 297.93/298.17 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 297.93/298.17 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 297.93/298.17 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 297.93/298.17 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))))
% 297.93/298.17 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)))
% 297.93/298.17 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)))
% 297.93/298.17 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 297.93/298.17 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.17 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.17 union:(fofType->fofType)
% 297.93/298.17 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)))
% 297.93/298.17 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)))))))
% 297.93/298.17 univof:(fofType->fofType)
% 297.93/298.17 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)))
% 297.93/298.17 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 297.93/298.17 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.17 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))))
% 297.93/298.17 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))))
% 297.93/298.17 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))))]
% 297.93/298.17 ---termsubcontext
% 297.93/298.17 [[[[False:Prop
% 297.93/298.17 False_rect:(forall (P:Type), (False->P))
% 297.93/298.17 I:True
% 297.93/298.17 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))
% 297.93/298.17 True:Prop
% 297.93/298.17 _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)
% 297.93/298.17 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 297.93/298.17 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 297.93/298.17 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))
% 297.93/298.17 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.17 and:(Prop->(Prop->Prop))
% 297.93/298.17 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)))
% 297.93/298.17 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)))
% 297.93/298.17 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 297.93/298.17 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))
% 297.93/298.17 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)))))
% 297.93/298.17 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 297.93/298.17 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.17 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 297.93/298.17 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)))))
% 297.93/298.17 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)))))))
% 297.93/298.17 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))))))))
% 297.93/298.17 classic:(forall (P:Prop), ((or P) (not P)))
% 297.93/298.17 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))))))))
% 297.93/298.17 cond1:=(n_in n_1):(fofType->Prop)
% 297.93/298.17 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 297.93/298.17 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 297.93/298.17 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)))))))
% 297.93/298.17 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)))))
% 297.93/298.17 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 297.93/298.17 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)
% 297.93/298.17 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 297.93/298.17 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 297.93/298.17 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))
% 297.93/298.17 d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 297.93/298.17 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)))
% 297.93/298.17 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 297.93/298.17 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 297.93/298.17 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))
% 297.93/298.17 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 297.93/298.17 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 297.93/298.17 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)
% 297.93/298.17 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))
% 297.93/298.17 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 297.93/298.17 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 297.93/298.17 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 297.93/298.17 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 297.93/298.17 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 297.93/298.17 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 297.93/298.17 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 297.93/298.17 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.93/298.17 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 297.93/298.17 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.17 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)))))))
% 297.93/298.17 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)))))))
% 297.93/298.17 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 297.93/298.17 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))))))
% 297.93/298.17 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)))))
% 297.93/298.17 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.17 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))))))))
% 297.93/298.17 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)))))))))
% 297.93/298.17 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)))
% 297.93/298.17 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.17 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.17 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))))
% 297.93/298.17 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 297.93/298.17 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.17 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 297.93/298.17 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))
% 297.93/298.17 emptyset:fofType
% 297.93/298.17 eps:((fofType->Prop)->fofType)
% 297.93/298.17 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 297.93/298.17 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 297.93/298.17 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))))
% 297.93/298.17 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))))
% 297.93/298.17 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)))
% 297.93/298.17 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))))
% 297.93/298.17 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.17 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)))))
% 297.93/298.17 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))))))
% 297.93/298.17 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))))
% 297.93/298.17 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))))
% 297.93/298.17 ex:(forall (A:Type), ((A->Prop)->Prop))
% 297.93/298.17 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 297.93/298.17 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 297.93/298.17 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 297.93/298.17 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.17 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))))))
% 297.93/298.17 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))))))
% 297.93/298.17 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))))
% 297.93/298.17 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))))
% 297.93/298.17 fofType:Type
% 297.93/298.17 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)))
% 297.93/298.17 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)))
% 297.93/298.17 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)))
% 297.93/298.17 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 297.93/298.17 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)))
% 297.93/298.17 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 297.93/298.17 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 297.93/298.17 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))))
% 297.93/298.17 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)))
% 297.93/298.17 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 297.93/298.17 iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 297.93/298.17 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)))
% 297.93/298.17 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))))
% 297.93/298.17 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))))
% 297.93/298.17 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 297.93/298.17 in:(fofType->(fofType->Prop))
% 297.93/298.17 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)))
% 297.93/298.17 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 297.93/298.17 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 297.93/298.17 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))))))
% 297.93/298.17 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)))))
% 297.93/298.17 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)))))
% 297.93/298.17 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)))
% 297.93/298.17 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)))
% 297.93/298.17 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.17 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 297.93/298.17 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))))))))
% 297.93/298.17 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.17 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 297.93/298.17 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)))))
% 297.93/298.17 k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 297.93/298.17 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 297.93/298.17 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))))
% 297.93/298.17 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))))))
% 297.93/298.17 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 297.93/298.17 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 297.93/298.17 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 297.93/298.17 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)))))))
% 297.93/298.17 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 297.93/298.17 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 297.93/298.17 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 297.93/298.17 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 297.93/298.17 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))))))
% 297.93/298.17 k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 297.93/298.17 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 297.93/298.17 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 297.93/298.17 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 297.93/298.17 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 297.93/298.17 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 297.93/298.17 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 297.93/298.17 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))
% 297.93/298.17 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))))
% 297.93/298.17 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 297.93/298.17 n_1:=(ordsucc emptyset):fofType
% 297.93/298.17 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 297.93/298.17 n_all:=(all nat):((fofType->Prop)->Prop)
% 297.93/298.17 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 297.93/298.17 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))))))
% 297.93/298.17 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)))))))
% 297.93/298.17 n_in:=(esti nat):(fofType->(fofType->Prop))
% 297.93/298.17 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 297.93/298.17 n_one:=(one nat):((fofType->Prop)->Prop)
% 297.93/298.17 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 297.93/298.17 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 297.93/298.17 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 297.93/298.17 nat_1:(nat_p (ordsucc emptyset))
% 297.93/298.17 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))))))
% 297.93/298.17 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))))))))
% 297.93/298.17 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 297.93/298.17 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 297.93/298.17 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 297.93/298.17 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 297.93/298.17 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 297.93/298.17 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))))
% 297.93/298.17 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 297.93/298.17 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 297.93/298.17 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 297.93/298.17 obvious:=((imp False) False):Prop
% 297.93/298.17 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 297.93/298.17 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 297.93/298.17 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 297.93/298.17 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 297.93/298.17 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.17 or:(Prop->(Prop->Prop))
% 297.93/298.17 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)))
% 297.93/298.17 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)))
% 297.93/298.17 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 297.93/298.17 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 297.93/298.17 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 297.93/298.17 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)))
% 297.93/298.17 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 297.93/298.17 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 297.93/298.17 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 297.93/298.17 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 297.93/298.17 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 297.93/298.17 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)))))
% 297.93/298.17 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)))
% 297.93/298.17 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 297.93/298.17 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))))))
% 297.93/298.17 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 297.93/298.17 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))))
% 297.93/298.17 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 297.93/298.17 power:(fofType->fofType)
% 297.93/298.17 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)
% 297.93/298.17 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 297.93/298.17 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 297.93/298.17 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 297.93/298.17 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 297.93/298.17 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 297.93/298.17 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 297.93/298.17 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)))
% 297.93/298.17 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)))))
% 297.93/298.17 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))))))
% 297.93/298.17 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.17 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 297.93/298.17 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 297.93/298.17 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 297.93/298.17 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))))))))))
% 297.93/298.17 repl:(fofType->((fofType->fofType)->fofType))
% 297.93/298.17 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)))))))
% 297.93/298.17 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 297.93/298.17 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)))))))
% 297.93/298.17 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)))))))
% 297.93/298.17 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))))))))))
% 297.93/298.17 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 297.93/298.17 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)))))))
% 297.93/298.17 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 297.93/298.17 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)))))))
% 297.93/298.17 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 297.93/298.17 satz4f:((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 ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 297.93/298.17 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 297.93/298.17 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.17 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))))))
% 297.93/298.17 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))))))
% 297.93/298.17 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 297.93/298.17 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 297.93/298.17 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 297.93/298.17 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 297.93/298.17 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))))
% 297.93/298.17 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)))
% 297.93/298.17 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)))
% 297.93/298.17 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 297.93/298.17 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 297.93/298.17 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 297.93/298.17 union:(fofType->fofType)
% 297.93/298.17 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)))
% 297.93/298.17 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)))))))
% 297.93/298.17 univof:(fofType->fofType)
% 297.93/298.17 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)))
% 297.93/298.17 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 297.93/298.17 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 297.93/298.17 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))))
% 297.93/298.17 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))))
% 297.93/298.17 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
% 297.93/298.17 X1:(fofType->Prop)
% 297.93/298.17 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)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))):Prop
% 297.93/298.17 ---
% 297.93/298.17 self=((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 ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))):Prop
% 297.93/298.17 term=(((e_in X0) X1) X2):fofType
% 297.93/298.17 --- 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=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))))
% 297.93/298.17 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=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))))
% 297.93/298.17
% 297.93/298.17 Traceback (most recent call last):
% 297.93/298.17 File "CASC.py", line 80, in <module>
% 297.93/298.17 proof=problem.solve()
% 297.93/298.17 File "/export/starexec/sandbox/solver/bin/TPTP.py", line 95, in solve
% 297.93/298.17 for x in self.solveyielding():
% 297.93/298.17 File "/export/starexec/sandbox/solver/bin/TPTP.py", line 83, in solveyielding
% 297.93/298.17 for proof in proofgen: yield proof
% 297.93/298.17 File "/export/starexec/sandbox/solver/bin/prover.py", line 422, in proveyielding
% 297.93/298.17 results=node.look() #Can add nodes
% 297.93/298.17 File "/export/starexec/sandbox/solver/bin/prover.py", line 1221, in look
% 297.93/298.17 matching=target.match(term.body,self.context,termbodycontext,instantiate=True)
% 297.93/298.17 File "/export/starexec/sandbox/solver/bin/kernel.py", line 576, in match
% 297.93/298.17 atermmatch=s.abstracttermmatch(params,context,termcontext,instantiate=instantiate)
% 297.93/298.17 File "/export/starexec/sandbox/solver/bin/kernel.py", line 1192, in abstracttermmatch
% 297.93/298.17 print "t=%s:%s" % (t,t.gettype(termsubcontext))
% 297.93/298.17 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=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))))
% 297.93/298.17
%------------------------------------------------------------------------------