↑ Up

cocATP---0.2.0.UNK-Non.f

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : NUM635^4 : TPTP v7.1.0. Released v7.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : python CASC.py /export/starexec/sandbox2/benchmark/theBenchmark.p

% Computer : n163.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:13 EST 2018

% Result   : Unknown 1.17s
% 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  : NUM635^4 : TPTP v7.1.0. Released v7.1.0.
% 0.00/0.03  % Command  : python CASC.py /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.03/0.23  % Computer : n163.star.cs.uiowa.edu
% 0.03/0.23  % Model    : x86_64 x86_64
% 0.03/0.23  % CPU      : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% 0.03/0.23  % Memory   : 32218.625MB
% 0.03/0.23  % OS       : Linux 3.10.0-693.2.2.el7.x86_64
% 0.03/0.23  % CPULimit : 300
% 0.03/0.23  % DateTime : Fri Jan  5 11:14:45 CST 2018
% 0.03/0.23  % CPUTime  : 
% 0.07/0.26  Python 2.7.13
% 0.28/0.71  Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox2/benchmark/', '/export/starexec/sandbox2/benchmark/']
% 0.28/0.71  Failed to open /home/cristobal/cocATP/CASC/TPTP/Axioms/NUM007^0.ax, trying next directory
% 0.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe6b00>, <kernel.DependentProduct object at 0x2aaff5fe6320>) of role type named typ_is_of
% 0.28/0.71  Using role type
% 0.28/0.71  Declaring is_of:(fofType->((fofType->Prop)->Prop))
% 0.28/0.71  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.28/0.71  A new definition: (((eq (fofType->((fofType->Prop)->Prop))) is_of) (fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)))
% 0.28/0.71  Defined: is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0))
% 0.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe6b00>, <kernel.DependentProduct object at 0x2aaff5fe6098>) of role type named typ_all_of
% 0.28/0.71  Using role type
% 0.28/0.71  Declaring all_of:((fofType->Prop)->((fofType->Prop)->Prop))
% 0.28/0.71  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.28/0.71  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.28/0.71  Defined: all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2))))
% 0.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe6098>, <kernel.DependentProduct object at 0x2aaff5fe6368>) of role type named typ_eps
% 0.28/0.71  Using role type
% 0.28/0.71  Declaring eps:((fofType->Prop)->fofType)
% 0.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe6710>, <kernel.DependentProduct object at 0x2aaff5fe6d88>) of role type named typ_in
% 0.28/0.71  Using role type
% 0.28/0.71  Declaring in:(fofType->(fofType->Prop))
% 0.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe6b90>, <kernel.DependentProduct object at 0x2aaff5fe6098>) of role type named typ_d_Subq
% 0.28/0.71  Using role type
% 0.28/0.71  Declaring d_Subq:(fofType->(fofType->Prop))
% 0.28/0.71  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.28/0.71  A new definition: (((eq (fofType->(fofType->Prop))) d_Subq) (fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))))
% 0.28/0.71  Defined: d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1))))
% 0.28/0.71  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.28/0.71  A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 0.28/0.71  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.28/0.71  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.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe65f0>, <kernel.Single object at 0x2aaff5fe6bd8>) of role type named typ_emptyset
% 0.28/0.71  Using role type
% 0.28/0.71  Declaring emptyset:fofType
% 0.28/0.71  FOF formula (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False) of role axiom named k_EmptyAx
% 0.28/0.71  A new axiom: (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 0.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe6128>, <kernel.DependentProduct object at 0x2aaff5fe6098>) of role type named typ_union
% 0.28/0.71  Using role type
% 0.28/0.71  Declaring union:(fofType->fofType)
% 0.28/0.71  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.28/0.71  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.28/0.71  FOF formula (<kernel.Constant object at 0x2aaff5fe6dd0>, <kernel.DependentProduct object at 0x2aaff5fe66c8>) of role type named typ_power
% 0.28/0.71  Using role type
% 0.28/0.72  Declaring power:(fofType->fofType)
% 0.28/0.72  FOF formula (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))) of role axiom named k_PowerEq
% 0.28/0.72  A new axiom: (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 0.28/0.72  FOF formula (<kernel.Constant object at 0x2aaff5fe67a0>, <kernel.DependentProduct object at 0x2aaff5fe6830>) of role type named typ_repl
% 0.28/0.72  Using role type
% 0.28/0.72  Declaring repl:(fofType->((fofType->fofType)->fofType))
% 0.28/0.72  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.28/0.72  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.28/0.72  FOF formula (<kernel.Constant object at 0x2aaff5fe6098>, <kernel.DependentProduct object at 0x2aaff5fe6128>) of role type named typ_d_Union_closed
% 0.28/0.72  Using role type
% 0.28/0.72  Declaring d_Union_closed:(fofType->Prop)
% 0.28/0.72  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.28/0.72  A new definition: (((eq (fofType->Prop)) d_Union_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))))
% 0.28/0.72  Defined: d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0))))
% 0.28/0.72  FOF formula (<kernel.Constant object at 0x2aaff5fe6128>, <kernel.DependentProduct object at 0x2aaff5fe69e0>) of role type named typ_d_Power_closed
% 0.28/0.72  Using role type
% 0.28/0.72  Declaring d_Power_closed:(fofType->Prop)
% 0.28/0.72  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.28/0.72  A new definition: (((eq (fofType->Prop)) d_Power_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))))
% 0.28/0.72  Defined: d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0))))
% 0.28/0.72  FOF formula (<kernel.Constant object at 0x2aaff5fe6098>, <kernel.DependentProduct object at 0x2aaff5fe6878>) of role type named typ_d_Repl_closed
% 0.28/0.72  Using role type
% 0.28/0.72  Declaring d_Repl_closed:(fofType->Prop)
% 0.28/0.72  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.28/0.72  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.28/0.72  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.28/0.72  FOF formula (<kernel.Constant object at 0x2aaff5fe6128>, <kernel.DependentProduct object at 0x2aaff5bf4e18>) of role type named typ_d_ZF_closed
% 0.28/0.72  Using role type
% 0.28/0.72  Declaring d_ZF_closed:(fofType->Prop)
% 0.28/0.72  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.28/0.72  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.28/0.72  Defined: d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0)))
% 0.28/0.72  FOF formula (<kernel.Constant object at 0x2aaff5bf4ef0>, <kernel.DependentProduct object at 0x2aaff5c17b00>) of role type named typ_univof
% 0.28/0.72  Using role type
% 0.28/0.72  Declaring univof:(fofType->fofType)
% 0.28/0.72  FOF formula (forall (X0:fofType), ((in X0) (univof X0))) of role axiom named k_UnivOf_In
% 0.28/0.72  A new axiom: (forall (X0:fofType), ((in X0) (univof X0)))
% 0.28/0.72  FOF formula (forall (X0:fofType), (d_ZF_closed (univof X0))) of role axiom named k_UnivOf_ZF_closed
% 0.28/0.74  A new axiom: (forall (X0:fofType), (d_ZF_closed (univof X0)))
% 0.28/0.74  FOF formula (<kernel.Constant object at 0x2aaff5fe6128>, <kernel.DependentProduct object at 0x2aaff5fe66c8>) of role type named typ_if
% 0.28/0.74  Using role type
% 0.28/0.74  Declaring if:(Prop->(fofType->(fofType->fofType)))
% 0.28/0.74  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.28/0.74  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.28/0.74  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.28/0.74  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.28/0.74  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.28/0.74  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.28/0.74  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 0.28/0.74  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.28/0.74  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 0.28/0.74  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.28/0.74  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.28/0.74  FOF formula (<kernel.Constant object at 0x2aaff5fe6710>, <kernel.DependentProduct object at 0x2aaff5c17b00>) of role type named typ_nIn
% 0.28/0.74  Using role type
% 0.28/0.74  Declaring nIn:(fofType->(fofType->Prop))
% 0.28/0.74  FOF formula (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))) of role definition named def_nIn
% 0.28/0.74  A new definition: (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)))
% 0.28/0.74  Defined: nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))
% 0.28/0.74  FOF formula (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))) of role axiom named k_PowerE
% 0.28/0.74  A new axiom: (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 0.28/0.74  FOF formula (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))) of role axiom named k_PowerI
% 0.28/0.74  A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 0.28/0.74  FOF formula (forall (X0:fofType), ((in X0) (power X0))) of role axiom named k_Self_In_Power
% 0.28/0.74  A new axiom: (forall (X0:fofType), ((in X0) (power X0)))
% 0.28/0.74  FOF formula (<kernel.Constant object at 0x2aaff5c17bd8>, <kernel.DependentProduct object at 0x2aaff5c17e60>) of role type named typ_d_UPair
% 0.28/0.74  Using role type
% 0.28/0.74  Declaring d_UPair:(fofType->(fofType->fofType))
% 0.28/0.74  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.28/0.74  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.28/0.74  Defined: d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1))))
% 0.28/0.74  FOF formula (<kernel.Constant object at 0x2aaff5c17e60>, <kernel.DependentProduct object at 0x2aaff5c17950>) of role type named typ_d_Sing
% 0.28/0.74  Using role type
% 0.36/0.76  Declaring d_Sing:(fofType->fofType)
% 0.36/0.76  FOF formula (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0))) of role definition named def_d_Sing
% 0.36/0.76  A new definition: (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0)))
% 0.36/0.76  Defined: d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0))
% 0.36/0.76  FOF formula (<kernel.Constant object at 0x2aaff5c17950>, <kernel.DependentProduct object at 0x2aaff5c17b90>) of role type named typ_binunion
% 0.36/0.76  Using role type
% 0.36/0.76  Declaring binunion:(fofType->(fofType->fofType))
% 0.36/0.76  FOF formula (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))) of role definition named def_binunion
% 0.36/0.76  A new definition: (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))))
% 0.36/0.76  Defined: binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))
% 0.36/0.76  FOF formula (<kernel.Constant object at 0x2aaff5c17b90>, <kernel.DependentProduct object at 0x2aaff5c171b8>) of role type named typ_famunion
% 0.36/0.76  Using role type
% 0.36/0.76  Declaring famunion:(fofType->((fofType->fofType)->fofType))
% 0.36/0.76  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.36/0.76  A new definition: (((eq (fofType->((fofType->fofType)->fofType))) famunion) (fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))))
% 0.36/0.76  Defined: famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1)))
% 0.36/0.76  FOF formula (<kernel.Constant object at 0x2aaff5c171b8>, <kernel.DependentProduct object at 0x2aaff5c17d88>) of role type named typ_d_Sep
% 0.36/0.76  Using role type
% 0.36/0.76  Declaring d_Sep:(fofType->((fofType->Prop)->fofType))
% 0.36/0.76  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.36/0.76  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.36/0.76  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.36/0.76  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.36/0.76  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 0.36/0.76  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.36/0.76  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 0.36/0.76  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.36/0.76  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 0.36/0.76  FOF formula (<kernel.Constant object at 0x2aaff5c17b90>, <kernel.DependentProduct object at 0x2aaff5c179e0>) of role type named typ_d_ReplSep
% 0.36/0.76  Using role type
% 0.36/0.76  Declaring d_ReplSep:(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 0.36/0.76  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.36/0.76  A new definition: (((eq (fofType->((fofType->Prop)->((fofType->fofType)->fofType)))) d_ReplSep) (fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))))
% 0.36/0.76  Defined: d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1)))
% 0.36/0.76  FOF formula (<kernel.Constant object at 0x2aaff5c17b00>, <kernel.DependentProduct object at 0x2aaff5d35950>) of role type named typ_setminus
% 0.36/0.77  Using role type
% 0.36/0.77  Declaring setminus:(fofType->(fofType->fofType))
% 0.36/0.77  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.36/0.77  A new definition: (((eq (fofType->(fofType->fofType))) setminus) (fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))))
% 0.36/0.77  Defined: setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1))))
% 0.36/0.77  FOF formula (<kernel.Constant object at 0x2aaff5c17b00>, <kernel.DependentProduct object at 0x2aaff5d350e0>) of role type named typ_d_In_rec_G
% 0.36/0.77  Using role type
% 0.36/0.77  Declaring d_In_rec_G:((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 0.36/0.77  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.36/0.77  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.36/0.77  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.36/0.77  FOF formula (<kernel.Constant object at 0x2aaff5c17b00>, <kernel.DependentProduct object at 0x2aaff5d35680>) of role type named typ_d_In_rec
% 0.36/0.77  Using role type
% 0.36/0.77  Declaring d_In_rec:((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 0.36/0.77  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.36/0.77  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.36/0.77  Defined: d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1)))
% 0.36/0.77  FOF formula (<kernel.Constant object at 0x2aaff5d35680>, <kernel.DependentProduct object at 0x2aaff5d35320>) of role type named typ_ordsucc
% 0.36/0.77  Using role type
% 0.36/0.77  Declaring ordsucc:(fofType->fofType)
% 0.36/0.77  FOF formula (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))) of role definition named def_ordsucc
% 0.36/0.77  A new definition: (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0))))
% 0.36/0.77  Defined: ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))
% 0.36/0.77  FOF formula (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))) of role axiom named neq_ordsucc_0
% 0.36/0.77  A new axiom: (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 0.36/0.77  FOF formula (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))) of role axiom named ordsucc_inj
% 0.36/0.77  A new axiom: (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 0.36/0.77  FOF formula ((in emptyset) (ordsucc emptyset)) of role axiom named k_In_0_1
% 0.36/0.77  A new axiom: ((in emptyset) (ordsucc emptyset))
% 0.36/0.77  FOF formula (<kernel.Constant object at 0x2aaff5d352d8>, <kernel.DependentProduct object at 0x2aaff5d35950>) of role type named typ_nat_p
% 0.36/0.77  Using role type
% 0.36/0.77  Declaring nat_p:(fofType->Prop)
% 0.36/0.77  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.40/0.79  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.40/0.79  Defined: nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0)))))
% 0.40/0.79  FOF formula (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))) of role axiom named nat_ordsucc
% 0.40/0.79  A new axiom: (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 0.40/0.79  FOF formula (nat_p (ordsucc emptyset)) of role axiom named nat_1
% 0.40/0.79  A new axiom: (nat_p (ordsucc emptyset))
% 0.40/0.79  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.40/0.79  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.40/0.79  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.40/0.79  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.40/0.79  FOF formula (<kernel.Constant object at 0x2aaff5d359e0>, <kernel.Single object at 0x2aaff5d35710>) of role type named typ_omega
% 0.40/0.79  Using role type
% 0.40/0.79  Declaring omega:fofType
% 0.40/0.79  FOF formula (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p)) of role definition named def_omega
% 0.40/0.79  A new definition: (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p))
% 0.40/0.79  Defined: omega:=((d_Sep (univof emptyset)) nat_p)
% 0.40/0.79  FOF formula (forall (X0:fofType), (((in X0) omega)->(nat_p X0))) of role axiom named omega_nat_p
% 0.40/0.79  A new axiom: (forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 0.40/0.79  FOF formula (forall (X0:fofType), ((nat_p X0)->((in X0) omega))) of role axiom named nat_p_omega
% 0.40/0.79  A new axiom: (forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 0.40/0.79  FOF formula (<kernel.Constant object at 0x2aaff5d35290>, <kernel.DependentProduct object at 0x2aaff5d35710>) of role type named typ_d_Inj1
% 0.40/0.79  Using role type
% 0.40/0.79  Declaring d_Inj1:(fofType->fofType)
% 0.40/0.79  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.40/0.79  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.40/0.79  Defined: d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1))))
% 0.40/0.79  FOF formula (<kernel.Constant object at 0x2aaff5d359e0>, <kernel.DependentProduct object at 0x2aaff5d35d40>) of role type named typ_d_Inj0
% 0.40/0.79  Using role type
% 0.40/0.79  Declaring d_Inj0:(fofType->fofType)
% 0.40/0.79  FOF formula (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1))) of role definition named def_d_Inj0
% 0.40/0.79  A new definition: (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1)))
% 0.40/0.79  Defined: d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1))
% 0.40/0.79  FOF formula (<kernel.Constant object at 0x2aaff5d35d40>, <kernel.DependentProduct object at 0x2aaff5d35710>) of role type named typ_d_Unj
% 0.40/0.79  Using role type
% 0.40/0.79  Declaring d_Unj:(fofType->fofType)
% 0.40/0.79  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.40/0.79  A new definition: (((eq (fofType->fofType)) d_Unj) (d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))))
% 0.40/0.79  Defined: d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset)))))
% 0.40/0.79  FOF formula (<kernel.Constant object at 0x2aaff5d35290>, <kernel.DependentProduct object at 0x2aaff5d35710>) of role type named typ_pair
% 0.40/0.79  Using role type
% 0.40/0.79  Declaring pair:(fofType->(fofType->fofType))
% 0.40/0.79  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.40/0.80  A new definition: (((eq (fofType->(fofType->fofType))) pair) (fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))))
% 0.40/0.80  Defined: pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1)))
% 0.40/0.80  FOF formula (<kernel.Constant object at 0x2aaff5d35710>, <kernel.DependentProduct object at 0x2aaff5d35518>) of role type named typ_proj0
% 0.40/0.80  Using role type
% 0.40/0.80  Declaring proj0:(fofType->fofType)
% 0.40/0.80  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.40/0.80  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.40/0.80  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.40/0.80  FOF formula (<kernel.Constant object at 0x2aaff5d35518>, <kernel.DependentProduct object at 0x2aaff5d35440>) of role type named typ_proj1
% 0.40/0.80  Using role type
% 0.40/0.80  Declaring _TPTP_proj1:(fofType->fofType)
% 0.40/0.80  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.40/0.80  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.40/0.80  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.40/0.80  FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)) of role axiom named proj0_pair_eq
% 0.40/0.80  A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 0.40/0.80  FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)) of role axiom named proj1_pair_eq
% 0.40/0.80  A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 0.40/0.80  FOF formula (<kernel.Constant object at 0x2aaff5d35e18>, <kernel.DependentProduct object at 0x2aaff5d358c0>) of role type named typ_d_Sigma
% 0.40/0.80  Using role type
% 0.40/0.80  Declaring d_Sigma:(fofType->((fofType->fofType)->fofType))
% 0.40/0.80  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.40/0.80  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.40/0.80  Defined: d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2)))))
% 0.40/0.80  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.40/0.80  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.40/0.80  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.40/0.80  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.40/0.80  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.40/0.82  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.40/0.82  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.40/0.82  A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 0.40/0.82  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.40/0.82  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.40/0.82  FOF formula (<kernel.Constant object at 0x2aaff5d35290>, <kernel.DependentProduct object at 0x2aaff5d35e18>) of role type named typ_setprod
% 0.40/0.82  Using role type
% 0.40/0.82  Declaring setprod:(fofType->(fofType->fofType))
% 0.40/0.82  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.40/0.82  A new definition: (((eq (fofType->(fofType->fofType))) setprod) (fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))))
% 0.40/0.82  Defined: setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1)))
% 0.40/0.82  FOF formula (<kernel.Constant object at 0x2aaff5d35e18>, <kernel.DependentProduct object at 0x2aaff5d35cb0>) of role type named typ_ap
% 0.40/0.82  Using role type
% 0.40/0.82  Declaring ap:(fofType->(fofType->fofType))
% 0.40/0.82  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.40/0.82  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.40/0.82  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.40/0.82  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.40/0.82  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.40/0.82  FOF formula (<kernel.Constant object at 0x2aaff5d35ea8>, <kernel.DependentProduct object at 0x2aaff5d35440>) of role type named typ_pair_p
% 0.40/0.82  Using role type
% 0.40/0.82  Declaring pair_p:(fofType->Prop)
% 0.40/0.82  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.40/0.82  A new definition: (((eq (fofType->Prop)) pair_p) (fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)))
% 0.40/0.82  Defined: pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0))
% 0.40/0.82  FOF formula (<kernel.Constant object at 0x2aaff5d35290>, <kernel.DependentProduct object at 0x2aaff5d35cb0>) of role type named typ_d_Pi
% 0.40/0.82  Using role type
% 0.40/0.82  Declaring d_Pi:(fofType->((fofType->fofType)->fofType))
% 0.40/0.82  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.40/0.82  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.40/0.82  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  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.45/0.84  A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 0.45/0.84  FOF formula (<kernel.Constant object at 0x2aaff5d35290>, <kernel.DependentProduct object at 0x2aaff939b440>) of role type named typ_imp
% 0.45/0.84  Using role type
% 0.45/0.84  Declaring imp:(Prop->(Prop->Prop))
% 0.45/0.84  FOF formula (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1))) of role definition named def_imp
% 0.45/0.84  A new definition: (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1)))
% 0.45/0.84  Defined: imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1))
% 0.45/0.84  FOF formula (<kernel.Constant object at 0x2aaff939b440>, <kernel.DependentProduct object at 0x2aaff939b4d0>) of role type named typ_d_not
% 0.45/0.84  Using role type
% 0.45/0.84  Declaring d_not:(Prop->Prop)
% 0.45/0.84  FOF formula (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False))) of role definition named def_d_not
% 0.45/0.84  A new definition: (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False)))
% 0.45/0.84  Defined: d_not:=(fun (X0:Prop)=> ((imp X0) False))
% 0.45/0.84  FOF formula (<kernel.Constant object at 0x2aaff939b4d0>, <kernel.DependentProduct object at 0x2aaff939b7e8>) of role type named typ_wel
% 0.45/0.84  Using role type
% 0.45/0.84  Declaring wel:(Prop->Prop)
% 0.45/0.84  FOF formula (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0)))) of role definition named def_wel
% 0.45/0.84  A new definition: (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0))))
% 0.45/0.84  Defined: wel:=(fun (X0:Prop)=> (d_not (d_not X0)))
% 0.45/0.84  FOF formula (forall (X0:Prop), ((wel X0)->X0)) of role axiom named l_et
% 0.45/0.84  A new axiom: (forall (X0:Prop), ((wel X0)->X0))
% 0.45/0.84  FOF formula (<kernel.Constant object at 0x2aaff939b128>, <kernel.Sort object at 0x2aaff609cb48>) of role type named typ_obvious
% 0.45/0.84  Using role type
% 0.45/0.84  Declaring obvious:Prop
% 0.45/0.84  FOF formula (((eq Prop) obvious) ((imp False) False)) of role definition named def_obvious
% 0.45/0.84  A new definition: (((eq Prop) obvious) ((imp False) False))
% 0.47/0.85  Defined: obvious:=((imp False) False)
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939b320>, <kernel.DependentProduct object at 0x2aaff939b050>) of role type named typ_l_ec
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring l_ec:(Prop->(Prop->Prop))
% 0.47/0.85  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.47/0.85  A new definition: (((eq (Prop->(Prop->Prop))) l_ec) (fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))))
% 0.47/0.85  Defined: l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1)))
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939b050>, <kernel.DependentProduct object at 0x2aaff939b128>) of role type named typ_d_and
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring d_and:(Prop->(Prop->Prop))
% 0.47/0.85  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.47/0.85  A new definition: (((eq (Prop->(Prop->Prop))) d_and) (fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))))
% 0.47/0.85  Defined: d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1)))
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939b128>, <kernel.DependentProduct object at 0x2aaff939b320>) of role type named typ_l_or
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring l_or:(Prop->(Prop->Prop))
% 0.47/0.85  FOF formula (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0)))) of role definition named def_l_or
% 0.47/0.85  A new definition: (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0))))
% 0.47/0.85  Defined: l_or:=(fun (X0:Prop)=> (imp (d_not X0)))
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939b320>, <kernel.DependentProduct object at 0x2aaff939b6c8>) of role type named typ_orec
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring orec:(Prop->(Prop->Prop))
% 0.47/0.85  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.47/0.85  A new definition: (((eq (Prop->(Prop->Prop))) orec) (fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))))
% 0.47/0.85  Defined: orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1)))
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939b6c8>, <kernel.DependentProduct object at 0x2aaff939b128>) of role type named typ_l_iff
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring l_iff:(Prop->(Prop->Prop))
% 0.47/0.85  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.47/0.85  A new definition: (((eq (Prop->(Prop->Prop))) l_iff) (fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))))
% 0.47/0.85  Defined: l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0)))
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939b128>, <kernel.DependentProduct object at 0x2aaff939b878>) of role type named typ_all
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring all:(fofType->((fofType->Prop)->Prop))
% 0.47/0.85  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.47/0.85  A new definition: (((eq (fofType->((fofType->Prop)->Prop))) all) (fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))))
% 0.47/0.85  Defined: all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0))))
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939b878>, <kernel.DependentProduct object at 0x2aaff939bc68>) of role type named typ_non
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring non:(fofType->((fofType->Prop)->(fofType->Prop)))
% 0.47/0.85  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.47/0.85  A new definition: (((eq (fofType->((fofType->Prop)->(fofType->Prop)))) non) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))))
% 0.47/0.85  Defined: non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2)))
% 0.47/0.85  FOF formula (<kernel.Constant object at 0x2aaff939bc68>, <kernel.DependentProduct object at 0x2aaff939b680>) of role type named typ_l_some
% 0.47/0.85  Using role type
% 0.47/0.85  Declaring l_some:(fofType->((fofType->Prop)->Prop))
% 0.47/0.85  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.47/0.87  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.47/0.87  Defined: l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1))))
% 0.47/0.87  FOF formula (<kernel.Constant object at 0x2aaff939b680>, <kernel.DependentProduct object at 0x2aaff939bcb0>) of role type named typ_or3
% 0.47/0.87  Using role type
% 0.47/0.87  Declaring or3:(Prop->(Prop->(Prop->Prop)))
% 0.47/0.87  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.47/0.87  A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) or3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))))
% 0.47/0.87  Defined: or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2)))
% 0.47/0.87  FOF formula (<kernel.Constant object at 0x2aaff939bcb0>, <kernel.DependentProduct object at 0x2aaff939ba70>) of role type named typ_and3
% 0.47/0.87  Using role type
% 0.47/0.87  Declaring and3:(Prop->(Prop->(Prop->Prop)))
% 0.47/0.87  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.47/0.87  A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) and3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))))
% 0.47/0.87  Defined: and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2)))
% 0.47/0.87  FOF formula (<kernel.Constant object at 0x2aaff939ba70>, <kernel.DependentProduct object at 0x2aaff939bcf8>) of role type named typ_ec3
% 0.47/0.87  Using role type
% 0.47/0.87  Declaring ec3:(Prop->(Prop->(Prop->Prop)))
% 0.47/0.87  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.47/0.87  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.47/0.87  Defined: ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0)))
% 0.47/0.87  FOF formula (<kernel.Constant object at 0x2aaff939bcf8>, <kernel.DependentProduct object at 0x2aaff939bd40>) of role type named typ_orec3
% 0.47/0.87  Using role type
% 0.47/0.87  Declaring orec3:(Prop->(Prop->(Prop->Prop)))
% 0.47/0.87  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.47/0.87  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.47/0.87  Defined: orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2)))
% 0.47/0.87  FOF formula (<kernel.Constant object at 0x2aaff939bd40>, <kernel.DependentProduct object at 0x2aaff939bcb0>) of role type named typ_e_is
% 0.47/0.87  Using role type
% 0.47/0.87  Declaring e_is:(fofType->(fofType->(fofType->Prop)))
% 0.47/0.87  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.47/0.87  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) e_is) (fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)))
% 0.47/0.87  Defined: e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))
% 0.47/0.87  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.47/0.87  A new axiom: (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 0.47/0.87  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.47/0.87  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.47/0.89  FOF formula (<kernel.Constant object at 0x2aaff939bcf8>, <kernel.DependentProduct object at 0x2aaff939b6c8>) of role type named typ_amone
% 0.47/0.89  Using role type
% 0.47/0.89  Declaring amone:(fofType->((fofType->Prop)->Prop))
% 0.47/0.89  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.47/0.89  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.47/0.89  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.47/0.89  FOF formula (<kernel.Constant object at 0x2aaff939b6c8>, <kernel.DependentProduct object at 0x2aaff939bf80>) of role type named typ_one
% 0.47/0.89  Using role type
% 0.47/0.89  Declaring one:(fofType->((fofType->Prop)->Prop))
% 0.47/0.89  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.47/0.89  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.47/0.89  Defined: one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1)))
% 0.47/0.89  FOF formula (<kernel.Constant object at 0x2aaff939bf80>, <kernel.DependentProduct object at 0x2aaff939bd88>) of role type named typ_ind
% 0.47/0.89  Using role type
% 0.47/0.89  Declaring ind:(fofType->((fofType->Prop)->fofType))
% 0.47/0.89  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.47/0.89  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.47/0.89  Defined: ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2)))))
% 0.47/0.89  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.47/0.89  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 0.47/0.89  FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))) of role axiom named oneax
% 0.47/0.89  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 0.47/0.89  FOF formula (<kernel.Constant object at 0x2aaff939bcf8>, <kernel.DependentProduct object at 0x2aaff939bfc8>) of role type named typ_injective
% 0.47/0.89  Using role type
% 0.47/0.89  Declaring injective:(fofType->(fofType->(fofType->Prop)))
% 0.47/0.89  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.47/0.89  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.47/0.89  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.47/0.89  FOF formula (<kernel.Constant object at 0x2aaff939bd88>, <kernel.DependentProduct object at 0x2aaff939b560>) of role type named typ_image
% 0.47/0.89  Using role type
% 0.47/0.89  Declaring image:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.47/0.89  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.47/0.90  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.47/0.90  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.47/0.90  FOF formula (<kernel.Constant object at 0x2aaff939bcf8>, <kernel.DependentProduct object at 0x2aaff93a1050>) of role type named typ_tofs
% 0.47/0.90  Using role type
% 0.47/0.90  Declaring tofs:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.47/0.90  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap)) of role definition named def_tofs
% 0.47/0.90  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap))
% 0.47/0.90  Defined: tofs:=(fun (X0:fofType) (X1:fofType)=> ap)
% 0.47/0.90  FOF formula (<kernel.Constant object at 0x2aaff939bd88>, <kernel.DependentProduct object at 0x2aaff93a1290>) of role type named typ_soft
% 0.47/0.90  Using role type
% 0.47/0.90  Declaring soft:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.47/0.90  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.47/0.90  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.47/0.90  Defined: soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))
% 0.47/0.90  FOF formula (<kernel.Constant object at 0x2aaff939bd88>, <kernel.DependentProduct object at 0x2aaff93a1290>) of role type named typ_inverse
% 0.47/0.90  Using role type
% 0.47/0.90  Declaring inverse:(fofType->(fofType->(fofType->fofType)))
% 0.47/0.90  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.47/0.90  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.47/0.90  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.47/0.90  FOF formula (<kernel.Constant object at 0x2aaff939bd88>, <kernel.DependentProduct object at 0x2aaff93a17e8>) of role type named typ_surjective
% 0.47/0.90  Using role type
% 0.47/0.90  Declaring surjective:(fofType->(fofType->(fofType->Prop)))
% 0.47/0.90  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.47/0.90  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) surjective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))))
% 0.47/0.90  Defined: surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2)))
% 0.47/0.90  FOF formula (<kernel.Constant object at 0x2aaff93a17e8>, <kernel.DependentProduct object at 0x2aaff93a13b0>) of role type named typ_bijective
% 0.47/0.90  Using role type
% 0.47/0.90  Declaring bijective:(fofType->(fofType->(fofType->Prop)))
% 0.47/0.90  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.47/0.90  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.47/0.90  Defined: bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2)))
% 0.53/0.92  FOF formula (<kernel.Constant object at 0x2aaff93a13b0>, <kernel.DependentProduct object at 0x2aaff93a13f8>) of role type named typ_invf
% 0.53/0.92  Using role type
% 0.53/0.92  Declaring invf:(fofType->(fofType->(fofType->fofType)))
% 0.53/0.92  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.53/0.92  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) invf) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))))
% 0.53/0.92  Defined: invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2)))
% 0.53/0.92  FOF formula (<kernel.Constant object at 0x2aaff93a13f8>, <kernel.DependentProduct object at 0x2aaff93a1128>) of role type named typ_inj_h
% 0.53/0.92  Using role type
% 0.53/0.92  Declaring inj_h:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.53/0.92  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.53/0.92  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.53/0.92  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.53/0.92  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.53/0.92  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.53/0.92  FOF formula (<kernel.Constant object at 0x2aaff93a1998>, <kernel.DependentProduct object at 0x2aaff93a11b8>) of role type named typ_e_in
% 0.53/0.92  Using role type
% 0.53/0.92  Declaring e_in:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.53/0.92  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.53/0.92  A new definition: (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) e_in) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2))
% 0.53/0.92  Defined: e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2)
% 0.53/0.92  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.53/0.92  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.53/0.92  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.53/0.92  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.53/0.92  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.53/0.92  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.53/0.92  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.53/0.94  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.53/0.94  FOF formula (<kernel.Constant object at 0x2aaff93a1170>, <kernel.DependentProduct object at 0x2aaff93a1cf8>) of role type named typ_out
% 0.53/0.94  Using role type
% 0.53/0.94  Declaring out:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.53/0.94  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.53/0.94  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.53/0.94  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.53/0.94  FOF formula (<kernel.Constant object at 0x2aaff93a1cf8>, <kernel.DependentProduct object at 0x2aaff93a1638>) of role type named typ_d_pair
% 0.53/0.94  Using role type
% 0.53/0.94  Declaring d_pair:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.53/0.94  FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair)) of role definition named def_d_pair
% 0.53/0.94  A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair))
% 0.53/0.94  Defined: d_pair:=(fun (X0:fofType) (X1:fofType)=> pair)
% 0.53/0.94  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.53/0.94  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.53/0.94  FOF formula (<kernel.Constant object at 0x2aaff93a19e0>, <kernel.DependentProduct object at 0x2aaff93a1b48>) of role type named typ_first
% 0.53/0.94  Using role type
% 0.53/0.94  Declaring first:(fofType->(fofType->(fofType->fofType)))
% 0.53/0.94  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0)) of role definition named def_first
% 0.53/0.94  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0))
% 0.53/0.94  Defined: first:=(fun (X0:fofType) (X1:fofType)=> proj0)
% 0.53/0.94  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.53/0.94  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.53/0.94  FOF formula (<kernel.Constant object at 0x2aaff93a12d8>, <kernel.DependentProduct object at 0x2aaff93a1a28>) of role type named typ_second
% 0.53/0.94  Using role type
% 0.53/0.94  Declaring second:(fofType->(fofType->(fofType->fofType)))
% 0.53/0.94  FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)) of role definition named def_second
% 0.53/0.94  A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1))
% 0.53/0.94  Defined: second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)
% 0.53/0.94  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.53/0.94  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.53/0.96  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.53/0.96  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.53/0.96  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.53/0.96  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.53/0.96  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.53/0.96  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.53/0.96  FOF formula (<kernel.Constant object at 0x2aaff93a17a0>, <kernel.DependentProduct object at 0x2aaff93a1fc8>) of role type named typ_prop1
% 0.53/0.96  Using role type
% 0.53/0.96  Declaring prop1:(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 0.53/0.96  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.53/0.96  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.53/0.96  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.53/0.96  FOF formula (<kernel.Constant object at 0x2aaff93a1fc8>, <kernel.DependentProduct object at 0x2aaff93a17a0>) of role type named typ_ite
% 0.53/0.96  Using role type
% 0.53/0.96  Declaring ite:(Prop->(fofType->(fofType->(fofType->fofType))))
% 0.53/0.96  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.53/0.96  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.53/0.96  Defined: ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3)))
% 0.53/0.96  FOF formula (<kernel.Constant object at 0x2aaff93a17a0>, <kernel.DependentProduct object at 0x2aaff93a1dd0>) of role type named typ_wissel_wa
% 0.53/0.96  Using role type
% 0.53/0.96  Declaring wissel_wa:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.53/0.96  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.53/0.96  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.53/0.96  Defined: wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3))
% 0.53/0.96  FOF formula (<kernel.Constant object at 0x2aaff93a1dd0>, <kernel.DependentProduct object at 0x2aaff93a15a8>) of role type named typ_wissel_wb
% 0.58/0.97  Using role type
% 0.58/0.97  Declaring wissel_wb:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.58/0.97  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.58/0.97  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.58/0.97  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.58/0.97  FOF formula (<kernel.Constant object at 0x2aaff93a15a8>, <kernel.DependentProduct object at 0x2aaff93a1f38>) of role type named typ_wissel
% 0.58/0.97  Using role type
% 0.58/0.97  Declaring wissel:(fofType->(fofType->(fofType->fofType)))
% 0.58/0.97  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.58/0.97  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.58/0.97  Defined: wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2)))
% 0.58/0.97  FOF formula (<kernel.Constant object at 0x2aaff93a1f38>, <kernel.DependentProduct object at 0x2aaff93a13b0>) of role type named typ_changef
% 0.58/0.97  Using role type
% 0.58/0.97  Declaring changef:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.58/0.97  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.58/0.97  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.58/0.97  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.58/0.97  FOF formula (<kernel.Constant object at 0x2aaff93a1e60>, <kernel.DependentProduct object at 0x2aaff93a17a0>) of role type named typ_r_ec
% 0.58/0.97  Using role type
% 0.58/0.97  Declaring r_ec:(Prop->(Prop->Prop))
% 0.58/0.97  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.58/0.97  A new definition: (((eq (Prop->(Prop->Prop))) r_ec) (fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))))
% 0.58/0.97  Defined: r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1)))
% 0.58/0.97  FOF formula (<kernel.Constant object at 0x2aaff93a17a0>, <kernel.DependentProduct object at 0x2aaff93a1fc8>) of role type named typ_esti
% 0.58/0.97  Using role type
% 0.58/0.97  Declaring esti:(fofType->(fofType->(fofType->Prop)))
% 0.58/0.97  FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in)) of role definition named def_esti
% 0.58/0.97  A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in))
% 0.58/0.97  Defined: esti:=(fun (X0:fofType)=> in)
% 0.58/0.97  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.58/0.97  A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 0.58/0.97  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.58/0.97  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.58/0.97  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.58/0.99  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.58/0.99  FOF formula (<kernel.Constant object at 0x2aaff93a1fc8>, <kernel.DependentProduct object at 0x2aaff93a1ea8>) of role type named typ_empty
% 0.58/0.99  Using role type
% 0.58/0.99  Declaring empty:(fofType->(fofType->Prop))
% 0.58/0.99  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.58/0.99  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.58/0.99  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.58/0.99  FOF formula (<kernel.Constant object at 0x2aaff93a18c0>, <kernel.DependentProduct object at 0x2aaff93a7050>) of role type named typ_nonempty
% 0.58/0.99  Using role type
% 0.58/0.99  Declaring nonempty:(fofType->(fofType->Prop))
% 0.58/0.99  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.58/0.99  A new definition: (((eq (fofType->(fofType->Prop))) nonempty) (fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))
% 0.58/0.99  Defined: nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))
% 0.58/0.99  FOF formula (<kernel.Constant object at 0x2aaff93a1f80>, <kernel.DependentProduct object at 0x2aaff93a7248>) of role type named typ_incl
% 0.58/0.99  Using role type
% 0.58/0.99  Declaring incl:(fofType->(fofType->(fofType->Prop)))
% 0.58/0.99  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.58/0.99  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.58/0.99  Defined: incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2)))))
% 0.58/0.99  FOF formula (<kernel.Constant object at 0x2aaff93a1f80>, <kernel.DependentProduct object at 0x2aaff93a71b8>) of role type named typ_st_disj
% 0.58/0.99  Using role type
% 0.58/0.99  Declaring st_disj:(fofType->(fofType->(fofType->Prop)))
% 0.58/0.99  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.58/0.99  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.58/0.99  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.58/0.99  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.58/0.99  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.58/0.99  FOF formula (<kernel.Constant object at 0x2aaff93a1f80>, <kernel.DependentProduct object at 0x2aaff93a75f0>) of role type named typ_nissetprop
% 0.58/0.99  Using role type
% 0.58/0.99  Declaring nissetprop:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.58/0.99  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.58/1.00  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.58/1.00  Defined: nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2))))
% 0.58/1.00  FOF formula (<kernel.Constant object at 0x2aaff93a75f0>, <kernel.DependentProduct object at 0x2aaff93a71b8>) of role type named typ_unmore
% 0.58/1.00  Using role type
% 0.58/1.00  Declaring unmore:(fofType->(fofType->(fofType->fofType)))
% 0.58/1.00  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.58/1.00  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.58/1.00  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.58/1.00  FOF formula (<kernel.Constant object at 0x2aaff93a71b8>, <kernel.DependentProduct object at 0x2aaff93a77e8>) of role type named typ_ecelt
% 0.58/1.00  Using role type
% 0.58/1.00  Declaring ecelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.58/1.00  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.58/1.00  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.58/1.00  Defined: ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2)))
% 0.58/1.00  FOF formula (<kernel.Constant object at 0x2aaff93a77e8>, <kernel.DependentProduct object at 0x2aaff93a77a0>) of role type named typ_ecp
% 0.58/1.00  Using role type
% 0.58/1.00  Declaring ecp:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.58/1.00  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.58/1.00  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.58/1.00  Defined: ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3)))
% 0.58/1.00  FOF formula (<kernel.Constant object at 0x2aaff93a77a0>, <kernel.DependentProduct object at 0x2aaff93a7b00>) of role type named typ_anec
% 0.58/1.00  Using role type
% 0.58/1.00  Declaring anec:(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 0.58/1.00  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.58/1.00  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.58/1.00  Defined: anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2)))
% 0.58/1.00  FOF formula (<kernel.Constant object at 0x2aaff93a7b00>, <kernel.DependentProduct object at 0x2aaff93a77e8>) of role type named typ_ect
% 0.58/1.00  Using role type
% 0.58/1.00  Declaring ect:(fofType->((fofType->(fofType->Prop))->fofType))
% 0.58/1.00  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.58/1.00  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.58/1.02  Defined: ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1)))
% 0.58/1.02  FOF formula (<kernel.Constant object at 0x2aaff93a77e8>, <kernel.DependentProduct object at 0x2aaff93a7200>) of role type named typ_ectset
% 0.58/1.02  Using role type
% 0.58/1.02  Declaring ectset:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.58/1.02  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.58/1.02  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.58/1.02  Defined: ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1)))
% 0.58/1.02  FOF formula (<kernel.Constant object at 0x2aaff93a7200>, <kernel.DependentProduct object at 0x2aaff93a7050>) of role type named typ_ectelt
% 0.58/1.02  Using role type
% 0.58/1.02  Declaring ectelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.58/1.02  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.58/1.02  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.58/1.02  Defined: ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2)))
% 0.58/1.02  FOF formula (<kernel.Constant object at 0x2aaff93a7050>, <kernel.DependentProduct object at 0x2aaff93a79e0>) of role type named typ_ecect
% 0.58/1.02  Using role type
% 0.58/1.02  Declaring ecect:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.58/1.02  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.58/1.02  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.58/1.02  Defined: ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1)))
% 0.58/1.02  FOF formula (<kernel.Constant object at 0x2aaff93a79e0>, <kernel.DependentProduct object at 0x2aaff93a73f8>) of role type named typ_fixfu
% 0.58/1.02  Using role type
% 0.58/1.02  Declaring fixfu:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.58/1.02  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.58/1.02  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.58/1.02  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.58/1.02  FOF formula (<kernel.Constant object at 0x2aaff93a73f8>, <kernel.DependentProduct object at 0x2aaff93a7878>) of role type named typ_d_10_prop1
% 0.58/1.02  Using role type
% 0.58/1.02  Declaring d_10_prop1:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 0.58/1.02  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.58/1.04  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.58/1.04  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.58/1.04  FOF formula (<kernel.Constant object at 0x2aaff93a7878>, <kernel.DependentProduct object at 0x2aaff93a7ab8>) of role type named typ_prop2
% 0.58/1.04  Using role type
% 0.58/1.04  Declaring prop2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 0.58/1.04  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.58/1.04  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.58/1.04  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.58/1.04  FOF formula (<kernel.Constant object at 0x2aaff93a7ab8>, <kernel.DependentProduct object at 0x2aaff93a71b8>) of role type named typ_indeq
% 0.58/1.04  Using role type
% 0.58/1.04  Declaring indeq:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.58/1.04  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.58/1.04  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.58/1.04  Defined: indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4)))
% 0.58/1.04  FOF formula (<kernel.Constant object at 0x2aaff93a71b8>, <kernel.DependentProduct object at 0x2aaff93a7680>) of role type named typ_fixfu2
% 0.58/1.04  Using role type
% 0.58/1.04  Declaring fixfu2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.58/1.04  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.58/1.04  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.58/1.04  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.66/1.05  FOF formula (<kernel.Constant object at 0x2aaff93a7680>, <kernel.DependentProduct object at 0x2aaff93a7440>) of role type named typ_d_11_i
% 0.66/1.05  Using role type
% 0.66/1.05  Declaring d_11_i:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.66/1.05  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.66/1.05  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.66/1.05  Defined: d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2))))
% 0.66/1.05  FOF formula (<kernel.Constant object at 0x2aaff93a7440>, <kernel.DependentProduct object at 0x2aaff93a7a70>) of role type named typ_indeq2
% 0.66/1.05  Using role type
% 0.66/1.05  Declaring indeq2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 0.66/1.05  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.66/1.05  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.66/1.05  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.66/1.05  FOF formula (<kernel.Constant object at 0x2aaff93a7a70>, <kernel.Single object at 0x2aaff93a7440>) of role type named typ_nat
% 0.66/1.05  Using role type
% 0.66/1.05  Declaring nat:fofType
% 0.66/1.05  FOF formula (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))) of role definition named def_nat
% 0.66/1.05  A new definition: (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))))
% 0.66/1.05  Defined: nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))
% 0.66/1.05  FOF formula (<kernel.Constant object at 0x2aaff93a7440>, <kernel.DependentProduct object at 0x2aaff93a7050>) of role type named typ_n_is
% 0.66/1.05  Using role type
% 0.66/1.05  Declaring n_is:(fofType->(fofType->Prop))
% 0.66/1.05  FOF formula (((eq (fofType->(fofType->Prop))) n_is) (e_is nat)) of role definition named def_n_is
% 0.66/1.05  A new definition: (((eq (fofType->(fofType->Prop))) n_is) (e_is nat))
% 0.66/1.05  Defined: n_is:=(e_is nat)
% 0.66/1.05  FOF formula (<kernel.Constant object at 0x2aaff93a7f38>, <kernel.DependentProduct object at 0x2aaff93a7cb0>) of role type named typ_nis
% 0.66/1.05  Using role type
% 0.66/1.05  Declaring nis:(fofType->(fofType->Prop))
% 0.66/1.05  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.66/1.05  A new definition: (((eq (fofType->(fofType->Prop))) nis) (fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))))
% 0.66/1.05  Defined: nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1)))
% 0.66/1.05  FOF formula (<kernel.Constant object at 0x2aaff93a7cb0>, <kernel.DependentProduct object at 0x2aaff93a7050>) of role type named typ_n_in
% 0.66/1.05  Using role type
% 0.66/1.05  Declaring n_in:(fofType->(fofType->Prop))
% 0.66/1.05  FOF formula (((eq (fofType->(fofType->Prop))) n_in) (esti nat)) of role definition named def_n_in
% 0.66/1.05  A new definition: (((eq (fofType->(fofType->Prop))) n_in) (esti nat))
% 0.66/1.06  Defined: n_in:=(esti nat)
% 0.66/1.06  FOF formula (<kernel.Constant object at 0x2aaff93a79e0>, <kernel.DependentProduct object at 0x2aaff93a7050>) of role type named typ_n_some
% 0.66/1.06  Using role type
% 0.66/1.06  Declaring n_some:((fofType->Prop)->Prop)
% 0.66/1.06  FOF formula (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat)) of role definition named def_n_some
% 0.66/1.06  A new definition: (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat))
% 0.66/1.06  Defined: n_some:=(l_some nat)
% 0.66/1.06  FOF formula (<kernel.Constant object at 0x2aaff93a7f80>, <kernel.DependentProduct object at 0x2aaff93a7050>) of role type named typ_n_all
% 0.66/1.06  Using role type
% 0.66/1.06  Declaring n_all:((fofType->Prop)->Prop)
% 0.66/1.06  FOF formula (((eq ((fofType->Prop)->Prop)) n_all) (all nat)) of role definition named def_n_all
% 0.66/1.06  A new definition: (((eq ((fofType->Prop)->Prop)) n_all) (all nat))
% 0.66/1.06  Defined: n_all:=(all nat)
% 0.66/1.06  FOF formula (<kernel.Constant object at 0x2aaff93a7c68>, <kernel.DependentProduct object at 0x2aaff93a7050>) of role type named typ_n_one
% 0.66/1.06  Using role type
% 0.66/1.06  Declaring n_one:((fofType->Prop)->Prop)
% 0.66/1.06  FOF formula (((eq ((fofType->Prop)->Prop)) n_one) (one nat)) of role definition named def_n_one
% 0.66/1.06  A new definition: (((eq ((fofType->Prop)->Prop)) n_one) (one nat))
% 0.66/1.06  Defined: n_one:=(one nat)
% 0.66/1.06  FOF formula (<kernel.Constant object at 0x2aaff93a7cb0>, <kernel.Single object at 0x2aaff93a7c68>) of role type named typ_n_1
% 0.66/1.06  Using role type
% 0.66/1.06  Declaring n_1:fofType
% 0.66/1.06  FOF formula (((eq fofType) n_1) (ordsucc emptyset)) of role definition named def_n_1
% 0.66/1.06  A new definition: (((eq fofType) n_1) (ordsucc emptyset))
% 0.66/1.06  Defined: n_1:=(ordsucc emptyset)
% 0.66/1.06  FOF formula ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))) of role axiom named n_1_p
% 0.66/1.06  A new axiom: ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 0.66/1.06  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.66/1.06  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.66/1.06  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.66/1.06  A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 0.66/1.06  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.66/1.06  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.66/1.06  FOF formula (<kernel.Constant object at 0x2aaff93a7878>, <kernel.DependentProduct object at 0x2aaff93ae878>) of role type named typ_cond1
% 0.66/1.06  Using role type
% 0.66/1.06  Declaring cond1:(fofType->Prop)
% 0.66/1.06  FOF formula (((eq (fofType->Prop)) cond1) (n_in n_1)) of role definition named def_cond1
% 0.66/1.06  A new definition: (((eq (fofType->Prop)) cond1) (n_in n_1))
% 0.66/1.06  Defined: cond1:=(n_in n_1)
% 0.66/1.06  FOF formula (<kernel.Constant object at 0x2aaff93a7878>, <kernel.DependentProduct object at 0x2aaff93ae3b0>) of role type named typ_cond2
% 0.66/1.06  Using role type
% 0.66/1.06  Declaring cond2:(fofType->Prop)
% 0.66/1.06  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.66/1.06  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.66/1.06  Defined: cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0)))))
% 0.66/1.06  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.66/1.06  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.66/1.06  FOF formula (<kernel.Constant object at 0x2aaff93ae248>, <kernel.DependentProduct object at 0x2aaff93ae758>) of role type named typ_i1_s
% 0.66/1.07  Using role type
% 0.66/1.07  Declaring i1_s:((fofType->Prop)->fofType)
% 0.66/1.07  FOF formula (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat)) of role definition named def_i1_s
% 0.66/1.07  A new definition: (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat))
% 0.66/1.07  Defined: i1_s:=(d_Sep nat)
% 0.66/1.07  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 conjecture named satz1
% 0.66/1.07  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)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1))))))):Prop
% 0.66/1.07  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)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))']
% 0.66/1.07  Parameter fofType:Type.
% 0.66/1.07  Definition is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop)).
% 0.66/1.07  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.66/1.07  Parameter eps:((fofType->Prop)->fofType).
% 0.66/1.07  Parameter in:(fofType->(fofType->Prop)).
% 0.66/1.07  Definition d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop)).
% 0.66/1.07  Axiom set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1)))).
% 0.66/1.07  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.66/1.07  Parameter emptyset:fofType.
% 0.66/1.07  Axiom k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False).
% 0.66/1.07  Parameter union:(fofType->fofType).
% 0.66/1.07  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.66/1.07  Parameter power:(fofType->fofType).
% 0.66/1.07  Axiom k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))).
% 0.66/1.07  Parameter repl:(fofType->((fofType->fofType)->fofType)).
% 0.66/1.07  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.66/1.07  Definition d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop).
% 0.66/1.07  Definition d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop).
% 0.66/1.07  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.66/1.07  Definition d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop).
% 0.66/1.07  Parameter univof:(fofType->fofType).
% 0.66/1.07  Axiom k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0))).
% 0.66/1.07  Axiom k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0))).
% 0.66/1.07  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.66/1.07  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.66/1.07  Axiom if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2))).
% 0.66/1.07  Axiom if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1))).
% 0.66/1.07  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.66/1.07  Definition nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop)).
% 0.66/1.07  Axiom k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))).
% 0.66/1.07  Axiom k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))).
% 0.66/1.07  Axiom k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0))).
% 0.66/1.07  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.66/1.07  Definition d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType).
% 0.66/1.07  Definition binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType)).
% 0.66/1.07  Definition famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType)).
% 0.66/1.07  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.66/1.07  Axiom k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1))))).
% 0.66/1.07  Axiom k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0))).
% 0.66/1.07  Axiom k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2))).
% 0.66/1.07  Definition d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType))).
% 0.66/1.07  Definition setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType)).
% 0.66/1.07  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.66/1.07  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.66/1.07  Definition ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType).
% 0.66/1.07  Axiom neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))).
% 0.66/1.07  Axiom ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))).
% 0.66/1.07  Axiom k_In_0_1:((in emptyset) (ordsucc emptyset)).
% 0.66/1.07  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.66/1.07  Axiom nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))).
% 0.66/1.07  Axiom nat_1:(nat_p (ordsucc emptyset)).
% 0.66/1.07  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.66/1.07  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.66/1.07  Definition omega:=((d_Sep (univof emptyset)) nat_p):fofType.
% 0.66/1.07  Axiom omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0))).
% 0.66/1.07  Axiom nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega))).
% 0.66/1.07  Definition d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType).
% 0.66/1.07  Definition d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType).
% 0.66/1.07  Definition d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType).
% 0.66/1.07  Definition pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType)).
% 0.66/1.07  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.66/1.07  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.66/1.07  Axiom proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)).
% 0.66/1.07  Axiom proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)).
% 0.66/1.07  Definition d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType)).
% 0.66/1.07  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.66/1.07  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.66/1.07  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.66/1.07  Axiom proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0))).
% 0.66/1.07  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.66/1.07  Definition setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType)).
% 0.66/1.07  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.66/1.07  Axiom beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2)))).
% 0.66/1.07  Definition pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop).
% 0.66/1.07  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.66/1.07  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.66/1.07  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.66/1.07  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.66/1.07  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.66/1.07  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.66/1.07  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.66/1.07  Definition imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop)).
% 0.66/1.07  Definition d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop).
% 0.66/1.07  Definition wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop).
% 0.66/1.07  Axiom l_et:(forall (X0:Prop), ((wel X0)->X0)).
% 0.66/1.07  Definition obvious:=((imp False) False):Prop.
% 0.66/1.07  Definition l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop)).
% 0.66/1.07  Definition d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.66/1.07  Definition l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop)).
% 0.66/1.07  Definition orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.66/1.07  Definition l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop)).
% 0.66/1.08  Definition all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop)).
% 0.66/1.08  Definition non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop))).
% 0.66/1.08  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.66/1.08  Definition or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.66/1.08  Definition and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.66/1.08  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.66/1.08  Definition orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.66/1.08  Definition e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop))).
% 0.66/1.08  Axiom refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1)))).
% 0.66/1.08  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.66/1.08  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.66/1.08  Definition one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop)).
% 0.66/1.08  Definition ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType)).
% 0.66/1.08  Axiom ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0))))).
% 0.66/1.08  Axiom oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))).
% 0.66/1.08  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.66/1.08  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.66/1.08  Definition tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.66/1.08  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.66/1.08  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.66/1.08  Definition surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.66/1.08  Definition bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.66/1.08  Definition invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  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.66/1.08  Definition e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  Definition d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.66/1.08  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.66/1.08  Definition first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  Definition second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  Definition ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType)))).
% 0.66/1.08  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.66/1.08  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.66/1.08  Definition wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  Definition r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop)).
% 0.66/1.08  Definition esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop))).
% 0.66/1.08  Axiom setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0))))).
% 0.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  Definition nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop)).
% 0.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  Definition ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  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.66/1.08  Definition ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType)).
% 0.66/1.08  Definition ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  Definition ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.66/1.08  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.66/1.08  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.66/1.08  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.66/1.08  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))))).
% 1.17/1.57  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)))).
% 1.17/1.57  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))))).
% 1.17/1.57  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)))))).
% 1.17/1.57  Definition nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType.
% 1.17/1.57  Definition n_is:=(e_is nat):(fofType->(fofType->Prop)).
% 1.17/1.57  Definition nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop)).
% 1.17/1.57  Definition n_in:=(esti nat):(fofType->(fofType->Prop)).
% 1.17/1.57  Definition n_some:=(l_some nat):((fofType->Prop)->Prop).
% 1.17/1.57  Definition n_all:=(all nat):((fofType->Prop)->Prop).
% 1.17/1.57  Definition n_one:=(one nat):((fofType->Prop)->Prop).
% 1.17/1.57  Definition n_1:=(ordsucc emptyset):fofType.
% 1.17/1.57  Axiom n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))).
% 1.17/1.57  Axiom suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat))))).
% 1.17/1.57  Axiom n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1))).
% 1.17/1.57  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)))))).
% 1.17/1.57  Definition cond1:=(n_in n_1):(fofType->Prop).
% 1.17/1.57  Definition cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop).
% 1.17/1.57  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))))))).
% 1.17/1.57  Definition i1_s:=(d_Sep nat):((fofType->Prop)->fofType).
% 1.17/1.57  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)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 1.17/1.57  --- 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=> (forall x:((nis X0) X1), ((nis (ordsucc X0)) (ordsucc X1))))))))
% 1.17/1.57  ---context
% 1.17/1.57  False:Prop
% 1.17/1.57  False_rect:(forall (P:Type), (False->P))
% 1.17/1.57  I:True
% 1.17/1.57  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.17/1.57  True:Prop
% 1.17/1.57  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.57  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.57  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.17/1.57  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.57  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.57  and:(Prop->(Prop->Prop))
% 1.17/1.57  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.17/1.57  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.17/1.57  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.17/1.57  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.17/1.57  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.17/1.57  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.17/1.57  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.57  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.17/1.57  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.57  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.57  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.17/1.57  classic:(forall (P:Prop), ((or P) (not P)))
% 1.17/1.57  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.17/1.57  cond1:=(n_in n_1):(fofType->Prop)
% 1.17/1.57  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.17/1.57  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.17/1.57  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.17/1.57  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.57  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.17/1.57  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.17/1.57  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.17/1.57  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.17/1.57  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.57  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.17/1.57  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.17/1.57  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.17/1.57  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.17/1.57  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.57  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.17/1.57  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.57  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.17/1.57  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.17/1.57  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.17/1.57  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.17/1.57  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.57  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.17/1.57  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.57  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.57  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.17/1.57  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.57  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.57  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.17/1.57  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.57  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.17/1.57  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.17/1.57  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.57  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.57  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.57  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.57  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.17/1.57  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.57  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.57  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.17/1.57  emptyset:fofType
% 1.17/1.57  eps:((fofType->Prop)->fofType)
% 1.17/1.57  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.17/1.57  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.17/1.57  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.17/1.57  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.17/1.57  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.17/1.57  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.17/1.57  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.57  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.17/1.57  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.17/1.57  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.17/1.57  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.17/1.57  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.17/1.57  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.17/1.57  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.17/1.57  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.57  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.57  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.57  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.17/1.57  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.57  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.57  fofType:Type
% 1.17/1.57  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.17/1.57  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.17/1.57  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.17/1.57  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.17/1.57  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.17/1.57  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.57  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.17/1.57  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.17/1.57  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.57  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.17/1.57  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.17/1.57  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.17/1.57  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.17/1.57  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.57  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.17/1.57  in:(fofType->(fofType->Prop))
% 1.17/1.57  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.57  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.17/1.57  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.17/1.57  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.17/1.57  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.57  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.57  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.57  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.57  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.57  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.17/1.57  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.17/1.57  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.57  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.17/1.57  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.17/1.57  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.17/1.57  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.17/1.57  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.17/1.57  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.17/1.57  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.17/1.57  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.17/1.57  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.17/1.57  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.17/1.57  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.17/1.57  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.17/1.57  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.17/1.57  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.17/1.57  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.17/1.57  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.17/1.57  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.17/1.57  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.17/1.57  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.57  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.17/1.57  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.17/1.57  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.17/1.57  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.57  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.17/1.57  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.17/1.57  n_1:=(ordsucc emptyset):fofType
% 1.17/1.57  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.17/1.57  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.17/1.57  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.17/1.57  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.17/1.57  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.17/1.57  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.17/1.57  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.17/1.57  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.17/1.57  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.17/1.57  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.17/1.57  nat_1:(nat_p (ordsucc emptyset))
% 1.17/1.57  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.17/1.57  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.17/1.57  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.17/1.57  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.17/1.57  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.17/1.57  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.17/1.57  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.17/1.57  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.57  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.17/1.57  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.57  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.17/1.57  obvious:=((imp False) False):Prop
% 1.17/1.57  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.17/1.57  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.17/1.57  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.57  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.17/1.57  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.57  or:(Prop->(Prop->Prop))
% 1.17/1.57  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.17/1.57  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.17/1.57  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.17/1.57  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.17/1.57  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.17/1.57  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.17/1.57  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.17/1.57  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.17/1.57  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.57  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.57  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.17/1.57  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.17/1.57  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.57  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.17/1.57  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.17/1.57  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.17/1.57  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.17/1.57  power:(fofType->fofType)
% 1.17/1.57  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.57  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.17/1.57  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.17/1.57  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.17/1.57  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.17/1.57  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.17/1.57  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.17/1.57  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.17/1.57  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.17/1.57  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.17/1.57  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.57  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.17/1.57  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.17/1.57  repl:(fofType->((fofType->fofType)->fofType))
% 1.17/1.57  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.57  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.17/1.57  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.17/1.57  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.17/1.57  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.17/1.57  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.17/1.57  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.17/1.57  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.57  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.57  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.17/1.57  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.17/1.57  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.57  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.57  union:(fofType->fofType)
% 1.17/1.57  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.17/1.57  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.57  univof:(fofType->fofType)
% 1.17/1.57  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.57  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.17/1.57  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.57  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.57  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.57  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))
% 1.17/1.59  ---termcontext
% 1.17/1.59  [[[False:Prop
% 1.17/1.59  False_rect:(forall (P:Type), (False->P))
% 1.17/1.59  I:True
% 1.17/1.59  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.17/1.59  True:Prop
% 1.17/1.59  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.59  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.59  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.17/1.59  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.59  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.59  and:(Prop->(Prop->Prop))
% 1.17/1.59  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.17/1.59  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.17/1.59  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.17/1.59  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.17/1.59  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.17/1.59  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.17/1.59  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.59  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.17/1.59  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.59  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.59  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.17/1.59  classic:(forall (P:Prop), ((or P) (not P)))
% 1.17/1.59  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.17/1.59  cond1:=(n_in n_1):(fofType->Prop)
% 1.17/1.59  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.17/1.59  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.17/1.59  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.17/1.59  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.59  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.17/1.59  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.17/1.59  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.17/1.59  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.17/1.59  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.59  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.17/1.59  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.17/1.59  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.17/1.59  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.17/1.59  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.59  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.17/1.59  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.59  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.17/1.59  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.17/1.59  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.17/1.59  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.17/1.59  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.59  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.17/1.59  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.59  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.59  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.17/1.59  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.59  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.59  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.17/1.59  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.59  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.17/1.59  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.17/1.59  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.59  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.59  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.59  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.59  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.17/1.59  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.59  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.59  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.17/1.59  emptyset:fofType
% 1.17/1.59  eps:((fofType->Prop)->fofType)
% 1.17/1.59  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.17/1.59  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.17/1.59  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.17/1.59  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.17/1.59  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.17/1.59  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.17/1.59  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.59  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.17/1.59  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.17/1.59  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.17/1.59  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.17/1.59  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.17/1.59  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.17/1.59  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.17/1.59  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.59  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.59  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.59  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.17/1.59  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.59  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.59  fofType:Type
% 1.17/1.59  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.17/1.59  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.17/1.59  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.17/1.59  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.17/1.59  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.17/1.59  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.59  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.17/1.59  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.17/1.59  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.59  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.17/1.59  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.17/1.59  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.17/1.59  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.17/1.59  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.59  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.17/1.59  in:(fofType->(fofType->Prop))
% 1.17/1.59  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.59  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.17/1.59  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.17/1.59  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.17/1.59  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.59  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.59  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.59  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.59  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.59  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.17/1.59  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.17/1.59  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.59  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.17/1.59  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.17/1.59  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.17/1.59  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.17/1.59  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.17/1.59  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.17/1.59  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.17/1.59  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.17/1.59  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.17/1.59  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.17/1.59  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.17/1.59  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.17/1.59  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.17/1.59  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.17/1.59  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.17/1.59  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.17/1.59  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.17/1.59  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.17/1.59  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.59  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.17/1.59  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.17/1.59  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.17/1.59  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.59  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.17/1.59  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.17/1.59  n_1:=(ordsucc emptyset):fofType
% 1.17/1.59  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.17/1.59  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.17/1.59  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.17/1.59  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.17/1.59  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.17/1.59  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.17/1.59  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.17/1.59  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.17/1.59  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.17/1.59  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.17/1.59  nat_1:(nat_p (ordsucc emptyset))
% 1.17/1.59  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.17/1.59  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.17/1.59  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.17/1.59  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.17/1.59  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.17/1.59  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.17/1.59  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.17/1.59  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.59  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.17/1.59  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.59  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.17/1.59  obvious:=((imp False) False):Prop
% 1.17/1.59  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.17/1.59  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.17/1.59  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.59  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.17/1.59  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.59  or:(Prop->(Prop->Prop))
% 1.17/1.59  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.17/1.59  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.17/1.59  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.17/1.59  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.17/1.59  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.17/1.59  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.17/1.59  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.17/1.59  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.17/1.59  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.59  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.59  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.17/1.59  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.17/1.59  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.59  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.17/1.59  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.17/1.59  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.17/1.59  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.17/1.59  power:(fofType->fofType)
% 1.17/1.59  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.59  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.17/1.59  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.17/1.59  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.17/1.59  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.17/1.59  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.17/1.59  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.17/1.59  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.17/1.59  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.17/1.59  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.17/1.59  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.59  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.17/1.59  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.17/1.59  repl:(fofType->((fofType->fofType)->fofType))
% 1.17/1.59  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.59  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.17/1.59  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.17/1.59  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.17/1.59  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.17/1.59  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.17/1.59  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.17/1.59  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.59  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.59  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.17/1.59  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.17/1.59  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.59  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.59  union:(fofType->fofType)
% 1.17/1.59  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.17/1.60  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.60  univof:(fofType->fofType)
% 1.17/1.60  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.60  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.17/1.60  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.60  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.60  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.60  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]X0:fofType
% 1.17/1.60  X1:(fofType->Prop)
% 1.17/1.60  X2:fofType]x:((is_of X2) (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1))))]x0:fofType
% 1.17/1.60  ---subcontext
% 1.17/1.60  [False:Prop
% 1.17/1.60  False_rect:(forall (P:Type), (False->P))
% 1.17/1.60  I:True
% 1.17/1.60  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.17/1.60  True:Prop
% 1.17/1.60  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.60  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.60  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.17/1.60  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.60  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.60  and:(Prop->(Prop->Prop))
% 1.17/1.60  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.17/1.60  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.17/1.60  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.17/1.60  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.17/1.60  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.17/1.60  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.17/1.60  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.60  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.17/1.60  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.60  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.60  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.17/1.60  classic:(forall (P:Prop), ((or P) (not P)))
% 1.17/1.60  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.17/1.60  cond1:=(n_in n_1):(fofType->Prop)
% 1.17/1.60  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.17/1.60  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.17/1.60  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.17/1.60  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.60  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.17/1.60  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.17/1.60  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.17/1.60  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.17/1.60  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.60  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.17/1.60  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.17/1.60  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.17/1.60  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.17/1.60  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.60  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.17/1.60  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.60  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.17/1.60  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.17/1.60  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.17/1.60  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.17/1.60  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.60  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.17/1.60  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.60  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.60  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.17/1.60  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.60  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.60  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.17/1.60  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.60  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.17/1.60  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.17/1.60  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.60  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.60  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.60  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.60  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.17/1.60  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.60  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.60  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.17/1.60  emptyset:fofType
% 1.17/1.60  eps:((fofType->Prop)->fofType)
% 1.17/1.60  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.17/1.60  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.17/1.60  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.17/1.60  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.17/1.60  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.17/1.60  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.17/1.60  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.60  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.17/1.60  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.17/1.60  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.17/1.60  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.17/1.60  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.17/1.60  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.17/1.60  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.17/1.60  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.60  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.60  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.60  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.17/1.60  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.60  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.60  fofType:Type
% 1.17/1.60  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.17/1.60  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.17/1.60  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.17/1.60  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.17/1.60  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.17/1.60  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.60  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.17/1.60  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.17/1.60  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.60  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.17/1.60  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.17/1.60  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.17/1.60  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.17/1.60  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.60  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.17/1.60  in:(fofType->(fofType->Prop))
% 1.17/1.60  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.60  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.17/1.60  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.17/1.60  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.17/1.60  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.60  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.60  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.60  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.60  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.60  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.17/1.60  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.17/1.60  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.60  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.17/1.60  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.17/1.60  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.17/1.60  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.17/1.60  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.17/1.60  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.17/1.60  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.17/1.60  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.17/1.60  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.17/1.60  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.17/1.60  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.17/1.60  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.17/1.60  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.17/1.60  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.17/1.60  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.17/1.60  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.17/1.60  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.17/1.60  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.17/1.60  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.60  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.17/1.60  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.17/1.60  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.17/1.60  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.60  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.17/1.60  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.17/1.60  n_1:=(ordsucc emptyset):fofType
% 1.17/1.60  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.17/1.60  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.17/1.60  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.17/1.60  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.17/1.60  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.17/1.60  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.17/1.60  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.17/1.60  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.17/1.60  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.17/1.60  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.17/1.60  nat_1:(nat_p (ordsucc emptyset))
% 1.17/1.60  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.17/1.60  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.17/1.60  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.17/1.60  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.17/1.60  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.17/1.60  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.17/1.60  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.17/1.60  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.60  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.17/1.60  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.60  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.17/1.60  obvious:=((imp False) False):Prop
% 1.17/1.60  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.17/1.60  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.17/1.60  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.60  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.17/1.60  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.60  or:(Prop->(Prop->Prop))
% 1.17/1.60  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.17/1.60  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.17/1.60  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.17/1.60  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.17/1.60  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.17/1.60  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.17/1.60  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.17/1.60  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.17/1.60  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.60  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.60  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.17/1.60  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.17/1.60  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.60  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.17/1.60  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.17/1.60  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.17/1.60  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.17/1.60  power:(fofType->fofType)
% 1.17/1.60  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.60  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.17/1.60  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.17/1.60  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.17/1.60  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.17/1.60  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.17/1.60  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.17/1.60  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.17/1.60  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.17/1.60  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.17/1.60  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.60  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.17/1.60  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.17/1.60  repl:(fofType->((fofType->fofType)->fofType))
% 1.17/1.60  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.60  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.17/1.60  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.17/1.60  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.17/1.60  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.17/1.62  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.17/1.62  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.17/1.62  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.17/1.62  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.17/1.62  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  union:(fofType->fofType)
% 1.17/1.62  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.17/1.62  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.62  univof:(fofType->fofType)
% 1.17/1.62  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.17/1.62  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]
% 1.17/1.62  ---termsubcontext
% 1.17/1.62  [[[[False:Prop
% 1.17/1.62  False_rect:(forall (P:Type), (False->P))
% 1.17/1.62  I:True
% 1.17/1.62  NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 1.17/1.62  True:Prop
% 1.17/1.62  _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.62  all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.62  all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 1.17/1.62  amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.62  and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.62  and:(Prop->(Prop->Prop))
% 1.17/1.62  and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 1.17/1.62  and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 1.17/1.62  anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 1.17/1.62  ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 1.17/1.62  ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 1.17/1.62  beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 1.17/1.62  bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 1.17/1.62  changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.62  choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.62  choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 1.17/1.62  classic:(forall (P:Prop), ((or P) (not P)))
% 1.17/1.62  classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 1.17/1.62  cond1:=(n_in n_1):(fofType->Prop)
% 1.17/1.62  cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 1.17/1.62  conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 1.17/1.62  d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 1.17/1.62  d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.62  d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 1.17/1.62  d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 1.17/1.62  d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 1.17/1.62  d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 1.17/1.62  d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.62  d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 1.17/1.62  d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 1.17/1.62  d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 1.17/1.62  d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 1.17/1.62  d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.62  d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 1.17/1.62  d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.62  d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 1.17/1.62  d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 1.17/1.62  d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 1.17/1.62  d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 1.17/1.62  d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.62  d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 1.17/1.62  d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.62  e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 1.17/1.62  e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.62  e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.62  e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 1.17/1.62  e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 1.17/1.62  e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 1.17/1.62  ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.62  ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.62  ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.62  ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.62  ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 1.17/1.62  ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.62  ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 1.17/1.62  empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 1.17/1.62  emptyset:fofType
% 1.17/1.62  eps:((fofType->Prop)->fofType)
% 1.17/1.62  eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 1.17/1.62  eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 1.17/1.62  eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 1.17/1.62  eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 1.17/1.62  eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 1.17/1.62  eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 1.17/1.62  esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 1.17/1.62  estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 1.17/1.62  eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 1.17/1.62  eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 1.17/1.62  ex:(forall (A:Type), ((A->Prop)->Prop))
% 1.17/1.62  ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 1.17/1.62  ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 1.17/1.62  famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 1.17/1.62  first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 1.17/1.62  firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 1.17/1.62  fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.62  fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 1.17/1.62  fofType:Type
% 1.17/1.62  functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 1.17/1.62  functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 1.17/1.62  functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 1.17/1.62  i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 1.17/1.62  if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 1.17/1.62  if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.62  if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 1.17/1.62  if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 1.17/1.62  if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 1.17/1.62  iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 1.17/1.62  iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 1.17/1.62  iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 1.17/1.62  iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 1.17/1.62  image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.62  imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 1.17/1.62  in:(fofType->(fofType->Prop))
% 1.17/1.62  incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 1.17/1.62  ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 1.17/1.62  indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 1.17/1.62  indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.62  inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 1.17/1.62  injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 1.17/1.62  isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 1.17/1.62  ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 1.17/1.62  k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 1.17/1.62  k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 1.17/1.62  k_In_0_1:((in emptyset) (ordsucc emptyset))
% 1.17/1.62  k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 1.17/1.62  k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 1.17/1.62  k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 1.17/1.62  k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 1.17/1.62  k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 1.17/1.62  k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 1.17/1.62  k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 1.17/1.62  k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 1.17/1.62  k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 1.17/1.62  k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 1.17/1.62  k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 1.17/1.62  k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 1.17/1.62  k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 1.17/1.62  k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 1.17/1.62  l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.62  l_et:(forall (X0:Prop), ((wel X0)->X0))
% 1.17/1.62  l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 1.17/1.62  l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 1.17/1.62  l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.62  lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 1.17/1.62  nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 1.17/1.62  n_1:=(ordsucc emptyset):fofType
% 1.17/1.62  n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 1.17/1.62  n_all:=(all nat):((fofType->Prop)->Prop)
% 1.17/1.62  n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 1.17/1.62  n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 1.17/1.62  n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 1.17/1.62  n_in:=(esti nat):(fofType->(fofType->Prop))
% 1.17/1.62  n_is:=(e_is nat):(fofType->(fofType->Prop))
% 1.17/1.62  n_one:=(one nat):((fofType->Prop)->Prop)
% 1.17/1.62  n_some:=(l_some nat):((fofType->Prop)->Prop)
% 1.17/1.62  nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 1.17/1.62  nat_1:(nat_p (ordsucc emptyset))
% 1.17/1.62  nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 1.17/1.62  nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 1.17/1.62  nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 1.17/1.62  nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 1.17/1.62  nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 1.17/1.62  neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 1.17/1.62  nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 1.17/1.62  nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 1.17/1.62  non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 1.17/1.62  nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 1.17/1.62  not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 1.17/1.62  obvious:=((imp False) False):Prop
% 1.17/1.62  omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 1.17/1.62  omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 1.17/1.62  one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 1.17/1.62  oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 1.17/1.62  or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.62  or:(Prop->(Prop->Prop))
% 1.17/1.62  or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 1.17/1.62  or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 1.17/1.62  or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 1.17/1.62  or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 1.17/1.62  or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 1.17/1.62  or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 1.17/1.62  ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 1.17/1.62  ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 1.17/1.62  orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 1.17/1.62  orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 1.17/1.62  otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 1.17/1.62  otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 1.17/1.62  out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 1.17/1.62  pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 1.17/1.62  pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 1.17/1.62  pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 1.17/1.62  pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 1.17/1.62  power:(fofType->fofType)
% 1.17/1.62  proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 1.17/1.62  proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 1.17/1.62  proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 1.17/1.62  proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 1.17/1.62  proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 1.17/1.62  proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 1.17/1.62  proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 1.17/1.62  proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 1.17/1.62  prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 1.17/1.62  prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 1.17/1.62  r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 1.17/1.62  refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 1.17/1.62  relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 1.17/1.62  repl:(fofType->((fofType->fofType)->fofType))
% 1.17/1.62  second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 1.17/1.62  secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 1.17/1.62  set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 1.17/1.62  setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 1.17/1.62  setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 1.17/1.62  setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 1.17/1.62  soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 1.17/1.62  suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 1.17/1.62  surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 1.17/1.62  tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  union:(fofType->fofType)
% 1.17/1.62  unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 1.17/1.62  unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 1.17/1.62  univof:(fofType->fofType)
% 1.17/1.62  unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 1.17/1.62  wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 1.17/1.62  wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 1.17/1.62  xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]X0:fofType
% 1.17/1.62  X1:(fofType->Prop)
% 1.17/1.62  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)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1))))))):Prop
% 1.17/1.62  ---
% 1.17/1.62  self=((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))))))):Prop
% 1.17/1.62  term=(((e_in X0) X1) X2):fofType
% 1.17/1.62  --- 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=> (forall x:((nis X0) X1), ((nis (ordsucc X0)) (ordsucc X1))))))))
% 1.17/1.62  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=> (forall x:((nis X0) X1), ((nis (ordsucc X0)) (ordsucc X1))))))))
% 1.17/1.62  
% 1.17/1.62  Traceback (most recent call last):
% 1.17/1.62    File "CASC.py", line 80, in <module>
% 1.17/1.62      proof=problem.solve()
% 1.17/1.62    File "/export/starexec/sandbox2/solver/bin/TPTP.py", line 95, in solve
% 1.17/1.62      for x in self.solveyielding():
% 1.17/1.62    File "/export/starexec/sandbox2/solver/bin/TPTP.py", line 83, in solveyielding
% 1.17/1.62      for proof in proofgen: yield proof
% 1.17/1.62    File "/export/starexec/sandbox2/solver/bin/prover.py", line 422, in proveyielding
% 1.17/1.62      results=node.look() #Can add nodes
% 1.17/1.62    File "/export/starexec/sandbox2/solver/bin/prover.py", line 1221, in look
% 1.17/1.62      matching=target.match(term.body,self.context,termbodycontext,instantiate=True)
% 1.17/1.62    File "/export/starexec/sandbox2/solver/bin/kernel.py", line 576, in match
% 1.17/1.62      atermmatch=s.abstracttermmatch(params,context,termcontext,instantiate=instantiate)
% 1.17/1.62    File "/export/starexec/sandbox2/solver/bin/kernel.py", line 1192, in abstracttermmatch
% 1.17/1.62      print "t=%s:%s" % (t,t.gettype(termsubcontext))
% 1.17/1.62  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=> (forall x:((nis X0) X1), ((nis (ordsucc X0)) (ordsucc X1))))))))
% 1.17/1.62  
%------------------------------------------------------------------------------