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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU701^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 : n110.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:51 EDT 2014

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

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU701^2 : TPTP v6.1.0. Released v3.7.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n110.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:14:51 CDT 2014
% % CPUTime  : 300.03 
% 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 0x24d5a28>, <kernel.DependentProduct object at 0x24d5a70>) of role type named in_type
% Using role type
% Declaring in:(fofType->(fofType->Prop))
% FOF formula (<kernel.Constant object at 0x2698518>, <kernel.Single object at 0x24d5998>) of role type named emptyset_type
% Using role type
% Declaring emptyset:fofType
% FOF formula (<kernel.Constant object at 0x24d5a70>, <kernel.DependentProduct object at 0x24d5cf8>) of role type named setadjoin_type
% Using role type
% Declaring setadjoin:(fofType->(fofType->fofType))
% FOF formula (<kernel.Constant object at 0x24d5680>, <kernel.DependentProduct object at 0x24d5c20>) of role type named dsetconstr_type
% Using role type
% Declaring dsetconstr:(fofType->((fofType->Prop)->fofType))
% FOF formula (<kernel.Constant object at 0x24d5950>, <kernel.Sort object at 0x2768f38>) of role type named dsetconstrER_type
% Using role type
% Declaring dsetconstrER:Prop
% FOF formula (((eq Prop) dsetconstrER) (forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) ((dsetconstr A) (fun (Xy:fofType)=> (Xphi Xy))))->(Xphi Xx)))) of role definition named dsetconstrER
% A new definition: (((eq Prop) dsetconstrER) (forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) ((dsetconstr A) (fun (Xy:fofType)=> (Xphi Xy))))->(Xphi Xx))))
% Defined: dsetconstrER:=(forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) ((dsetconstr A) (fun (Xy:fofType)=> (Xphi Xy))))->(Xphi Xx)))
% FOF formula (<kernel.Constant object at 0x24d5d40>, <kernel.Sort object at 0x2768f38>) of role type named setext_type
% Using role type
% Declaring setext:Prop
% FOF formula (((eq Prop) setext) (forall (A:fofType) (B:fofType), ((forall (Xx:fofType), (((in Xx) A)->((in Xx) B)))->((forall (Xx:fofType), (((in Xx) B)->((in Xx) A)))->(((eq fofType) A) B))))) of role definition named setext
% A new definition: (((eq Prop) setext) (forall (A:fofType) (B:fofType), ((forall (Xx:fofType), (((in Xx) A)->((in Xx) B)))->((forall (Xx:fofType), (((in Xx) B)->((in Xx) A)))->(((eq fofType) A) B)))))
% Defined: setext:=(forall (A:fofType) (B:fofType), ((forall (Xx:fofType), (((in Xx) A)->((in Xx) B)))->((forall (Xx:fofType), (((in Xx) B)->((in Xx) A)))->(((eq fofType) A) B))))
% FOF formula (<kernel.Constant object at 0x24d5440>, <kernel.Sort object at 0x2768f38>) of role type named uniqinunit_type
% Using role type
% Declaring uniqinunit:Prop
% FOF formula (((eq Prop) uniqinunit) (forall (Xx:fofType) (Xy:fofType), (((in Xx) ((setadjoin Xy) emptyset))->(((eq fofType) Xx) Xy)))) of role definition named uniqinunit
% A new definition: (((eq Prop) uniqinunit) (forall (Xx:fofType) (Xy:fofType), (((in Xx) ((setadjoin Xy) emptyset))->(((eq fofType) Xx) Xy))))
% Defined: uniqinunit:=(forall (Xx:fofType) (Xy:fofType), (((in Xx) ((setadjoin Xy) emptyset))->(((eq fofType) Xx) Xy)))
% FOF formula (<kernel.Constant object at 0x24d5cf8>, <kernel.Sort object at 0x2768f38>) of role type named eqinunit_type
% Using role type
% Declaring eqinunit:Prop
% FOF formula (((eq Prop) eqinunit) (forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((in Xx) ((setadjoin Xy) emptyset))))) of role definition named eqinunit
% A new definition: (((eq Prop) eqinunit) (forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((in Xx) ((setadjoin Xy) emptyset)))))
% Defined: eqinunit:=(forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((in Xx) ((setadjoin Xy) emptyset))))
% FOF formula (<kernel.Constant object at 0x24d5d88>, <kernel.Sort object at 0x2768f38>) of role type named in__Cong_type
% Using role type
% Declaring in__Cong:Prop
% FOF formula (((eq Prop) in__Cong) (forall (A:fofType) (B:fofType), ((((eq fofType) A) B)->(forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff ((in Xx) A)) ((in Xy) B))))))) of role definition named in__Cong
% A new definition: (((eq Prop) in__Cong) (forall (A:fofType) (B:fofType), ((((eq fofType) A) B)->(forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff ((in Xx) A)) ((in Xy) B)))))))
% Defined: in__Cong:=(forall (A:fofType) (B:fofType), ((((eq fofType) A) B)->(forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff ((in Xx) A)) ((in Xy) B))))))
% FOF formula (<kernel.Constant object at 0x24d56c8>, <kernel.Sort object at 0x2768f38>) of role type named iffalseProp1_type
% Using role type
% Declaring iffalseProp1:Prop
% FOF formula (((eq Prop) iffalseProp1) (forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->((in Xy) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))))))) of role definition named iffalseProp1
% A new definition: (((eq Prop) iffalseProp1) (forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->((in Xy) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))))))))
% Defined: iffalseProp1:=(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->((in Xy) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))))))
% FOF formula (dsetconstrER->(setext->(uniqinunit->(eqinunit->(in__Cong->(iffalseProp1->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((setadjoin Xy) emptyset))))))))))))) of role conjecture named iffalseProp2
% Conjecture to prove = (dsetconstrER->(setext->(uniqinunit->(eqinunit->(in__Cong->(iffalseProp1->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((setadjoin Xy) emptyset))))))))))))):Prop
% We need to prove ['(dsetconstrER->(setext->(uniqinunit->(eqinunit->(in__Cong->(iffalseProp1->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((setadjoin Xy) emptyset)))))))))))))']
% Parameter fofType:Type.
% Parameter in:(fofType->(fofType->Prop)).
% Parameter emptyset:fofType.
% Parameter setadjoin:(fofType->(fofType->fofType)).
% Parameter dsetconstr:(fofType->((fofType->Prop)->fofType)).
% Definition dsetconstrER:=(forall (A:fofType) (Xphi:(fofType->Prop)) (Xx:fofType), (((in Xx) ((dsetconstr A) (fun (Xy:fofType)=> (Xphi Xy))))->(Xphi Xx))):Prop.
% Definition setext:=(forall (A:fofType) (B:fofType), ((forall (Xx:fofType), (((in Xx) A)->((in Xx) B)))->((forall (Xx:fofType), (((in Xx) B)->((in Xx) A)))->(((eq fofType) A) B)))):Prop.
% Definition uniqinunit:=(forall (Xx:fofType) (Xy:fofType), (((in Xx) ((setadjoin Xy) emptyset))->(((eq fofType) Xx) Xy))):Prop.
% Definition eqinunit:=(forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((in Xx) ((setadjoin Xy) emptyset)))):Prop.
% Definition in__Cong:=(forall (A:fofType) (B:fofType), ((((eq fofType) A) B)->(forall (Xx:fofType) (Xy:fofType), ((((eq fofType) Xx) Xy)->((iff ((in Xx) A)) ((in Xy) B)))))):Prop.
% Definition iffalseProp1:=(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->((in Xy) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))))))):Prop.
% Trying to prove (dsetconstrER->(setext->(uniqinunit->(eqinunit->(in__Cong->(iffalseProp1->(forall (A:fofType) (Xphi:Prop) (Xx:fofType), (((in Xx) A)->(forall (Xy:fofType), (((in Xy) A)->((Xphi->False)->(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((setadjoin Xy) emptyset)))))))))))))
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found x8:(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: Xx0:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found x8 as proof of (P0 Xx0)
% Found x8:(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: b:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found x8 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found x8:(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: A0:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found x8 as proof of (P0 A0)
% Found eq_ref00:=(eq_ref0 Xx0):(((eq fofType) Xx0) Xx0)
% Found (eq_ref0 Xx0) as proof of (((eq fofType) Xx0) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) ((setadjoin Xy) emptyset))
% Found (x200 ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found ((x20 ((setadjoin Xy) emptyset)) ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (((x2 Xx0) ((setadjoin Xy) emptyset)) ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (((x2 Xx0) ((setadjoin Xy) emptyset)) ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) A0)->((in Xx0) A0))
% Found (eq_ref00 (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin Xy) emptyset)))
% Found ((eq_ref0 A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin Xy) emptyset)))
% Found (((eq_ref fofType) A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin Xy) emptyset)))
% Found (((eq_ref fofType) A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin Xy) emptyset)))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) A0) (in Xx0))) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin Xy) emptyset)))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) A0) (in Xx0))) as proof of (forall (Xx:fofType), (((in Xx) A0)->((in Xx) ((setadjoin Xy) emptyset))))
% Found x9:((in Xx0) ((setadjoin Xy) emptyset))
% Instantiate: A0:=((setadjoin Xy) emptyset):fofType
% Found (fun (x9:((in Xx0) ((setadjoin Xy) emptyset)))=> x9) as proof of ((in Xx0) A0)
% Found (fun (Xx0:fofType) (x9:((in Xx0) ((setadjoin Xy) emptyset)))=> x9) as proof of (((in Xx0) ((setadjoin Xy) emptyset))->((in Xx0) A0))
% Found (fun (Xx0:fofType) (x9:((in Xx0) ((setadjoin Xy) emptyset)))=> x9) as proof of (forall (Xx:fofType), (((in Xx) ((setadjoin Xy) emptyset))->((in Xx) A0)))
% Found eq_ref00:=(eq_ref0 ((setadjoin ((setadjoin Xy) emptyset)) emptyset)):(((eq fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (eq_ref0 ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) as proof of (((eq fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) as proof of (((eq fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) as proof of (((eq fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) as proof of (((eq fofType) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) b)
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found x8:(P0 b)
% Instantiate: b:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found (fun (x8:(P0 b))=> x8) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (fun (P0:(fofType->Prop)) (x8:(P0 b))=> x8) as proof of ((P0 b)->(P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (fun (P0:(fofType->Prop)) (x8:(P0 b))=> x8) as proof of (P b)
% Found x8:(P ((setadjoin Xy) emptyset))
% Instantiate: b:=((setadjoin Xy) emptyset):fofType
% Found x8 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eq_ref000:=(eq_ref00 P):((P Xx0)->(P Xx0))
% Found (eq_ref00 P) as proof of (P0 Xx0)
% Found ((eq_ref0 Xx0) P) as proof of (P0 Xx0)
% Found (((eq_ref fofType) Xx0) P) as proof of (P0 Xx0)
% Found (((eq_ref fofType) Xx0) P) as proof of (P0 Xx0)
% Found x8:(P ((setadjoin Xy) emptyset))
% Instantiate: Xx0:=((setadjoin Xy) emptyset):fofType
% Found x8 as proof of (P0 Xx0)
% Found eq_ref00:=(eq_ref0 Xx0):(((eq fofType) Xx0) Xx0)
% Found (eq_ref0 Xx0) as proof of (((eq fofType) Xx0) b)
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) b)
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) b)
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found x80:(P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P2 ((setadjoin Xy) emptyset))
% Found x80:(P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P2 ((setadjoin Xy) emptyset))
% Found x8:(P ((setadjoin Xy) emptyset))
% Instantiate: A0:=((setadjoin Xy) emptyset):fofType
% Found x8 as proof of (P0 A0)
% Found x8:((in Xx0) A0)
% Instantiate: A0:=((setadjoin ((setadjoin Xy) emptyset)) emptyset):fofType
% Found (fun (x8:((in Xx0) A0))=> x8) as proof of ((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (fun (Xx0:fofType) (x8:((in Xx0) A0))=> x8) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))
% Found (fun (Xx0:fofType) (x8:((in Xx0) A0))=> x8) as proof of (forall (Xx:fofType), (((in Xx) A0)->((in Xx) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))))
% Found x8:((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Instantiate: A0:=((setadjoin ((setadjoin Xy) emptyset)) emptyset):fofType
% Found (fun (x8:((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))=> x8) as proof of ((in Xx0) A0)
% Found (fun (Xx0:fofType) (x8:((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))=> x8) as proof of (((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))->((in Xx0) A0))
% Found (fun (Xx0:fofType) (x8:((in Xx0) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))=> x8) as proof of (forall (Xx:fofType), (((in Xx) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))->((in Xx) A0)))
% 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 x80:(P b)
% Found (fun (x80:(P b))=> x80) as proof of (P b)
% Found (fun (x80:(P b))=> x80) as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found False_rect00:=(False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))):((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (x100 ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((x10 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) A0)->((in Xx0) A0))
% Found (eq_ref00 (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found ((eq_ref0 A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (((eq_ref fofType) A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (((eq_ref fofType) A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) A0) (in Xx0))) as proof of (((in Xx0) A0)->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) A0) (in Xx0))) as proof of (forall (Xx0:fofType), (((in Xx0) A0)->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))))
% Found x9:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: A0:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found (fun (x9:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))=> x9) as proof of ((in Xx0) A0)
% Found (fun (Xx0:fofType) (x9:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))=> x9) as proof of (((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) A0))
% Found (fun (Xx0:fofType) (x9:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))=> x9) as proof of (forall (Xx0:fofType), (((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) A0)))
% Found eq_ref00:=(eq_ref0 ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)):(((eq fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (eq_ref0 ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) as proof of (((eq fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) as proof of (((eq fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) as proof of (((eq fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) as proof of (((eq fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) b)
% Found eq_ref00:=(eq_ref0 Xx0):(((eq fofType) Xx0) Xx0)
% Found (eq_ref0 Xx0) as proof of (((eq fofType) Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (x200 ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((x20 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (((x2 Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (((x2 Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) Xx0)) as proof of ((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found x80:(P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P2 ((setadjoin Xy) emptyset))
% Found x80:(P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found (fun (x80:(P1 ((setadjoin Xy) emptyset)))=> x80) as proof of (P2 ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% 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 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 eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (x200 ((eq_ref fofType) b)) as proof of (P b)
% Found ((x20 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) b)) as proof of (P b)
% Found (((x2 b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) b)) as proof of (P b)
% Found (((x2 b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) b)) as proof of (P b)
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found x80:(P b)
% Found (fun (x80:(P b))=> x80) as proof of (P b)
% Found (fun (x80:(P b))=> x80) as proof of (P0 b)
% Found x8:((in Xx0) ((setadjoin Xy) emptyset))
% Instantiate: Xx1:=((setadjoin Xy) emptyset):fofType
% Found x8 as proof of (P Xx1)
% Found x8:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: Xx1:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found x8 as proof of (P Xx1)
% Found x80:(P b)
% Found (fun (x80:(P b))=> x80) as proof of (P b)
% Found (fun (x80:(P b))=> x80) as proof of (P0 b)
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 P):((P Xx0)->(P Xx0))
% Found (eq_ref00 P) as proof of (P0 Xx0)
% Found ((eq_ref0 Xx0) P) as proof of (P0 Xx0)
% Found (((eq_ref fofType) Xx0) P) as proof of (P0 Xx0)
% Found (((eq_ref fofType) Xx0) P) as proof of (P0 Xx0)
% Found x8:((in Xx0) ((setadjoin Xy) emptyset))
% Instantiate: b:=((setadjoin Xy) emptyset):fofType
% Found x8 as proof of (P b)
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found x8:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: b:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found x8 as proof of (P b)
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eta_expansion000:=(eta_expansion00 a):(((eq (fofType->Prop)) a) (fun (x:fofType)=> (a x)))
% Found (eta_expansion00 a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found ((eta_expansion0 Prop) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found (((eta_expansion fofType) Prop) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found (((eta_expansion fofType) Prop) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found (((eta_expansion fofType) Prop) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found False_rect00:=(False_rect0 ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))):((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found (False_rect0 ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found (x901 ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found ((x90 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0)))))) ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found ((x90 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0)))))) ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 P):((P Xy)->(P Xy))
% Found (eq_ref00 P) as proof of (P0 Xy)
% Found ((eq_ref0 Xy) P) as proof of (P0 Xy)
% Found (((eq_ref fofType) Xy) P) as proof of (P0 Xy)
% Found (((eq_ref fofType) Xy) P) as proof of (P0 Xy)
% Found eq_ref00:=(eq_ref0 b0):(((eq fofType) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq fofType) b0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found eq_ref00:=(eq_ref0 Xx0):(((eq fofType) Xx0) Xx0)
% Found (eq_ref0 Xx0) as proof of (((eq fofType) Xx0) b)
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) b)
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) b)
% Found ((eq_ref fofType) Xx0) as proof of (((eq fofType) Xx0) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xy)
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) A0)->((in Xx0) A0))
% Found (eq_ref00 (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))
% Found ((eq_ref0 A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))
% Found (((eq_ref fofType) A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))
% Found (((eq_ref fofType) A0) (in Xx0)) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) A0) (in Xx0))) as proof of (((in Xx0) A0)->((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) A0) (in Xx0))) as proof of (forall (Xx0:fofType), (((in Xx0) A0)->((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))->((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))
% Found (eq_ref00 (in Xx0)) as proof of (((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))->((in Xx0) A0))
% Found ((eq_ref0 ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) (in Xx0)) as proof of (((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))->((in Xx0) A0))
% Found (((eq_ref fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) (in Xx0)) as proof of (((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))->((in Xx0) A0))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) (in Xx0))) as proof of (((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))->((in Xx0) A0))
% Found (fun (Xx0:fofType)=> (((eq_ref fofType) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) (in Xx0))) as proof of (forall (Xx0:fofType), (((in Xx0) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))->((in Xx0) A0)))
% Found False_rect00:=(False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))):((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (x100 ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((x10 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found False_rect00:=(False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))):((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (x100 ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((x10 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found False_rect00:=(False_rect0 ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))):((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (False_rect0 ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))) as proof of ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))) as proof of ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))) as proof of ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (x100 ((fun (P:Type)=> ((False_rect P) x70)) ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((x10 ((setadjoin Xy) emptyset)) ((fun (P:Type)=> ((False_rect P) x70)) ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found (((x1 b) ((setadjoin Xy) emptyset)) ((fun (P:Type)=> ((False_rect P) x70)) ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found (((x1 b) ((setadjoin Xy) emptyset)) ((fun (P:Type)=> ((False_rect P) x70)) ((in b) ((setadjoin ((setadjoin Xy) emptyset)) emptyset)))) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found x8:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: b:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found x8 as proof of (P b)
% Found x80:(P b)
% Found (fun (x80:(P b))=> x80) as proof of (P b)
% Found (fun (x80:(P b))=> x80) as proof of (P0 b)
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found False_rect00:=(False_rect0 ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))):((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))
% Found (False_rect0 ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))
% Found (x801 ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy0))))
% Found ((x80 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy0)))))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy0))))
% Found ((x80 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy0)))))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy0))))
% Found False_rect00:=(False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))):((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (False_rect0 ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((x1000 ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80)) as proof of ((P ((setadjoin Xy) emptyset))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found ((x1000 ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80)) as proof of ((P ((setadjoin Xy) emptyset))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (((fun (x8:((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))=> ((x100 x8) (fun (x11:fofType)=> ((P ((setadjoin Xy) emptyset))->(P x11))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80)) as proof of ((P ((setadjoin Xy) emptyset))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (((fun (x8:((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))=> (((x10 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) x8) (fun (x11:fofType)=> ((P ((setadjoin Xy) emptyset))->(P x11))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80)) as proof of ((P ((setadjoin Xy) emptyset))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (((fun (x8:((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))=> ((((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) x8) (fun (x11:fofType)=> ((P ((setadjoin Xy) emptyset))->(P x11))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80)) as proof of ((P ((setadjoin Xy) emptyset))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (((fun (x8:((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))=> ((((x1 ((setadjoin Xy) emptyset)) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) x8) (fun (x11:fofType)=> ((P ((setadjoin Xy) emptyset))->(P x11))))) ((fun (P1:Type)=> ((False_rect P1) x70)) ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)))) (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80)) as proof of ((P ((setadjoin Xy) emptyset))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b0)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b0)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b0)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq fofType) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq fofType) b0) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) ((setadjoin Xy) emptyset))
% Found x80:(P b)
% Found (fun (x80:(P b))=> x80) as proof of (P b)
% Found (fun (x80:(P b))=> x80) as proof of (P0 b)
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P1 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found x8:((in Xx0) ((setadjoin Xy) emptyset))
% Instantiate: b:=((setadjoin Xy) emptyset):fofType
% Found x8 as proof of (P 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 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 eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq fofType) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq fofType) b0) b)
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) b)
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) b)
% Found ((eq_ref fofType) b0) as proof of (((eq fofType) b0) b)
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found x8:((in Xx0) ((setadjoin Xy) emptyset))
% Instantiate: Xx1:=((setadjoin Xy) emptyset):fofType
% Found x8 as proof of (P Xx1)
% Found x8:((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Instantiate: Xx1:=((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))):fofType
% Found x8 as proof of (P Xx1)
% Found False_rect00:=(False_rect0 ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))):((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found (False_rect0 ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found (x900 ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0)))))) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((x90 P) ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0)))))) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found x80:(P b)
% Found (fun (x80:(P b))=> x80) as proof of (P b)
% Found (fun (x80:(P b))=> x80) as proof of (P0 b)
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))):(((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found ((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) as proof of (((eq fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 Xx1):(((eq fofType) Xx1) Xx1)
% Found (eq_ref0 Xx1) as proof of (((eq fofType) Xx1) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) Xx1) as proof of (((eq fofType) Xx1) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) Xx1) as proof of (((eq fofType) Xx1) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) Xx1) as proof of (((eq fofType) Xx1) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (x200 ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((x20 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (((x2 Xx1) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found (((x2 Xx1) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found eq_ref00:=(eq_ref0 Xy):(((eq fofType) Xy) Xy)
% Found (eq_ref0 Xy) as proof of (((eq fofType) Xy) b)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) b)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) b)
% Found ((eq_ref fofType) Xy) as proof of (((eq fofType) Xy) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) Xx0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xx0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xx0)
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) Xx0)
% Found eq_ref00:=(eq_ref0 Xx1):(((eq fofType) Xx1) Xx1)
% Found (eq_ref0 Xx1) as proof of (((eq fofType) Xx1) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) Xx1) as proof of (((eq fofType) Xx1) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) Xx1) as proof of (((eq fofType) Xx1) ((setadjoin Xy) emptyset))
% Found ((eq_ref fofType) Xx1) as proof of (((eq fofType) Xx1) ((setadjoin Xy) emptyset))
% Found (x200 ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found ((x20 ((setadjoin Xy) emptyset)) ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (((x2 Xx1) ((setadjoin Xy) emptyset)) ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found (((x2 Xx1) ((setadjoin Xy) emptyset)) ((eq_ref fofType) Xx1)) as proof of ((in Xx1) ((setadjoin ((setadjoin Xy) emptyset)) emptyset))
% Found False_rect00:=(False_rect0 ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))):((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))
% Found (False_rect0 ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000))))))))))
% Found (x902 ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000)))))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found ((x90 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000)))))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found ((x90 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> (P Xy000)))))))))))) as proof of ((in ((setadjoin Xy) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found x80:(P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found (fun (x80:(P ((setadjoin Xy) emptyset)))=> x80) as proof of (P0 ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P1 ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref00:=(eq_ref0 ((setadjoin Xy) emptyset)):(((eq fofType) ((setadjoin Xy) emptyset)) ((setadjoin Xy) emptyset))
% Found (eq_ref0 ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found ((eq_ref fofType) ((setadjoin Xy) emptyset)) as proof of (((eq fofType) ((setadjoin Xy) emptyset)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found eq_ref000:=(eq_ref00 P):((P Xy)->(P Xy))
% Found (eq_ref00 P) as proof of (P0 Xy)
% Found ((eq_ref0 Xy) P) as proof of (P0 Xy)
% Found (((eq_ref fofType) Xy) P) as proof of (P0 Xy)
% Found (((eq_ref fofType) Xy) P) as proof of (P0 Xy)
% Found x80:((in Xx0) b)
% Found (fun (x80:((in Xx0) b))=> x80) as proof of ((in Xx0) b)
% Found (fun (x80:((in Xx0) b))=> x80) as proof of (P b)
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found False_rect00:=(False_rect0 ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))):((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))
% Found (False_rect0 ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))) as proof of ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))) as proof of ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))) as proof of ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0))))
% Found (x800 ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0)))))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset))
% Found ((x80 (in ((setadjoin Xy) emptyset))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in ((setadjoin Xy) emptyset)) Xy0)))))) as proof of ((in ((setadjoin Xy) emptyset)) ((setadjoin ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) 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 (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found ((eta_expansion_dep0 (fun (x10:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found (((eta_expansion_dep fofType) (fun (x10:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found (((eta_expansion_dep fofType) (fun (x10:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found (((eta_expansion_dep fofType) (fun (x10:fofType)=> Prop)) a) as proof of (((eq (fofType->Prop)) a) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))
% Found x9:(P Xx0)
% Instantiate: Xx1:=Xx0:fofType
% Found x9 as proof of (P0 Xx1)
% Found False_rect00:=(False_rect0 ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))):((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))
% Found (False_rect0 ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))
% Found ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000))))))))))
% Found (x802 ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000)))))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))
% Found ((x80 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00))))))))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000)))))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))
% Found ((x80 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00))))))))) ((fun (P:Type)=> ((False_rect P) x70)) ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in Xy00) ((dsetconstr A0) (fun (Xy000:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy000)))))))))))) as proof of ((in ((setadjoin ((setadjoin Xy) emptyset)) emptyset)) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) Xy00)))))))
% Found x80:((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of ((in Xx0) ((setadjoin Xy) emptyset))
% Found (fun (x80:((in Xx0) ((setadjoin Xy) emptyset)))=> x80) as proof of (P ((setadjoin Xy) emptyset))
% Found eq_ref000:=(eq_ref00 P):((P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->(P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) P) as proof of (P0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found False_rect00:=(False_rect0 ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))):((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found (False_rect0 ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00)))))))
% Found (x901 ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found ((x90 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0)))))) ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found ((x90 (fun (x11:fofType)=> ((in x11) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0)))))) ((fun (P0:Type)=> ((False_rect P0) x70)) ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> ((in Xy0) ((dsetconstr A0) (fun (Xy00:fofType)=> (P Xy00))))))))) as proof of ((in ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) ((dsetconstr A0) (fun (Xy0:fofType)=> (P Xy0))))
% Found eq_ref000:=(eq_ref00 (in Xx0)):(((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))->((in Xx0) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))))
% Found (eq_ref00 (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found ((eq_ref0 ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy)))))) (in Xx0)) as proof of (P ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fofType) Xz) Xy))))))
% Found (((eq_ref fofType) ((dsetconstr A) (fun (Xz:fofType)=> ((or ((and Xphi) (((eq fofType) Xz) Xx))) ((and (Xphi->False)) (((eq fof
% EOF
%------------------------------------------------------------------------------