TSTP Solution File: SEU678^2 by cocATP---0.2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU678^2 : TPTP v6.1.0. Released v3.7.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p

% Computer : n186.star.cs.uiowa.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2609 0 2.40GHz
% Memory   : 32286.75MB
% OS       : Linux 2.6.32-431.20.3.el6.x86_64
% CPULimit : 300s
% DateTime : Thu Jul 17 13:32:47 EDT 2014

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

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU678^2 : TPTP v6.1.0. Released v3.7.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n186.star.cs.uiowa.edu
% % Model    : x86_64 x86_64
% % CPU      : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% % Memory   : 32286.75MB
% % OS       : Linux 2.6.32-431.20.3.el6.x86_64
% % CPULimit : 300
% % DateTime : Thu Jul 17 11:08:41 CDT 2014
% % CPUTime  : 300.06 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (<kernel.Constant object at 0x21c2a28>, <kernel.DependentProduct object at 0x1f74638>) of role type named in_type
% Using role type
% Declaring in:(fofType->(fofType->Prop))
% FOF formula (<kernel.Constant object at 0x1c5cf80>, <kernel.Single object at 0x21c22d8>) of role type named emptyset_type
% Using role type
% Declaring emptyset:fofType
% FOF formula (<kernel.Constant object at 0x1c5cf80>, <kernel.DependentProduct object at 0x1f74b00>) of role type named setadjoin_type
% Using role type
% Declaring setadjoin:(fofType->(fofType->fofType))
% FOF formula (<kernel.Constant object at 0x21c22d8>, <kernel.DependentProduct object at 0x1f74cb0>) of role type named dsetconstr_type
% Using role type
% Declaring dsetconstr:(fofType->((fofType->Prop)->fofType))
% FOF formula (<kernel.Constant object at 0x21c2a28>, <kernel.DependentProduct object at 0x1f74320>) of role type named subset_type
% Using role type
% Declaring subset:(fofType->(fofType->Prop))
% FOF formula (<kernel.Constant object at 0x21c22d8>, <kernel.DependentProduct object at 0x1f74b00>) of role type named kpair_type
% Using role type
% Declaring kpair:(fofType->(fofType->fofType))
% FOF formula (<kernel.Constant object at 0x21c22d8>, <kernel.DependentProduct object at 0x1f74c20>) of role type named cartprod_type
% Using role type
% Declaring cartprod:(fofType->(fofType->fofType))
% FOF formula (<kernel.Constant object at 0x1f74200>, <kernel.DependentProduct object at 0x1f74710>) of role type named singleton_type
% Using role type
% Declaring singleton:(fofType->Prop)
% FOF formula (((eq (fofType->Prop)) singleton) (fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset))))))) of role definition named singleton
% A new definition: (((eq (fofType->Prop)) singleton) (fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset)))))))
% Defined: singleton:=(fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset))))))
% FOF formula (<kernel.Constant object at 0x1f74710>, <kernel.DependentProduct object at 0x1f749e0>) of role type named ex1_type
% Using role type
% Declaring ex1:(fofType->((fofType->Prop)->Prop))
% FOF formula (((eq (fofType->((fofType->Prop)->Prop))) ex1) (fun (A:fofType) (Xphi:(fofType->Prop))=> (singleton ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx)))))) of role definition named ex1
% A new definition: (((eq (fofType->((fofType->Prop)->Prop))) ex1) (fun (A:fofType) (Xphi:(fofType->Prop))=> (singleton ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx))))))
% Defined: ex1:=(fun (A:fofType) (Xphi:(fofType->Prop))=> (singleton ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx)))))
% FOF formula (<kernel.Constant object at 0x1f749e0>, <kernel.Sort object at 0x2024e60>) of role type named ex1I_type
% Using role type
% Declaring ex1I:Prop
% FOF formula (((eq Prop) ex1I) (forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) A)->((Xphi Xx)->((forall (Xy:fofType), (((in Xy) A)->((Xphi Xy)->(((eq fofType) Xy) Xx))))->((ex1 A) (fun (Xy:fofType)=> (Xphi Xy)))))))) of role definition named ex1I
% A new definition: (((eq Prop) ex1I) (forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) A)->((Xphi Xx)->((forall (Xy:fofType), (((in Xy) A)->((Xphi Xy)->(((eq fofType) Xy) Xx))))->((ex1 A) (fun (Xy:fofType)=> (Xphi Xy))))))))
% Defined: ex1I:=(forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) A)->((Xphi Xx)->((forall (Xy:fofType), (((in Xy) A)->((Xphi Xy)->(((eq fofType) Xy) Xx))))->((ex1 A) (fun (Xy:fofType)=> (Xphi Xy)))))))
% FOF formula (<kernel.Constant object at 0x1c5ff38>, <kernel.DependentProduct object at 0x1c5ff80>) of role type named breln_type
% Using role type
% Declaring breln:(fofType->(fofType->(fofType->Prop)))
% FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) breln) (fun (A:fofType) (B:fofType) (C:fofType)=> ((subset C) ((cartprod A) B)))) of role definition named breln
% A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) breln) (fun (A:fofType) (B:fofType) (C:fofType)=> ((subset C) ((cartprod A) B))))
% Defined: breln:=(fun (A:fofType) (B:fofType) (C:fofType)=> ((subset C) ((cartprod A) B)))
% FOF formula (<kernel.Constant object at 0x1f745f0>, <kernel.DependentProduct object at 0x1f74cb0>) of role type named dpsetconstr_type
% Using role type
% Declaring dpsetconstr:(fofType->(fofType->((fofType->(fofType->Prop))->fofType)))
% FOF formula (<kernel.Constant object at 0x1f74710>, <kernel.Sort object at 0x2024e60>) of role type named dpsetconstrI_type
% Using role type
% Declaring dpsetconstrI:Prop
% FOF formula (((eq Prop) dpsetconstrI) (forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((Xphi Xx) Xy)->((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu)))))))))) of role definition named dpsetconstrI
% A new definition: (((eq Prop) dpsetconstrI) (forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((Xphi Xx) Xy)->((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu))))))))))
% Defined: dpsetconstrI:=(forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((Xphi Xx) Xy)->((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu)))))))))
% FOF formula (<kernel.Constant object at 0x1f749e0>, <kernel.Sort object at 0x2024e60>) of role type named setOfPairsIsBReln_type
% Using role type
% Declaring setOfPairsIsBReln:Prop
% FOF formula (((eq Prop) setOfPairsIsBReln) (forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))), (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> ((Xphi Xx) Xy)))))) of role definition named setOfPairsIsBReln
% A new definition: (((eq Prop) setOfPairsIsBReln) (forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))), (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> ((Xphi Xx) Xy))))))
% Defined: setOfPairsIsBReln:=(forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))), (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> ((Xphi Xx) Xy)))))
% FOF formula (<kernel.Constant object at 0x1f749e0>, <kernel.Sort object at 0x2024e60>) of role type named dpsetconstrERa_type
% Using role type
% Declaring dpsetconstrERa:Prop
% FOF formula (((eq Prop) dpsetconstrERa) (forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu))))->((Xphi Xx) Xy))))))) of role definition named dpsetconstrERa
% A new definition: (((eq Prop) dpsetconstrERa) (forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu))))->((Xphi Xx) Xy)))))))
% Defined: dpsetconstrERa:=(forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu))))->((Xphi Xx) Xy))))))
% FOF formula (<kernel.Constant object at 0x1f749e0>, <kernel.DependentProduct object at 0x1c5ffc8>) of role type named func_type
% Using role type
% Declaring func:(fofType->(fofType->(fofType->Prop)))
% FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) func) (fun (A:fofType) (B:fofType) (R:fofType)=> ((and (((breln A) B) R)) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) R)))))))) of role definition named func
% A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) func) (fun (A:fofType) (B:fofType) (R:fofType)=> ((and (((breln A) B) R)) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) R))))))))
% Defined: func:=(fun (A:fofType) (B:fofType) (R:fofType)=> ((and (((breln A) B) R)) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) R)))))))
% FOF formula (ex1I->(dpsetconstrI->(setOfPairsIsBReln->(dpsetconstrERa->(forall (A:fofType) (B:fofType) (Xf:(fofType->fofType)), ((forall (Xx:fofType), (((in Xx) A)->((in (Xf Xx)) B)))->(((func A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))) of role conjecture named lamProp
% Conjecture to prove = (ex1I->(dpsetconstrI->(setOfPairsIsBReln->(dpsetconstrERa->(forall (A:fofType) (B:fofType) (Xf:(fofType->fofType)), ((forall (Xx:fofType), (((in Xx) A)->((in (Xf Xx)) B)))->(((func A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))):Prop
% We need to prove ['(ex1I->(dpsetconstrI->(setOfPairsIsBReln->(dpsetconstrERa->(forall (A:fofType) (B:fofType) (Xf:(fofType->fofType)), ((forall (Xx:fofType), (((in Xx) A)->((in (Xf Xx)) B)))->(((func A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))))']
% Parameter fofType:Type.
% Parameter in:(fofType->(fofType->Prop)).
% Parameter emptyset:fofType.
% Parameter setadjoin:(fofType->(fofType->fofType)).
% Parameter dsetconstr:(fofType->((fofType->Prop)->fofType)).
% Parameter subset:(fofType->(fofType->Prop)).
% Parameter kpair:(fofType->(fofType->fofType)).
% Parameter cartprod:(fofType->(fofType->fofType)).
% Definition singleton:=(fun (A:fofType)=> ((ex fofType) (fun (Xx:fofType)=> ((and ((in Xx) A)) (((eq fofType) A) ((setadjoin Xx) emptyset)))))):(fofType->Prop).
% Definition ex1:=(fun (A:fofType) (Xphi:(fofType->Prop))=> (singleton ((dsetconstr A) (fun (Xx:fofType)=> (Xphi Xx))))):(fofType->((fofType->Prop)->Prop)).
% Definition ex1I:=(forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) A)->((Xphi Xx)->((forall (Xy:fofType), (((in Xy) A)->((Xphi Xy)->(((eq fofType) Xy) Xx))))->((ex1 A) (fun (Xy:fofType)=> (Xphi Xy))))))):Prop.
% Definition breln:=(fun (A:fofType) (B:fofType) (C:fofType)=> ((subset C) ((cartprod A) B))):(fofType->(fofType->(fofType->Prop))).
% Parameter dpsetconstr:(fofType->(fofType->((fofType->(fofType->Prop))->fofType))).
% Definition dpsetconstrI:=(forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((Xphi Xx) Xy)->((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu))))))))):Prop.
% Definition setOfPairsIsBReln:=(forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))), (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> ((Xphi Xx) Xy))))):Prop.
% Definition dpsetconstrERa:=(forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu))))->((Xphi Xx) Xy)))))):Prop.
% Definition func:=(fun (A:fofType) (B:fofType) (R:fofType)=> ((and (((breln A) B) R)) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) R))))))):(fofType->(fofType->(fofType->Prop))).
% Trying to prove (ex1I->(dpsetconstrI->(setOfPairsIsBReln->(dpsetconstrERa->(forall (A:fofType) (B:fofType) (Xf:(fofType->fofType)), ((forall (Xx:fofType), (((in Xx) A)->((in (Xf Xx)) B)))->(((func A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))))
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found eq_ref00:=(eq_ref0 (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))):(((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))
% Found (eq_ref0 (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b)
% Found ((eq_ref Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b)
% Found ((eq_ref Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b)
% Found ((eq_ref Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b)
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found 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))))))))))
% Instantiate: b:=(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)))))))))):Prop
% Found relational_choice as proof of b
% Found ((conj00 (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) relational_choice) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b)
% Found (((conj0 b) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) relational_choice) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) relational_choice) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) relational_choice) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) relational_choice) as proof of (P b)
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found 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)))
% Instantiate: a:=(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A))):Prop
% Found iff_sym as proof of a
% Found ((conj00 (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) iff_sym) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found (((conj0 a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) iff_sym) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) iff_sym) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) iff_sym) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) iff_sym) as proof of (P a)
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found x2:dpsetconstrERa
% Instantiate: b:=(forall (A:fofType) (B:fofType) (Xphi:(fofType->(fofType->Prop))) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) B)->(((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xz:fofType) (Xu:fofType)=> ((Xphi Xz) Xu))))->((Xphi Xx) Xy)))))):Prop
% Found x2 as proof of a
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((conj00 (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) x2) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found (((conj0 a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) x2) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) x2) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) x2) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) a) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) x2) as proof of (P a)
% Found eq_ref00:=(eq_ref0 (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))):(((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))))
% Found (eq_ref0 (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b0)
% Found ((eq_ref Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b0)
% Found ((eq_ref Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b0)
% Found ((eq_ref Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) as proof of (((eq Prop) (forall (Xx:fofType), (((in Xx) A)->((ex1 B) (fun (Xy:fofType)=> ((in ((kpair Xx) Xy)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))))) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))):(((eq (fofType->Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) (fun (x:fofType)=> ((and ((in x) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x) emptyset)))))
% Found (eta_expansion_dep00 (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) as proof of (((eq (fofType->Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) b)
% Found ((eta_expansion_dep0 (fun (x6:fofType)=> Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) as proof of (((eq (fofType->Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) as proof of (((eq (fofType->Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) as proof of (((eq (fofType->Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) b)
% Found (((eta_expansion_dep fofType) (fun (x6:fofType)=> Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) as proof of (((eq (fofType->Prop)) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset))))) b)
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and ((in x) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x) emptyset)))))
% Found eq_ref00:=(eq_ref0 (f x5)):(((eq Prop) (f x5)) (f x5))
% Found (eq_ref0 (f x5)) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found ((eq_ref Prop) (f x5)) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (((eq Prop) (f x5)) ((and ((in x5) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))))
% Found (fun (x5:fofType)=> ((eq_ref Prop) (f x5))) as proof of (forall (x:fofType), (((eq Prop) (f x)) ((and ((in x) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x) emptyset)))))
% Found 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)))
% Instantiate: b0:=(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B))):Prop
% Found or_second as proof of b0
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((conj00 (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) or_second) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b0)
% Found (((conj0 b0) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) or_second) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b0)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b0) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) or_second) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b0)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b0) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) or_second) as proof of ((and (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b0)
% Found ((((conj (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))) b0) (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7))))) or_second) as proof of (P0 b0)
% Found x1000:=(x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))):(((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (x100 (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found ((x10 B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found (((x1 A) B) (fun (x7:fofType)=> ((eq fofType) (Xf x7)))) as proof of (((breln A) B) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy)))))))->(P ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))):(((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 a):(((eq (fofType->Prop)) a) a)
% Found (eq_ref0 a) as proof of (((eq (fofType->Prop)) a) b)
% Found ((eq_ref (fofType->Prop)) a) as proof of (((eq (fofType->Prop)) a) b)
% Found ((eq_ref (fofType->Prop)) a) as proof of (((eq (fofType->Prop)) a) b)
% Found ((eq_ref (fofType->Prop)) a) as proof of (((eq (fofType->Prop)) a) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset)))))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset)))))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset)))))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (fun (Xx0:fofType)=> ((and ((in Xx0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin Xx0) emptyset)))))
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b0)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b0)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b0)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b0)
% Found eq_ref00:=(eq_ref0 (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))):(((eq Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset)))
% Found (eq_ref0 (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) as proof of (((eq Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) b)
% Found ((eq_ref Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) as proof of (((eq Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) b)
% Found ((eq_ref Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) as proof of (((eq Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) b)
% Found ((eq_ref Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) as proof of (((eq Prop) (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((setadjoin x5) emptyset))) b)
% Found eq_ref00:=(eq_ref0 b0):(((eq Prop) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) b)
% Found eq_ref00:=(eq_ref0 a):(((eq Prop) a) a)
% Found (eq_ref0 a) as proof of (((eq Prop) a) b0)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b0)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b0)
% Found ((eq_ref Prop) a) as proof of (((eq Prop) a) b0)
% Found x4:((in Xx) A)
% Instantiate: b:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of (P b)
% Found eq_ref00:=(eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))):(((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy)))))))
% Found (eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))) b)
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy)))))))->(P ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))):(((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found x6:(P ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Instantiate: b:=((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))):fofType
% Found x6 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found eq_ref00:=(eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))):(((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found eta_expansion_dep000:=(eta_expansion_dep00 a):(((eq (fofType->Prop)) a) (fun (x:fofType)=> (a x)))
% Found (eta_expansion_dep00 a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))
% Found ((eta_expansion_dep0 (fun (x7:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x7:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x7:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))
% Found (((eta_expansion_dep fofType) (fun (x7:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx0:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx0)) Xy))))))
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy)))))))->(P ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))) P) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))):(((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin x5) emptyset))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found x6:(P0 b)
% Instantiate: b:=((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy)))))):fofType
% Found (fun (x6:(P0 b))=> x6) as proof of (P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy)))))))
% Found (fun (P0:(fofType->Prop)) (x6:(P0 b))=> x6) as proof of ((P0 b)->(P0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx1:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx1)) Xy))))))))
% Found (fun (P0:(fofType->Prop)) (x6:(P0 b))=> x6) as proof of (P b)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) B0)
% Found x6:(P ((setadjoin x5) emptyset))
% Instantiate: b:=((setadjoin x5) emptyset):fofType
% Found x6 as proof of (P0 b)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found eq_ref00:=(eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))):(((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found eq_ref00:=(eq_ref0 a):(((eq fofType) a) a)
% Found (eq_ref0 a) as proof of (((eq fofType) a) emptyset)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) emptyset)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) emptyset)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) emptyset)
% Found eq_ref00:=(eq_ref0 a):(((eq fofType) a) a)
% Found (eq_ref0 a) as proof of (((eq fofType) a) emptyset)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) emptyset)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) emptyset)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) emptyset)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: A0:=A:fofType;x5:=Xx:fofType
% Found x4 as proof of ((in x5) A0)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x60:(P b)
% Found (fun (x60:(P b))=> x60) as proof of (P b)
% Found (fun (x60:(P b))=> x60) as proof of (P0 b)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x60:(P ((setadjoin x5) emptyset))
% Found (fun (x60:(P ((setadjoin x5) emptyset)))=> x60) as proof of (P ((setadjoin x5) emptyset))
% Found (fun (x60:(P ((setadjoin x5) emptyset)))=> x60) as proof of (P0 ((setadjoin x5) emptyset))
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b)
% Found eq_ref00:=(eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))):(((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found (eq_ref0 ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b0)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b0)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b0)
% Found ((eq_ref fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) as proof of (((eq fofType) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq fofType) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq fofType) b0) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((setadjoin x5) emptyset))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((setadjoin x5) emptyset))
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Instantiate: B0:=A:fofType
% Found x4 as proof of ((in x5) B0)
% Found eq_ref00:=(eq_ref0 b0):(((eq fofType) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq fofType) b0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((dsetconstr B) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy)))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin x5) emptyset)):(((eq fofType) ((setadjoin x5) emptyset)) ((setadjoin x5) emptyset))
% Found (eq_ref0 ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin x5) emptyset)) as proof of (((eq fofType) ((setadjoin x5) emptyset)) b0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found eq_ref00:=(eq_ref0 a):(((eq (fofType->Prop)) a) a)
% Found (eq_ref0 a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))
% Found ((eq_ref (fofType->Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))
% Found ((eq_ref (fofType->Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))
% Found ((eq_ref (fofType->Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xx0:fofType)=> ((in ((kpair Xx) Xx0)) (((dpsetconstr A) B) (fun (Xx:fofType) (Xy:fofType)=> (((eq fofType) (Xf Xx)) Xy))))))
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) B0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in x5) A0)
% Found x4:((in Xx) A)
% Found x4 as proof of ((in
% EOF
%------------------------------------------------------------------------------